注:本文的**是使用python 3寫的。
低等數學
幾何微分(differential)
統計學/概率論
資訊理論博弈論
不知道放到哪兒
機器學習
附錄參照
(1)f(x
)=xw
t+b'>f(x)=xwt+b(1)
(1)f(x)=xwt+b
這是在機器學習中,最常見的公式。我把這個稱為機器學習的第一公式,實際上就是線性分類函式(linear classifier)。
訓練分類器的目標就是求出(w,
b)'>(w,b)
(w,b)。
其中:x
'>x
x 是乙個一行矩陣 [[x
1,x2
,...
,xn]
]'>[[x1,x2,...,xn]]
[[x1,x2,...,xn]]。
w'>w
w 是乙個一行矩陣 [[w
1,w2
,...
,wn]
]'>[[w1,w2,...,wn]]
[[w1,w2,...,wn]]。
x'>x
x 和 w
'>w
w 的維度相同。
b'>b
b 是乙個數。xw
t=∑i
=1nx
iwi'>xwt=∑ni=1xiwi
xwt=∑i=1nxiwi,稱為點積(dot product)。
有時,我們也會見到這個公式表示為類似下面的樣子,它們的基本含義都是一樣的。f(
x)=w
x+b'>f(x)=wx+b
f(x)=wx+bf(
x)=w
tx+b
'>f(x)=wtx+b
f(x)=wtx+bf(
x)=w
→⋅x→
+b'>f(x)=w⃗ ⋅x⃗ +b
f(x)=w→⋅x→+b
注:這裡w由於,這篇文章是從數學的角度寫的,所以我們先關注矩陣的操作。'>w
w表示為乙個一維陣列(或者向量、向量(vector)) [x1
,x2,
...,
xn]'>[x1,x2,...,xn]b≠
ba'>ab≠ba
ab≠ba,所以對於表示式wtx
'>wtx
wtx,嚴格地說,要把向量(向量)看做一列的矩陣(而不是一行的矩陣),才符合數學上的定義。
注:表示式w→⋅
x→'>w⃗ ⋅x⃗
w→⋅x→和w
x'>wx
wx是正確的,因為w
'>w
w和x'>x
x是向量,這個符合向量計算的定義。
換位(transpose)
矩陣的換位操作:將矩陣中的數按照對角線交換。
數學公式:w
t'>wt
wt**示例:
# matrix transpose
m = numpy.mat([[1, 2], [3, 4]])
print("matrix.transpose:")
print(m.t)
''' output:
matrix.transpose:
[[1 3]
[2 4]]
'''
矩陣乘法
舉例說明它們的不同之處:
(5)m1=
[12]
'>m1=[12](5)
(5)m1=[12](w
,b)'>x
'>[[x
1,x2
,...
,xn]
]'>w
'>[[w
1,w2
,...
,wn]
]'>x
'>w
'>b
'>xwt
=∑i=
1nxi
wi'>
(6)m2=
[1020]
'>m2=[1020](6)
(6)m2=[1020](w
,b)'>x
'>[[x
1,x2
,...
,xn]
]'>w
'>[[w
1,w2
,...
,wn]
]'>x
'>w
'>b
'>xwt
=∑i=
1nxi
wi'>m1
⋅m2'>m1⋅m2
m1⋅m2的計算方法是:
(7)m1⋅
m2=[
1020][
12]1
∗10+2
∗20=[
50]'>m1⋅m2=[12][1020]1∗10+2∗20=[50](7)
(7)m1⋅m2=[1020][12]1∗10+2∗20=[50]m2
⋅m1'>m2⋅m1
m2⋅m1的計算方法是:
(8)m2⋅
m1=1
21010∗
110∗2
2020∗1
20∗2=
[10202040]
'>m2⋅m1=1020110∗120∗1210∗220∗2=[10202040](8)
(8)m2⋅m1=121010∗110∗22020∗120∗2=[10202040]
(9)x⋅y
=[x1
⋯xn]
[y1⋯
yn]=
[∑i=
1nxi
yi]x
⋅y=[
x1⋯x
m][y
1⋯yn
]=[x
1y1⋯
x1yn
⋯⋯⋯x
my1⋯
xmyn
]x⋅y
=[x11
⋯x1n
x21⋯x
2n⋯⋯
⋯xm1
⋯xmn
][y11
⋯y1q
y21⋯y
2q⋯⋯
⋯yn1
⋯ynq
]=[∑
i=1n
x1iy
i1⋯∑
i=1n
x1iy
iq⋯⋯
⋯∑i=
1nxm
iyi1
⋯∑i=
1nxm
iyiq
]'>x⋅y=[x1⋯xn]⎡⎣⎢y1⋯yn⎤⎦⎥=[∑ni=1xiyi]x⋅y=⎡⎣⎢x1⋯xm⎤⎦⎥[y1⋯yn]=⎡⎣⎢x1y1⋯xmy1⋯⋯⋯x1yn⋯xmyn⎤⎦⎥x⋅y=⎡⎣⎢⎢⎢x11x21⋯
機器學習 數學 機器學習涉及的數學知識
簡單總結 機器學習涉及的數學知識有 線性代數,概率論和統計學,多變數微積分,演算法和複雜優化,以及其他等。原文 在過去幾個月裡,有幾個人聯絡過我,說他們渴望進軍資料科學領域,使用機器學習 ml 技術探索統計規律,並打造資料驅動的完美產品。但是,據我觀察,一些人缺乏必要的數學直覺和框架,無法獲得有用的...
機器學習及其數學知識 知識星球
為什麼要加入付費知識星球?每一條都是精心篩選,用心編輯,為您節約時間 邀請了在各個領域比較優秀的朋友做嘉賓 利物浦博士,gdg組織者,ibm資料科學家,前阿里演算法工程師 阿里nlp演算法工程師,美國前十理工院校碩士,實現物理到cs的華麗轉身 十年經驗的c 資深工程師,方向是計算機視覺,人體姿態 付...
機器學習需要這些數學知識
放假在家想寫寫機器學習系列的文章,除夕前先來開個頭,後面會一直寫下去,搞機器學習演算法也有一年多了,體會多少還是有一些的,這裡記錄在部落格中,一來為自己後面的面試做點儲備,二來是為了分享,因為很多都是從大家的部落格中去學習的,所以這裡也要將我理解的新的內容反饋出來,大家一起學習進步。數學在計算機中的...