深度学习中的各种数据增强方法大全

这篇具有很好参考价值的文章主要介绍了深度学习中的各种数据增强方法大全。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

随着深度学习在计算机视觉的广泛应用,以卷积神经网络为代表的深度学习模型取得了突破性的进展。然而,直至今日,尽管提出了以 ViT 为代表的新一代视觉网络架构,但数据问题仍然是构建深度学习模型最常见的挑战之一。在实际的应用场景中,足量且高保真的优质数据集通常是可遇不可求的,一方面费钱费时费力不说,由于隐私保护和极端概率问题,数据集的获取变得尤为困难。因此,一种低成本且有效的方法便是利用数据增强来减少对训练数据的依赖,从而帮助开发人员更好更快地构建高精度的 AI 模型。

本文的大纲:

  • 数据增强的定义

  • 数据增强的作用

  • 数据增强的方式

数据增强的定义

数据增强通常是依赖从现有数据生成新的数据样本来人为地增加数据量的过程。这包括对数据进行不同方向的扰动处理或使用深度学习模型在原始数据的潜在空间(latent space)中生成新数据点从而人为的扩充新的数据集。

这里我们需要区分两个概念,即增强数据合成数据

  • 合成数据:指在不使用真实世界图像的情况下人工生成数据,合成数据可由 GAN 或者现如今大火的 AGI 技术 Diffusion Model 产生;

  • 增强数据:从原始图像派生而来,并进行某种较小的几何变换(例如翻转、平移、旋转或添加噪声等)或者色彩变换(例如亮度、对比度、饱和度或通道混洗等),以此来增加训练集的多样性。

数据增强的作用

省钱 · 省时 · 省心

在实际的应用场景中,数据集的采集、清洗和标注在大多数情况下都是一个非常昂贵且费时费力且乏味的事情。有了数据增强技术,一方面可以减轻相关人员的工作量,另一方面也可以帮助公司削减运营开支。此外,有些数据由于涉及到各种隐私问题可能用钱都买不到,又或者一些异常场景的数据几乎是极小概率时间,这时候数据增强的优势便充分的体现出来了。

提升模型性能

众所周知,卷积神经网络对平移、视点、大小或光照均具有不变性。因此,CNN 能够准确地对不同方向的物体进行分类。在深度学习中,CNN 通过对输入图像进行卷积运算来学习图像中的不同特征,从而在计算机视觉任务上表现非常出色。随着 ViT 的提出,一系列 Vision Transformer 模型被提出并被广泛地应用。然而,无论是 CNN 还是 Transformer,均离不开数据的支持。特别是,当数据量较小时 CNN 容易过拟合,Transformer 则无法学习到良好的表征。

数据增强的方式

数据增强方式大致可分为两类:基础数据增强和高级数据增强。
深度学习中的各种数据增强方法大全

Image data augmentation taxonomy

基础数据增强方法

Image Manipulation

图像处理(Image Manipulation)是指在图像中对其位置颜色所做的更改:

  • 位置操作是通过调整像素的位置来进行的;

  • 颜色操作是通过改变图像的像素值来进行的。

深度学习中的各种数据增强方法大全

Overview of the geometric data augmentations

首先介绍下几何数据增强(Geometric Data Augmentation),它是指对图像几何形状所做的更改。几何指的是位置,比如以一定角度移动等。这种技术改变了图像中像素值的位置,例如旋转、平移和剪切。主要包含以下三种:

  • Rotation

旋转,其让图像在 0 到 360 度之间旋转。此处旋转度数是一个超参数,应该根据实际需要选择。举个例子,就像大家最熟悉的 MNIST 一样,我们不能旋转 180 度,不然数字 6 旋转 180 就变成 9,这就离谱了。

  • Translation

平移,它是另一种几何类型的数据增强,通过向上、向下、向右或向左移动图像以提供不同的视图。

  • Shearing

错切,其字面意思是沿轴扭曲图像。错切是一种数据增强技术,可以将图像的一部分向一个方向移动,而另一部分则向相反方向移动。从技术上讲,它分为两类,即沿x轴切和y轴切。对于 x 轴,图像的顶部沿一个方向移动,底部沿完全相反的方向移动。而在 y 轴中,图像的左侧部分沿一个方向移动,右侧部分沿相反方向移动。

深度学习中的各种数据增强方法大全

Overview of the non-geometric data augmentations

其次,我们为大家介绍下非几何数据增强(Non-Geometric Data Augmentations),这种增强方式侧重于图像的视觉外观而不是其几何形状。例如噪声注入、翻转、裁剪、调整大小和色彩空间操作是均是非几何增强技术的范畴。下面介绍一些经典的方法:

  • Flipping

翻转,它是一种水平或垂直翻转图像的数据增强技术,几乎会应用在许多视觉任务上。一般来说,我们常用的是水平翻转,垂直翻转在大多数情况下会导致目标歧义,例如一个人翻转过来就很不协调和自然,当然还是那句话,根据你的实际应用场景调整。

  • Cropping and resizing

裁剪,属于另一种数据增强技术,常用作预处理增强。使用随机裁剪或中心裁剪作为数据增强。该技术会减小图像的大小,然后执行调整大小以匹配图像的原始大小,同时不会平滑图像的标签。

  • Noise Injection

注入噪声是另一种数据增强技术,它有助于神经网络学习稳健的特征,对抵御对抗性攻击非常有帮助。

  • Color Space

一般来说,图像通常是由 RGB 三颜色通道组成的。这里如果我们单独操纵每个通道值以控制亮度也是一种数据增强方式,有时也称为光度增强。这种增强有助于避免模型偏向 lightning 条件。执行颜色空间增强的最简单方法是隔离任何通道并添加 2 个填充任何随机值或 0 或 255 的通道。颜色空间常用于照片编辑应用程序,即用于控制亮度或暗度。

  • Jitter

扰动,是一种通过随机改变图像的亮度、对比度、饱和度和色调的数据增强方式。对于这四个是超参数,我们应仔细选择它们的取值范围。例如,如果我们不小心多度提高了肺部疾病检测的X光图像亮度,这会使肺部在X光中变白混杂,对疾病诊断实际是没有帮助的。

  • Kernel Filters

这是一种用来锐化或模糊图像的数据增强方式。一开始,我们可以滑动大小为 n x n 的窗口 Kernel 或高斯模糊过滤器和边缘过滤器的矩阵。高斯模糊滤镜可以使图像变得更加模糊,而边缘滤镜则使图像的水平或垂直边缘锐化。

紧接着,我们继续介绍第三种基于图像擦除的数据增强方式(Image Erasing Data Augmentations):

深度学习中的各种数据增强方法大全

Overview of the Mixup, Cutout, and CutMix

  • Cutout[1]

Cutout 是通过在训练期间随机擦除子区域并在图像中填充 0 或 255 的一种数据增强技术。

  • Random erasing[2]

深度学习中的各种数据增强方法大全

Random erasing examples for different tasks

Random erasing 是一种像剪切一样随机擦除图像中子区域的一种增强方式。但它也随机决定是否屏蔽,并决定屏蔽区域的纵横比和大小。例如,我们可以在人脸识别任务中,通过这项数据增强技术来模拟戴口罩的效果。

  • Hide-and-Seek[3]

捉迷藏(Hide-and-Seek)数据增强的关键思想是将图像划分为随机大小的均匀正方形,并随机删除随机数量的正方形。当重要信息被隐藏时,它迫使神经网络学习相关特征。在每个epoch,它都会给出图像的不同视图。

深度学习中的各种数据增强方法大全

An example of Hide-and-Seek augmentation

  • GridMask[4]

最后,我们向大家介绍基于网格掩码的数据增强方式。先前的方法尝试解决随机删除可能会存在完全擦除对象或删除上下文信息区域的问题。为了在这些问题之间进行权衡,GridMask 创建统一的掩码,然后将其应用于图像,如下图所示:

深度学习中的各种数据增强方法大全

GridMask augmentation

此图显示了 GridMask 增强的过程,具体的做法是生成一个掩码,然后将其与输入图像相乘。

Image Mixing Data Augmentations

图像混合数据增强在过去几年一直是一个热门话题。图像混合数据增强是关于将图像与其他图像或相同图像混合。在本文中,我们将其大致分为两类,即单图像混合(Single image mixing)增强和非单图像混合(Non-single image mixing)增强。

首先,第一部分我们先介绍下基于单图像混合的数据增强方式。单一图像混合技术顾名思义便是仅使用一个图像,并从不同的视角对其进行处理。最近在单图增强方面做了很多工作,比如LocalAugmentSelfAugmentationSalfMix等,下面分别为大家介绍下。

  • Local Augment[5]

深度学习中的各种数据增强方法大全

An example of Global and Local Rotation Image

Local Augment,即局部增强的原理是将图像切分成小块,并在每个小块上应用不同类型的数据增强,目的是潜在地改变目标偏差属性,但产生显着的局部特征,如上图所示。虽然这种增强并不主宰全局结构,但提供了非常多样化的图像特征,这对于神经网络以更通用的方式学习局部特征至关重要。

  • Self Augmentation[6]

深度学习中的各种数据增强方法大全

An example of self augmentation

Self Augmentation 中,图像的随机区域会被裁剪并随机粘贴到图像中,以提高小样本学习的泛化能力。

  • SalfMix[7]

SalfMix 提出的背景主要是关注是否可以泛化基于单图像混合增强的神经网络?为此,其思想是找到图像的第一个显着部分来决定应该删除哪个部分以及应该复制哪个部分。

深度学习中的各种数据增强方法大全

Conceptual comparison between SalfMix method and other single image-based data augmentation methods

如上图所示,SalfMix 是通过显着性图将图像中显著的区域裁剪出来并放入非显着区域。

  • KeepAugment[8]

深度学习中的各种数据增强方法大全

This image shows the example of KeepAugment with other augmentations

引入 KeepAugment 是为了防止分布偏移降低神经网络的性能。KeepAugment 的想法是通过保留图像的显着特征和增强非显着区域来提高保真度。其中,被保留的特征进一步允许在不改变分布的情况下增加多样性。

  • YOCO[9]

深度学习中的各种数据增强方法大全

An example of YOCO augmentation

YOCO,即You Only Cut Once,它可以从部分信息中识别对象并提高增强的多样性,从而鼓励神经网络表现得更好。YOCO 制作了两张图像,每张都应用了一个增强,然后将每张图像连接成一张图像。YOCO 易于实现,且不会引入任何参数,同时也易于使用。

  • Cut-Thumbnail[10]

深度学习中的各种数据增强方法大全

Comparison between existing data augmentation methods with CutThumbnail

Cut-Thumbnail,即缩略图,是一种新颖的数据增强,它将图像调整到一定的小尺寸,然后用调整后的图像随机替换图像的随机区域,旨在减轻网络的形状偏差。Cutthumbnail 的优点是它不仅保留了原始图像,而且在调整后的小图像中保持全局。

深度学习中的各种数据增强方法大全

Cut-Thumbnail

此图像显示了缩略图的缩小图像示例。其方式是将图像缩小到一定尺寸 112×112 或 56×56 后,尽管丢失了很多局部细节,但图像中的目标(狗)仍然可以识别。

最后一部分我们向大家介绍非单图像的混合数据增强(Non-Single Image Mixing Data Augmentations)方式,这块涉及的内容比较丰富,包括大家所熟悉的 Mixup、CutMix、CopyPaste 等混合增强技术,下面让我们一起看看吧!

深度学习中的各种数据增强方法大全

Overview of the Mixup, Cutout, and CutMix

  • Mixup[11]

Mixup 是根据混合因子(alpha)来混合任意两个随机图像,这些图像的相应标签也以相同的方式混合。混合数据增强不仅在准确性方面而且在鲁棒性方面都可持续地提高了性能。

  • CutMix[12]

CutMix 解决了信息丢失和区域丢失问题。它的灵感来自 Cutout,其中任何随机区域都用 0 或 255 填充,而在 cutmix 中,不是用 0 或 255 填充随机区域,而是用另一个图像的补丁填充该区域。相应地,它们的标签也根据混合的像素数按比例混合。

  • SaliencyMix[13]

深度学习中的各种数据增强方法大全

An example of SaliencyMix augmentation

SaliencyMix 基本上解决了 Cutmix 的问题,并认为用另一个补丁填充图像的随机区域并不能保证补丁具有丰富的信息,因此混合未保证补丁的标签会导致模型学习关于图像的不必要信息 修补。为了解决这个问题,SaliencyMix 首先选择图像的显着部分并将其粘贴到随机区域或另一幅图像的显着或非显着区域。

深度学习中的各种数据增强方法大全

SaliencyMix data augmentation procedure

上面这张图展示了该方法的实现过程。

  • Puzzle Mix[14]

Puzzle Mix 提出了一种拼图混合数据增强技术,该技术侧重于灵活地使用图像的显着信息和基本统计数据,目的是打破神经网络对现有数据增强的误导监督。

深度学习中的各种数据增强方法大全

A visual comparison of the mixup methods.

uzzle Mix 确保包含足够的目标类信息,同时保留每个样本的局部统计信息。

  • SnapMix[15]

SnapMix 是一种基于语义比例的混合数据增强,它利用类激活图来降低标签噪声水平。SnapMix 根据实际参与增强图像的显着像素创建目标标签,确保增强图像和混合标签之间的语义对应。

深度学习中的各种数据增强方法大全

A visual Comparison of Mixup, CutMix, and SnapMix

该图给出了一个基本示例,可以看出,与 CutMix 和 Mixup 相比,SnapMix 生成的标签在视觉上更符合混合图像的语义结构。

  • FMix[16]

FMix 也是一种混合样本数据增强(MSDA),利用随机二分类掩码。这些随机二分类掩码是通过对从傅立叶空间获得的低频图像应用阈值来获取的。一旦获得掩码,一个颜色区域将应用于其中一个输入,另一个颜色区域将应用于另一个输入。整体流程如下图所示:

深度学习中的各种数据增强方法大全

Example masks and mixed images from CIFAR-10 for FMix

  • MixMo[17]

MixMo 侧重于通过子网络学习多输入多输出。该方法的主要动机是采用更可靠的机制代替直接的隐藏求和操作。MixMo 的具体做法是将 M 个输入嵌入到共享空间中,将它们混合并将它们传递到更深的层进行分类。

深度学习中的各种数据增强方法大全

This image shows the overview of MixMo augmentation

  • StyleMix[18]

StyleMix 针对以前的方法问题,即不区分内容和样式特征。为了解决这个问题提出了两种方法 styleMix 和 StyleCutMix,这是第一个非常详细地分别处理图像的内容和样式特征的工作,并且它在流行的基准数据集上显示出令人印象深刻的性能。

深度学习中的各种数据增强方法大全

A Visual comparison of StyleMix and StyleCutMix with Mixup and CutMix

  • RandomMix[19]

RandomMix 可用于提高模型的泛化能力,它从一组增强中随机选择混合增强并将其应用于图像,使模型能够查看不同的样本。整体演示如下图所示:

深度学习中的各种数据增强方法大全

An illustrative example of RandomMix

  • MixMatch[20]

MixMatch 是一种应用于半监督学习的数据增强技术,其将单个图像增加 K 次并将所有 K 个图像传递给分类器,对它们的预测进行平均,最后,通过调整它们的分布温度项来增强它们的预测。

深度学习中的各种数据增强方法大全

Diagram of the label guessing process used in MixMatch

  • ReMixMatch[21]

ReMixMatch 是混合匹配的扩展,通过引入分布对齐和增强锚定使先前的工作变得高效。分布对齐任务是使未标记数据的预测边缘分布接近 ground truth 的边缘分布,并鼓励未标记数据的预测边缘分布接近 ground truth 标签的边缘分布。增强锚定将输入的多个强增强版本提供给模型,并鼓励每个输出接近同一输入的弱增强版本的预测。

深度学习中的各种数据增强方法大全

ReMixMatch

ReMixMatch 使用弱增强图像(中间绿色部分)的预测来预测同一图像(图中蓝色部分)的强增强。

  • FixMatch[22]

FixMatch 通过在有限的标记数据上进行训练,然后使用经过训练的模型将标签分配给未标记数据。Fixmatch 首先将伪标签分配给概率高于某个阈值的未标记图像。该模型被迫对未标记图像的强增强版本进行预测,以使用交叉熵损失将其预测与伪标签相匹配。

深度学习中的各种数据增强方法大全

FixMatch

  • AugMix[23]

AugMix 是一种简单有效的数据增强,可减少训练和测试(未见)数据分布之间的差距。AugMix 操作以相应的随机增强幅度执行,最后,所有这些图像被合并以生成一个新图像,该图像广泛探索图像周围语义等效的输入空间。

深度学习中的各种数据增强方法大全

AugMix

如上图所示,在三个分支中分别进行了三个操作,最后,将所有图像混合生成新图像,这有利于提升模型的鲁棒性。

  • Copy-Paste[24]

Copy-Paste] 只是将一个图像的掩码实例复制并粘贴到另一个图像,其实现起来非常简单,但效果出众,特别是对于小目标检测来说。当然,我们也可以采用 BBox 级的实例来实现。

深度学习中的各种数据增强方法大全

Copy-Paste

上图展示了两个图像的实例以不同的比例相互粘贴。

  • Mixed-Example[25]

如今,最先进的非标签保留数据增强技术已经使用两个示例的线性组合显示出有希望的结果。Mixed-Example 集中讨论两个问题:

  1. 为什么这些方法有效?

  1. 若通过提出新的增强,这种线性组合重要吗?

深度学习中的各种数据增强方法大全

Mixed-Example

上图给出了改进的混合示例执行的线性方法和广义增强的视觉比较。

  • RICAP[26]

RICAP,即随机图像裁剪和修补,是一种新的数据增强技术,它切割和混合四张图像而不是两张图像,并且图像的标签也被混合。

深度学习中的各种数据增强方法大全

A conceptual explanation of the RICAP data augmentation

  • CutBlur[27]

CutBlur 探索和分析了现有的超分辨率数据增强技术,并提出了另一种新的数据增强技术,通过切割高分辨率图像块并粘贴到相应的低分辨率图像,反之亦然。Cutblur 在超分辨率方面表现出色。

深度学习中的各种数据增强方法大全

A visual comparison between High resolution, low resolution and CutBlur

下面是它的实现原理示意图:

深度学习中的各种数据增强方法大全

An Schematic illustration of CutBlur operation

  • ResizeMix[28]

ResizeMix 是一种将数据与保留的对象信息和真实标签混合的数据增强方法,其通过直接以四种不同的方式剪切和粘贴源数据以针对图像。这里,四种不同的方式,包括显着部分、非部分、随机部分或调整源图像大小来修补,它主要解决了两个问题:• 如何从源图像中获取补丁?• 将源图像的补丁粘贴到目标图像的什么位置?

深度学习中的各种数据增强方法大全

ResizeMix

此外,ResizeMix 发现显着性信息对于促进混合数据扩充并不重要。

  • ClassMix[29]

ClassMix 是一种用于半监督学习的基于分割的数据增强方法。传统的数据增强对语义分割并不像图像分类那样有效。ClassMix 通过在考虑对象边界的同时利用网络预测,通过混合未标记样本来扩充训练样本。

深度学习中的各种数据增强方法大全

ClassMix

  • CDA[30]

CDA,即 Context Decoupling Augmentation,是一种用于弱监督语义分割的上下文解耦增强技术,从而解决 WSSS 领域传统数据技术性能不佳的问题,这些通过增加相同上下文数据语义样本不会在对象区分中贡献太多价值。例如,对于图像分类任务来说,目标识别是由于目标本身及其周围环境,这不鼓励模型只关注当前目标,而要结合上下文。

为了打破这一点,CAD 使特定对象出现的位置多样化,并引导网络打破对象和上下文信息之间的依赖关系。在这种情况下,它还提供增强和网络焦点到对象实例而不是对象实例和上下文信息的方式。

深度学习中的各种数据增强方法大全

CDA

  • ObjectAug[31]

ObjectAug 是一种用于语义分割的对象级增强,解决了混合图像级数据增强策略的问题,以前的策略无法用于分割,因为对象和背景是耦合的,其次对象的边界由于它们与背景的固定语义联系而没有被增强。为了缓解这个问题,首先,它借助语义标签将对象和背景从图像中分离出来,然后使用翻转和旋转等流行的数据增强技术对每个对象进行增强。由于这些数据增强而导致的像素变化可以使用图像修复来恢复。最后,对象和背景耦合以创建增强图像,从而有效的提升分割的性能。

深度学习中的各种数据增强方法大全

ObjectAug

高级数据增强

高级数据增强的一个典型代表便是自动数据增强,其目标是从训练数据中找到数据增强策略。它将寻找最佳增强策略的问题转化为离散搜索问题,由搜索算法和搜索空间组成,主要包含四部分:

  • 基于强化学习的数据增强(Reinforcement learning data augmentation)

  • 基于非强化学习的数据增强(Non-Reinforcement learning data augmentation)

  • 基于风格迁移的数据增强(Neural Style Transfer)

  • 基于特征空间的数据增强(Feature space data augmentations)

下面简单介绍下这两部分。

基于强化学习的数据增强
  • AutoAugment[32]

AutoAugment 的目标是通过自动搜索策略找到最好的数据扩充而不是通过手动进行数据扩充。为了解决这个限制,其设计了搜索空间并具有由许多子策略组成的策略。每个子策略都有两个参数,一个是图像处理函数,第二个是概率和大小。这些子策略是使用强化学习作为搜索算法找到的,整体流程如下所示:

深度学习中的各种数据增强方法大全

AutoAugment

  • Fast Autoaugment[33]

Fast Autoaugment 解决了 AutoAugment 需要花费大量时间才能找到最佳的数据增强策略的问题。该方法的解决方案是通过利用基于密度匹配的高效搜索策略找到更优的数据扩充,从而减少了高阶训练时间。

深度学习中的各种数据增强方法大全

An overall procedure of augmentation search by Fast AutoAugment algorithm

  • Faster AutoAugment[34]

Faster AutoAugment 旨在非常高效地找到有效的数据增强策略,其基于可区分的增强搜索策略。此外,它不仅为许多具有离散参数的转换操作估计梯度,而且还提供了一种有效选择操作的机制。最终,它引入了一个训练目标函数,旨在最小化原始分布和增广分布之间的距离,该函数也是可微的。需要注意的是,其增强的参数是在反向传播期间更新的,整体流程图定义如下:

深度学习中的各种数据增强方法大全

An Overview of the Faster AutoAugment augmentation

  • RAD[35]

RAD,即增强数据强化学习,其易于插入有效提升了强化学习算法的性能。RAD 主要考虑两个问题:

  • 学习数据效率;

  • 新环境的泛化能力;

此外,它表明传统的数据增强技术使 RL 算法能够在基于像素的控制和基于状态的控制方面胜过复杂的 SOTA 任务,下面是它的总体流程图:

深度学习中的各种数据增强方法大全

An overview of different augmentation investigated in RAD

  • MARL[36]

MARL,即多代理强化学习,是一种基于多代理协作的局部补丁自动增强方法,这是第一个使用强化学习找到补丁级别数据增强策略的方法。MARL 首先将图像分成小块,然后共同为每个小块找到最佳数据增强策略.

深度学习中的各种数据增强方法大全

An Illustration of different automated augmentation policies for MARL

  • LDAS[37]

LDAS 建议使用自动增强来学习目标检测的最佳策略。它解决了目标检测增强的两个关键问题:

  1. 分类学习策略不能直接应用于检测任务,如果应用几何增强,它会增加处理边界框的复杂性;

  1. 与设计新的网络架构相比,数据增强增加的价值要少得多,因此受到的关注较少,但应谨慎选择用于目标检测的增强

下图展示了基于此数据扩充的一些子策略:

深度学习中的各种数据增强方法大全

Different data augmentation sub-policies explored

  • [Scale-Aware Automatic Augmentation](https://arxiv.org/abs/2103.17220 "Scale-Aware Automatic Augmentation"

,即Scale-Aware Automatic Augmentation,是一种用于目标检测的数据增强策略。首先,它定义了一个搜索空间,其中图像级和框级数据增强为尺度不变性做好了准备;其次,这项工作还提出了一种新的搜索度量,名为有效且高效地搜索增强的帕累托比例平衡。

深度学习中的各种数据增强方法大全

Example of scale-aware search space which includes image level and box-level augmentation

  • ADA[38]

ADA 提供了一种系统的方法来从目标检测的角度找到数据增强的最佳对抗性扰动,该方法基于数据的博弈论解释,即纳什均衡。纳什均衡提供了最佳边界框预测器和数据扩充的最佳设计。最优对抗性扰动是指 ground truth 的最差扰动,它迫使框预测器从最困难的样本分布中学习。

深度学习中的各种数据增强方法大全

Adversarial augmentation

从上图可以看出,ADA 偏向于选择尽可能与 GT 不同但又包含关键对象特征的边界框。

  • Deep CNN Ensemble[39]

Deep CNN Ensemble 提出了一种新的 R-CNN 模型变体,在训练和评估方面进行了两个核心修改。首先,它使用几个不同的 CNN 模型作为 R-CNN 中的集成器,其次,它通过从 Microsoft COCO 数据集中选择与 PASCAL VOC 一致的子集,巧妙地用 Microsoft COCO 数据增强 PASCAL VOC 训练示例。原理图如下所示:

深度学习中的各种数据增强方法大全

The proposed schematic diagram

  • RADA[40]

通过对抗性学习可以获取稳健而准确的目标检测,先前方法展示了当对目标检测任务进行微调时分类器性能从不同的数据增强中获得增益,并且在准确性和稳健性方面的性能没有提高。RADA 提供了一种探索对抗性样本的独特方法,有助于提高性能。为此,它在目标检测器的微调阶段通过探索对抗性样本来增强示例,这被认为是依赖于模型的数据增强。

首先,它从检测器分类和定位层中选择更强的对抗样本,这些样本会随着检测器的变化而变化,以确保增强策略保持一致。该方法在不同目标检测任务的准确性和鲁棒性方面显示出显着的性能提升:

深度学习中的各种数据增强方法大全

RADA

上图分别展示了 RADA 分别提高了目标检测器在干净图像上的准确性、检测器对自然损坏的鲁棒性以及对跨数据集域偏移的鲁棒性。

  • PTDA[41]

PTDA,即 Pespective Transformation Data Augmentation,同样也是一种用于目标检测的新数据增强,简称为透视变换,它可以生成以不同角度捕获的新图像。因此,它模仿图像,就好像它们是在相机无法捕获这些图像的特定角度拍摄的一样。该方法在多个目标检测数据集上显示出有效性。

  • DADA[42]

DADA,Deep Adversarial Data Augmentation,即深度对抗性数据增强,它将数据增强被表述为训练类条件和监督 GAN 的问题。此外,它还引入了新的鉴别器损失,目的是保证数据扩充是真实的,并且扩充样本被迫平等参与并在寻找决策边界时保持一致。

基于非强化学习的数据增强
  • RandAugment

以前的最佳增强方法大都是一些使用强化学习或一些复杂的学习策略,因此需要花费大量时间才能找到合适的增强方法和确定增强因子。这些方法消除了单独搜索阶段的障碍,这使得训练更加复杂,从而增加了计算成本开销。为了打破这一点,RandAugment 是一种新的数据增强方法,比 AutoAugment 简单又好用。主要思想是随机选择变换,并调整它们的大小:

深度学习中的各种数据增强方法大全

Example images augmented by RandAugment

基于风格迁移的数据增强

基于风格迁移的数据增强是一种独特的数据增强方式,可以在不改变高层语义的情况下将一幅图像的艺术风格转移到另一幅图像。它为训练集带来了更多多样性。这种神经风格迁移的主要目标是从两张图像生成第三张图像,其中一张图像提供纹理内容,另一张图像提供高级语义内容。下面介绍一些常见的应用。

  • STaDA[43]

STaDA,Style Transfer as Data Augmentation,顾名思义便是基于风格迁移的数据增强方法,这是一种彻底评估了不同的 SOTA 神经风格转移算法作为图像分类任务的数据增强。此外,它还将神经风格迁移算法与传统的数据增强方法相结合,下面给出相关的示意图:

深度学习中的各种数据增强方法大全

Overview of the original image and two stylized images by STaDA

  • NSTDA[44]

NSTDA,Neural Style Transfer as Data Augmentation,是一种将神经风格迁移作为改进 COVID-19 诊断分类的数据增强方法。这项工作显示了循环生成对抗网络的有效性,该网络主要用于神经风格迁移,增强 COVID-19 负 x 射线图像以转换为正 COVID 图像以平衡数据集并增加数据集的多样性。该方法充分表明了使用 Cycle GAN 增强图像可以提高几种不同 CNN 架构的性能。

深度学习中的各种数据增强方法大全

Overview of generating synthetic covid images from the healthy category

  • SA[45]

这项工作提出了一种新的数据增强,称为基于风格神经转移的风格增强。SA 随机化颜色、对比度和纹理,同时在训练期间保持形状和语义内容。这是通过选择任意样式传输网络来随机化样式并从多元正态分布嵌入中获取目标样式来完成的。它提高了三个不同任务的性能:分类、回归和域适应。

深度学习中的各种数据增强方法大全

Overview of Style augmentation applied to an image

从上图可以明显的看出,基于 SA 的数据增强方式可以将形状保留下来,但样式(包括颜色、纹理和对比度)是随机的。

  • StyPath[46]

StyPath 是一种用于稳健组织学图像分类的风格迁移数据增强策略,旨在减少偏见的风格。

深度学习中的各种数据增强方法大全

StyPath

  • AS[47]

这项工作介绍了一种基于深度神经网络的人工系统,可生成具有高感知质量的艺术图像。AS 创建神经嵌入,然后使用嵌入来分离图像的风格和内容,最后再重新组合目标图像的内容和风格以生成艺术图像。

深度学习中的各种数据增强方法大全

Overview of the styled image by neural algorithm

基于特征空间的数据增强

基于特征空间的数据增强首先将图像转换为嵌入或表示,然后对图像的嵌入执行数据增强,最后再向大家介绍下这部分内容。

  • Dataset Augmentation in Feature Space[48]

这项工作首先使用编码器-解码器来学习表示,然后在表示上应用不同的变换,例如添加噪声、插值或外推。所提出的方法已经显示出静态和顺序数据的性能改进。

深度学习中的各种数据增强方法大全

Overview of interpolation and extrapolation between handwritten characters

  • Feature Space Augmentation for Long-Tailed Data

该方法提出了基于特征空间中的新数据增强,以解决长尾问题并提升代表性不足的类样本。所提出的方法首先在类激活图的帮助下将类特定特征分为通用特征和特定特征。代表性不足的类样本是通过将代表性不足的类的类特定特征与来自其他混淆类的类通用特征注入而生成的。这使得数据多样化,也解决了代表性不足的类别样本的问题。

深度学习中的各种数据增强方法大全

Left: limited but well-spread data. Right: Without sufficient data

  • Adversarial Feature Augmentation for Unsupervised Domain Adaptation[49]

生成对抗网络在无监督域适应中显示出可喜的结果,以学习与源域无法区分的目标域特征。这项工作扩展了 GAN 以强制特征提取器成为域不变的,并通过特征空间中的数据增强来训练它,称为特征增强。总的来说,该工作探索了 GAN 在特征层面的数据增强。

  • FeatMatch[50]

FeatMatch 提出了一种新的 SSL 特征空间数据增强方法,其灵感来自基于图像的 SSL 方法,该方法结合了图像增强和一致性正则化。基于图像的 SSL 方法仅限于传统的数据增强。为了打破这一目标,基于特征的 SSL 方法从复杂的数据扩充中产生了不同的特征。一个关键点是,这些高级数据增强利用了通过聚类提取的类内和类间表示的信息。所提出的方法仅在 min-Imagenet 上显示出显着的性能增益,例如在 miniImageNet 上绝对增益 17.44%,而且还显示了对分布外样本的鲁棒性。此外,图像级和特征级增强和一致性之间的差异如下图所示:

深度学习中的各种数据增强方法大全

An overview of featMatch augmentation applied on images and features

References

  • [1]Advanced Data Augmentation Approaches: https://arxiv.org/pdf/2301.02830.pdf

  • [2]Cutout: https://arxiv.org/abs/1708.04552

  • [3]Random erasing: https://arxiv.org/abs/1708.04896

  • [4]Hide-and-Seek: https://arxiv.org/abs/1811.02545

  • [5]GridMask: https://arxiv.org/abs/2001.04086

  • [6]Local Augment: https://ieeexplore.ieee.org/document/9319662文章来源地址https://www.toymoban.com/news/detail-417457.html

到了这里,关于深度学习中的各种数据增强方法大全的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 深度学习三维图像数据增强——Monai实现

    笔者接触深度学习不久,跑过一些二维图像的深度学习代码,对于二维图像,深度学习数据增强可借助skimage、opencv、imgaug、Albumentations、Augmentor等多数主流的库实现,在这里放一个大神的链接,可供参考。但对于三维数据,能够借助的库便少了起来,常用的有TorchIO和Monai,而

    2024年02月04日
    浏览(47)
  • 深度学习-第T10周——数据增强

    🍨 本文为🔗365天深度学习训练营 中的学习记录博客 🍖 原作者:K同学啊 电脑系统:Windows 10 语言环境:Python 3.8.5 编译器:colab在线编译 深度学习环境:Tensorflow 数据增强:数据增强可以用少量数据达到非常棒的识别准确率 数据增强的两种方式: 1、将数据增强模块嵌入m

    2024年02月09日
    浏览(44)
  • TabR:检索增强能否让深度学习在表格数据上超过梯度增强模型?

    这是一篇7月新发布的论文,他提出了使用自然语言处理的检索增强 Retrieval Augmented 技术,目的是让深度学习在表格数据上超过梯度增强模型。 检索增强一直是NLP中研究的一个方向,但是引入了检索增强的表格深度学习模型在当前实现与非基于检索的模型相比几乎没有改进。

    2024年02月14日
    浏览(42)
  • 深入理解深度学习——正则化(Regularization):数据集增强

    分类目录:《深入理解深度学习》总目录 让机器学习模型泛化得更好的最好办法是使用更多的数据进行训练。当然,在实践中,我们拥有的数据量是很有限的。解决这个问题的一种方法是创建假数据并添加到训练集中。对于一些机器学习任务,创建新的假数据相当简单。对分

    2024年02月16日
    浏览(35)
  • 【深度学习每日小知识】Data Augmentation 数据增强

    数据增强是通过对原始数据进行各种转换和修改来人为生成附加数据的过程。这样做是为了增加机器学习模型中训练数据的大小和多样性。 数据增强的主要目标是解决过拟合问题。当模型使用小样本进行训练并过度关注拟合特定数据集中发现的模式时,就会发生过度拟合。因

    2024年01月23日
    浏览(43)
  • 睿智的目标检测64——目标检测中的MixUp数据增强方法

    哈哈哈!我再来一次数据增强! https://github.com/bubbliiiing/object-detection-augmentation MixUp数据增强方法在最新的几个Yolo算法中得到了广泛的应用,特别在YoloX中,s、m、l、x四个型号的网络都使用了MixUp数据增强。nano和tiny由于模型的拟合能力一般没有使用MixUp,但也说明了MixUp具有强

    2024年02月01日
    浏览(49)
  • 图像处理及深度学习开源数据集大全(四万字呕心沥血整理)

    本文整理了150 余个深度学习和图像处理领域的开源数据集,包括:目标检测、人脸识别、文本识别、图像分类、缺陷检测、医学影像、图像分割、图像去雾、关键点检测、动作识别、姿态估计、自动驾驶、RGBT共13个方向。 T-LESS数据集 类型:目标检测 数量:39000 数据集下载地

    2024年02月03日
    浏览(71)
  • 【linux命令讲解大全】045.网络数据分析利器:深度解读 tcpdump 抓包工具的使用方法

    tcpdump是一款在Linux上的抓包工具,用于嗅探网络数据。 补充说明 tcpdump命令是一款抓包、嗅探器工具。它可以打印所有经过网络接口的数据包的头信息,并可使用-w选项将数据包保存到文件中,以便以后进行分析。 语法 选项 -a:尝试将网络和广播地址转换成名称 -c 数据包数

    2024年02月10日
    浏览(51)
  • Java 字符串截取方法大全,助你轻松应对各种场景

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 在 Java 开发中,经常会涉及到对字符串进行截取操作。字符串截取是一种常见且重要的字符串处理技巧,可以根据

    2024年02月16日
    浏览(47)
  • 详解各种dedeCMS织梦后台登陆验证码错误或不显示解决方法大全

    常见的就是验证码输入明明正确但却提示不正确,或者压根不显示。说一下碰到这种情况的几种原因: ①dede版本程序升级操作不正确造成验证码提示不正确 ②更好空间新的空间里pho.ini里gd库配置问题 ③网站空间满了 ④专对5.7版本转移data目录引起的(此种请查看:如何将

    2024年02月02日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包