在處理完資料集後,將資料放入模型訓練時,會將資料集分為訓練集、驗證集和測試集,訓練集是模型會對訓練集中的每個範例進行預測,並將預測結果與目標進行比較,根據比較的結果,學習演算法會更新模型的參數;驗證集提供了對在訓練集上調適得到模型的無偏評估,驗證集可用於正則化中的提前停止,在驗證集誤差上升時停止訓練;測試集可被用來提供對最終模型的無偏評估,必須使用與訓練集不一樣的資料。
在訓練時有可能會出現以下狀況:
1.Overfitting(過度學習)
過度學習訓練資料,變得無法預測或分辨不是訓練資料的其他資料,只是將訓練資料死背起來,但只要資料一有變動,預測的錯誤率提高,將不必要的特徵也記住,只要一出現此特徵就會誤認為是某一類別。
解決方式:使用驗證集來測試,在模型預測未知的資料時,也是要擁有能正確判斷的能力,在每個epoch後準確率要持續的上升。
有可能發生的原因
1.訓練資料太少
2.訓練時使用太多參數或特徵來訓練
可減少模型層數或參數個數
使用Regularization(正規化)的方式將可能有發生異常點處理的問題給處理
3.Weight decay(權重衰減)
2.Underfitting(擬合不足)
在訓練誤差總是無法降低,預測的準確率很低,這種現象就稱為Underfitting,就必需多訓練幾次模型,因為模型還沒學習完資料集,就訓練結束。