Data Augmentation手法をまとめてみました。画像系のタスク用の手法に限定しています。
Geometric Transformation
- ミラー(水平、垂直)
- 回転
- シフト
- スケーリング
- シアー変換
- クロップ
Photometric Transformation
- Color jitter (輝度、コントラスト、色相、彩度、明度、ガンマ)
- PCA
- エッジ強調
- ブラー (ガウシアン、メディアン、平均、バイラテラル)
ノイズ付加
- ガウシアン
- ソルト & ペッパー
画像のMasking
- Cutout
- 画像の一部をマスクする
- マスクの画素値は画像の平均、マスクをかける場所はランダムに決める
- https://arxiv.org/abs/1708.04552 - Random Erasing
- cutoutと似ている
- 全体の何割をマスクするか、また、マスクのアスペクト比も決める
- https://arxiv.org/abs/1708.04896
画像のMixing
- mixup
- 画像をアルファブレンドする
- https://arxiv.org/abs/1710.09412 - BC-learning
- 異なるクラスの異なる2枚の画像をランダムな比率でブレンドする
- 元々は音声用に提案された手法だが、画像系のタスクでも有効である
- 損失関数にKL-divergenceを使う
- https://arxiv.org/abs/1711.10284 - RICAP
- 4数の画像をクロップして貼り合わせる
- https://arxiv.org/abs/1811.09030
Deep Learningベースの手法
特徴空間上
- Dataset Augmentation in Feature Space
- 特徴空間のサンプル間の外挿を使用してデータセットを補強する
- https://arxiv.org/abs/1702.05538
Augmentaionのpolicyを学習
- AutoAugment (CVPR2019)
- DataAugmentationのpolicyを学習
- https://arxiv.org/abs/1805.09501 - Fast AutoAugment (NeurIPS2019)
- AutoAugmentはGPU時間がかなり大きいので、高速化した手法
- AutoAugmentよりも数十から1000倍程度、高速化
- https://arxiv.org/abs/1905.00397
GAN
GANを使ったものが今後は増えていく感じはしますが、ここではまとめていません。
そのうち、GANによるData Augmentationに絞ってまとめてみようと思っています。
参考
おなじみのPapers with Code。Data Augmentationの論文がまとまっている。
paperswithcode.comData Augmentaionのサーベイ論文。
ここに挙げていない色々な手法も紹介されているので、是非一読を。
link.springer.com近年の論文手法をいくつか紹介している。
heartbeat.fritz.ai