2013-03-26 21 views
1

我試圖通過正則化(L1或L2)實現Logistic迴歸。 mnrfit()函數不實現正則化。有沒有可以進行正規化的內置函數,還是我必須推出我自己的正則化代碼? 如果是這樣,是否有任何我可以看的教程?我一直在尋找的論文在數學上相當密集。MATLAB中Logistic迴歸係數的規範化

回答

1

L1以及L2正規化是很容易實現。

L1正則化通過在每個訓練步驟之後減去固定金額來計算您的權重的絕對值。因此,例如,L1正則化係數0.01,你的權重(1.0,-2.0,3.0)將變成(0.99,-1.99,2.99)。

L2正則化的工作原理是減去百分比的權重。係數爲0.01時,這意味着將您的權重向量乘以1. - 0.01 = 0.99。權重(1.0,-2.0,3.0)將變爲(0.99,-1.98,2.97)。這也被稱爲重量衰減

正如你可以看到,L1正規化拉動朝着在另一側上爲0 L2正規化小權重對權重小几乎沒有影響,但大大減少了權重。