【数据增强】MixUp算法

概述

论文链接
mixup可以将不同的图像进行混合,从而扩充训练数据集,以下分别从图片和label的角度,介绍经过mixup操作后,数据和label的变化。

1、混合后的图片

就是将两张图片对应的元素按一定的比例进行相加:

mix_img = w*img1 + (1-w)*img2

2、新生成的图片对应的label

对于新生成的图片,分类和检测的处理方法时不一样的。
(1)分类:以下是原论文给出的计算公式。在这里插入图片描述
示例:可以假设网络预测有三类,[猫,狗,猪]:

  • 图像xi为猫,对应的标签yi为[1, 0, 0]
  • 图像xj为狗,对应的标签yj为[0, 1, 0]

λ \lambda λ为0.3,那么1- λ \lambda λ为0.7,根据上式 y~ = [0.3, 0.7, 0],这便是新的label
具体代码链接

(2)目标检测
对于目标检测来说,新生的图片对应的label为两张原图中的box的拼接:
[[img1_box, mix_weight = λ \lambda λ],
[img2_box, mix_weight = 1- λ \lambda λ]]
在进行训练是 loss = loss*mix_weight
详情解释链接
精简的代码实现
具体代码链接

参考文献:

  • 目标检测中图像增强,mixup 如何操作?
  • 数据增强之mixup算法详解

你可能感兴趣的:(深度学习基础,计算机视觉,人工智能)