學習曲線learning curve

2021-09-22 10:17:51 字數 639 閱讀 7751

學習曲線是橫座標為訓練樣本數量,橫座標為誤差。畫的有兩條曲線,一條是訓練集誤差,一條是交叉驗證的誤差。

學習曲線可以反應兩種情況,一種是高偏差,一種是高方差。

高方差:過擬合,擬合效果過好,但是泛化效果差,無法泛化新的資料

高誤差:欠擬合,擬合程度太差,誤差太大。

反應在學習曲線上就是:

高偏差:

訓練集誤差曲線開始很小,隨著樣本數量變多,越來越大,然後不再變化;交叉驗證誤差開始很大,隨著樣本數量變多降低,然後不再變化,兩條曲線越來越近,趨於平衡不變的點在乙個較高的誤差。交叉驗證的誤差和訓練集誤差差不多。

也就是說隨著樣本數量越來越多,但是後來會得到一條基本不變的直線,並不會因為訓練樣本數量的增加而變化。高偏差的演算法並不能通過增加樣本數量得到改進,降低誤差,所以從學習曲線上看,如果是高偏差的情況,就不要增加樣本數量。

高方差:

隨著樣本量的訓練集誤差越來越大,交叉驗證誤差越來越小,這兩條曲線之間有很大的gap,隨著訓練樣本越來越大,這兩個曲線會越來越近。

也就是說,對於高方差的情況,增加訓練樣本可以改進演算法效果。如果通過學習曲線判斷出來是高方差的情況,就可以增加樣本數量。

所以通過學習曲線可以判斷改進演算法要採用什麼樣的策略,判斷是出於高方差還是高偏差,換句話就是判斷這個演算法是過擬合還是欠擬合。

VIM學習曲線 a

這裡記錄下自己在學習vim過程中的一些坎坷和總結吧!後面補充 今天看到不少同學收藏,看樣子還是有很多人和我一樣的初級學習菜鳥,哈哈,這裡再次申明,文章主要內容是從鏈結的原文作者 拷貝出的,其中自己有小的修改,另外,我會參考其他文章,將常用的一些東西都加入進來,後期會慢慢更新,其中一些說的不清楚的地方...

Python KNN 學習曲線

學習曲線的目的是選擇更好的模型引數。以最近鄰演算法為例,選取最近的多少個資料點,才能達到最優。可以控制訓練集不動,調整最近的點的個數,繪製學習曲線。import matplotlib.pyplot as plt score krange range 1,21 k值取值範圍 for i in kran...

機器學習 學習曲線

檢視模型的學習效果 通過學習曲線可以清晰的看出模型對資料的過擬合和欠擬合 len x train 個訓練樣本,訓練出 len x train 個模型,第一次使用乙個樣本訓練出第乙個模型,第二次使用兩個樣本訓練出第二個模型,第 len x train 次使用 len x train 個樣本訓練出最後乙...