偏差-方差均衡(Bias-Variance Tradeoff)


眾所周知,對於線性回歸,我們把目標方程式寫成:

(其中,f(x)是自變量x和因變量y之間的關系方程式,表示由噪音造成的誤差項,這個誤差是無法消除的)

 

對y的估計寫成:

 

就是對自變量和因變量之間的關系進行的估計。一般來說,我們無從得之自變量和因變量之間的真實關系f(x)。假設為了模擬的緣故,我們設置了它們之間的關系(這樣我們就知道了它們之間的真實關系),但即便如此,由於有這個irreducible error,我們還是無法得之真正的y是多少。當然,這並沒有關系。因為我們想要知道的就是自變量和因變量之間的一般性關系,不需要把噪音計算進去。

 

通常我們使用一組訓練數據讓某個算法來進行學習,然后得到一個模型,這個模型能使損失函數最小。但是我們想要知道的是模型的泛化能力,也就是說我們需要模型在所有數據上都表現良好,而不僅僅是訓練數據。假設我們知道所有的數據,然后把這些數據分成n組,我們把這n組數據在模型上進行測試,得到n個不同的損失函數。如果這些損失函數的平均值最小,也就是說真實數值和估計數值之間的差異平方的期望值最小,那就說明這個模型最理想。

 

此期望值的公式如下:

 

其中:

σ2的方差

 

公式的推導過程如下(為簡便起見,f(x)縮寫成f,f(x)-hat縮寫成f-hat):

 

翻譯成人話就是:

總泛化誤差(Total Generalization Error) = 偏差(Bias) + 方差(Variance) + 無法消除的誤差項(Irreducible Error)

 

我們要使總誤差最小,就要想辦法減少偏差和方差,因為最后一項是無法減少的。

 

現在讓我們來看一下偏差和方差到底是什么。

 

偏差(bias)是指由於錯誤的假設導致的誤差,比如說我們假設只有一個自變量能影響因變量,但其實有三個;又比如我們假設自變量和因變量之間是線性關系,但其實是非線性關系。其描述的是期望估計值和真實規律之間的差異。

方差(variance)是指通過n組訓練數據學習擬合出來的結果之間的差異。其描述的是估計值和平均估計值之間差異平方的期望。

 

如果看了以上內容還是有點懵,那么看下面這張經典的圖便可以理解:

學習n次就相當於投靶n次。如果偏差小,同時方差又小,那就相當於每次都幾乎正中靶心。這樣的結果當然是最好的。如果偏差大,即使方差再小,那么投靶結果也還是離靶心有一段距離。反之,如果偏差小,但是方差很大,那么投靶結果將散布在靶心四周。

 

有人也許會說,只要偏差小,就算方差大一點也無所謂啊,只要把多次學習的結果平均一下,還是可以預測准確的;而如果偏差大的話,那就是連基本面都錯了。但是這種認為減少偏差比減少方差更重要的想法是錯誤的,因為通常我們只有一組數據,而不是n組,我們的模型是依據我們已有的那組數據得出來的。因此,偏差和方差同樣重要。

 

那么有沒有可能讓偏差小的同時又讓方差小呢?這樣我們不就能得到最好的結果了嗎?但通過多次實驗表明,事實不如人願。

                                                 圖1           

                       

                                                  圖2

 

紅線是真實規律,左圖藍線是多次學習的結果,右圖藍線是平均結果。

圖1是使用簡單模型多次擬合的結果,可以看到其多次擬合的結果之間相差不大,但是平均結果和真實規律相差較大(也就是方差小,偏差大);圖2是使用較復雜的模型多次擬合的結果,可以看到其多次擬合的結果之間相差較大,但是平均結果和真實規律相差不大(也就是方差大,偏差小)。

 

總結來說就如下圖所示,簡單的模型偏差大,方差小;復雜的模型則相反,偏差小,方差大。隨着模型越來越復雜,偏差逐漸減小,方差逐漸增大。我們發現無法在減少偏差的同時也減少方差。因此,我們需要找到一個折中的方案,即找到總誤差最小的地方,這就叫做偏差-方差均衡(Bias-Variance Tradeoff)

 

偏差-方差均衡這一概念貫穿整個機器學習,你隨處都能見到它的身影。因此理解這一概念非常重要。

 

那么怎樣才知道自己的模型是偏差大還是方差大呢?

高偏差:訓練集誤差大,驗證集誤差和訓練集誤差差不多大

高方差:訓練集誤差小,驗證集誤差非常大

 

可以用學習曲線(Learning Curves)來查看模型是高偏差還是高方差。學習曲線會展示誤差是如何隨着訓練集的大小的改變而發生變化的,我們會監控兩個誤差得分:一個針對訓練集,另一個針對驗證集。

 

下圖深藍曲線代表隨訓練樣本數變化而變化的訓練誤差,淺藍曲線則代表驗證誤差。

 

高偏差:

 

高方差:

 

理想曲線:

 

又是如何解決高偏差或高方差問題呢?

高偏差問題:1,使用更復雜的模型

                      2,加入更多的特征

高方差問題:1,獲取更多的數據

                      2,減少特征

                      3,正則化

 

以下是流程圖:

 

 

偏差-方差的分解公式只在基於均方誤差的回歸問題上可以進行推導,但通過實驗表明,偏差-方差均衡無論是對回歸問題還是分類問題都是適用的。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM