**值和目標值不等, 則為1, 否則為0
\[l(y,f(x))=
\begin
1, y\not=f(x) \\
0, y=f(x)
\end
\]0-1損失直接對應分類判別的錯誤與否, 可以理解為是乙個\(sign\)函式, 這樣的函式, 是不連續的, 非凸的, 感知機就是用的這種損失, 這種損失太嚴格
\[l(y,f(x))=|y-f(x)|
\]mae對於異常樣本具有很好的適應能力, 但它的損失往往不考慮方向, 導數不連續使得尋找最優解的過程低效
常見用於: 邏輯回歸
\[l(y, p(y|x))=-\log p(y|x)
\]log對數損失函式能非常好的表徵概率分布,在很多場景尤其是多分類,如果需要知道結果屬於每個類別的置信度,那它非常適合。但它對雜訊也比較敏感
\[l(y,f(x))=\sum (y-f(x))^2
\]常見於回歸問題
指數損失很少用, 出現在adaboost中
\[l(y,f(x))=e^
\]同樣的, 它對雜訊也是比較敏感的
二分類\[l(y,f(x))=-\frac\sum [y\ln f(x)+(1-y)\ln (1-f(x))]
\]多分類
\[l(y,f(x))=-\frac\sum y_i ln f(x)
\]在二分類任務中, 交叉煽損失也就是邏輯回歸裡面的對數損失, 或者說是對數似然損失.
多分類中的交叉熵, 是描述2個概率分布之間的差距, 它和kl散度也有著千絲萬縷的聯絡,
\[d_(p|q)=\sum_p(x_i)*\log p(x_i)-p(x_i)\log q(x_i)
\]可以看到, 等號右邊就是交叉熵, 左邊是熵
交叉熵也等於2個概率分布的kl散度加上真實分布的熵,這個真實的分布也可以理解為是我們的標籤, 另乙個概率分布也就是**值, **值是乙個概率分布, 所以這也是為什麼交叉熵常常和softmax聯絡起來的原因
在深度學習的損失評估中,相對熵(kl散度)可以比較兩個分布(真實分布和**結果的分布)的差異。當訓練資料給定,其真實分布是確定的。比如多分類問題中,一張的結果是貓,無論模型怎麼優化,其**結果是不確定的,但真實的label就是貓, 此時, 左邊的熵,就是真實值的分布, 是乙個常數, 已知的常數, 它對於損失函式的比較和梯度下降沒有幫助, 所以可以丟掉, 直接用交叉熵
常用損失函式
自己隨便亂粘的,自用 1 logloss對數損失函式 對數損失,即對數似然損失 log likelihood loss 也稱邏輯斯諦回歸損失 logistic loss 或交叉熵損失 cross entropy loss 是在概率估計上定義的.它常用於 multi nominal,多項 邏輯斯諦回歸...
常用損失函式詳解
1 平方損失 平方損失也可以理解為是最小二乘法,一般在回歸問題中比較常見,最小二乘法的基本原理是 最優擬合直線是使各點到回歸直線的距離和最小的直線,即平方和最。同時在實際應用中,均方誤差也經常被用為衡量模型的標準 2 對數損失 一般的概率模型或者是分類問題,大都使用對數損失函式作為衡量損失的標準,首...
深度學習常用損失函式
損失函式的作用是衡量實際輸出與預計輸出之間的差異,損失函式的設計是深度學習中十分重要的部分,不僅會影響到訓練的速度,還會影響隱含層中資料的分布情況。目前僅僅是總結了部分常用損失函式的計算方法,其中涉及很多統計學最優化知識,對此僅僅是淺嘗輒止,其中更多的原理還需要以後慢慢總結體會,以下僅簡要記錄其計算...