1/過擬合的原因:
(1)數據問題:數據量太少,不能抽象出全量特征
(2)模型問題:模型的參數過多,模型參數過大? (使得模型不夠光滑)
(3)算法問題:模型的參數取值差異過大? (也使得模型不夠光滑)
2/深層神經網絡如何防止過擬合:
(1)L1,L2正則化(多數情況下使用L2正則):
降低模型參數的權重,使得模型的參數不至于過大,從而使得模型偏向于光滑
(2)dropout方法(一種訓練技巧)
dropout通過隨機缺失,可以防止模型參數過多,同時也可以降低模型參數的權重,另外隨機失活相當于產生多個不同的神經網絡,從而減少了方差
(3)early stop:
如何做:首先將訓練數據劃分為訓練集和驗證集(劃分比例為2:1); 在訓練集上進行訓練,并且在驗證集上獲取測試結果(比如每隔5個epoch測試一下),隨著epoch的增加,如果在驗證集上發現測試誤差上升,則停止訓練;最后將停止之后的權重作為網絡的最終參數。
(4)擴增訓練數據集
3/訓練和測試集合的特征歸一化:
為何需要進行特征歸一化?? 為了加快訓練的速度,如下圖: