更多深度學習資訊都在公衆號:DLCV
主要內容: 0-1,Hinge,Logistic,Cross Entropy,Square,Absolute,Huber
簡述: 損失函數刻畫了模型與訓練樣本的匹配程度。
分類損失
1. 對於二分類問題,Y={1,-1},我們希望signf(xi,θ)=y1
0-1損失:L0−1(f,y)=1f.y≤0
最自然的損失函數是0-1損失,表示的是,當且僅當預測爲真的時候取值爲1,否則取值爲0。該損失函數能夠直觀的刻畫分類的錯誤率,但是由於其非凸、非光滑的特點,使得算法很難直接對該函數進行優化。
Hinge損失:Lhinge(f,y)=max0,1−f.y
Hinge損失函數是0-1損失函數相對緊的凸上界,且當f.y≤1時候,該函數不對其做任何處罰。由於Hinge損失在f.y=1處不可導,因此不能使用梯度下降算法優化,而是使用次梯度下降法。
Logistic損失函數:Llogistic=log2(1+exp(−f.y))
Logistic損失函數也是0-1損失函數的凸上界,且該函數處處光滑,因此可以使用梯度下降法進行優化。但是,該函數對所有樣本點都做懲罰,因此對異常點更爲敏感。
Cross Entropy:Lcross_entropy=−log2((1+f.y)/2)
交叉熵損失函數是常用的二分類損失函數。交叉熵損失函數也是0-1損失的光滑凸上界。
迴歸損失
1.對於迴歸問題,我們期望f(xi,θ)≈yi
Square損失:Lsquare(f,y)=(f−y)2
平方損失函數是光滑函數,能夠使用梯度下降法優化。然而當預測值距離真是隻越遠時,平方損失函數的懲罰力度越大,因此對異常點比較敏感。
Absolute損失:Labsolute(f,y)=∣f−y∣
絕對損失函數相當於在做中值迴歸,相比做均值迴歸的平方損失函數,絕對損失函數對異常點更魯棒。但是,絕對損失函數在f=y處無法求導。
Huber損失:Lhuber(f,y)={(f−y)2,∣f−y∣≤δ2δ∣f−y∣−δ2,∣f−y∣>δ}
Huber損失函數在|f-y|較小時爲平方損失,在|f-y|較大的時採用線性損失,處處可導,且對異常點魯棒。
更多內容請關注公衆號:知識交點