神經網路正則化(3):data augmentation & early stopping

在神經網路正則化1:L1/L2正則化和神經網路正則化(2):dropout正則化中我們介紹了兩種正則化方法用來解決過擬合問題,還有其他的方法可以減少神經網路中的過擬合,本文介紹兩種方法:

  1. data augmentation數據擴增
  2. early stopping

1. data augmentation

假設我們訓練神經網路來完成圖片分類任務,希望通過擴增訓練數據來解決過擬合的問題,但是擴增數據代價很高,有時候無法擴增數據。那麼我們可以通過添加這類圖片來增加訓練集[1],例如

  1. 水平翻轉圖片
  2. 裁剪圖片
  3. 旋轉、扭曲圖片數字等

圖1 翻轉、裁剪、扭曲圖片來擴增數據

在計算機圖像處理領域,由於圖像輸入維數非常高,導致很難找到對應那麼多的圖像,因此data augmentation在CV領域應用極為廣泛。


2. early stopping

early stopping的思路是,在訓練過程中,我們通過觀察dev set的誤差來判斷訓練過程是否逐漸過擬合。dev set error通常會先呈下降趨勢,然後再某個節點處開始上升,early stopping的作用是在梯度出現上升勢頭的時候停止訓練來放置過擬合,如下圖所示。

藍色曲線表示隨著訓練次數增加,訓練集的訓練誤差逐漸降低;紫色曲線表示在驗證集上的誤差,在中間點的時候,應該停止訓練。

early stoping的缺點在於:它希望能夠同時解決

  1. 優化代價函數 J(w,b)
  2. reduce overfitting

兩個問題,如果過早結束訓練,導致第一個問題J較大,這樣用一個方法同時解決兩個問題會導致相互掣肘,需要考慮的情況比較複雜。

但優點在於,只需要運行一次訓練,就可以找到中間的較好的參數集合。

如果不用early stopping,另一種方法就是L2正則化,訓練神經網路的時間就可能很長。我發現,這導致超級參數搜索空間更容易分解,也更容易搜索,但是缺點在於,你必須嘗試很多正則化參數 lambda 的值,這也導致搜索大量值的計算代價太高。


[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 | 神經網路 | 機器學習 |