system: [SYSTEM]

user: 4. 基于深度学习的数据增强方法 在进行机器学习模型训练的过程中，优化模型的目标就是尽可能的实现模型的损失降低，因此为了完成这一优化目标，往往需要大量的训练数据作为支撑。传统的数据增强技术依靠对现有数据集的微小调整，包括翻转、旋转和平移等调整方法，通过这些方法对数据集的调整，会产生大量具有微小的或者巨大差别的数据集，使用这种数据集的实验方法将会把这些调整后的数据集视为与原始数据集不同的数据，从而进行模型的训练。数据增强的作用除了能够增加训练的样本数量之外，提高模型的泛化能力之外，还可以通过增加噪声数据，从而提高模型的鲁棒性。 除了传统的数据增强技术以外，近年来，随着机器学习的快速发展和广泛应用，研究人员开始将机器学习技术用于数据增强领域的研究，并取得了一定科研成果。 4.1. 自动数据增强 从数据自身的特点出发，搜索适合不同特点数据集的数据增强策略能够从体系结构搜索的角度重新定义了一种数据增强的新模式。 谷歌大脑的研究人员提出了一种自动搜索合适的数据增强策略的方法(AutoAugment) [ 19 ]，通过设计这种不改变深度学习的网络架构的数据增强方法来实现具有更多不变性的数据增强策略，这种思想能够避免对神经网络架构进行修改而从策略搜索的角度对模型的训练过程进行性能上的优化。该方法通过创建一个搜索空间用来保存数据增强策略，并针对不同的批量任务根据搜索算法从搜索空间中选择合适的子策略，选择的子策略能够应用特定的图像处理函数进行数据增强的操作，以使这样训练出的神经网络能获得最佳的验证准确率。该算法的性能接近不使用任何无标注样本的半监督学习方法。此外，该算法能够实现策略的迁移，将学习到的策略应用到其他类似的数据增强任务上，能够得到较高的准确率，并且不需要在额外的数据上对预训练的权重进行调整。该算法中使用强化学习作为搜索算法，并提出在搜索算法的方面能够进一步研究，得到更好的实验性能。但这种方法在简化设置的情况下需要较长的训练时间。 针对计算损耗巨大的问题，谷歌大脑的研究人员又提出了一种自动数据增强的方法，称为RandAugmentation [ 20 ]。这种方法大大缩小了数据增强所产生的样本空间，从而将数据增强的过程与深度学习模型的训练过程集成起来，而不是将数据增强作为独立的任务。该论文同时也证明了自动的选择数据增强策略的方案通常是在规模较小的数据集上训练参数量级较低的模型而实现的自动数据增强，在此基础上再将搜索到的数据增强策略应用到大规模数据集上的方法不是最优的 [ 20 ]。 自动数据增强是否或者何时需要作为一个单独的搜索阶段一直是困扰着研究人员，在该方面的突破也许能够从根本上解决自动数据增强和模型的训练过程之间的关系问题。此外 Yonggang Li等人 [ 21 ] 在2020年提出了一种新的数据增强技术，该论文提出了将可微分网络架构搜索算法应用在数据增广策略搜索任务上，该算法同样针对AutoAugment中的昂贵计算导致AutoAugment方法在适用性上表现较差的问题。DADA算法提出通过Gumbel-Softmax将离散的数据增强策略选择转化为到一个可优化的问题。 AutoAugment作为开创性的工作，提出了自动搜索策略用于数据增强，将策略的选择过程视作一个组合优化问题。但由于其需要消耗巨大的计算时间，导致其适用性较低，因此研究人员开始针对计算耗时问题提出不同的解决方案。除了上述的两种针对Autoaugment的改进方法之外，还有Population Based Augmentation [ 22 ] 和Fast AutoAugment [ 23 ] 等方法。 4.2. 基于生成对抗网络的数据增强方法 通过基于生成对抗网络的生成建模的方式进行数据增强是现阶段较为常用的手段。生成对抗网络应用在数据增强任务上的思想主要是其通过生成新的训练数据来扩充模型的训练样本，通过样本空间的扩充实现图像分类任务效果的提升。研究人员在原始生成对抗网络框架的基础上又提出了多种不同的改进方案，通过设计不同的神经网络架构和损失函数等手段不断提升生成对抗网络的变体的性能。 4.2.1. DCGAN DCGAN [ 24 ] 尝试将图像领域应用广泛的CNN与生成对抗网络GAN结合起来，提出了Deep Convolutional GANs (DCGAN)，在图像分类任务上证明了其优于其他无监督算法。该算法的核心部分是对CNN架构进行了三处修改：(1) 使用卷积层替代了池化层。作者在GAN中的生成器中进行了此类修改，使得生成器能够学习其自身空间的下采样方式，而不是参数指定的下采样方式。(2) 消除了卷积特征上的全连接层。作者尝试将最高卷积特征分别直接连接到生成器和判别器的输入和输出。(3) 批量归一化 [ 25 ]。使用批量标准化通过将输入标准化以使零均值和单位方差为零来稳定学习，并且能够有效解决深度生成器的所有样本坍塌到单点的问题。将该方法用到生成器的输出层和判别器的输入层会导致批量归一化模型不稳定问题，因此作者在剩余的所有层上都使用了批量归一化的操作。DCGAN算法实现了CNN和GAN的结合，是一种有效的图像生成模型，被广泛的用于数据集样本的生成。但使用该方法中，当训练模型的时间较长时，仍然在部分模型中存在不稳定的问题。 4.2.2. CycleGAN CycleGAN [ 26 ] 作为图像转换领域的重要模型，可以实现样本数据无需配对即可进行转换，例如将一个名人转换成一个卡通人物，这种图像转换的使用能够对样本数据进行极大的扩充而保留原始图像的轮廓。CycleGAN作为一种不对齐数据的图像转换方法现在被广泛的用于图像到图像的转换。 CycleGAN实际上是由两个对称的生成对抗网络组成的环形网络，将该模型与DCGAN进行比较后发现，该模型能够控制图像生成，而DCGAN模型则输入一个噪声后输出一张无法控制的图片。CycleGAN的结构如图4所示。 图4. CycleGAN结构：(a) 该模型由两个映射函数组成 G : X → Y 和 F : Y → X ，并包括两个对抗判别器D Y 和D X ，D Y 鼓励G将X转换为与Y无法区分的输出，D X 则鼓励F将Y转换为与X无法区分的输出。为了进一步的将映射规范化，该模型定义了两个“循环一致性损失”，这两个损失函数保证了将一个域转换为另一个域并再次转换回来的时候，与原始的域尽可能保持一致。(b) 前向循环一致性损失： x → G ( x ) → F ( G ( x ) ) ≈ x ，(c) 反向循环一致性损失 y → F ( y ) → G ( F ( y ) ) ≈ y [ 26 ] 4.2.3. Conditional GANs 2014年，Mehdi Mirza等人提出了Conditional GAN [ 27 ]，论文中提出的模型不仅仅需要较高的逼真度而且需要在一定的条件约束下完成，由于其增加了条件约束，因此生成器和判别器的设计会发生较大的改变。通过根据附加信息对模型框架进行调整，可以用于指导数据的生成过程，这种根据条件生成数据的方式对于数据增强非常有效，研究人员在原始图像上可以根据不同的需求条件生成增量数据，并将增量数据应用到下游的神经网络模型中。Conditional GAN的结构如图5所示。 图5. Conditional GAN 的结构 尽管生成对抗网络在生成图像领域被广泛的应用，但其训练的不稳定性，以及要求大量训练数据的不适用性将导致其不同的变体方法在一些时候并不能有效的实现数据增强的任务。 4.3. 基于自动编码器和生成对抗网络组合的数据增强方法 自动编码器通过将其网络结构的一般用于编码，获得图像的低维向量表示，将网络结构的另一半用于解码，获得根据低维向量表示重新构造的图像数据，这种编码解码的方式能够实现训练数据样本和噪声数据样本的容量扩充，实现了利用数据增强技术提高神经网络的泛化能力和鲁棒性。 在生成对抗网络被广泛应用到生成数据任务之后，研究人员开始提出生成对抗网络与自动编码器的结合形式，通过将变体的生成对抗网络和变体的自动编码器结合而形成一个通用的学习框架来生成细粒度类别的图像，这种新颖的图像生成方式同样能够有效的完成数据增强任务。Jianmin Bao等人 [ 28 ] 提出的CVAE-GAN通过将图像建模为概率模型中图像标签和隐藏属性的组合的形式。 CVAE-GAN首先使用编码器将给定的训练图像数据和类别标签编码为符合给定概率分布的隐变量，再通过生成器将从隐变量中采样得到的数据和对应的类别标签生成图像数据，将该图像数据输入到分类器和判别器中从而输入分类标签和判别标签，生成器和判别器构成了一个生成对抗网络，其中生成器尝试通过已经学会了区分真实样本和虚假样本的判别器提供的的梯度来学习真实数据分布。作者还在其论文中证明了均值特征匹配也可以用于条件图像生成任务中。CVAE-GAN方法能够在多种图像任务中取得较好的性能，包括图像生成任务、图像修复任务等，但在生成位置类别的样本方面还存在一定的可探索性。 在自动编码器和生成对抗网络的组合应用方面，Yang He等人 [ 29 ] 提出了一种新颖的图像生成方法，该方法可以被分类为一种随机回归方法，其学会了从单个条件输入中产生多个不同的示例。这种方法与CVAE-GAN方法一样结合了生成对抗网络和自动编码器的优势来完成图像生成任务。这种新提出的算法通过使用随机回归公式为条件图像生成任务提供了一种新颖的解决方案，该模型可以生成准确且多样的样本，并且可以稳定地训练并提供具有潜在向量表示形式的抽样机制。该模型还应用了通道级别的dropout (channel-wise dropout)，从改进网络结构的角度提出解决多项选择学习思想的方法。 将图像生成技术用于数据增强任务的方法除了生成对抗网络以及自动编码器和生成对抗网络的组合形式之外，研究人员还提出了一些其他的方法。Qifeng Chen等人 [ 30 ] 提出级联优化网络(cascaded refinement networks， CRN)，该模型将图像生成任务转化为回归问题，该模型还证明了可以通过合适结构的前馈网络合成图像数据，实现了将图片无缝缩放到高分辨率，并在实验中证明了模型的有效性。Justin Johnson等人 [ 31 ] 提出采用感知损失函数训练前馈网络进行图像转换的任务。模型通过训练一个用于图像转换任务的前馈网络，同时不需要进行像素级别的求差值操作而构造损失函数。使用感知损失函数，从预训练好的网络中提取高级特征。该模型同样在图像转换任务中取得了不错的性能。