邏輯回歸損失函數(cost function)


邏輯回歸模型預估的是樣本屬於某個分類的概率,其損失函數(Cost Function)可以像線型回歸那樣,以均方差來表示;也可以用對數、概率等方法。損失函數本質上是衡量”模型預估值“到“實際值”的距離,選取好的“距離”單位,可以讓模型更加准確。

1. 均方差距離

\[{J_{sqrt}}\left( w \right) = {\sum\limits_{i = 1}^m {{y_i}\left( {1 - p\left( {{x_i};w} \right)} \right)} ^2} + \left( {1 - {y_i}} \right){\left( {0 - p\left( {{x_i};w} \right)} \right)^2}{\rm{      (1)}}\]

用均方差作為損失函數,當模型完全預估錯誤時(y=1, p=0; 或y=0, p=1),損失是1。預估正確時,損失是0。錯誤值離正確值的“距離”相對較小,區分度不大。

另外,上面的損失函數相對\(\theta \)並非是凸函數,而是有很多極小值(local minimum)的函數。因此,很多凸優化的算法(如梯度下降)無法收斂到全局最優點。

2. log距離

 均方差作為LR模型的距離衡量標准,最“預估錯誤”的懲罰太過柔和。因此,最后訓練出來的模型會出現較多的“極端”預估錯誤情況。另外,均方差損失函數的非凸性也限制了其使用價值。

log距離作為損失函數的公式如下:

\[{J_{\log }}\left( w \right) = \sum\limits_{i = 1}^m { - {y_i}Log\left( {p\left( {{x_i};w} \right)} \right) - (1 - {y_i})Log\left( {1 - p\left( {{x_i};w} \right)} \right)} {\rm{        (2)}}\]

式(2)與式(1)的區別如下圖所示:

 

3. 概率距離

LR模型預估的是概率,自然的,損失函數可以用聯合概率分布來衡量。

\[{J_{stat}}(w) =  - \prod\limits_{i = 1}^m {{{\left( {p({x_i};w)} \right)}^{{y_i}}}{{\left( {1 - p({x_i};w)} \right)}^{1 - {y_i}}}} {\rm{     (3)}}\]

比較式(2)和式(3)可知:

\[{J_{\log }}\left( w \right) = Log\left( {{J_{stat}}(w)} \right){\rm{     (4)}}\]

由於log函數為單調遞增函數,log距離和概率距離本質上是一樣的,訓練得到的結果也應該一致。

 


免責聲明!

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



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