機器學習中的偏差和方差

2021-08-15 07:11:29 字數 2723 閱讀 2458

數學解釋

偏差:描述的是**值(估計值)的期望與真實值之間的差距。偏差越大,越偏離真實資料,如下圖第二行所示。

方差:描述的是**值的變化範圍,離散程度,也就是離其期望值的距離。方差越大,資料的分布越分散,如下圖右列所示。

機器學習中的偏差和方差

首先,假設你知道訓練集和測試集的關係。簡單來講是我們要在訓練集上學習乙個模型,然後拿到測試集去用,效果好不好要根據測試集的錯誤率來衡量。但很多時候,我們只能假設測試集和訓練集的是符合同乙個資料分布的,但卻拿不到真正的測試資料。這時候怎麼在只看到訓練錯誤率的情況下,去衡量測試錯誤率呢?

由於訓練樣本很少(至少不足夠多),所以通過訓練集得到的模型,總不是真正正確的。(就算在訓練集上正確率

100%

,也不能說明它刻畫了真實的資料分布,要知道刻畫真實的資料分布才是我們的目的,而不是只刻畫訓練集的有限的資料點)。而且,實際中,訓練樣本往往還有一定的噪音誤差,所以如果太追求在訓練集上的完美而採用乙個很複雜的模型,會使得模型把訓練集裡面的誤差都當成了真實的資料分布特徵,從而得到錯誤的資料分布估計。這樣的話,到了真正的測試集上就錯的一塌糊塗了(這種現象叫

過擬合)。但是也不能用太簡單的模型,否則在資料分布比較複雜的時候,模型就不足以刻畫資料分布了(體現為連在訓練集上的錯誤率都很高,這種現象叫

欠擬合)。過擬合表明採用的模型比真實的資料分布更複雜,而欠擬合表示採用的模型比真實的資料分布要簡單。

在統計學習框架下,大家刻畫模型複雜度的時候,有這麼個觀點,認為

error = bias +variance

。這裡的

error

大概可以理解為模型的**錯誤率,是有兩部分組成的,一部分是由於模型太簡單而帶來的估計不準確的部分——偏差(

bias

),另一部分是由於模型太複雜而帶來的更大的變化空間和不確定性——方差(

variance)。

樸素貝葉斯的高偏差和低方差解釋

有了上面的分析就容易分析樸素貝葉斯了。它簡單的假設了各個資料之間是無關的,是乙個被嚴重簡化了的模型。所以,對於這樣乙個簡單模型,大部分場合都會

bias

部分大於

variance

部分,也就是說高偏差而低方差。

在實際中,為了讓

error

盡量小,我們在選擇模型的時候需要平衡

bias

和variance

所佔的比例,也就是平衡

over-fitting

和under-fitting。

偏差、方差如何權衡

偏差(bias)

和方差(variance)

是統計學的概念,首先得明確,

方差是多個模型間的比較,而非對乙個模型而言的,對於單獨的乙個模型

,比如說:

這樣的乙個給定了具體係數的估計函式,是不能說f(x)的方差是多少。

而偏差可以是單個資料集中的,也可以是多個資料集中的,這個得看具體的定義。

方差和偏差一般來說,是從同乙個資料集中,用科學的取樣方法得到幾個不同的子資料集,用這些子資料集得到的模型,就可以談他們的方差和偏差的情況了。

當我們一味的追求模型精確匹配,則可能會導致同一組資料訓練出不同的模型,它們之間的差異非常大。這就叫做方差,不過他們的偏差就很小了

,如下圖所示:

上圖的藍色和綠色的點是表示乙個資料集中取樣得到的不同的子資料集,我們有兩個

n次的曲線去擬合這些點集,則可以得到兩條曲線(藍色和深綠色),它們的差異就很大,但是他們本是由同乙個資料集生成的,這個就是模型複雜造成的方差大。模型越複雜,偏差就越小,而模型越簡單,偏差就越大,方差和偏差是按下面的方式進行變化的:

當方差和偏差加起來最優的點,就是我們最佳的模型複雜度。

最後還是用數學的語言來描述一下偏差和方差:

e(l)

是損失函式,

h(x)

表示真實值的平均,第一部分是與

y(模型的估計函式)有關的,這個部分是由於我們選擇不同的估計函式(模型)帶來的差異,而第二部分是與

y無關的,這個部分可以認為是模型的固有雜訊。

對於上面公式的第一部分,我們可以化成下面的形式:

前一半是表示偏差,而後一半表示方差,我們可以得出:損失函式=偏差

^2+方差

+固有噪音。

這是乙個曲線擬合的問題,對同分布的不同的資料集進行了多次的曲線擬合,左邊表示方差,右邊表示偏差,綠色是真實值函式。ln lambda表示模型的複雜程度,這個值越小,表示模型的複雜程度越高,在第一行,大家的複雜度都很低的時候,方差是很小的,但是偏差同樣很小,但是到了最後一幅圖,我們可以得到,每個人的複雜程度都很高的情況下,不同的函式就有著天壤之別了,但是偏差就很小了。

機器學習中的偏差和方差

機器學習中誤差的 主要有兩個方面 bias 偏差 和variance 方差 只有找到誤差的 才能為下一步的模型優化提供方向。這裡以估計隨機變數 x 的均值和方差為例,進行分析。假設,對於隨機變數 x 1.1 首先考慮均值 我們在總體中取出 n 個樣本 對隨機變數 x 的均值作估計 m 1n xn f...

機器學習中的偏差和方差

首先了解一下資料集的分類 偏差,可以理解為樣本y與模型 結果的差距,可以使用平方差計算。方差,是樣本y值與模型期望的差的平方和。如果你在訓練集上的錯誤率是 15 即 85 的精度 但你的目標是 5 錯誤率 95 精度 那麼首先要解決的問題是提高演算法在訓練集上的效能。演算法在驗證 測試集上的效能通常...

機器學習中偏差和方差的區別

l2與l1的區別在於,l1正則是拉普拉斯先驗,而l2正則則是高斯先驗。它們都是服從均值為0,協方差為1 當 0時,即沒有先驗 沒有正則項,則相當於先驗分布具有無窮大的協方差,那麼這個先驗約束則會非常弱,模型為了擬合所有的訓練集資料,引數w可以變得任意大從而使得模型不穩定,即方差大而偏差小。越大,標明...