標籤:

機器學習中關於偏差、方差和誤差的理解

在模型預測中,模型可能出現的誤差來自兩個主要來源:

1、因模型無法表示基本數據的複雜度而造成的偏差(bias);

2、因模型對訓練它所用的有限數據過度敏感而造成的方差(variance)。

誤差是測量值與真實值之間的差值。用誤差衡量測量結果的準確度,用偏差衡量測試結果的精確度;誤差是以真實值為標準,偏差是以多次測量結果的平均值為標準。而方差在統計學中是指各個數據與其平均數之差的平方的和的平均數,它表示的是一種偏離程度:當數據分布比較分散時,方差就較大;因此方差越大,數據的波動越大;方差越小,數據的波動就越小。

從上面定義可以看出,偏差可以衡量我們所建立模型的精確度,精確度越高,我們用模型計算出的值與實際值越接近;而方差表示的是一種偏離程度,在一定程度上可以表示我們的模型對於任何給定的測試樣本會出現多大的變化。

這張圖比較形象地展現了偏差和方差的區別:偏差越小,箭的位置總體離靶心較近,說明射手的水平較高;方差越小的話,箭射的位置大體在一小塊區域,說明射手發揮的很穩定,但不一定代表他射的很好。

偏差造成的誤差:

如果模型具有足夠的數據,但因不夠複雜而無法捕捉基本關係,則會出現偏差。這樣一來,模型一直會系統地錯誤表示數據,從而導致準確率降低。這種現象叫做欠擬合(underfitting)。

方差造成的誤差:

出現方差是正常的,但方差過高表明模型無法將其預測結果泛化到更多的數據。對訓練集高度敏感也稱為過擬合(overfitting),而且通常出現在模型過於複雜或我們沒有足夠的數據支持它時。

推薦閱讀:

如何測量這個世界的混亂-1-定義混亂
直覺版:CNN解讀part1
基於不平衡樣本的推薦演算法研究
使用Tensorflow C++ API自定義操作

TAG:機器學習 |