tft每日頭條

 > 生活

 > 機器學習線性回歸的損失函數

機器學習線性回歸的損失函數

生活 更新时间:2025-02-21 09:02:42

每一個機器學習工程師都應該知道機器學習中這些常見的損失函數以及何時使用它們。

在數學優化和決策理論中,損失函數或成本函數将一個或多個變量的值映射為一個實數,該實數直觀地表示與該事件相關的一些"成本"。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)1

損失函數是機器學習算法中的一個重要部分,主要用于進行算法對特征數據集建模效果的評估,衡量算法的性能。

損失函數是每個樣本預測值和真實值的差值,而成本函數是所有損失函數的平均值。但是一般兩者語義沒有明顯的區分。 損失函數直接反映了機器學習模型的預測結果。一般而言,損失函數越低,所建立的模型所提供的結果就越好。所以損失函數被用于評估模型的性能,通常人們想要損失函數最小化。

廣義地說,損失函數根據應用場景可以分為兩大類:分類問題和回歸問題。在分類問題中,任務是預測問題所處理的所有類的各自概率。相反,在回歸問題中,任務是預測一組給定的獨立特征對學習算法的連續值。

假定符号如下:

n/m——訓練樣本的數量;

i——第i個訓練樣本;

y(i)——第i個樣本的真實值;

y_hat(i)——第i個樣本的預測值。

分類問題中的損失函數

1. 二值交叉熵損失/對數損失(Binary Cross-Entropy Loss / Log Loss)

這是分類問題中最為常見的損失函數。交叉熵損失随着預測概率準确度的提高而降低,能夠被用于反映分類模型(輸出為0-1之間的概率)的性能。

當類别數量為2時,是二值分類問題:

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)2

當類别數量大于2時,是多分類問題:

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)3

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)4

交叉熵損失公式由正則似然函數導出,但進行了對數處理。

1. 鉸鍊損失(Hinge Loss)

用于分類問題的第二個最常見的損失函數是鉸鍊損失函數,也是交叉熵損失函數的替代方法,主要用于支持向量機(SVM)模型評估。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)5

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)6

鉸鍊損失不僅對錯誤的預測做出懲罰,也對概率較低的正确預測做出懲罰。它主要用于分類标簽為-1和1的支持向量機分類器。使用過程中需要确保将惡性類标簽從0更改為-1。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)7

回歸問題中的損失函數

1. 均方誤差/二次損失/L2損失(Mean Square Error / Quadratic Loss / L2 Loss)

均方誤差是指真實值和預測值之間的平方差的均值。是最常用的回歸問題損失函數。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)8

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)9

相應的代價函數是這些平方誤差(MSE)的平均值。MSE損失函數通過平方化誤差來懲罰模型的誤差,這種性質使得MSE代價函數對異常值的魯棒性降低。因此,如果數據容易出現許多異常值,則不應使用它。

1. 平均絕對誤差/L1損失 (Mean Absolute Error / L1 Loss)

評價絕對誤差定義為實際值與預測值之間絕對差值的平均值。它是第二個最常用的回歸損失函數。它測量一組預測中誤差的平均大小,而不考慮它們的方向。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)10

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)11

相應的成本函數是這些絕對誤差(MAE)的平均值。與MSE損失函數相比,MAE損失函數對異常值具有更強的魯棒性。因此,如果數據有很多異常值,可以考慮使用它。

1. Huber損失/平滑平均絕對誤差(Huber Loss / Smooth Mean Absolute Error)

Huber損失函數是MSE和MAE的組合,當誤差較大時,取平均絕對誤差,當誤差變得很小時,取均方誤差。轉換條件由超參數(delta)控制。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)12

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)13

delta值的選擇非常關鍵,因為它決定了我們将什麼視為異常值。因此,與基于超參數值的MSE損失函數相比,Huber損失函數對異常值不太敏感。如果數據容易出現離群值,可以考慮使用它。

1. 對數餘弦損失(Log-Cosh Loss)

對數餘弦損失函數定義為預測誤差雙曲餘弦的對數。它是回歸任務中使用的另一個函數,比MSE損失函數平滑得多。它具有Huber損失函數的所有優點,而且它在任何地方都是兩次可微的,不像Huber損失函數不具有可微性質。而一些學習算法,如XGBoost使用牛頓法來尋找最佳值,因此需要二階導數(Hessian)。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)14

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)15

當x較小時,log(cosh(x))約等于(x**2)/2,當x較大時,約等于abs(x)-log(2)。這意味着"logcosh"的工作原理與均方誤差類似,但不會受到偶爾出現的顯著錯誤預測的強烈影響。

1. 分位數損失( Quantile Loss)

分位數是指一組中有一小部分樣本低于該值。顧名思義,分位數回歸損失函數用于預測分位數。對于一組預測,損失将是其平均值。

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)16

機器學習線性回歸的損失函數(機器學習常見的損失函數以及何時使用它們)17

當我們對預測一個區間而不是僅僅對點預測感興趣時,分位數損失函數是十分有用的。

作者:Sparsh Gupta

deephub翻譯組:Oliver Lee

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2025 - www.tftnews.com All Rights Reserved