天天看點

【機器學習】為什麼回歸問題用 MSE?

作者:Matrix.小澤直樹

最近在看李沐的實用機器學習課程,講到regression問題的loss的時候有彈幕問:“為什麼要平方?”

如果是幾年前學生問我這個問題,我會回答:“因為做回歸的時候的我們的殘差有正有負,取個平方求和以後可以很簡單的衡量模型的好壞。同時因為平方後容易求導數,比取絕對值還要分情況讨論好用。”

但是經過了幾年的科研以後,我覺得這樣的回答太過于經驗性了,一定會有什麼更有道理的解釋,于是在知乎上搜了搜。

《CC思SS:回歸模型中的代價函數應該用MSE還是MAE[1]》 這篇文章中提到MSE對于偏差比較大的資料懲罰得比較多,但是會被outlier影響,同時MSE的優化目标是平均值,而MAE的優化目标是中位數。即如果我們的資料集足夠大,對于同一個x會有多個y,MSE的目标是盡可能讓我們的預測值接近這些y的平均值。同時這篇文章還提到在做gradient descent的時候,MSE的梯度可以在越接近最小值的地方越平緩,這樣不容易步子扯大了。而MAE的梯度一直不變,得手動調整learning rate。

《在回歸問題中,為何對MSE損失的最小化等效于最大似然估計?[2]》而這個問題裡有人提到“根據中心極限定理,誤差服從正态分布,此時使得樣本似然函數最大等價于使得MSE最小。” 這段話引起了我的興趣,在查閱了一些英文資料以後發現這是來自于花書的結論(Ian的《Deep Learning》)。

以下解釋來源于花書(5.5)和[這篇部落格][3]

要弄懂為什麼回歸問題要用MSE,首先要先明白什麼是極大似然估計MLE(Maximum Likelihood Estimation)。

極大似然估計MLE

用一個一維的資料來講解MLE的過程,假設我們有一組資料,我們假設它服從正态分布,我們的目的是:找到一組正态分布的均值和方差,使得在這套正态分布的均值方差下,我們觀測到這批資料的機率最大。

【機器學習】為什麼回歸問題用 MSE?

手上的資料

關于這組資料,我們先胡亂地猜測一下它符合的正态分布如下:

【機器學習】為什麼回歸問題用 MSE?

胡亂猜測的正态分布

對于這個正态分布,我們可以計算每個點出現的機率: 。其中 和 是這個正态分布的均值和方差, 是第 條資料,我們把每條資料出現的機率相乘,得到了“在這套正态分布的均值方差下,我們觀測到這批資料的機率”。

同樣的,我們可以猜測另一種正态分布:

【機器學習】為什麼回歸問題用 MSE?

另一種猜測的正态分布

同樣的,我們可以計算“在這套正态分布的均值方差下,我們觀測到這批資料的機率”。

最後,我們在這群待選的均值和方差中,選出那個能使我們觀測到這批資料的機率最大的均值和方差。也就是我們在做

回歸問題

現在我們再看回歸問題,對于回歸問題來說,我們的目标不是去找一個x的正态分布了。對于一個回歸問題,我們以最簡單的線性回歸舉例。對于一個回歸問題,我們的目标是 ,其中 和 是模型的參數,而 是噪聲,我們假設噪聲符合正态分布 。

那麼我們的 其實也可以看成符合正态分布(并不是嚴謹的寫法) ,其中 其實就是模型的預測值,也就是說 。

正态分布的probability density function是 ,帶入得到。

那麼也就是說,如果我們想最大化我們觀測到的 的情況的話,我們應該最大化上面這個pdf的連乘結果。注意到這個值由一個常數乘上一個 的次方項,優化的時候常數項可以忽略。

于是我們的目标變成了 ,這裡出現了連乘,又出現了 的次方項,很正常的想到取log,于是變成了

402 Payment Required

,忽略常數項,稍微整理一下得到

402 Payment Required

于是我們就證明了,我們在做線性回歸的時候,我們如果假設我們的噪聲符合高斯分布,那麼我們的目标函數就是MSE。

總結

很多時候,一些基礎知識可能會影響你對一個模型結果表現的了解,如果對這種基礎知識沒有概念的話,深度學習就變成了瞎調模型瞎調參數了。[另一篇部落格][4]就提到了,在做super resolution的時候,如果用MSE,做出來的圖檔會非常的模糊,就是因為MSE是基于高斯分布假設,最後的結果會盡可能地靠近高斯分布最高的地方,使得結果不會太sharp。以後還是得适時提高深度學習的理論基礎。

【機器學習】為什麼回歸問題用 MSE?

參考資料

REFERENCE

[1] CC思SS:回歸模型中的代價函數應該用MSE還是MAE

​​​https://zhuanlan.zhihu.com/p/45790146​​

[2] 在回歸問題中,為何對MSE損失的最小化等效于最大似然估計?

​​​https://www.zhihu.com/question/426901520​​

[3] https://link.zhihu.com/?target=https%3A//towardsdatascience.com/where-does-mean-squared-error-mse-come-from-2002bbbd7806

[4] https://link.zhihu.com/?target=https%3A//towardsdatascience.com/mse-is-cross-entropy-at-heart-maximum-likelihood-estimation-explained-181a29450a0b