1. 程式人生 > >深度學習中的Data Augmentation方法(轉)

深度學習中的Data Augmentation方法(轉)

在深度學習中,當資料量不夠大時候,常常採用下面4中方法:


1. 人工增加訓練集的大小. 通過平移, 翻轉, 加噪聲等方法從已有資料中創造出一批"新"的資料.也就是Data Augmentation

2. Regularization. 資料量比較小會導致模型過擬合, 使得訓練誤差很小而測試誤差特別大. 通過在Loss Function 後面加上正則項可以抑制過擬合的產生. 缺點是引入了一個需要手動調整的hyper-parameter. 詳見

3. Dropout. 這也是一種正則化手段. 不過跟以上不同的是它通過隨機將部分神經元的輸出置零來實現. 詳見


4. Unsupervised Pre-training. 用Auto-Encoder或者RBM的卷積形式一層一層地做無監督預訓練, 最後加上分類層做有監督的Fine-Tuning. 參考

不同的任務背景下, 我們可以通過影象的幾何變換, 使用以下一種或多種組合資料增強變換來增加輸入資料的量. 這裡具體的方法都來自數字影象處理的內容, 相關的知識點介紹, 網上都有, 就不一一介紹了.

  • 旋轉 | 反射變換(Rotation/reflection): 隨機旋轉影象一定角度; 改變影象內容的朝向;
  • 翻轉變換(flip): 沿著水平或者垂直方向翻轉影象;
  • 縮放變換(zoom): 按照一定的比例放大或者縮小影象;
  • 平移變換(shift): 在影象平面上對影象以一定方式進行平移; 
    可以採用隨機或人為定義的方式指定平移範圍和平移步長, 沿水平或豎直方向進行平移. 改變影象內容的位置;
  • 尺度變換(scale): 對影象按照指定的尺度因子, 進行放大或縮小; 或者參照SIFT特徵提取思想, 利用指定的尺度因子對影象濾波構造尺度空間. 改變影象內容的大小或模糊程度;
  • 對比度變換(contrast): 在影象的HSV顏色空間,改變飽和度S和V亮度分量,保持色調H不變. 對每個畫素的S和V分量進行指數運算(指數因子在0.25到4之間), 增加光照變化;
  • 噪聲擾動(noise): 對影象的每個畫素RGB進行隨機擾動, 常用的噪聲模式是椒鹽噪聲和高斯噪聲;
  • 顏色變換(color): 在訓練集畫素值的RGB顏色空間進行PCA, 得到RGB空間的3個主方向向量,3個特徵值, p1, p2, p3, λ1, λ2, λ3. 對每幅影象的每個畫素Ixy=[IRxy,IGxy,IBxy]T進行加上如下的變化:

                                      [p1,p2,p3][α1λ1,α2λ2,α3λ3]T

      其中:αi是滿足均值為0,方差為0.1的隨機變數.

載自 http://www.cnblogs.com/love6tao/p/5841648.html