[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data

论文链接:AutoAugment: Learning Augmentation Strategies from Data
CVPR 2019


论文设计了自动搜索数据增强策略的方法。在限定的数据增强的搜索空间中采样出数据增强policy。根据policy对图像进行变换后输入训练 ,把验证集的acc作为reward信息反馈给增强学习算法,不断交互,获取最好效果的policy。

(1)直接在数据集上搜索
(2)policy迁移到其他数据集也有效(将imagenet policy迁移到FGVC、Stanford Cars 和 FGVC Aircraft)

论文:从数据中学习数据增强策略的方法原则上可以用于任何数据集,而不仅仅是一个数据集。


搜索算法

增强学习controller RNN:有30 softmax predictions,controller使用policy gradient更新。controller RNN:一层100 个隐藏单元的LSTM,对两个卷积层2 × 5B个预测(B通常是5)
训练算法: PPO
采样增强策略: SSSS包含图像处理的操作、在每个batch使用操作的概率以及操作的程度。使用SS策略,训练固定的网络,得到验证acc RR被用于更新controller,
the controller samples about 15,000 policies.

[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data


搜索空间

搜索空间: 一个策略包含5个子策略,每个子策略由两个操作组成。
每个操作有两个相关超参:选择操作的概率,操作的程度
下图展示了一个包含5个子策略的策略应用的例子。注意操作顺序
[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data
实验中的操作都来自PIL库,增加了两张额外的数据增强Cutout、SamplePairing,aug操作。Identity操作通过prob为0,隐式调用。
[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data

一共16种操作(x/y是两个操作),每个操作都有默认范围的程度数值,将连续范围的程度值等间距的离散化为10个数,将操作的概率离散化为11个数,所以每个子策略的搜索空间大小(16×10×11)2(16\times 10\times 11)^2,因为搜索包含5哥子策略,总空间大小(16×10×11)102.9×1032(16\times 10\times 11)^{10} \approx 2.9\times 10^{32}


Result

[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data
[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data
[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data
policy迁移
[NAS-AutoAug]AutoAugment: Learning Augmentation Strategies from Data


该方法类似暴力搜索,但还是限制了很多条件,例如搜索时候只选了5个sub-policy 串连。就算这样训练依然需要大量时间(基本都是几千甚至几万GPU hours),因为对于每个数据集需要采样非常多的数据增广策略。因此只能使用小数据集(reduced CIFAR-10)。