1. logistic回歸的基本思想
logistic回歸是一種分類方法,用於兩分類問題。其基本思想為:
a. 尋找合適的假設函數,即分類函數,用以預測輸入數據的判斷結果;
b. 構造代價函數,即損失函數,用以表示預測的輸出結果與訓練數據的實際類別之間的偏差;
c. 最小化代價函數,從而獲取最優的模型參數。
2. 邏輯回歸的過程
邏輯函數(sigmoid函數):
該函數的圖像:
假設函數(分類函數):
判定邊界:
線性邊界和非線性邊界如下:
圖1 線性邊界 圖2 非線性邊界
線性邊界的邊界形式:
非線性邊界的邊界形式可表示為:
hθ(x)函數的值表示結果取1的概率,因此對於輸入x分類結果為類別1和類別0的概率分別為:
(概率公式)
代價函數為:
其中:
,
等價於:
代入得到代價函數:
這樣構建的 Cost(hθ(x),y)函數的特點是:當實際的 y=1 且 hθ 也為 1 時誤差為 0,當 y=1 但 hθ 不為 1 時誤差隨着 hθ 的變小而變大;當實際的 y=0 且 hθ 也為 0 時代價為 0,當 y=0且hθ 不為 0 時誤差隨着 hθ 的變大而變大。
實際上,Cost函數和J(θ)函數是基於最大似然估計推導得到的。
前面的概率公式可簡化為:
對應的似然函數為:
對數似然函數為:
最大似然估計就是要求得使l(θ)取最大值時的θ,其實這里可以使用梯度上升法求解,求得的θ就是要求的最佳參數。
前面提到的代價函數即可表示為:
梯度下降法求J(θ)的最小值
使用梯度下降法求J(θ)的最小值,θ的更新過程:
其中:α學習步長。
求偏導:
更新過程可改寫為:
α為一常量,所以1/m一般將省略,所以最終的θ更新過程為:
求解過程中用到如下的公式:
梯度下降算法的向量化解法:
訓練數據的矩陣形式表示如下,其中x的每一行為一條訓練樣本。
參數θ的矩陣形式為:
計算x.θ(點乘)並記為A:
求hθ(x)-y並記為E:
g(A)的參數A為一列向量,所以實現g函數時要支持列向量作為參數,並返回列向量。由上式可知hθ(x)-y可以由g(A)-y一次計算求得。
θ更新過程,當j=0時:
θj同理:
綜合起來:
綜上所述,vectorization后θ更新的步驟如下:
(1)求A=x.θ;
(2)求E=g(A)-y;
(3)求θ:=θ-α.x'.E,x'表示矩陣x的轉置。
也可以綜合起來寫成:
正則化邏輯回歸:
假設函數:
梯度下降法最小化該代價函數:
參考:
1. andrew ng機器學習視頻
2. http://blog.csdn.net/dongtingzhizi/article/details/15962797