神經網路正則化(3):data augmentation & early stopping
在神經網路正則化1:L1/L2正則化和神經網路正則化(2):dropout正則化中我們介紹了兩種正則化方法用來解決過擬合問題,還有其他的方法可以減少神經網路中的過擬合,本文介紹兩種方法:
- data augmentation數據擴增
- early stopping
1. data augmentation
假設我們訓練神經網路來完成圖片分類任務,希望通過擴增訓練數據來解決過擬合的問題,但是擴增數據代價很高,有時候無法擴增數據。那麼我們可以通過添加這類圖片來增加訓練集[1],例如
- 水平翻轉圖片
- 裁剪圖片
- 旋轉、扭曲圖片數字等
在計算機圖像處理領域,由於圖像輸入維數非常高,導致很難找到對應那麼多的圖像,因此data augmentation在CV領域應用極為廣泛。
2. early stopping
early stopping的思路是,在訓練過程中,我們通過觀察dev set的誤差來判斷訓練過程是否逐漸過擬合。dev set error通常會先呈下降趨勢,然後再某個節點處開始上升,early stopping的作用是在梯度出現上升勢頭的時候停止訓練來放置過擬合,如下圖所示。
藍色曲線表示隨著訓練次數增加,訓練集的訓練誤差逐漸降低;紫色曲線表示在驗證集上的誤差,在中間點的時候,應該停止訓練。
early stoping的缺點在於:它希望能夠同時解決
- 優化代價函數
- reduce overfitting
兩個問題,如果過早結束訓練,導致第一個問題J較大,這樣用一個方法同時解決兩個問題會導致相互掣肘,需要考慮的情況比較複雜。
但優點在於,只需要運行一次訓練,就可以找到中間的較好的參數集合。
如果不用early stopping,另一種方法就是L2正則化,訓練神經網路的時間就可能很長。我發現,這導致超級參數搜索空間更容易分解,也更容易搜索,但是缺點在於,你必須嘗試很多正則化參數 的值,這也導致搜索大量值的計算代價太高。
[1]Simard P Y, Steinkraus D, Platt J C. Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis[C]// International Conference on Document Analysis and Recognition. IEEE Computer Society, 2003:958.
[2]深度學習筆記lesson2-week1
推薦閱讀:
TAG:深度學習DeepLearning | 神經網路 | 機器學習 |