LR(Logistic Regression)深入理解

這篇文章是對部落格http://blog.csdn.net/cyh_24/article/details/50359055內容的搬運,個人感覺作者寫得很好,所以自己想從頭到尾“謄寫”一遍,以便理解透徹。謝謝作者的辛苦總結~
PS:因為實習,將近3個月沒有再寫論文筆記了,該篇算是一個開頭,後邊一定要保證每週一篇閱讀筆記。

該篇blog主要內容如下:

1. LR的數學理論
2. LR的求解推導過程
3. LR的正則化(正則化的概念)
4. logistic /linear regression的比較
5. LR和ME(最大熵)的關係
6. LR的並行化

首先需要清楚的是,LR(logistic regression)雖然是迴歸模型,但卻是經典的分類方法。
我們分開來看邏輯斯蒂和迴歸這兩個概念。

邏輯斯蒂
邏輯斯蒂是一種變數的分佈方式,和常見的指數分佈、高斯分佈等類似,它也有自己的概率分佈函式和概率密度函式,如下:

這裡寫圖片描述
他們的圖形如下圖所示:

這裡寫圖片描述

迴歸
我們為什說邏輯斯蒂模型是個分類模型而不是迴歸模型?這個迴歸到底是怎麼回事呢?下邊就來解決這一疑惑。
首先我們來看最簡單的二項logstic regression模型,它是由條件概率分佈來表示,即:
這裡寫圖片描述

此處引入幾個簡單的數學概念:

這裡寫圖片描述
可以看到,Y=1的對數機率是輸入x的線性函式,同時我們看到:
這裡寫圖片描述
即輸出Y的取值概率是由輸入x的線性函式決定的的,迴歸也就體現在這裡。

接下來就是第二個問題:LR模型的求解。

模型求解也就是模型引數的估計。因為邏輯斯蒂迴歸是典型的統計機器學習方法,所以經常用最大似然估計的方法。
這裡寫圖片描述

此處需要注意的是,我們經常見到的表述是目標函式的最小化,那麼為什麼這裡的是對似然的最大化呢?
這裡寫圖片描述
所以似然函式的最大化等價於損失函式的最小化。

解開了第一個疑惑,接下來我們就可以利用最大似然估計來求解模型引數啦。
引數求解常用的方法是梯度下降法(GD)。下邊是具體演算法實現過程。

這裡寫圖片描述

當模型引數很多,而我們可用的資料非常少時,極易出現過擬合的問題。為此,就引入了正則化。 其目的是使得引數空間受到一定的限制。

這裡寫圖片描述

上圖可以更直觀的理解欠擬合和過擬合問題。為了避免這種情況,一般都是在目標函式里加上正則項。即:
這裡寫圖片描述
首先介紹L2正則化,它也被稱為權重延遲或脊迴歸。此時的目標函式如下:
這裡寫圖片描述
可以看到,正則項的加入改變了引數的學習規則,它在引數的每一步更新中都新增了一個係數參量。
接下來我們來看看L1正則化:
這裡寫圖片描述

這兩個不同的的正則化方法對引數最優化存在著怎樣不同的影響呢?

這裡寫圖片描述
上圖分別是L2和L1正則化對應的圖,反應的是它們對引數優化的影響。給我們的直觀感受是L2對引數的正則更加的平滑,即它限制了引數空間,但對引數的影響是平滑的,不像L1那樣,直接使得某些引數的取值為0.
總結起來就是:L1會引入稀疏性,而L2會充分利用更多的特徵。

好。。。(有些累,先歇會兒~)

上邊說到,邏輯斯蒂迴歸是分類演算法,即根據現有的資料集對分類邊界線建立迴歸公式,尋求最佳的邊界直線/曲線的擬合。那它和線性迴歸存在著哪些的不同呢?
顧名思義,線性迴歸是假設輸入X和輸出Y之間滿足的是傳統的線性關係Y=WX,而在邏輯斯蒂迴歸中,假設輸入和輸出的關係滿足邏輯斯蒂函式,即:

這裡寫圖片描述

在使用線性迴歸時有幾個限制:

  1. 不應該使用這種方法來預測和建立模型時所使用的資料值相關差甚遠的值。
  2. 避免模型中自變數之間有較高的相關性。
  3. 對噪聲資料敏感。
  4. 一般假設誤差變數( error variances 或residuals)服從均值為0的正態分佈。
    而邏輯斯蒂迴歸在這些問題上能得到較好的解決。

還有兩個大問題亟待解決,今兒實在扛不住了,休息會兒。本週前將該專題寫完。嗯嗯。。。
參考資料:
【1】http://blog.csdn.net/cyh_24/article/details/50359055
【2】http://www.cnblogs.com/zhangchaoyang/articles/2640700.html
【3】統計機器學習(李航)
【4】機器學習實戰(Peter Harrington)