0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于基本图像处理技术的数据增强方法

深度学习自然语言处理 来源:赛尔实验室 作者:赛尔实验室 2022-08-13 10:52 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

什么是数据增强

数据增强(Data Augmentation)是一种通过让有限的数据产生更多的等价数据来人工扩展训练数据集的技术。它是克服训练数据不足的有效手段,目前在深度学习的各个领域中应用广泛。但是由于生成的数据与真实数据之间的差异,也不可避免地带来了噪声问题。

为什么需要数据增强

深度神经网络在许多任务中表现良好,但这些网络通常需要大量数据才能避免过度拟合。遗憾的是,许多场景无法获得大量数据,例如医学图像分析。数据增强技术的存在是为了解决这个问题,这是针对有限数据问题的解决方案。数据增强一套技术,可提高训练数据集的大小和质量,以便您可以使用它们来构建更好的深度学习模型。在计算视觉领域,生成增强图像相对容易。即使引入噪声或裁剪图像的一部分,模型仍可以对图像进行分类,数据增强有一系列简单有效的方法可供选择,有一些机器学习库来进行计算视觉领域的数据增强,比如:imgaug(https://github.com/aleju/imgaug)它封装了很多数据增强算法,给开发者提供了方便。但是在自然语言处理领域中,由于自然语言本身是离散的抽象符号,微小的变化就可能会导致含义的巨大偏差,所以数据增强算法并不常用。很多自然语言处理任务在真正落地的时候,往往会遇到数据量不足的问题,自然语言的数据增强算法值得我们深入研究。接下来我们先介绍计算视觉领域的数据增强方法,再介绍自然语言处理领域的数据增强算法,希望能对大家有所启发。

计算视觉数据增强

计算视觉领域的数据增强算法大致可以分为两类:第一类是基于基本图像处理技术的数据增强,第二个类别是基于深度学习的数据增强算法。


下面先介绍基于基本图像处理技术的数据增强方法:

几何变换(Geometric Transformations):由于训练集与测试集合中可能存在潜在的位置偏差,使得模型在测试集中很难达到训练集中的效果,几何变换可以有效地克服训练数据中存在的位置偏差,而且易于实现,许多图像处理库都包含这个功能。

颜色变换(Color Space):图片在输入计算机之前,通常会被编码为张量(高度×宽度×颜色通道),所以可以在色彩通道空间进行数据增强,比如将某种颜色通道关闭,或者改变亮度值。

旋转 | 反射变换(Rotation/Reflection):选择一个角度,左右旋转图像,可以改变图像内容朝向。关于旋转角度需要慎重考虑,角度太大或者太小都不合适,适宜的角度是1度 到 20度。

噪声注入(Noise Injection):从高斯分布中采样出的随机值矩阵加入到图像的RGB像素中,通过向图像添加噪点可以帮助CNN学习更强大的功能。

内核过滤器(Kernel Filters):内核滤镜是在图像处理中一种非常流行的技术,比如锐化和模糊。将特定功能的内核滤镜与图像进行卷积操作,就可以得到增强后的数据。直观上,数据增强生成的图像可能会使得模型面对这种类型的图像具有更高的鲁棒性。

混合图像(Mix):通过平均图像像素值将图像混合在一起是一种非常违反直觉的数据增强方法。对于人来说,混合图像生成的数据似乎没有意义。虽然这种方法缺乏可解释性,但是作为一种简单有效的数据增强算法,有一系列的工作进行相关的研究。Inoue在图像每个像素点混合像素值来混合图像,Summers和Dinneen又尝试以非线性的方法来混合图像,Takahashi和Matsubara通过随机图像裁剪和拼接来混合图像,以及后来的mixup方法均取得了不错的成果。

随机擦除(Random Erasing):随机擦除是Zhong等人开发的数据增强技术。他们受到Dropout机制的启发,随机选取图片中的一部分,将这部分图片删除,这项技术可以提高模型在图片被部分遮挡的情况下性能,除此之外还可以确保网络关注整个图像,而不只是其中的一部分。

缩放变换(Zoom):图像按照一定的比例进行放大和缩小并不改变图像中的内容,可以增加模型的泛化性能。

移动(Translation):向左,向右,向上或向下移动图像可以避免数据中的位置偏差,比如在人脸识别数据集合中,如果所有图像都居中,使用这种数据增强方法可以避免可能出现的位置偏差导致的错误。

翻转变换(Flipping):通常是关于水平或者竖直的轴进行图像翻转操作,这种扩充是最容易实现的扩充,并且已经证明对ImageNet数据集有效。

裁剪(Cropping):如果输入数据集合的大小是变化的,裁剪可以作为数据预处理的一个手段,通过裁剪图像的中央色块,可以得到新的数据。在实际使用过程之中,这些数据增强算法不是只使用一种,而是使用一套数据增强策略,在AutoAugment这篇文章中,作者尝试让模型自动选择数据增强策略。

d370ce78-1a84-11ed-ba43-dac502259ad0.jpg

第二个类别是基于深度学习的数据增强算法:

特征空间增强(Feature Space Augmentation):神经网络可以将图像这种高维向量映射为低维向量,之前讨论的所有图像数据增强方法都应用于输入空间中的图像。现在可以在特征空间进行数据增强操作,例如:SMOTE算法,它是一种流行的增强方法,通过将k个最近的邻居合并以形成新实例来缓解类不平衡问题。

对抗生成(Adversarial Training):对抗攻击表明,图像表示的健壮性远不及预期的健壮性,Moosavi-Dezfooli等人充分证明了这一点。对抗生成可以改善学习的决策边界中的薄弱环节,提高模型的鲁棒性。

基于GAN的数据增强(GAN-based Data Augmentation):使用 GAN 生成模型来生成更多的数据,可用作解决类别不平衡问题的过采样技术。

神经风格转换(Neural Style Transfer):通过神经网络风格迁移来生成不同风格的数据,防止模型过拟合。

如果想要阅读更多的细节,请参考这篇文章:

https://link.springer.com/article/10.1186/s40537-019-0197-0

自然语言处理数据增强

在自然语言处理领域,被验证为有效的数据增强算法相对要少很多,下面我们介绍几种常见方法。

同义词词典(Thesaurus):Zhang Xiang等人提出了Character-level Convolutional Networks for Text Classification,通过实验,他们发现可以将单词替换为它的同义词进行数据增强,这种同义词替换的方法可以在很短的时间内生成大量的数据。

随机插入(Randomly Insert):随机选择一个单词,选择它的一个同义词,插入原句子中的随机位置,举一个例子:“我爱中国” —> “喜欢我爱中国”。

随机交换(Randomly Swap):随机选择一对单词,交换位置。

随机删除(Randomly Delete):随机删除句子中的单词。

语法树结构替换:通过语法树结构,精准地替换单词。

加噪(NoiseMix) (https://github.com/noisemix/noisemix):类似于图像领域的加噪,NoiseMix提供9种单词级别和2种句子级别的扰动来生成更多的句子,例如:这是一本很棒的书,但是他们的运送太慢了。->这是本很棒的书,但是运送太慢了。

情境增强(Contextual Augmentation):这种数据增强算法是用于文本分类任务的独立领域的数据扩充。通过用标签条件的双向语言模型预测的其他单词替换单词,可以增强监督数据集中的文本。

生成对抗网络:利用生成对抗网络的方法来生成和原数据同分布的数据,来制造更多的数据。在自然语言处理领域,有很多关于生成对抗网络的工作:

Generating Text via Adversarial Training

GANS for Sequences of Discrete Elements with the Gumbel-softmax Distribution

SeqGAN: Sequence Generative Adversarial Nets with Policy Gradient

回译技术(Back Translation):回译技术是NLP在机器翻译中经常使用的一个数据增强的方法。其本质就是快速产生一些翻译结果达到增加数据的目的。回译的方法可以增加文本数据的多样性,相比替换词来说,有时可以改变句法结构等,并保留语义信息。但是,回译的方法产生的数据严重依赖于翻译的质量。

扩句-缩句-句法:先将句子压缩,得到句子的缩写,然后再扩写,通过这种方法生成的句子和原句子具有相似的结构,但是可能会带来语义信息的损失。

无监督数据扩增(Unsupervised Data Augmentation):通常的数据增强算法都是为有监督任务服务,这个方法是针对无监督学习任务进行数据增强的算法,UDA方法生成无监督数据与原始无监督数据具备分布的一致性,而以前的方法通常只是应用高斯噪声和Dropout噪声(无法保证一致性)。(https://arxiv.org/abs/1904.12848)

此外,这个仓库(https://github.com/quincyliang/nlp-data-augmentation)中介绍了一些自然语言处理中的数据增强技术。

总结

数据增强是增大数据规模,减轻模型过拟合的有效方法,但是,数据增强不能保证总是有利的。在数据非常有限的域中,这可能导致进一步过度拟合。因此,重要的是要考虑搜索算法来推导增强数据的最佳子集,以便训练深度学习模型。

虽然相比于计算视觉,自然语言处理领域中的数据增强应用更少,难度也要更大,但是同时也意味着更大的机遇。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4829

    浏览量

    106808
  • nlp
    nlp
    +关注

    关注

    1

    文章

    491

    浏览量

    23193
  • 计算视觉
    +关注

    关注

    0

    文章

    5

    浏览量

    1707

原文标题:一文了解NLP和CV领域的数据增强

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    用于高速成像,科学和太阳蛋白紫外线应用的图像增强器解决方案

    图像增强器用于增强低照度图像,直至单光子的检测和成像。Photonis 是 Exosens 的一部分,为科学应用 (IIT) 提供各种图像
    的头像 发表于 11-19 07:36 47次阅读
    用于高速成像,科学和太阳蛋白紫外线应用的<b class='flag-5'>图像</b><b class='flag-5'>增强</b>器解决方案

    AI眼镜视觉处理芯片:从图像感知到智能增强技术跃迁

    ,而到2028年,随着AR功能普及与视觉交互成为标配,出货量有望逼近4亿台。在这一爆发性增长背后,视觉处理能力已成为AI眼镜的核心竞争力,而支撑这一能力的关键,正是日益复杂的视觉处理芯片架构。   AI眼镜的视觉处理需求升级:从
    的头像 发表于 11-16 01:23 1.1w次阅读
    AI眼镜视觉<b class='flag-5'>处理</b>芯片:从<b class='flag-5'>图像</b>感知到智能<b class='flag-5'>增强</b>的<b class='flag-5'>技术</b>跃迁

    图像采集卡:机器视觉时代的图像数据核心枢纽

    一、图像采集卡的技术本质:从信号到数据的“转换器”与“传输通道”图像采集卡(ImageCaptureCard)是机器视觉系统的核心硬件组件,本质是通过专用芯片(如FPGA、ASIC)实
    的头像 发表于 11-12 15:15 302次阅读
    <b class='flag-5'>图像</b>采集卡:机器视觉时代的<b class='flag-5'>图像</b><b class='flag-5'>数据</b>核心枢纽

    数据处理软核加速模块设计

    ,如果用ARM处理器或上位机来实现这个过程会十分耗时,利用FPGA的并行处理技术可以轻易实现这个功能,整理后的数据传输形式会为之后的设计产生便利。模块用了20块片内双口RAM来实现
    发表于 10-29 08:09

    基于FPGA的CLAHE图像增强算法设计

    CLAHE图像增强算法又称为对比度有限的自适应直方图均衡算法,其算法原理是通过有限的调整图像局部对比度来增强有效信号和抑制噪声信号。
    的头像 发表于 10-15 10:14 406次阅读
    基于FPGA的CLAHE<b class='flag-5'>图像</b><b class='flag-5'>增强</b>算法设计

    Photonis图像增强器:技术原理、核心优势与应用领域

    Photonis是一家全球领先的光电传感器与夜视技术制造商,总部位于荷兰,专注于高性能图像增强器、光电倍增管(PMT)和微通道板(MCP)的研发与生产。其产品广泛应用于科研、医疗和工业领域,尤其在低
    的头像 发表于 10-10 09:28 283次阅读
    Photonis<b class='flag-5'>图像</b><b class='flag-5'>增强</b>器:<b class='flag-5'>技术</b>原理、核心优势与应用领域

    Photonis 科学图像增强器介绍

    对于寻求先进图像增强技术增强相机制造商,Photonis 提供具有无与伦比规格的科学级图像增强
    的头像 发表于 09-19 09:20 233次阅读
    Photonis 科学<b class='flag-5'>图像</b><b class='flag-5'>增强</b>器介绍

    FPGA 加持,友思特图像采集卡高速预处理助力视觉系统运行提速增效

    图像处理图像处理关键环节,可优化数据传输、减轻主机负担,其算法可在FPGA等硬件上执行。友思特FPGA
    的头像 发表于 08-13 17:41 796次阅读
    FPGA 加持,友思特<b class='flag-5'>图像</b>采集卡高速预<b class='flag-5'>处理</b>助力视觉系统运行提速增效

    龙门吊箱号识别系统的图像处理技术解析

    识别系统应运而生,成为提升龙门吊作业自动化水平的重要解决方案。 核心技术图像处理与深度学习的融合 1. 高精度图像采集 系统采用工业级高清摄像机,具备宽动态范围(HDR)和低照度
    的头像 发表于 03-25 10:25 566次阅读

    基于嵌入式人工智能的高速图像处理的微处理器RZ/A2M数据手册

    RZ/A2M MPU设计用于需要高速e-AI图像处理的智能电器,网络摄像机,服务机器人,扫描仪产品和工业机械。它采用独特的图像识别和机器视觉混合方法,结合了专有的DRP
    的头像 发表于 03-11 15:54 846次阅读
    基于嵌入式人工智能的高速<b class='flag-5'>图像</b><b class='flag-5'>处理</b>的微<b class='flag-5'>处理</b>器RZ/A2M<b class='flag-5'>数据</b>手册

    图像采集卡:现代图像处理技术的关键组件

    在现代科技快速发展的背景下,图像处理技术已成为信息技术领域不可或缺的一部分。图像采集卡,作为连接计算机与各种
    的头像 发表于 02-20 10:42 936次阅读
    <b class='flag-5'>图像</b>采集卡:现代<b class='flag-5'>图像</b><b class='flag-5'>处理</b><b class='flag-5'>技术</b>的关键组件

    FPGA上的图像处理算法集成与优化

    、Tophat形态学滤波、RAW8转RGB888、彩色图像均值滤波、Alpha背景叠加、直方图灰度拉伸算法以及自动白平衡算法。每种算法都提供了实现方法和相关公式,涵盖了图像处理的核心概
    的头像 发表于 02-14 13:46 1160次阅读
    FPGA上的<b class='flag-5'>图像</b><b class='flag-5'>处理</b>算法集成与优化

    FPGA图像处理基础----实现缓存卷积窗口

    素行进行缓存与变换。由于在图像处理过程中,经常会使用到卷积,因此需要对图像进行开窗,然后将开窗得到的局部图像与卷积核进行卷积,从而完成处理
    的头像 发表于 02-07 10:43 1427次阅读
    FPGA<b class='flag-5'>图像</b><b class='flag-5'>处理</b>基础----实现缓存卷积窗口

    CMOS传感器的图像处理能力

    随着科技的飞速发展,图像处理技术已经成为我们日常生活中不可或缺的一部分。CMOS传感器作为图像捕捉的核心,其图像
    的头像 发表于 01-20 15:19 1283次阅读

    DFT在图像处理中的作用 DFT在音频信号处理中的应用

    处理中的几个主要作用: 频域滤波 :DFT允许我们分析图像的频率成分,从而可以设计滤波器来增强或抑制特定频率的信号,例如低通滤波器可以减少图像噪声,而高通滤波器可以
    的头像 发表于 12-20 09:18 1848次阅读