統計學習方法[6]——邏輯迴歸模型

統計學習方法由三個要素組成:方法=模型+策略+算法算法

模型是針對具體的問題作的假設空間,是學習算法要求解的參數空間。例如模型能夠是線性函數等。函數

策略是學習算法學習的目標,不一樣的問題能夠有不一樣的學習目標,例如經驗風險最小化或者結構風險最小化。學習

經驗風險最小化中常見的損失函數有:0-1損失函數、殘差損失函數、絕對值損失函數、平方損失函數、對數損失函數等等。spa

算法是按照上述策略求解模型的具體計算方法。模型定義了要求什麼,策略定義了按照什麼標準去求,算法則具體去解決。.net


線性迴歸模型blog

線性迴歸模型,衆所周知就是給定給定訓練集(Xi,Yi),模擬一個一次線性函數Y'=∑ΘiXi(模型),使得偏差J(Y,Y')儘量最小(策略)。同步

若是要用線性迴歸問題解決分類問題的話,須要將線性迴歸函數轉換成0-1分佈的函數,邏輯斯蒂函數就是這樣一個函數,能夠將值映射爲區間(0,1)上,同時又能很好的表示機率意義。博客

那麼如何求解參數使損失函數最小呢?io

固然能夠用暴力搜索全部的參數值Θ,可是效率確定很低,因此用有目標的(啓發式)搜索算法代替暴力搜索。這裏的目標就是上述損失函數最小策略。function

假設空間參數是經驗風險的函數!舉個例子,對於

若是Θ 0 一直爲 0, 則Θ 1與J的函數爲:
 
若是有Θ 0與Θ 1都不固定,則Θ 0、Θ 1、J 的函數爲:
 

梯度降低法

大體步驟以下:

一、隨機初始化參數Θ,並給定一個學習速率α(降低的步長)

二、求解目標函數(損失函數)相對於各個參數份量Θi的偏導數

三、循環同步迭代Θi直到達到終止條件(迭代次數或者一個偏差值)

 
降低的步伐大小很是重要,由於若是過小,則找到函數最小值的速度就很慢,若是太大,則可能會出現overshoot the minimum的現象;
下圖就是overshoot minimum現象:

 
若是Learning rate取值後發現J cost function增加了,則須要減少Learning rate的值;因此須要隨時觀察α值,若是J cost function變小了,則ok,反之,則再取一個更小的值。
下圖詳細的說明了梯度降低的過程:

 
下圖就是模型、策略、算法結合獲得統計學習方法的示例:

 

另外須要注意的是梯度降低法求解的是局部最優解(除非損失函數是凸的),跟初始點由很大的關係,能夠屢次取不一樣初始值求解後取最優值。

參考博客:http://blog.csdn.net/xiazdong/article/details/7950084

相關文章
相關標籤/搜索