为什么回归问题用MSE?
文 | Matrix.小澤直樹
最近在看李沐的實用機器學習課程,講到regression問題的loss的時候有彈幕問:“為什么要平方?”如果是幾年前學生問我這個問題,我會回答:“因為做回歸的時候的我們的殘差有正有負,取個平方求和以后可以很簡單的衡量模型的好壞。同時因為平方后容易求導數(shù),比取絕對值還要分情況討論好用。”
但是經(jīng)過了幾年的科研以后,我覺得這樣的回答太過于經(jīng)驗性了,一定會有什么更有道理的解釋,于是在知乎上搜了搜。
《CC思SS:回歸模型中的代價函數(shù)應該用MSE還是MAE[1]》 這篇文章中提到MSE對于偏差比較大的數(shù)據(jù)懲罰得比較多,但是會被outlier影響,同時MSE的優(yōu)化目標是平均值,而MAE的優(yōu)化目標是中位數(shù)。即如果我們的數(shù)據(jù)集足夠大,對于同一個x會有多個y,MSE的目標是盡可能讓我們的預測值接近這些y的平均值。同時這篇文章還提到在做gradient descent的時候,MSE的梯度可以在越接近最小值的地方越平緩,這樣不容易步子扯大了。而MAE的梯度一直不變,得手動調(diào)整learning rate。
《在回歸問題中,為何對MSE損失的最小化等效于最大似然估計?[2]》而這個問題里有人提到“根據(jù)中心極限定理,誤差服從正態(tài)分布,此時使得樣本似然函數(shù)最大等價于使得MSE最小。” 這段話引起了我的興趣,在查閱了一些英文資料以后發(fā)現(xiàn)這是來自于花書的結(jié)論(Ian的《Deep Learning》)。
以下解釋來源于花書(5.5)和[這篇博客][3]
要弄懂為什么回歸問題要用MSE,首先要先明白什么是極大似然估計MLE(Maximum Likelihood Estimation)。
極大似然估計MLE
用一個一維的數(shù)據(jù)來講解MLE的過程,假設(shè)我們有一組數(shù)據(jù),我們假設(shè)它服從正態(tài)分布,我們的目的是:找到一組正態(tài)分布的均值和方差,使得在這套正態(tài)分布的均值方差下,我們觀測到這批數(shù)據(jù)的概率最大。
手上的數(shù)據(jù)
關(guān)于這組數(shù)據(jù),我們先胡亂地猜測一下它符合的正態(tài)分布如下:
胡亂猜測的正態(tài)分布
對于這個正態(tài)分布,我們可以計算每個點出現(xiàn)的概率: 。其中 和 是這個正態(tài)分布的均值和方差, 是第 條數(shù)據(jù),我們把每條數(shù)據(jù)出現(xiàn)的概率相乘,得到了“在這套正態(tài)分布的均值方差下,我們觀測到這批數(shù)據(jù)的概率”。
同樣的,我們可以猜測另一種正態(tài)分布:
另一種猜測的正態(tài)分布
同樣的,我們可以計算“在這套正態(tài)分布的均值方差下,我們觀測到這批數(shù)據(jù)的概率”。
最后,我們在這群待選的均值和方差中,選出那個能使我們觀測到這批數(shù)據(jù)的概率最大的均值和方差。也就是我們在做
回歸問題
現(xiàn)在我們再看回歸問題,對于回歸問題來說,我們的目標不是去找一個x的正態(tài)分布了。對于一個回歸問題,我們以最簡單的線性回歸舉例。對于一個回歸問題,我們的目標是 ,其中 和 是模型的參數(shù),而 是噪聲,我們假設(shè)噪聲符合正態(tài)分布 。
那么我們的 其實也可以看成符合正態(tài)分布(并不是嚴謹?shù)膶懛?#xff09; ,其中 其實就是模型的預測值,也就是說 。
正態(tài)分布的probability density function是 ,帶入得到
402 Payment Required
。那么也就是說,如果我們想最大化我們觀測到的 的情況的話,我們應該最大化上面這個pdf的連乘結(jié)果。注意到這個值由一個常數(shù)乘上一個 的次方項,優(yōu)化的時候常數(shù)項可以忽略。
于是我們的目標變成了 ,這里出現(xiàn)了連乘,又出現(xiàn)了 的次方項,很正常的想到取log,于是變成了 ,忽略常數(shù)項,稍微整理一下得到
402 Payment Required
。于是我們就證明了,我們在做線性回歸的時候,我們?nèi)绻?strong>假設(shè)我們的噪聲符合高斯分布,那么我們的目標函數(shù)就是MSE。
總結(jié)
很多時候,一些基礎(chǔ)知識可能會影響你對一個模型結(jié)果表現(xiàn)的理解,如果對這種基礎(chǔ)知識沒有概念的話,深度學習就變成了瞎調(diào)模型瞎調(diào)參數(shù)了。[另一篇博客][4]就提到了,在做super resolution的時候,如果用MSE,做出來的圖片會非常的模糊,就是因為MSE是基于高斯分布假設(shè),最后的結(jié)果會盡可能地靠近高斯分布最高的地方,使得結(jié)果不會太sharp。以后還是得適時提高深度學習的理論基礎(chǔ)。
后臺回復關(guān)鍵詞【入群】
加入賣萌屋NLP/IR/Rec與求職討論群
后臺回復關(guān)鍵詞【頂會】
獲取ACL、CIKM等各大頂會論文集!
?
[1] CC思SS:回歸模型中的代價函數(shù)應該用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
總結(jié)
以上是生活随笔為你收集整理的为什么回归问题用MSE?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做一个好的搜索引擎有多难
- 下一篇: 「小算法」回文数与数值合法性检验