在NeurIPS 2020上,商汤研究院工具链的搜索和决策团队提出了一项基于权重共享的新型自动数据增强方法。该工作以多项有启发性的实验现象为动机,第一次从权重共享角度思考自动数据增强,实现了既高效又有效的增强策略搜索算法。该方法在多个图像分类数据集上取得了优秀的表现,尤其在CIFAR-10数据集上刷新了当时的SOTA性能。
数据增强是深度学习中被广泛运用的一项正则化技术,其被用于提升数据分布的多样性。最近一些自动数据增强算法被提出,其旨在自动搜索一些数据增强策略,使得在这些策略下进行训练的模型可以得到更好的性能表现。这些自动算法已经取得了显著的成果,在许多任务上远远超过了人工设计的增强策略。然而,这项技术仍然存在挑战:速度和可靠性。一个更理想的自动数据增强算法需要同时兼顾效率与可靠性。
为实现这一点,我们观察了带有数据增强的训练过程,通过发现的一些性质,同时借由NAS领域的权重共享策略,我们提出了一种新型自动数据增强算法。
我们不妨先从另一项正则化手段入手:早停,即在验证集误差开始显著上升时停止训练。早停非常符合直觉,其也许能体现过拟合带来的负面影响往往是在后期才显露出来的。因此,我们猜想数据增强也有类似性质:数据增强主要是在后期提升模型的泛化能力。为了验证这一点,我们在CIFAR10上使用Google AutoAug对ResNet18在不同阶段进行了数据增强。结果显示数据增强确实在后期作用更加显著。
受NAS中权重共享思想的启发,我们提出了一个新的“代理任务”,它把模型的训练过程分为前期、后期两阶段。在前期,模型会在一个“共享策略”的增强下进行训练,得到“共享权重”;在后期我们才真正进行策略评估和搜索,模型会在当前正在被搜索的策略的增强下进行训练,得到最终的验证集性能并用于更新策略。
自动数据增强旨在自动搜索能使验证集性能最好的数据增强策略。原始任务需要反复从头训练模型,并以最终验证集准确度作为评估指标。这是一个典型的双层优化问题。直接求解双层优化问题会非常耗时。而对于我们的分阶段代理任务,在早期我们会选取一个能够代表各种策略的共享策略,在其增强下训练一个共享的模型权重。在后期我们则会让分类器模型继承早期的共享权重,进行fine-tune和策略搜索。
我们在3个最主流的图像分类数据集和4个主流模型上进行了算法表现对比。结果显示,在各数据集、各模型上我们均取得了最优表现;尤其是在未使用额外数据的CIFAR-10上,在我们搜索得到的数据增强策略下,PyramidNet取得了新的SOTA性能。
我们还展示了我们的策略分布在整个搜索过程中的变化,增强操作在最初均为均匀分布;随着搜索进程推进,多数操作的概率开始趋向0,而为数不多的数个操作的概率则不断增大,体现出分化的过程。
在这项工作中我们提出了一种利用权重共享思想的新型自动数据增强方法。该方法很好地解决了自动数据增强的评估效率与评估可靠性之间的矛盾问题,充足的实验结果也验证了其的高效性和有效性。最后,我们还期待这项工作中的现象或蕴含的思想能够对更多的超参数优化工作带来帮助和启发。