【機器學習經典算法源碼分析系列】-- 邏輯回歸


1.邏輯回歸(Logistic Regression)又常被成為“邏輯斯蒂回歸”,實質上是一個二元分類問題。

邏輯回歸代價函數:

 

代價函數導數:

Matlab實現:

 

采用matlab中自帶的無約束最小化函數fminunc來代替梯度下降法(避免學習率的選擇)。

fminunc高級函數的使用參考:http://blog.csdn.net/gzp444280620/article/details/49272977

  

自定義函數與fminunc函數之間的調用關系:

 

對於二維線性或者非線性問題,我們可以通過畫出決策邊界來可視化數據集,從而更直觀判斷模型的准確度。

 

對於可以用簡單線性划分的數據集,不需要進行模型復雜度和正則化處理,應用起來往往很簡單。

 

2.非線性決策邊界問題:

對於邊界復雜問題,簡單的線性邊界划分無法實現,需要增加特征變量的階數來實現非線性划分。這樣就會導致模型的復雜度增加,如何權衡模型的准確度和復雜度?——正則化處理。

 

1)非線性模型復雜度的選擇:下面的代碼只針對二維特征變量,單一特征變量的最高階數可以自行試湊。

 

2)正則化參數的選擇:

過小:對模型復雜度懲罰不夠,過擬合

過大:模型太過簡單,訓練准確率下降,欠擬合

 

 

正則化處理后的代價函數:

 

代價函數導數:

正則化代碼:

 

 

PS: 應用邏輯回歸模型也可以進行多類分類,處理方法是多次重復進行二分類,每次選擇一個正向類,其余各類都視作負向類。

 

個人筆記:http://www.cnblogs.com/always-chang/p/5935655.html

源碼分析:http://pan.baidu.com/s/1nu7rwVZ 密碼:2ra2


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM