損失函數(shù)(loss function)又叫做代價函數(shù)(cost function),是用來評估模型的預(yù)測值與真實值不一致的程度,也是神經(jīng)網(wǎng)絡(luò)中優(yōu)化的目標(biāo)函數(shù),神經(jīng)網(wǎng)絡(luò)訓(xùn)練或者優(yōu)化的過程就是最小化損失函數(shù)的過程,損失函數(shù)越小,說明模型的預(yù)測值就越接近真是值,模型的健壯性也就越好。


常見的損失函數(shù)有以下幾種:
(1) 0-1損失函數(shù)(0-1 lossfunction):
0-1損失函數(shù)是最為簡單的一種損失函數(shù),多適用于分類問題中,如果預(yù)測值與目標(biāo)值不相等,說明預(yù)測錯誤,輸出值為1;如果預(yù)測值與目標(biāo)值相同,說明預(yù)測正確,輸出為0,言外之意沒有損失。其數(shù)學(xué)公式可表示為:
由于0-1損失函數(shù)過于理想化、嚴(yán)格化,且數(shù)學(xué)性質(zhì)不是很好,難以優(yōu)化,所以在實際問題中,我們經(jīng)常會用以下的損失函數(shù)進行代替。
(2)感知損失函數(shù)(Perceptron Loss):
感知損失函數(shù)是對0-1損失函數(shù)的改進,它并不會像0-1損失函數(shù)那樣嚴(yán)格,哪怕預(yù)測值為0.99,真實值為1,都會認(rèn)為是錯誤的;而是給一個誤差區(qū)間,只要在誤差區(qū)間內(nèi),就認(rèn)為是正確的。其數(shù)學(xué)公式可表示為

(3)平方損失函數(shù)(quadratic loss function):
顧名思義,平方損失函數(shù)是指預(yù)測值與真實值差值的平方。損失越大,說明預(yù)測值與真實值的差值越大。平方損失函數(shù)多用于線性回歸任務(wù)中,其數(shù)學(xué)公式為:

我們延伸到樣本個數(shù)為N的情況,此時的平方損失函數(shù)為:

(4)Hinge損失函數(shù)(hinge loss function):
Hinge損失函數(shù)通常適用于二分類的場景中,可以用來解決間隔最大化的問題,常應(yīng)用于著名的SVM算法中。其數(shù)學(xué)公式為:

其中在上式中,t是目標(biāo)值{-1,+1},y為預(yù)測值的輸出,取值范圍在(-1,1)之間。
(5)對數(shù)損失函數(shù)(Log Loss):
對數(shù)損失函數(shù)也是常見的一種損失函數(shù),常用于邏輯回歸問題中,其標(biāo)準(zhǔn)形式為:

上式中,y為已知分類的類別,x為樣本值,我們需要讓概率p(y|x)達到最大值,也就是說我們要求一個參數(shù)值,使得輸出的目前這組數(shù)據(jù)的概率值最大。因為概率P(Y|X)的取值范圍為[0,1],log(x)函數(shù)在區(qū)間[0,1]的取值為負(fù)數(shù),所以為了保證損失值為正數(shù)要在log函數(shù)前加負(fù)號。
(6)交叉熵?fù)p失函數(shù)(cross-entropy loss function):
交叉熵?fù)p失函數(shù)本質(zhì)上也是一種對數(shù)損失函數(shù),常用于多分類問題中。其數(shù)學(xué)公式為:

注意:公式中的x表示樣本,y代表預(yù)測的輸出,a為實際輸出,n表示樣本總數(shù)量。交叉熵?fù)p失函數(shù)常用于當(dāng)sigmoid函數(shù)作為激活函數(shù)的情景,因為它可以完美解決平方損失函數(shù)權(quán)重更新過慢的問題。