7、Logistic回歸
logistic回歸是使用最多的分類算法
二分類
預測值:yε{0, 1}, 0代表負類(No, 假設不成立);1代表正類(Yes,假設成立)
應用:郵件分類(垃圾郵件 or 非垃圾郵件)
假設函數
logistic函數又稱Sigmoid函數,是一個在生物學中常見的S型函數,也稱為S型生長曲線。由於其單增以及反函數單增等性質,常被用作神經網絡等閥值函數,將變量映射到0-1之間,所以logistic函數到預測值:0≤y≤1
logistic方程式:g(z) = 1/(1 + e-z),0≤g(z)≤1
線性回歸假設函數:h(x) = θTx
所以,logistic假設函數:h(x) = g(θTx) = 1/(1 + e-θT
logistic模型解釋
因為預測值y只能取值0或者1,根據概率在給定參數θ下概率P(y=1)和P(y=0)的和為1,即:P(y=0;θ) + P(y=1;θ) = 1
決策界限
根據logistic圖形
- h(z)≥0.5,y=1; 由h(z)=g(θTx)≥0.5,推出z≥0, 即θTx≥0
- h(z)<0.5,y=0;由h(z)=g(θTx)<0.5,推出z<0, 即θTx<0
所以z=0是假設函數的決策界限,決策界限是假設函數的一個屬性,它把假設函數圖形分成兩半:y=0和y=1
損失函數
訓練集:{(x1,y1),(x2,y2),(x3,y3),...,(xm,ym
X = [x0 x1 ... xm]T, x0=1, yε{0, 1}
h(x) = 1/(1 + e-θTx)
線性回歸損失函數:J(θ)=Σ(h(xi)-yi)2/m, iε{1, m}
令Cost(h(xi),yi)=(h(xi)-yi)2
所以,J(θ)=Σ(h(xi)-yi)2/m=ΣCost(h(xi),yi)/m, iε{1, m}
損失函數:
- Cost(h(x), y)=-log(h(x)), y=1
- Cost(h(x), y)= -log(1-h(x)), y=0
結合圖形:
1、當y=1:
- h(x)=1時,Cost=0,損失函數值最小
- h(x)=0時,Cost=∞,損失函數值最大
2、當y=0:
- h(x)=0時,Cost=0,損失函數值最小
- h(x)=1時,Cost=∞,損失函數值最大
簡化損失函數和梯度下降
J(θ)=Σ(h(xi)-yi)2/m=ΣCost(h(xi),yi)/m, iε{1, m}
Cost(h(x), y)=-log(h(x)), y=1
Cost(h(x), y)= -log(1-h(x)), y=0
簡化損失函數:
Cost(h(x), y)=-log(h(x))-(1-y)log(1-h(x))
所以梯度下降:J(θ)=Σ(h(xi)-yi)2/m=-Σyilog(h(xi))+(1-yi)log(1-h(xi))/m, iε{1, m}
簡化損失函數和梯度下降
minJ(θ): repeat{ θj := θj-α(?/?θj)J(θ)}
梯度下降和縮放同樣適用於logistic回歸
高級優化方法
- cojugate gradient
- BFGS
- L-BFGS
以上三種算法的優點:不需要選擇學習率,比梯度下降收斂速度快
缺點:比梯度下降算法復雜
多分類問題
簡化為二分類問題來處理,比如三分類簡化為三個二分類來處理
7、Logistic回歸