本文为52CV粉丝CrazyVertigo投稿,原文链接:
https://zhuanlan.zhihu.com/p/103992528
给大家介绍一篇非常简单又提点效果明显的2020年最新论文,通过GridMask数据增强方法提升模型鲁棒性,在图像分类、检测、分割三个问题上都做了实验,提升效果明显,好于当前SOTA 的autoaugment。
论文地址:
https://arxiv.org/abs/2001.04086
github地址:
https://github.com/akuxcw/GridMask
GridMask方法在分类、检测、分割三个问题都做了实验,效果提升明显。分类在ImageNet和CIFAR10数据集,评估指标是TOP1 accuracy;检测在COCO数据集,评估指标是map;分割问题在Cityscapes数据集,评估指标是mIOU.
GridMask是通过生成1个和原图相同分辨率的mask,然后将该mask和原图相乘得到一个GridMask增强后的图像。上图中灰色区域的值为1,黑色区域的值为0。通过将Mask和原图相乘,实现了特定区域的information dropping,本质可以理解成是一种实现正则化的方法。
一个GridMask对应4个参数,分别是x,y,r和d,通过这4个参数确定一组特定的mask.实际应用的过程中,还对该Mask进行了旋转。
首先定义k,即图像信息的保留比例,其中H和W分别是原图的高和宽,M是保留下来的像素数,保留比例k如上,该参数k和上述的4个参数无直接关系,该参数间接定义了r。
r的定义通过k可以转换得到
另外2个参数x和y也是定义为一定区域的随机
1.Gridmask方法介绍
GridMask的4个超参数中的r在ImageNet上设置为0.6效果最佳,cifar10中设置为0.4效果最佳。文章中给的建议是分类任务越复杂,r适当越大效果越好。
GridMask的4个超参数中的d的选择实验结果表示不可以太小(ImageNet输入网络的分辨率为224*224),设置为[96,224]时效果最好,为77.89%
这里或许大家会有思考,我在图上的不同unit区域中,进行随机的information drop是否可以,会有效果吗? 文章中实验给出结论:不行。
1.文章中设计了2中方法,第一种方法是设置一定的概率p,从开始训练就对训练图片以概率p进行数据增强;第二种方法是一开始概率为0,随着训练次数增加对训练图片进行gridmask增强的方法逐渐增大,最后变为p。实验结果结论是第二种方法好于第一种方法。
2.我做实验的时候,是简单的将COCO训练集进行一次离线的数据增强,训练数据量double了一倍,保持相同的epoch,会提升1+点。
常用的数据增强方法主要分为3类:
1.空间变换,random scale, crop, flip,rotation
2.颜色扭曲,改变透明度,亮度等
3.信息删除,random erasing, cutour, hide-and-seek
本文提出的GridMask方法属于信息删除的方法,这种方法的实现方式是随机在图像上丢弃一块区域,作用相当于是在网络上增加一个正则项,避免网络过拟合,相比较改变网络结构来说,这种方法只需要在数据输入的时候进行增广,简单便捷。
本文提出的GridMask方法属于信息删除的方法,这种方法的实现方式是随机在图像上丢弃一块区域,作用相当于是在网络上增加一个正则项,避免网络过拟合,相比较改变网络结构来说,这种方法只需要在数据输入的时候进行增广,简单便捷。
ImageNet数据集也有1点+较明显的提升,效果好于当前的SOTA方法autoAugment,关键的关键是autoAugment是通过好多好多卡通过搜索的方法实验得出结果,对于工程人员用于实际提升项目用处不大,而GridMask则简单高效又好用,十分推荐。
Cifar10数据集用补充了其他几种information droping的实验,例如Randomearsing,Cuout,Has,Autoaugment等。
检测的实验gridmask的参数r根据经验设置成0.5,训练的时候一张图做不做gridmask增强也是一个超参数,上图做对比实验发现设置成0.7效果最好,有0.9的提升。训练更长的时间可以进一步提升,如上图Faster-RCNN-50-FPN(4x)所示,最终提升1.9个点。
自己使用mmdetection框架在faster-rcnn-resnet50网络上也有1+点的明显提升,后续会在业务相关的数据集上做实验。
分割实验在PSPNet50和PSPNet101也有不同程度的效果提升。
参考文章:
1.GridMask Data Augmentation (GridMask)
2.Improved regularization of convolutional neural networks with cutout (Cutout)
3.Hide-and-seek: A data augmentation technique for weakly-supervised localization and beyond (HAS)
4. Cutmix: Regularization strategy to train strong classifiers with localizable features (CutMix)
5. Cutmix: Regularization strategy to train strong classifiers with localizable features (Mixup)
6. Dropblock: A regularization method for convolutional networks (Label Smoothing)
7. Autoaugment: Learning augmentation strategies from data (AutoAugment)