ps:本文中的log等同於我們國內的ln之前那一文中提到了一般的梯度上公升的公式推導,但是在《機器學習實戰》一書中,實現的是分類方法,因此,雖然最終的結果相似,但是其實本質有很大的不同。
一般來講我們把實物分成兩類,因此我們需要將結果對映到兩個結果(是或非),因為一般的階躍函式在求導之類的問題上會變得相當複雜,因此我們用乙個更加圓滑的sigmoid函式來對映,所有輸入到這個函式的實數都會被轉化到0-1之間,它的公式為g(
z)=1
1+e−
z 同時它對應的影象如圖所示:
於是我們可以將得到的結果進行四捨五入,分類成0或1
這裡的意思是,將我們的分類邊界線作模型,進行擬合,並以此來分類。
我們假設經過sigmoid函式處理過的結果為hθ
(x) ,因為是在0-1之間,因此可以看做是概率,另外,我們可以假設,分類到0或者1的概率。 p(
y=1|
x;θ)
=hθ(
x)p(
y=0|
x;θ)
=1−h
θ(x)
(1)
將以上兩個概率公式整合一下成為乙個概率公式, p(
y|x;
θ)=(
hθ(x
))y(
1−hθ
(x))
1−y(2)
1. 最大似然估計
這裡我們使用最大似然估計法,這個在大學的高等數學中應該都有學習過,就不在贅述。這裡假設我們有m個訓練集。 l(
θ)=∏
i=1m
p(y(
i)|x
(i);
θ)=∏
i=1m
(hθ(
x(i)
))y(
i)(1
−hθ(
x(i)
))1−
y(i)
(3)
為了求導方便,我們一般會將似然函式l加上log函式,因為log函式是遞增函式,因此不影響似然函式求最值。
這裡會用到乙個log函式的性質lo
gab=
blog
a ,推導得: l(
θ)=l
ogl(
θ)=∑
i=1m
y(i)
logh
(x(i
))+(
1−y(
i))l
og(1
−h(x
(i))
)(4)
將l函式對
θ 求導 ∂∂
θjl(
θ)=(
y1hθ
(x)−
(1−y
)11−
hθ(x
))∂∂
θjhθ
x(5)
2. sigmoid函式求導h′
(x)=
ddx1
1+e−
x=1(
1+e−
x)2(
e−x)
=1(1
+e−x
)(1−
1(1+
e−x)
)=h(
x)(1
−h(x
))(6)
3. 似然估計後續w=
θtx ,將其代入公式(4),得到 l′
(θ)=
(y1h
(θtx
)−(1
−y)1
1−h(
θtx)
)∂∂θ
jh(θ
tx)=
(1h(
θtx)
−(1−
y)11
−h(θ
tx))
h(θt
x)(1
−h(θ
tx)∂
∂jθt
x)=(
y(1−
h(θt
x))−
(1−y
)h(θ
tx))
xj=(
y−hθ
(x))
xj(7)
機器學習之梯度下降法數學推導
機器學習之梯度下降法數學推導 分類,本文中的log等同於我們國內的ln。之前那一文中提到了一般的梯度上公升的公式推導,但是在 機器學習實戰 一書中,實現的是分類方法,因此,雖然最終的結果相似,但是其實本質有很大的不同。一般來講我們把實物分成兩類,因此我們需要將結果對映到兩個結果 是或非 因為一般的階...
機器學習之梯度下降法 梯度下降法分析
梯度下降法的基本思想是函式沿著其梯度方向增加最快,反之,沿著其梯度反方向減小最快。在前面的線性回歸和邏輯回歸中,都採用了梯度下降法來求解。梯度下降的迭代公式為 j j j j 在回歸演算法的實驗中,梯度下降的步長 為0.01,當時也指出了該步長是通過多次時間找到的,且換一組資料後,演算法可能不收斂。...
機器學習之梯度下降法
1 批量 梯度下降 使用整個訓練集的優化演算法被稱為批量 batch 梯度下降演算法。術語 批量梯度下降 指使用全部訓練集,而術語 批量 單獨出現時指一組樣本。2 隨機梯度下降 每次只使用單個樣本的優化演算法被稱為隨機 stochastic 梯度下降演算法。3 小批量梯度下降 大多數用於深度學習的演...