不是所有数据增强都可以提升精度

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

哈哈 终于一个降温贴来了  感觉每个人都说是最强~~  其实还是推销了一个

CIFAR-10:https://www.cs.toronto.edu/˜kriz/cifar.html

open-source code:https://github.com/clovaai/CutMix-PyTorch

open-ReID:https://github.com/Cysu/open-reid

为了缓解上述问题,有研究者提出了一种简单而高效的方法,称为保持增强(KeepAugment),以提高增强图像的保真度。其主要思想是首先使用显著性map来检测原始图像上的重要区域,然后在增强过程中保留这些信息区域。这种信息保护策略使我们能够生成更忠实的训练示例。

数据增强(DA)是训练最先进的深度学习系统的必要技术。本文实证地表明数据增强可能会引入噪声增强的例子,从而在推理过程中损害非增强数据的性能。

在实验上,也证明了该方法在一些现有的技术数据增强方案上有了显著的改进,例如:自动增强、裁剪、随机擦除,在图像分类、半监督图像分类、多视点多摄像机跟踪和目标检测等方面取得了很好的效果。

什么叫“数据增强”?

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

为什么需要数据增强?

深度神经网络在许多任务中表现良好,但这些网络通常需要大量数据才能避免过度拟合。遗憾的是,许多场景无法获得大量数据,例如医学图像分析。数据增强技术的存在是为了解决这个问题,这是针对有限数据问题的解决方案。数据增强一套技术,可提高训练数据集的大小和质量,以便您可以使用它们来构建更好的深度学习模型。在计算视觉领域,生成增强图像相对容易。即使引入噪声或裁剪图像的一部分,模型仍可以对图像进行分类,数据增强有一系列简单有效的方法可供选择,有一些机器学习库来进行计算视觉领域的数据增强,比如:imgaug (https://github.com/aleju/imgaug)它封装了很多数据增强算法,给开发者提供了方便。  哈哈又推销了

计算视觉数据增强

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

1、flipping翻转

一般都是水平方向翻转而少用垂直方向,即镜像变换。图像数据集上证实有用(CIFAR-10,ImageNet等),但无法应用在文本识别数据集(MNIST,SVHN等)

2、color space色彩空间

简单做法是隔离单个色彩通道,例如R,G或B,此外可以通过简单的矩阵运算以增加或减少图像的亮度。更高级的做法从颜色直方图着手,更改这些直方图中的强度值(想到了图像处理中的直方图均衡)。

3、cropping裁剪

分统一裁剪和随机裁剪。统一裁剪将不同尺寸的图像裁剪至设定大小,随机裁剪类似translation,不同之处在于translation保留原图尺寸而裁剪会降低尺寸。裁剪要注意不要丢失重要信息以至于改变图像标签。

4、rotation旋转

要注意旋转度数。以MNIST为例,轻微旋转(例如1°-20°)可能有用,再往后增加时数据标签可能不再保留。

5、translation位置变换

向左,向右,向上或向下移动图像可能是非常有用的转换,以避免数据中的位置偏差。例如人脸识别数据集中人脸基本位于图像正中,位置变换可以增强模型泛化能力。

6、noise injection添加噪声

添加高斯分布的随机矩阵

7、color space transformations色彩空间增强

照明偏差是图像识别问题中最常见的挑战之一,因此色彩空间转换(也称为光度转换)的比较直观有效。

①遍历图像以恒定值减少或增加像素值(过亮或过暗)

②拼接出(splice out)各个RGB颜色矩阵

③将像素值限制为某个最小值或最大值

④操作色彩直方图以改变图像色彩空间特征

注意将彩色图转换黑白虽然简化了这些操作,但精度会降低

geometric versus photometric transformations几何与光度转换

1、kernel flters内核过滤器

平滑和锐化,即图像处理中用卷积核滑过整幅图像的操作。这一点尚未开发,它和CNN中卷积机制非常相似(就一样啊),因此可以通过调整网络参数更好地改善网络,而不需要额外进行这样的数据增强操作。

2、mixing images图像混合

做法是通过平均图像像素值将图像混合在一起:

不是所有数据增强都可以提升精度

 mixing images

研究发现是当混合来自整个训练集的图像而不是仅来自同一类别的实例的图像时,可以获得更好的结果。其它一些做法:                                            

①一种非线性方法将图像组合成新的训练实例:

不是所有数据增强都可以提升精度

非线性方法

②另一方法是随机裁剪图像并将裁剪后的图像连接在一起以形成新图像:

 不是所有数据增强都可以提升精度

随机裁剪再拼接

这类方法从人的视角看毫无意义,但确实提升了精度。可能解释是数据集大小的增加导致了诸如线和边之类的低级特征的更可靠表示。

3、random erasing随机擦除

这一点受到dropout正规化的启发,随机擦除迫使模型学习有关图像的更多描述性特征,从而防止过拟合某个特定视觉特征。随机擦除的好处在于可以确保网络关注整个图像,而不只是其中的一部分。最后随机擦除的一个缺点是不一定会保留标签(例如文本8->6)。

 不是所有数据增强都可以提升精度

新方法

新方法控制数据增强的保真度,从而减少有害的错误信息。研究者的想法是通过显著性映射测量图像中矩形区域的重要性,并确保数据增强后始终呈现得分最高的区域:对于裁剪,通过避免切割重要区域(见下图a5和b5);对于图像级转换,通过将重要区域粘贴到转换图像顶部(参见下图a6和b6)。                            whaosoft aiot http://143ai.com

不是所有数据增强都可以提升精度

不是所有数据增强都可以提升精度 不是所有数据增强都可以提升精度

不是所有数据增强都可以提升精度

实验

不是所有数据增强都可以提升精度不是所有数据增强都可以提升精度文章来源地址https://www.toymoban.com/news/detail-466859.html

到了这里,关于不是所有数据增强都可以提升精度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • (LLM) 的所有知识;10分钟了解向量数据库;微软 Bing 可以识别图片了;

    🦉 AI新闻 🚀 微软 Bing 可以识图」了,吊打 GPT-4? 摘要 :微软 Bing 最新识图功能让用户可以上传图片并进行编程、做题、看病等操作,还能分析梗图笑点。然而在某些情况下表现不佳,例如无法数清图片中的图案数量,或是犯错解释棋盘。综合来看,Bing 的图像识别能力十

    2024年02月09日
    浏览(34)
  • 提升图像分割精度:学习UNet++算法

    由于工作需要对 UNet++ 算法进行调参,对规则做较大的修改,初次涉及,有误的地方,请各位大佬指教哈。 1.1 什么是 UNet++ 算法 UNet++ 算法是基于 UNet 算法的改进版本,旨在提高图像分割的性能和效果。它由 Zhou et al. 在论文 “ UNet++: A Nested U-Net Architecture for Medical Image Segment

    2024年02月03日
    浏览(44)
  • stm32 测频率(1HZ—15MHZ时精度0.01%,可测更高,但不是很准)

    准备电赛的过程中,尝试了几种测量频率的方法,也参考了一些博主,没有一种可以测量范围很广的方法,那就都尝试一下,需要什么就用什么吧。 下面的代码都是我运行成功的,可以测量 平台:stm32F407 第一个想到的就是外部中断,也是最简单的方式,在每一个上升沿或者

    2024年02月12日
    浏览(28)
  • 19ContraBERT:顶会ICSE23 数据增强+对比学习+代码预训练模型,提升NLP模型性能与鲁棒性:处理程序变异(变量重命名)【网安AIGC专题11.15】

    随着大规模代码的崛起, 无监督学习 成为了提高代码预训练模型性能的有效手段。这些预训练模型在广泛的下游任务中表现出色,如自然语言处理和程序语言处理。例如,像CodeBERT和GraphCodeBERT这样的模型在预训练阶段通过大规模代码数据学到通用的表示,并在下游任务上进

    2024年02月05日
    浏览(76)
  • 一文打尽目标检测NMS(1): 精度提升篇

    文章来自于:曲終人不散丶@知乎, 连接:https://zhuanlan.zhihu.com/p/151914931, 本文仅用于学术分享,如有侵权,前联系后台做删文处理。 众所周知,非极大值抑制NMS是目标检测常用的后处理算法,用于剔除冗余检测框,本文将对可以提升精度的各种NMS方法及其变体进行阶段性总

    2024年02月04日
    浏览(72)
  • C#整数除法探析:性能提升与精度平衡的设计之道

      概述: C#中整数除法返回整数,维护与低级语言兼容性,提高性能。虽然精度有损,但可通过显式浮点数转换实现小数保留。 在C#中,整数除法返回整数而不是浮点数,这是为了保持与低级语言(如C和C++)的兼容性,同时提高性能和降低复杂性。这种设计使得整数之间的除

    2024年03月20日
    浏览(39)
  • Git Bash 教程!【不是所有人都会用Git】

    我不太会用github...... 写这篇文章希望能顺利...... 【写在前面】介绍一下git bash的复制粘贴的快捷键,以防后续不会: 开始: 首先下一个windows:git for windows(地址:Git - Downloading Package (git-scm.com)) (上面这个选择框选择第一个,其他的无脑next。安装路径看自己需要更换不) 然

    2024年02月06日
    浏览(37)
  • 渐进增强与优雅降级:提升用户体验的双重策略

    🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入

    2024年01月19日
    浏览(46)
  • 数据驱动开发模式将软件开发过程改造成一个公式化的迭代模式,可以提升软件开发效率,缩短开发周期,降低开发成本。

    作者:禅与计算机程序设计艺术 随着云计算、大数据等新兴技术的应用,软件开发领域迎来了蓬勃发展的时期。各种编程语言、框架、工具不断涌现,协同工作的强烈需求已经成为当今社会的一个主要挑战。这就需要一种新的开发方式来适应这种复杂多变的环境。传统的瀑布

    2024年02月06日
    浏览(73)
  • 模型精度再被提升,统一跨任务小样本学习算法 UPT 给出解法!

    近日,阿里云机器学习平台PAI与华东师范大学高明教授团队、达摩院机器智能技术NLP团队合作在自然语言处理顶级会议EMNLP2022上发表统一多NLP任务的预训练增强小样本学习算法UPT(Unified Prompt Tuning)。这是一种面向多种NLP任务的小样本学习算法,致力于利用多任务学习和预训

    2024年02月12日
    浏览(35)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包