由简入繁探究机器视觉中的数据增强(下)
发布时间:2022-10-31 07:00
摘 要
深度学习在图像分类、分割及识别任务上取得了显著的成果。深度神经网络依赖大规模数据集来防止网络过拟合,所以通过图像数据增强提高训练样本的数量及多样性已成为模型训练的重要部分。本文将列举的图像数据增强方法划分成两大类,从基础图像增强到前沿图像增强来介绍各种方法,并逐个分析优势和局限性。
因整体篇幅较长,此次研究分为两部分。在第一部分中,主要研究和分析基础图像数据增强方法。本篇为第二部分,继续对前沿图像增强方法展开分析。文章在最后将总结神经网络中的图像数据增强方法,讨论目前面临的挑战及未来可研究的技术方向。
背景介绍
深度学习在多领域百花齐放,并取得了显著的进步,如计算机视觉(CV),推荐系统(RS)及自然语言处理(NLP)等等。同时,这些领域的发展受以下三个方面的影响:网络结构、算力以及数据集规模。首先,模型泛化能力与网络结构的规模成正比。其次,在大算力的支持下,网络层数可以越来越深。数据集方面,例如Imagenet[1]、COCO[2]、PSCAL VOC[3]等大规模公开数据集进一步加速了深度学习模型的发展。对比这三方面的影响因素,大规模公开数据集因实验难度、具体任务不同,其数据的充分性和多样性始终缺少统一的量化指标。所以这三个方面的发展是不均衡的:对于不同CV任务而言,大多数工作集中在提出各种先进网络结构及提高图形处理单元(GPU)的算力上,探索使用数据增强方法来生成训练数据的工作寥寥。
图像增强后的数据可以看作是从接近真实的分布中提取的,并在一定程度上增加了数据的充分性和多样性[4]。传统的图像增强方法对于改善图像质量、扩充样本数量上发挥了重要的作用。在实际应用中,不论在操作难度还是效果的角度上,都十分可观。但对于基本图像增强操作,需满足现有数据服从或接近实际数据分布的假设才有意义。应用于小规模数据集以增加数据的充分性和多样性,效果往往不尽人意。前沿图像增强方法,考虑整体数据集数据分布,可以表示更全面的特征,并在一定程度上改善了图像增强的质量。在本次研究中,我们大致总结两大类的图像增强方法。从传统图像增强到前沿图像增强展开讨论并思考未来可研究的技术方向。此篇为下篇,主要阐述各种前沿图像增强方法并分析其优劣势。
前沿图像数据增强方法
自动增强
越来越多的前沿研究尝试自动增强方法而非手动设计的增强方法来改进模型性能。自动增强可基于不同数据的特征,所以比手动设计具有更多的优势。基于模型,自动增强方法主动搜索出适合当前任务的数据增强方法,代表方法是AutoAugment[1]。AutoAugment由搜索空间和搜索算法两部分构成。图1所示的搜索空间包含许多传统图像增强的策略,这些策略详细说明了各种变换方式、变换概率和变换幅度。搜索算法由两个主要部分组成:一个是由递归神经网络构成的控制器,另一个是近端策略优化算法。然而,AutoAugment中的搜索算法通常使用强化学习,需要在庞大的搜索空间中选择出有效的增强策略。这无疑会带来很高的时间成本,因此只能在小数据集上进行推广。
Population Based Augmentation(PBA)[3]通过生成动态增强策略而非固定增强策略来降低 AutoAugment 的时间成本,但在多个数据集上未能达到与 AutoAugment 相当的性能。为减少AutoAugment 搜索时间,Lim等人提出了Fast AutoAugment[2],通过基于密度匹配的搜索策略快速找到有效的增强方法。首先将数据集分为两部分,一部分是训练模型的DM数据集,另一部分是训练增强数据的DA数据集。核心思想是在DM数据集上训练模型,并在DA数据集上找到一个策略,使得在DA扩增的数据在DM模型上表现最好。从实验结果上来,密度匹配的搜索策略使Fast AutoAugment减少了模型的训练时间,但在CIFAR-10数据集上模型表现力不及AutoAugment。但在CIFAR-10数据集上模型表现力不及AutoAugment。Cubuk等人发现随着网络结构和数据集的大小的不同,对应的最优增广策略也不同。具体来说,对于较大的数据集或者较大的网络结构,可以容纳的数据增广幅度也相应更大。Cubuk提出的RandAugment[4]搜索空间只包括两个元素N和M:N 表示数据增广的次数;M表示数据增广的幅度。舍弃了AutoAugment方法的随机性,等概率地从 K 个不同的增广方式中选择一个应用,摒弃了计算成本高昂的单独搜索,极大地减少了数据增强的搜索空间。
图1 搜索空间子策略示意图[2]
图片来源:https://papers.nips.cc/paper/2019/file/6add07cf50424b14fdf649da87843d01-Paper.pdf
图2 Fast AutoAugment图像增强方法[4]
图片来源:https://arxiv.org/pdf/1909.13719.pdf
上述自动增强方法增加了有效数据,并提高了训练样本的多样性。但却不可避免地会给训练样本引入噪声和歧义,从而导致推理性能的下降。为减少噪声影响,KeepAugment[5]通过saliency map获取原始图像上的显著性区域,并在数据增强的过程中保证这些区域的信息不被破坏。如图3中a(5)/ b(5)和a(6)/ b(6)所示,KeepAugment可分为两种子方法:基于区域剪切的Selective-Cut及基于全图变换的Selective-Paste。Selective-Cut具体的操作为:随机选取一个区域,计算该区域重要性得分,直到找到一个重要性得分小于某一自适应阈值的区域,最后cut掉这个区域。Selective- Paste具体的做法为:随机选取一个区域,计算区域重要性得分,直到找到一个重要性得分大于某一自适应阈值的区域,然后对原图进行全图变换,最后把这个区域粘贴替换掉变换后图像的对应区域。上述两种方法都涉及到自适应阈值的选择,这个过程通过计算所有候选区的重要性得分,然后将阈值设为某个分位数。如图4所示,不同阈值对模型性能影响不同。自适应阈值选取的实验将训练集分为两部分,一部分是未经增强的sub-dataset(蓝实线),一部分是经过KeepAugment的sub-dataset(灰虚线)。黑虚线则是经过Cutout和RandAugment之后的测试结果,橙色线是KeepAugment测试集的结果。可以看出:对于Selective-Cut的阈值,小阈值得到的效果更好;但对于Selective-Paste的阈值,小阈值效果提升不明显,随着阈值提高,性能逐渐提升的也明显了,但进一步提高阈值则不再提升性能。
图3 Cutout、RandAugment、KeepAugment及组合图像增强方法比对[5]
图片来源:https://arxiv.org/pdf/2011.11778.pdf
图4 不同阈值的选择对性能影响[5]
图片来源:https://arxiv.org/pdf/2011.11778.pdf
特征增强
上述基于图像的增强方法普遍受下述两个因素限制:在图像空间上,会限制图像对纹理和几何的转换;不论在同一类别还是不同类别中,基于单个样本进行操作,无法利用其他样本的知识而导致样本多样性降低。实际上,图像的特征增强不仅可以在图像空间中进行增强,还能够在学习到的特征空间中增强。DeVries等人认为样本在特征空间上会比原始输入空间上更容易得到真实的样本点[6]。因此,他们提出通过对可学习的样本特征进行加噪声、最近邻插值等操作来获得增强后的样本特征。这样一来,打破了以往增强方法领域/任务强相关的局限性,并使得数据增强方法具备高效性和通用性。Kuo等人随后提出了如图5所示的FeatMatch[7],在每次训练迭代中都生成特征和伪标签
,K-Means对每个epoch都进行原型提取更新现有的模型。选择出的新的原型集合后, 通过soft-attention对原型集进行特征细化和增强。FeatMatch将传统的图像增强与一致性正则化的组合,可产生各种复杂的转换集。最近,Li等人提出了Moment Exchange(MoEx)[8],如图6所示,该操作融合两个训练样本的特征及标签,将一个实例的归一化特征应用到另一个实例上得到新的数据
。这种特征空间中的不对称组合更加能够捕捉和平滑决策边界的不同方向,这是其他增强方法没有考虑的。MoEx是在特征空间做数据增强,不受输入数据类型的限制,对于图像数据、文本数据等数据具有通用性;其次,这个方法的具体实现操作简单,对于mini-batch数据,只需要计算整个batch数据的均值和标准差,然后对mini-batch中的每个实例进行随机排序,再将应用到每个样本上即可;最后,MoEx还可以直接和其他的数据增强方法直接进行结合,叠加图像增强效应。
图5 FeatMatch图像增强方法[7]
图片来源:https://arxiv.org/pdf/2007.08505.pdf
图6 具有PONO标准化的MoEx图像增强方法[7]
图片来源:https://arxiv.org/pdf/2007.08505.pdf
深度生成模型
数据增强的最终目标是从分布上抽取样本,使得抽取的样本能代表数据集。对抗神经网络GAN[9]通过学习数据的分布,随机生成与训练数据集分布一致的图像。基于GAN,Mirza等人提出了条件对抗神经网络(CGAN)——Pix2Pix[10],该网络学习从源域(轮廓)到目标域(ground truth)的一对一映射。但是训练Pix2Pix模型需要大量的配对数据(图4(左)),而收集反映两个风格的配对数据是具有挑战性的。不同于Pix2Pix,CycleGAN[11]无需配对样本,能够学习从源域X到目标域Y的图像变换(图7(右))。但是CycleGAN不能利用其它领域的数据来增大泛化能力,并且需要训练多个生成器和鉴别器才能实现多个领域之间图像生成和训练。而StarGAN[12],只使用一个模型实现多个域的迁移,提高了图像域迁移的可拓展性和鲁棒性。StarGAN网络主要包含判别器D和生成器G,(a)判别器D对real/fake图片进行判别,将real图片分类到相应域;(b)生成器G接受real图片和目标域标签并生成fake图片;(c)G在给定原始域标签的情况下将fake图片重建成real图片;(d)G尽可能生成与真实图像无法区分的图像,并且通过D分类到目标域。StarGAN可以仅使用一个 G 和 D 就可以实现多个领域之间图像生成和训练。然而,将域标签作为附加输入并为每个域学习确定性映射,这可能会在给定输入图像的情况下导致每个域产生相似的输出。作为StarGAN的扩展的方法StarGAN v2[14],它可以同时解决生成图像多样性和多域扩展性的问题。如图9(a)所示,生成器G(x,s)需要输入图像x和特定风格编码s,得到多域风格的输出图像。反映特定领域样式代码 s由映射提供网络F或风格编码器E提供。实际实现是用adaptive instance normalization (AdaIN)将s加入到生成器G中。我们观察到 s 旨在表示input image域y的style,这消除了向 G 提供 y 的必要性,并允许 G 合成所有域的图像。如图9(b)、(c)所示,StarGAN v2新增映射网络和风格编码器两个模块:映射网络学习如何将潜在代码转换为多风格编码;风格编码器学习从给定的参考图像中提取风格编码,允许生成器执行参考引导图像合成。如图9(d)所示,判别器D是一个多任务判别器,由多个输出分支组成。每个分支学习一个二进制分类决定输入图像x是否是它对应域y的真实图像,或者是由G产生的fake图像G(x,s)。StarGAN v2可以跨多个域中生成丰富的风格图像,并且获得SOTA性能。
图7 Pix2Pix与CycleGAN中源域与目标阈的区别[11]
图片来源:https://arxiv.org/pdf/1703.10593.pdf
图8 StarGAN模型[12]
图片来源:https://arxiv.org/pdf/1711.09020.pdf
图9 StarGANv2模型[14]
图片来源:https://arxiv.org/pdf/1912.01865.pdf
结论与思考
上篇文章列举了典型的传统图像增强方法并分析各方法的优劣性。本篇文章主要对前沿图像增强方法展开探讨。毋庸置疑,这两类图像数据增强研究为深度学习模型的性能提升做出了不可替代的贡献,但纵观整体仍有几个问题悬而未决,主要体现在以下方面。第一,缺少数据增强理论研究。例如配对样本和混合方法可以提高网络准确性,因为在人眼视角来看,具有配对样本和混合的增强数据在视觉上是无意义的。此外,大规模的训练数据集很难进行定义和量化。在未来的工作中,严谨的可解释性理论可以回答某些增强技术有效的原因,也可以帮助指导选择或设计增强技术的过程。第二,缺少数据增强方法统一的评价指标。最初的人工评价不仅耗时耗力,还缺乏严谨性和一致性。并且,评价数据增强效果好坏通常建立在某一视觉任务上,而不是合成数据本身。第三,对不均衡的类别进行数据增强容易导致过拟合。因为过采样是从当前数据集中重复选取,这可能会使少数类饱和并导致过度拟合。我们期望生成的数据可以模拟与训练数据相似的分布,而多样性永远不会丢失。第四,生成数据的数量与性能的增加并不完全成正比。部分原因是尽管数据数量有所增加,但数据的多样性保持不变。因此,究竟多少体量的生成数据足以改进模型性能还有待进一步探索。第五,数据增强的选择和组合。组合数据增强方法比单一方法更有效的结论已得到证实,针对不同任务不同数据集,有不同的最佳组合方式。那么如何选择和组合这些增强技术至关重要。
由于时间关系本文列举的图像增强方法不一定全面,主要列举了两类图像数据增强中比较典型的方法并分析其优势和局限性,讨论了目前图像数据增强面临的挑战及未来可研究的技术方向。感兴趣的读者欢迎交流。
参考文献
[1]Cubuk, E.D., Zoph, B., Mané, D., Vasudevan, V., & Le, Q.V. (2019). AutoAugment: Learning Augmentation Strategies From Data. 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 113-123.
[2 ]Lim, S., Kim, I., Kim, T., Kim, C., & Kim, S. (2019). Fast AutoAugment. NeurIPS.
[3 ]Ho, D., Liang, E., Stoica, I., Abbeel, P., & Chen, X. (2019). Population Based Augmentation: Efficient Learning of Augmentation Policy Schedules. ArXiv, abs/1905.05393.
[4 ]Cubuk, E.D., Zoph, B., Shlens, J., & Le, Q.V. (2020). Randaugment: Practical automated data augmentation with a reduced search space. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 3008-3017.
[5 ]Gong, C., Wang, D., Li, M., Chandra, V., & Liu, Q. (2021). KeepAugment: A Simple Information-Preserving Data Augmentation Approach. 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 1055-1064.
[6 ]Devries, T., & Taylor, G.W. (2017). Dataset Augmentation in Feature Space. ArXiv, abs/1702.05538.
[7 ]Kuo, C., Ma, C., Huang, J., & Kira, Z. (2020). FeatMatch: Feature-Based Augmentation for Semi-Supervised Learning. ArXiv, abs/2007.08505.
[8 ]Li, B., Wu, F., Lim, S., Belongie, S.J., & Weinberger, K.Q. (2021). On Feature Normalization and Data Augmentation. 2021 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 12378-12387.
[9 ]Yi, X., Walia, E., & Babyn, P.S. (2019). Generative Adversarial Network in Medical Imaging: A Review. Medical image analysis, 58, 101552 .
[10 ]Isola, P., Zhu, J., Zhou, T., & Efros, A.A. (2017). Image-to-Image Translation with Conditional Adversarial Networks. 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 5967-5976.
[11 ]Zhu, J., Park, T., Isola, P., & Efros, A.A. (2017). Unpaired Image-to-Image Translation Using Cycle-Consistent Adversarial Networks. 2017 IEEE International Conference on Computer Vision (ICCV), 2242-2251.
[12 ]Choi, Y., Choi, M., Kim, M.S., Ha, J., Kim, S., & Choo, J. (2018). StarGAN: Unified Generative Adversarial Networks for Multi-domain Image-to-Image Translation. 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 8789-8797.
[13 ]https://zhuanlan.zhihu.com/p/402819206
[14 ]Choi, Y., Uh, Y., Yoo, J., & Ha, J. (2020). StarGAN v2: Diverse Image Synthesis for Multiple Domains. 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR), 8185-8194.
上一个: “安静!吵到我用Hey, Github了”:AI语音识别的进展
下一个: 高性能Transformer推理分析
近期文章