1. 程式人生 > >偏差與方差,欠擬合與過擬合

偏差與方差,欠擬合與過擬合

機器學習的核心在於使用學習演算法建立模型,對已建立模型的質量的評價方法和指標不少,本文以準確率(也稱為精度)或判定係數(Coefficient of Determination)作為效能指標對模型的偏差與方差、欠擬合與過擬合概念進行探討。偏差、方差、欠擬合、過擬合均是對模型(學習器)質量的判斷和描述,訓練集和驗證集(測試集)上的準確率或判定係數得分為做出上述判斷提供依據。


偏差(Bias)

偏差指預測輸出與真實標記的差別,記為:
這裡寫圖片描述
偏差度量了學習演算法的期望預測與真實結果的偏離程度,即刻畫了學習演算法本身的擬合能力。

方差(Variance)

方差指一個特定訓練集訓練得到的函式,與所有訓練集得到平均函式的差的平方再取期望,記為:
這裡寫圖片描述


方差度量了同樣大小的訓練集的變動所導致的學習效能的變化,即刻畫了資料擾動所造成的影響。方差表示所有模型構建的預測函式,與真實函式的差別有多大。

偏差-方差示意圖

偏差與方差的區別可用如下的靶標圖來說明:

這裡寫圖片描述

  1. 低偏差低方差時,是我們所追求的效果,此時預測值正中靶心(最接近真實值),且比較集中(方差小)。
  2. 低偏差高方差時,預測值基本落在真實值周圍,但很分散,此時方差較大,說明模型的穩定性不夠好。
  3. 高偏差低方差時,預測值與真實值有較大距離,但此時值很集中,方差小;模型的穩定性較好,但預測準確率不高,處於“一如既往地預測不準”的狀態。
  4. 高偏差高方差時,是我們最不想看到的結果,此時模型不僅預測不準確,而且還不穩定,每次預測的值都差別比較大。

欠擬合(Under-Fitting)

模型不夠複雜或者訓練資料過少時,模型均無法捕捉訓練資料的基本(或者內在)關係,會出現偏差。這樣一來,模型一直會錯誤地預測資料,從而導致準確率降低。這種現象稱之為模型欠擬合。
比如說,有的時候模型會過於複雜或者過於簡單,以致於難以泛化新增添的資料;有的時候模型採用的學習演算法並不適用於特定的資料結構;有的時候訓練集本身可能有太多噪點或資料量過少,使得模型無法準確地預測目標變數。這些均是模型欠擬合的情況。

過擬合(Over-Fitting)

模型過於複雜或者沒有足夠的資料支援模型的訓練時,模型含有訓練集的特有資訊,對訓練集過於依賴,即模型會對訓練集高度敏感,這種現象稱之為模型過擬合。

欠擬合-過擬合與偏差-方差關係

通常來講,模型欠擬合時,預測結果不準,偏差較大;但對於不同訓練集,訓練得到的模型都差不多(對訓練集不敏感),此時的預測結果差別不大,方差小;以準確率作為效能指標,模型的訓練集得分及驗證得分均會比較低;模型複雜度可能低、訓練集資料量可能少。模型過擬合時,模型含有訓練集的資訊,預測的準確度一般不高,偏差較大;模型對訓練集敏感,在與總體同分布的相同大小的不同訓練樣本上訓練得到的模型,在驗證集上的表現不一,預測結果相差大,方差大;由於模型含有訓練集的資訊,此時的訓練得分很高,但驗證得分不高(偏差大);模型複雜度高、訓練集數量大。上述關係如下表所示:

這裡寫圖片描述

偏差-方差、欠擬合-過擬合例項分析

下圖是決策樹迴歸模型在不同最大深度引數設定時的學習曲線(learning_curve),展示了模型受最大深度引數的影響,訓練得分、驗證得分是模型在訓練集、驗證集上的判定係數(Coefficient of Determination,也稱R^2,含義與準確率類似,值越大說明模型的擬合優度越好,預測越準確)值。

這裡寫圖片描述

從圖中可以看出:
1. 當模型以最大深度 1訓練時,訓練得分(約0.45)及驗證得分(約0.3)都很低,說明模型的預測出現了很大的偏差,模型欠擬合。
2. 當模型的最大深度不斷增大到10的過程中,訓練得分呈上升趨勢並最終約等於1;驗證得分在最大深度為4處達到最大,之後呈下降趨勢且與訓練得分差距逐漸上升達到最大,說明模型過擬合,方差很大;最大深度為10時,訓練得分與驗證得分距離最大,訓練得分曲線及驗證得分曲線無趨於一致的收斂趨勢,說明此時訓練得到的模型質量較差,不能用於預測。

模型的偏差-方差折衷

一般來說,偏差與方差是衝突的,這稱之為偏差-方差窘境(Bias-Variance Dilemma),也就是說,讓偏差和方差都達到最小的模型是不存在的,模型只能在偏差和方差中取折衷,如下圖所示:

這裡寫圖片描述

從圖中可以看出,開始時,模型比較簡單且訓練不足,此時模型的擬合能力較弱(欠擬合),對訓練集的擾動也不敏感,偏差主導了模型的泛化錯誤率(Error軸);隨著更多引數、更多訓練資料等加入到模型,模型的複雜度在提高,其擬合能力也在提升,偏差逐步下降,同時方差開始上升,但此時有可能獲得偏差、方差都比較低的模型,即偏差-方差折衷後的最優模型;隨著模型的複雜度進一步提高,且訓練程度充足後(訓練資料自身的、非全域性的特性很可能被模型學到),模型的擬合能力已經非常強,訓練資料的輕微擾動都會導致模型發生顯著變化,進而導致其預測能力時好時壞,但總體低於最優狀態,此時方差主導了模型的錯誤率,模型過擬合。


參考:
http://scott.fortmann-roe.com/docs/BiasVariance.html

轉載自:https://blog.csdn.net/hurry0808/article/details/78148756