機器學習算法中最終優(yōu)化的為模型的損失函數(shù),而損失函數(shù)各種各樣,對于不同的模型,選擇什么樣的損失函數(shù)才比較合適。本文主要記錄損失函數(shù)的種類以及適用場景。
機器學習算法主要解決分類問題和回歸問題兩大類,因此損失函數(shù)主要也可以分成這兩大類別。
分類損失
Hinge Loss(合頁損失函數(shù))
hinge loss通常被用于最大間隔算法(Maximum margin),例如SVM支持向量機算法。

image.png
當樣本被正確分類()時,損失函數(shù)的值為0,否則損失函數(shù)值為
。
而的絕對值表示的是樣本距離決策邊界的遠近程度,絕對值越大,表示樣本距離決策越遠。
hinge損失函數(shù)表示分類器不僅需要正確分類,而且需要確信度足夠高時,損失才會是0,即hinge loss對學習的要求更高。
交叉熵損失函數(shù)
交叉熵刻畫兩個概率分布之間的距離,因此將交叉熵作為損失函數(shù)可以很好的刻畫真實數(shù)據(jù)集和訓練測試集之間的相似性。
現(xiàn)在有一個樣本集中兩個概率分布p,q,其中p為真實分布,q為非真實分布。假如,按照真實分布p來衡量識別一個樣本所需要的編碼長度的期望為:
但是,如果采用錯誤的分布q來表示來自真實分布p的平均編碼長度,則應該是:
此時就將稱之為交叉熵。
交叉熵損失函數(shù)為:
當實際標簽為 1時,函數(shù)的只剩前半部分,而當實際標簽是為 0 時,函數(shù)只剩后半部分,即我們只是把對真實值類別的實際預測概率的對數(shù)相乘。
回歸損失
均方誤差(Mean Square Error),L2損失
均方誤差(MSE)是最常用的回歸損失函數(shù)。MSE是目標變量與預測值之間距離平方之和。
平均絕對誤差(Mean Absolute Error),L1損失
平均絕對誤差(MAE)是另一種用于回歸模型的損失函數(shù)。MAE是目標變量和預測變量之間差異絕對值之和。