论文: Improved Regularization of Convolutional Neural Networks with Cutout.
Github: https://github.com/uoguelph-mlrg/Cutout.

Cutout的出发点和随机擦除一样,也是模拟遮挡,目的是提高泛化能力,实现上比Random Erasing简单,随机选择一个固定大小的正方形区域,然后采用全0填充就OK了,当然为了避免填充0值对训练的影响,应该要对数据进行中心归一化操作,norm到0。(如果你还不了解Random Erasing,请查看【数据增强】Random Erasing)

本文和随机擦除几乎同时发表,难分高下(不同场景下谁好难说),区别在于在cutout中,擦除矩形区域存在一定概率不完全在原图像中的。而在Random Erasing中,擦除矩形区域一定在原图像内。Cutout变相的实现了任意大小的擦除,以及保留更多重要区域。

需要注意的是作者发现cutout区域的大小比形状重要,所以cutout只要是正方形就行,非常简单。具体操作是利用固定大小的矩形对图像进行遮挡,在矩形范围内,所有的值都被设置为0,或者其他纯色值。而且擦除矩形区域存在一定概率不完全在原图像中的(文中设置为50%)

论文中有一个细节可以看看:作者其实开发了一个早期做法,具体是:在训练的每个epoch过程中,保存每张图片对应的最大激活特征图(以resnet为例,可以是layer4层特征图),在下一个训练回合,对每张图片的最大激活图进行上采样到和原图一样大,然后使用阈值切分为二值图,盖在原图上再输入到cnn中进行训练,有点自适应的意味。但是有个小疑问:训练的时候不是有数据增强吗?下一个回合再用前一次增强后的数据有啥用?我不太清楚作者的实现细节。如果是验证模式下进行倒是可以。

这种做法效果蛮好的,但是最后发现这种方法和随机选一个区域遮挡效果差别不大,而且带来了额外的计算量,得不偿失,便舍去,就变成了现在的cutout了。可能和任务有关吧,按照我的理解,早期做法非常make sense,效果居然和cutout一样,比较奇怪。并且实际上考虑目标检测和语义分割,应该还需要具体考虑,不能照搬实现。学习这类论文我觉得最重要的是思想,能不能推广到不同领域上面?是否可以在训练中自适应改变?是否可以结合特征图联合操作?

Cutout为什么能make sense
直接引用论文中的原话就是This technique encourages the network to better utilize the full context of the image, rather than relying on the presence of a small set of specific visual features.,简单点说就是,CutOut能够让CNN利用整幅图像的全局信息,而不是一些小特征组成的局部信息。其实这种思想和大部分细粒度论文的思想是类似的。

最后给出Cutout的效果图:

参考资料
[1]: Improved Regularization of Convolutional Neural Networks with Cutout.
[2]: 想读懂YOLOV4,你需要先了解下列技术(一).

【数据增强】Cutout相关推荐

  1. 数据增强 - Cutout、Random Erasing、Mixup、Cutmix

    文章目录 0. 前言 1. Cutout 1.1. 要解决什么问题 1.2. 用了什么方法 1.3. 效果如何 1.4. 还存在什么问题&可借鉴之处 2. Rand Erasing 2.1. ...

  2. 【图像数据增强】Mixup、Cutout、Random Erasing、CutMix、Mosaic等详解

    对于模型而言一般包含四个部分:输入.输出.网络结构.训练相关.如果想要改善模型,就可以从这四个部分入手. ● 输入:数据 --> Data Augmentation ● 输出:Loss相关 ● ...

  3. 几种数据增强:Mixup,Cutout,CutMix 和yolov4中的 Mosaic

    作者:RayChiu_Labloy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 目录 1.几种数据增强的比较 2.What does model learn with ...

  4. cut out数据增强_数据增强:Mixup,Cutout,CutMix | Mosaic

    1.几种数据增强的比较 Mixup:将随机的两张样本按比例混合,分类的结果按比例分配: Cutout:随机的将样本中的部分区域cut掉,并且填充0像素值,分类的结果不变: CutMix:就是将一部分区 ...

  5. 目标检测常见数据增强算法汇总讲解(Mixup,Cutout,CutMix,Mosaic)

           在学习目标检测算法的过程中,发现了一些有趣的目标检测算法,打算简单写个笔记,不足之处还望谅解,可以在评论中指出来.         目标检测作为需要大量数据的算法,在实际情况中经常面临数 ...

  6. 目标检测中的数据增强:mosaic,mixup,cutout,cutmix

    认真读绝对不亏,不要看到全是字就 怕  了. 最近学目标检测,在看yolov4的时候,看到了mosaic数据增强方法,所以查阅了一些知识,因为网上的讲解都注重于原理,不注重详细的实现方法以及细节,而工 ...

  7. 数据增强实测之cutout

    cutout是2017年提出的一种数据增强方法,想法比较简单,即在训练时随机裁剪掉图像的一部分,也可以看作是一种类似dropout的正则化方法. Improved Regularization of ...

  8. yolov5启用数据增强、tensorboard可视化及cutout增强

    yolov5启用数据增强与tensorboard可视化 一,yolov5启用数据增强 1.data目录下,有两个hyp的文件:data/hyp.scratch.yaml和data/hyp.finetu ...

  9. 数据增强之Mosaic数据增强的优点、Mixup,Cutout,CutMix的区别

    一.Mosaic data augmentation Mosaic数据增强方法是YOLOV4论文中提出来的,主要思想是将四张图片进行随机裁剪,再拼接到一张图上作为训练数据. 这样做有以下几个优点: 1 ...

最新文章

  1. mysql 临时表 插入_mysql临时表插入数据有关问题
  2. 戴尔新鲜空气制冷的研究:在数据中心里面,让我们脱掉厚夹克换上一件夏威夷衬衫!...
  3. 【Verilog HDL】第四章 模块的端口连接规则——污水处理模型
  4. android系统优化(19)--系统性能优化第6季
  5. oracle11g arm,linux最全的需要oracle11g的rpm包
  6. 浅谈java中的接口
  7. 肺腑之言-写给喜欢单片机的初学者
  8. python二级题库(百分之九十原题) 刷题软件推荐
  9. 英语诗歌选读 | 期末总结
  10. 2021总结:躺平的一年
  11. 神战奇迹服务器维护,神战奇迹手游官网
  12. 中水是什么?有什么用途呢?
  13. linux 网站服务器优化 web server优化
  14. 2020“天猫双11”淘宝直播商家数据报告:新渠道、新品牌、新趋势
  15. 科目二难点——倒车入库
  16. 【echarts】柱状图正负值双色
  17. Java—将数据生成pdf表格
  18. Springboot:拦截器和过滤器
  19. matlab合并两个矩阵。
  20. PHP常见的设计模式之:适配器模式

热门文章

  1. PrestaShop二次开发-插件|支付|模板|跳转|功能|模块|外贸信用卡-1
  2. Word在试图打开文件时遇到错误。 请尝试下列方法: * 检查文档或驱动器的文件权限。 * 确保有足够的内存和磁盘空间。 * 用文件恢复转换器打开文件。
  3. 美国国防部发布网络新战略,重点关注中国俄罗斯
  4. 每日英语:The Deeply Odd Lives of Chinese Bureaucrats
  5. ifconfig 下面的一些字段(errors, dropped, overruns)
  6. Linux就该这么学--第五期 学习笔记
  7. IoT黑板报0210:Google 发布 Android Things 开发者第二预览版
  8. Paging内部原理
  9. 如何组装深度学习的计算机
  10. 2014年度企业云存储盘点