邏輯回歸
1、 總述
邏輯回歸來源於回歸分析,用來解決分類問題,即預測值變為較少數量的離散值。
2、 基本概念
回歸分析(Regression Analysis):存在一堆觀測資料,希望獲得數據內在分布規律。單個樣本表示成二維或多維向量,包含一個因變量Y和一個或多個自變量X。回歸分析主要研究當自變量變化時,因變量如何變化,數學表示成Y=f(X),其中函數f稱為回歸函數(regression function)。回歸分析最終目的是找到最能代表已觀測數據的回歸函數。
分類:因變量Y為有限離散集,即y∈{1,2,3…}。利用訓練得到的回歸模型hθ(x)進行分類,設定閾值0.5。如果hθ(x)>=0.5,預測結果為“y=1”,相反hθ(x)<0.5,預測結果為“y=0”。這里hθ(x)的值可以>1 或<0。對於邏輯回歸分類來說,希望0<=hθ(x)<=1。
邏輯函數:也成為Sigmoid函數。線性回歸中hθ(x)=θTx,顯然無法限定輸出到0,1之間。所以邏輯回歸的Hypothesis表示為:hθ(x)=g(θTx)。這里g稱為Sigmoid函數,表達式為:g(z)=1/(1+e-z),圖形如下:

於是邏輯回歸的Hypothesis最終表示為hθ(x)=1/(1+e-θTx),含義是給定輸入x,參數化的θ(參數空間),輸出y=1的概率。也可表示為
hθ(x)=P(y=1|x;θ) (1)
對於二分類問題,P(y=1|x;θ)+ P(y=0|x;θ)=1,所以
P(y=0|x;θ)=1- P(y=1|x;θ) (2)
決策邊界(Decision boundary):對於hθ(x)同樣設定閾值0.5,當hθ(x)>=0.5時,y=1,此時θTx>=0。當hθ(x)<0.5時,y=0,此時θTx<0。所以可以認為θTx=0是一個決策邊界。
代價函數(Cost function):線性回歸代價函數定義為:
可以簡寫為:
上述代價函數為凸函數,對於凸函數來說局部最小值即為全局最小值,所以只要求得一個局部極小值,該點一定為全局極小值點。將邏輯回歸hθ(x)=1/(1+e-θTx)代入上面的代價函數,會存在問題即函數“非凸”的,所以需要引入其它代價函數。
邏輯回歸代價函數定義為:
當y=1時,函數曲線如下:
當y=1,hθ(x)=1時,cost為0,也就是預測值與真實值完全相等時,代價為0.當hθ(x)->0時,cost->∞。當hθ(x)=0,也就是P(y=1|x;θ)=0,也就是預測y=1的概率為0,此時懲罰cost值趨向無窮大。
同樣的,y=0情況類似。
簡化代價函數及梯度下降求解:邏輯回歸的代價函數可以簡寫為:

中括號中式子為對邏輯回歸函數進行最大似然估計求解的最大似然函數,對最大似然函數求最大值,從而得到參數θ的估計。具體推導留到下節。這里類似,求解代價函數取的最小值時的參數θ。含義不同,實際上公示一樣。與線性回歸類似,可以利用梯度下降法求解參數θ。

優化求解算法:共軛梯度(Conjugate gradient)、BFGS、L-BFGS算法。優點是不需要人工挑選學習步長α,通常速度比梯度下降法快。缺點通常更復雜。
3、 算法求解
最大似然估計求解:綜合式(1)和式(2)得到概率函數為:
似然函數為:
對數似然函數為:
可以看出代價函數J(θ)=-l(θ)/m。利用梯度上升法求對數似然函數取最大值的參數θ,等價於梯度下降法求代價函數J取最小值時的參數θ。
梯度下降法求解:
其中,用到了下面的求導公示:
最終結果為:
4、 附錄
代價函數:監督學習問題是在假設空間F中選取模型f作為決策函數,對於給定的輸入X,由f(X)給出相應的輸出Y,這個輸出的預測值f(X)與真實Y可能不一致。用一個損失函數(loss function)或代價函數(cost function)來度量預測錯誤的程度。損失函數是f(x)和Y的非負實值函數,記做L(Y, f(X))。
參考
http://ilanever.com/article/detail.do;jsessionid=9A6E0C3D33ECADD6723113777AA6DE9C?id=260
http://52opencourse.com/125/coursera公開課筆記-斯坦福大學機器學習第六課-邏輯回歸-logistic-regression
李航:《統計學習方法》
http://blog.csdn.net/dongtingzhizi/article/details/15962797
http://blog.jasonding.top/2015/01/09/Machine%20Learning/【機器學習基礎】Logistic回歸基礎
http://www.cnblogs.com/jerrylead/archive/2011/03/05/1971867.html
