邏輯迴歸
原來的線性迴歸函數:
hθ(x)=θT∗x
θT∗x==θ⋅x
表示兩個向量的內積, 即兩個向量做Dot-Product
在此基礎上增加Sigmoid函數,改成如下的邏輯迴歸函數:
hθ(x)=(1+e−θT∗x)1
其中:
hθ(x)=g(θT∗x)
g(z)=(1+e−z)1
決策界限
傳統的線性迴歸函數 θTx 假如表示成如下:
θ0+θ1x1+θ2x2
令θ=⎣⎡−311⎦⎤,可知:
x1+x2=3就是這個決策界限函數.
邏輯迴歸代價函數的簡單寫法
Cost(hθ(x),y)=−y∗log(hθ(x))−(1−y)∗log(1−hθ(x))
注意:這裏的log()函數相當於ln(),即以e爲底的對數.
最終代價函數如下:
J(θ)=1/m∗i=1∑mCost(hθ(x(i)),y(i))
J(θ)=−1/m∗i=1∑m[y(i)log(hθ(x(i)))+(1−y(i))log(1−hθ(x(i))]
最終對上式求得偏導數如下:
∂θj∂J(θ)=1/m∗i=1∑m(hθ(x(i))−y(i))xj(i)
其中求導過程如下:
這裏對複合函數求導:
令:
f1(θj)=y(i)log(hθ(x(i)))
u(θj)=hθ(x(i));g(u)=y(i)log(u);
∴f1′(θj)=g′(u)∗u′(θj)
∴f1′(θj)=u(θj)y(i)∗u′(θj)=hθ(x(i))y(i)∗u′(θj)
因爲:log′(x)=1/x
(ex)′=ex
g′(z)=g(z)∗(1−g(z))
u′(θj)=(1+e−θT∗x)2e−θT∗x∗xj(i)=hθ(x(i))∗(1−hθ(x(i)))∗xj(i)
∴f1′(θj)=y(i)∗(1−hθ(x(i)))∗xj(i)
又有:
f2(θj)=(1−y(i))log(1−hθ(x(i))
最終:
f2′(θj)=(1−y(i))∗1−hθ(x(i))−hθ(x(i))∗(1−hθ(x(i)))∗xj(i)
消去分子分母后得到:
f2′(θj)=−(1−y(i))∗hθ(x(i))∗xj(i)
所以:
∂θj∂J(θ)=1/m∗i=1∑m(f1′(θj)+f2′(θj))
∂θj∂J(θ)=−1/m∗i=1∑m(y(i)−hθ(x(i)))xj(i)
然後提出一個負號,最終求得偏導數如下:
∂θj∂J(θ)=1/m∗i=1∑m(hθ(x(i))−y(i))xj(i)