Logistic回歸
1、介紹
Logistic回歸主要用於二分類。屬於監督學習算法的一種。
2、過程
1)logistic sigmoid函數
其具體公式為:
下圖給出了其圖像:
當x為0時,其函數值為0.5,隨著x的增大,對應的函數值會逼近於1;隨著x的減少,其值會趨於0.當橫坐標刻度足夠大時,其看上去會像一個階躍函數。
采用該函數進行回歸時,可以在每個特征上乘以一個回歸系數,然後把結果相加,總和代入函數中,當函數值大於0.5的被分為1類,否則分為0類。
那麽,怎麽確定回歸系數呢?
假設一個數據含有n個特征值,記為x1,x2,…,xn,對應的回歸系數記為w1,w2,w3,…,wn,那麽我們可以以矩陣(向量)的形式來表示:
其中:
現在我們需要確定W列向量中每個變量的值。
假設有P0和P1兩個條件概率:
P0表示在當前W、X的情況下,函數值(我們記為y)為0,即當前數據被分到0類的概率,P1表示被分到1類的概率。
因此我們得到概率函數為:
該函數是指,y為1時,就只考慮其為1的概率;y為0時,只考慮為0的概率。我們需要找到合適的W,然後最大化這個概率,盡可能使其分類正確。
2)最佳回歸系數確定--基於最優化方法
假定樣本與樣本之間相互獨立,那麽整個樣本集分類正確的概率即為所有樣本分類正確的概率的乘積(似然估計函數),這裏我們設總樣本數目為m:
其中,y(i)表示第i個樣本的分類,X(i)
我們通過對該算式取對數ln()進行簡化(對數似然函數):
滿足該函數最大的W即為我們所要求解的值(最大似然估計值)。
梯度上升法
我們通過用梯度上升法來求其局部極大值(也可以取負對數采用梯度下降法)。即讓參數W沿著該函數梯度上升的方向變化:
其中,α為步長,即表示向梯度上升方向移動的距離。
對於函數σ(z),其對z的導數為:
接下來,我們對l(W)求偏導:
由於:
所以有:
因此,最後梯度上升的叠代公式為:
如果把m個樣例的特征及其正確分類按行排成矩陣:
其中第i行表示第i個樣例的n個特征及其分類。
這樣,式13可更改為:
接下來,只需要確定步長α和適宜的叠代次數即可通過X這一訓練樣本得到符合要求的W,通過W結合logistic sigmoid函數來估計測試數據的分類。
梯度下降法
將對數似然函數乘以一個負系數:
此時可將該式理解為對數損失函數。
此時需要求使得J(W)最小的W值,采用梯度下降法:
對J(W)求偏導:
因此式17可改為:
將X,Y改寫成矩陣(式14所示),並可將常數1/m省略,則有:
Logistic回歸