CutMix数据增强

论文地址:https://arxiv.org/abs/1905.04899v2

代码: https://github.com/clovaai/CutMix-PyTorch

参考:https://blog.****.net/weixin_38715903/article/details/103999227

几种数据增强的区别:Mixup, cutout, cutmix

mixup:将随机的两张样本按比例混合,分类的结果按比例分配

cutout:随机的将样本中的部分区域cut掉,并且填充0像素值,分类的结果不变

cutmix:就是将一部分区域cut掉但不填充0像素而是随机填充训练集中的其他数据的区域像素值,分类结果按一定的比例分配.

CutMix数据增强

上述三种数据增强的区别:cutout和cutmix就是填充区域像素值的区别;mixup和cutmix是混合两种样本方式上的区别:mixup是将两张图按比例进行插值来混合样本,cutmix是采用cut部分区域再补丁的形式去混合图像,不会有图像混合后不自然的情形.

优点:

1.在训练过程中不会出现非信息像素,从而能够提高训练效率

2.保留了regional dropuot的优势,能够关注目标的non-discriminative parts;

3.通过要求模型从局部视图识别对象,对cut区域中添加其他样本的信息,能够进一步增强模型的定位能力;

4.不会有图像混合后不自然的情形,能够提升模型分类的表现

5.训练和推理代价不变.

cutmix的原理

xA和xB是两个不同的训练样本,yA和yB是对应的标签值,cutmix需要生成的是新的训练样本和对应标签CutMix数据增强CutMix数据增强,公式如下:

CutMix数据增强

CutMix数据增强

CutMix数据增强是为了dropd掉部分区域和进行填充的二进制掩码,CutMix数据增强是逐像素相乘,CutMix数据增强是所有元素都为1 的二进制掩码,CutMix数据增强与Mixup一样属于Beta分布:CutMix数据增强,令CutMix数据增强CutMix数据增强服从(0,1)的均匀分布。