【图像数据增强】Image Data Augmentation for Deep Learning: A Survey

发布时间 2023-05-17 16:49:46作者: cold_moon
原始题目 Image Data Augmentation for Deep Learning: A Survey
中文名称 深度学习的图像数据增强:综述
发表时间 2022年4月19日
平台 arXiv
来源 南京大学
文章链接 https://arxiv.org/abs/2204.08610

引言

挑战在于,数据增强方法是独立于任务的。由于同时对图像数据和标签进行操作,且不同任务下的标签类型不同,目标检测任务的数据增强方法不能直接应用于语义分割任务。这导致效率低下和低可伸缩性。

其次,目前还没有关于数据增强的理论研究。例如,对于足够的训练数据集的大小,没有定量的标准。生成的训练数据的大小通常是根据个人经验和广泛的实验设计的。此外,当原始数据集的规模很小时,可能会存在悖论。我们将面临的挑战是如何基于很少的数据生成合格的数据

据我们所知,与图像数据增强研究相关的工作没有从 CV任务 的角度回顾图像数据增强方法。一项工作[Wang等人,2017]探索并比较了图像分类中数据增强问题的多种解决方案,但它只涉及图像分类任务,以及仅使用传统 transformations 和 GANs 的实验。[Wang等人,2020]从 transformation 类型和深度学习的角度综述了现有的人脸数据增强工作。然而,该综述仅针对人脸识别任务。一项工作主要关注基于 data warping 和过采样的不同数据增强技术[Khosla和Saini, 2020]。然而,它没有提供不同方法的系统回顾。与我们密切相关的另一项工作是[Shorten和Khoshgoftaar, 2019],其中介绍了一些现有的方法和数据增强的有希望的发展。然而,它没有提供对各种实际任务的数据增强有效性的评估,并且缺乏一些新提出的方法,如CutMix [Yun等人,2019],AugMix [Hendrycks等人,2019],GridMask [Chen等人,2020]等。

为此,本文提出一种图像数据增强方法分类,如 图1 所示。在此基础上,从常见的CV任务的角度,系统地回顾了数据增强技术,包括目标检测、语义分割和图像分类。此外,我们还从这三个CV任务的角度进行了实验。在公开的图像数据集上,比较了不同类型的数据增强方法及其组合在不同深度学习模型上的性能。我们还将讨论图像数据增强研究的未来方向。

图1:图像数据增强方法的分类。

首先介绍了基本的数据增强方法,包括传统的图像处理方法、基于图像擦除的方法和基于图像混合的方法;然后讨论了一些高级技术,包括基于自动增强的方法、特征增强技术和深度生成模型。为了评估各种数据增强方法的效果,在三个典型的CV任务中使用各种公共图像数据集进行了实验。最后指出了未来的研究方向。

2 Basic Data Augmentation Methods

2.1 Image Manipulation(操作)

表 1.

缺点:首先,仅在假设现有数据服从接近实际数据分布的前提下应用基本的图像处理是有意义的。其次,一些基本的图像处理方法,如平移、旋转等,受到填充效应的影响。也就是说,在操作之后,图像的一些区域会被移出边界而丢失。因此,会采用一些插值方法来填充空白部分。一般假设图像边界外的区域为常量0,处理后为黑色。此外,无论CV任务是什么,感兴趣的对象都不应该从帧中移动出去。

2.2 Image Erasing

基于图像擦除的图像增强方法通常会删除图像中的一个或多个子区域。其主要思想是将这些子区域的像素值替换为常量值或随机值。

在[DeVries和Taylor, 2017b]中,作者考虑了一种简单的正则化技术,在训练卷积神经网络(cnn)期间随机屏蔽输入的方形区域,这被称为 cut-out。该方法能够提高CNNs 的鲁棒性和整体性能。[Singh等人,2018]提出了 hide-and-seek (HaS),随机隐藏训练图像中的补丁,这可以迫使网络寻找其他相关内容,同时隐藏最具判别性的内容。[Zhong等人,2020]提出了随机擦除,即随机选择图像中的一个矩形区域,并用随机值替换其像素。该方法简单,但有显著的改进。最近,在[Chen et al., 2020]中,作者分析了信息删除的需求,然后提出了一种结构化的方法,GridMask,它也是基于删除输入图像中的区域。与 Cutout 和HaS不同,GridMask既不删除连续的区域,也不随机选择正方形,删除后的区域是一组空间分布均匀的正方形集合,可以根据密度和大小进行控制。此外,为了平衡目标遮挡和信息保留,提出了 FenceMask [Li et al., 2020],基于模拟目标遮挡策略。

2.3 图像混合

近年来,图像混合数据增强受到了越来越多的关注。这些方法主要通过将两幅或多幅图像或图像的子区域混合成一幅图像来完成。

在[Inoue, 2018]中,作者通过使用训练集中随机选择的两张图像(称为配对样本)合成每个新图像来扩大数据集。所使用的合成方法是在每个像素上平均两幅图像的强度。[Zhang等人,2017]讨论了一种更通用的合成方法 Mixup。Mixup 不仅仅是对两个图像的强度进行平均,它还对样本对及其标签进行凸组合(convex combinations)。因此,Mixup 在数据增强和监督信号之间建立了线性关系,可以正则化神经网络,使其有利于训练样本之间的简单线性行为。与配对样本和 Mixup类似,[Yun等人,2019]提出了 CutMix。而不是简单地从训练集中删除像素或混合图像。与 Mixup 相比,CutMix 可以用另一幅图像的 patch 替换被移除的区域,并且可以生成更自然的图像。[Harris等人,2020]提出了使用随机二进制掩码的 Fmix,该掩码通过对从傅里叶空间采样的低频图像应用阈值获得。Fmix可以采用各种形状的随机遮罩,并且可以比 Mixup 和 CutMix 提高性能。AugMix [Hendrycks等人,2019]并没有混合多个样本,而是首先将多个增强操作混合到三个增强链中,然后将几个增强链的结果以凸组合的形式混合在一起。因此,整个过程通常是将同一幅图像在不同的增强管道中生成的结果进行混合。在ManifoldMix [Verma等人,2019]中,作者通过混合隐藏表示而不是输入样本,在多层上改进了神经网络的隐藏表示和决策边界。

3 高级方法

3.1 自动增强

研究人员试图自动搜索增强方法以获得更好的性能,而不是手动设计数据增强方法。自动增强是深度学习研究的前沿方向,已被广泛研究。自动增强基于不同的数据具有不同的特征,因此不同的数据增强方法具有不同的收益。自动搜索增强方法可以带来比手动设计更多的好处。[Cubuk等人,2019]描述了一个名为 AutoAugment 的简单过程,用于自动搜索改进的数据增强策略。具体来说,AutoAugment 由搜索算法和搜索空间两部分组成。搜索算法旨在找到具有最高验证精度的最佳策略。搜索空间包含许多策略,这些策略详细描述了各种增广操作和应用这些操作的幅度。

然而,自动增强方法面临的一个关键挑战是如何从庞大的候选操作搜索空间中选择有效的增广策略。搜索算法通常采用强化学习[Sutton and Barto, 2018],带来了较高的时间成本。因此,为了减少 AutoAugment 的时间成本,[Lim等人,2019]提出了 快速AutoAugment,通过基于密度匹配的更高效的搜索策略找到有效的增强策略。与 AutoAugment 方法相比,该方法可以加快搜索速度。同时,[Ho等人,2019]提出了 Population Based Augmentation (PBA)以减少 AutoAugment 的时间成本,该方法生成非平稳的增强策略 schedules 而不是固定的增强策略。PBA能够以较少的计算时间在多个数据集上达到与 AutoAugment 相当的性能。最近,[Cubuk等人,2020]提出了 RandAugment,超过了之前的所有自动增强技术,包括 AutoAugment 和 PBA。RandAugment 通过删除一个单独的搜索,极大地减少了数据增强的搜索空间,这是计算成本很高的。此外,RandAugment进一步提升了AutoAugment 和 PBA 的性能。

然而,数据增强可能会引入噪声增强样例,给推理带来负面影响。因此,[Gong等人,2021]提出 KeepAugment,利用显著性图检测原始图像上的重要区域,然后在增强过程中保留这些信息区域。KeepAugment 可以自动改进数据增强方案,如 AutoAugment。在[Tian et al., 2020]中,作者观察到训练后期的增强操作更有影响力,并提出了 Augmentation-wise Weight Sharing strategy。与 AutoAugment 相比,该工作显著提高了效率,使其可以直接在大规模数据集上进行搜索。与自动增强方法以离线方式搜索策略不同,[Lin等人,2019]将增强策略制定为参数化概率分布,参数可以与网络参数联合优化,称为 OHL-Auto-Aug。

3.2 Feature Augmentation

特征增强不是仅在输入空间中进行增强,而是在学习到的特征空间中进行变换。在[DeVries and Taylor, 2017a]中,作者声称,当沿着流形遍历时,与输入空间相比,在特征空间中更有可能遇到真实的样本。因此,研究了在学习到的特征空间中操纵数据向量表示的各种增强方法,包括添加噪声、最近邻插值和外推(extrapolation)。最近,[Kuo等人,2020]提出了 FeatMatch,这是一种新的基于学习特征的细化和增强方法,以产生各种复杂的变换集。此外,FeatMatch 可以利用类内和类间原型表示的信息。最近,作者在[Li等人,2021]中提出了一种称为 矩交换(Moment Exchange) 的隐式数据增强方法,鼓励模型利用潜在特征的矩信息。具体来说,将一个训练图像的特征矩替换为另一个训练图像的特征矩。

3.3 Deep Generative Models

数据增强的最终目的是从代表数据集生成机制的分布中抽取样本。因此,我们生成数据的数据分布不应该与原始数据分布不同。这是深度生成模型的核心思想。在所有的深度生成模型方法中,生成对抗网络(generative adversarial networks, GANs) [Goodfellow等人,2014]是非常具有代表性的方法。一方面,生成器可以帮助生成新图像。另一方面,鉴别器确保新生成的图像与原始图像之间的差距不会太大。尽管 GAN 确实是一种执行无监督生成以增强数据的强大技术[Perez和Wang, 2017],但如何生成高质量的数据并对其进行评估仍然是一个具有挑战性的问题。在本小节中,我们将介绍一些基于GAN的图像数据增强技术。

在[Isola等人,2017]中,基于 conditional adversarial 网络[Mirza和Osindero, 2014],作者提出了 Pix2Pix 来学习从输入图像到输出图像的映射。然而,在训练 Pix2Pix 时,需要大量的配对数据。收集成对的数据具有挑战性。因此,在[Zhu et al., 2017]中,与 Pix2Pix不同,提出了一种 CycleGAN 模型,在没有配对样本的情况下学习图像从源域 X 到目标域 Y 的转换。随着源域和目标域数量的增加,CycleGAN 必须为每个配对的域分别训练模型。例如,如果任务是在 n 个域之间进行转换,我们需要在每两个域之间训练 n×(n−1) 模型。为了解决这个问题,[Choi等人,2018]提出了 StarGAN 来提高处理两个以上域时的可扩展性和鲁棒性。通常,StarGAN 只建立一个模型来在多个域之间进行图像到图像的转换。在生成阶段,我们只需要向生成器提供源图像和表示目标域的属性标签。 然而,StarGAN 将域标签作为额外的输入,并为每个域学习确定性的映射,这可能会导致给定输入图像的每个域都有相同的输出。为了解决这个问题,[Choi等人,2020]提出了 StarGAN v2,这是一种可扩展的方法,可以跨多个域生成不同的图像。在这项工作中,研究人员将图像的领域和风格分别定义为视觉上不同的类别组和每个图像的特定外观。例如,狗可以用作领域,但狗的种类很多,如拉布拉多和哈士奇。因此,特定的狗品种可以被视为图像的风格。通过这种方式,StarGAN v2 可以将一个域的图像转换为目标域的不同图像,并支持多个域。

4. 实验

没啥意思,反正贴了几个表格说了数据增强有用。具体用了啥数据增强,好像用了全部的。

5 Discussion for Future Directions

尽管人们对图像数据增强进行了大量的研究,以提升深度学习模型的性能,但仍有几个开放问题尚未完全解决,总结如下:

Theoretical Research on Data Augmentation.

目前缺乏关于数据增强的理论研究。数据增强更多地被视为提高性能的辅助工具。具体来说,一些方法可以提高准确率,但我们并不完全了解背后的原因,如配对样本和mixup。对于人眼来说,由配对样本和 mixup 组成的增强数据在视觉上没有意义。此外,也没有关于足够的训练数据集的大小的理论。适合任务和模型的数据集大小通常是根据个人经验和通过广泛的实验设计的。例如,研究人员根据具体的模型、训练目标和数据收集的难度来确定数据集的大小。严格和彻底的可解释性不仅可以解释为什么一些增强技术是有用的,而且可以帮助指导选择或设计最适用和有效的方法来扩大我们的数据集。因此,未来的一个关键视角是开发数据增强的理论支持。

The Evaluation of Data Augmentation Methods.

训练数据的数量和多样性对模型的泛化能力至关重要。然而,由于没有统一的指标,如何评价合成图像的质量是一个开放问题[Salimans等人,2016]。在此阶段,研究人员通过以下几种方式评估合成数据的质量。首先,合成数据通常由人眼进行评估,耗时耗力,且具有主观性; AMT (Amazon Mechanical Turk)通常用于评估输出的现实度。AMT 通过让参与者投票给用不同方法合成的各种图像来评估生成图像的质量和真实性。其次,一些研究将评估与具体任务相结合,根据数据增强对任务指标的影响来评估数据增强方法,如分类精度的分类任务和基于掩码 IOU 的语义分割任务。然而,目前并没有针对合成数据本身的评价指标。通常,无论任务是什么,评估指标都是基于个体数据的多样性和整体数据分布的一致性。数据质量分析可以帮助设计评估指标。

Class Imbalance.

类别不平衡或很少的数据会严重扭曲数据分布[Sun等人,2009]。之所以会出现这种情况,是因为学习过程往往偏向于多数类的样本,从而导致少数类的样本不能很好地建模。 Synthetic minority of oversampling technique (SMOTE) [Chawla等人,2002] 是对少数类进行过采样。然而,过采样是在当前数据集上重复绘制。这可能会使少数类饱和,并导致过拟合。最终,我们期望生成的数据可以模拟与训练数据相似的分布,而多样性永远不会损失。

The Number of Generated Data.

数据增强的一个有趣之处在于,训练数据量的增加与性能的提高并不完全成正比。当达到一定的数据量时,继续增加数据而不改善效果。部分原因可能是,尽管数据的数量增加了,但数据的多样性没有改变。因此,生成多少数据就足以提高模型性能还有待进一步探索。

The Selection and Combination of Data Augmentation.

由于多种数据增强可以组合在一起生成新的图像数据,因此数据增强技术的选择和组合至关重要。图像识别实验表明,[Pawara et al., 2017]组合方法的结果往往优于单一方法。因此,在进行数据增强时,如何选择和组合方法是一个关键点。然而,从我们的评估来看,适用于不同数据集和任务的方法是不一样的。因此,必须为每个新任务和数据集仔细设计、实现和测试增强方法集。

总结

这篇论文 更多的是对一些数据增强方法的回顾。可以顺便了解下怎么分类的。