Data Augmentation数据增强

 

目录

数据增强是什么

为什么数据增强

数组增强分类

有监督数据增强

无监督数据增强


数据增强是什么

数据增强又称数据扩增,是一种通过应用合理且随机的变换(例如图像位移、旋转)来增加训练集多样性的技术。让有限的数据产生等价于更多数据的价值,并避免不相关性特征。

例如针对车型识别模型,合理随机变换同车型/不同车型图片的主体大小、位置、视角、色彩等不相关特征,避免特征提取的不相关倾向性,但不接受垂直飞天侧身超高曝汽车图片。

为什么数据增强

一方面大部分实际项目难以获得充足的数据,需要充分利用已有数据进行数据增强。另一方面,卷积神经网络需要提取合理而有效的特征,而非集中不相关特征。

例如针对鸟类识别模型,原数据集中A品种和B品种鸟类占比各50%,羽毛颜色为两类品种的不相关特征,但受限数据获取难度,原数据集中A品种鸟均体现蓝色,B品种鸟均体现红色,使用颜色变换随机扩充各品种颜色比例至50%左右,可以有效避免提取颜色为显著特征。

 

数组增强分类

数据增强可以分为,有监督数据增强和无监督数据增强。

有监督数据增强

有监督数据增强还可以分为单样本数据增强和多样本数据增强。

  • 单样本数据增强:增强一个样本时,完全围绕样本本身进行操作,如几何变换、颜色变换等。
  • 多样本数据增强:利用多个样本来产生新的样本,如SMOTE合成少数过采样,SamplePairing样本配对,mixup混合线性插值等

简单集合变换进行增强示例:

train_transformer = transforms.Compose([
    # 随机水平翻转,翻转概率为0.5
    transforms.RandomHorizontalFlip(p=0.5),  
    # 随机垂直翻转,翻转概率为0.5
    transforms.RandomVerticalFlip(p=0.5),  
    transforms.ToTensor(),
    transforms.Normalize([meanR, meanG, meanB], [stdR, stdG, stdB])])

无监督数据增强

无监督数据增强还可以分为随机生成扩增和学习策略增强。

  • 随机生成扩增:学习数据分布,随机生成与分布一致的图片,例如GAN生成对抗网络。
  • 学习策略增强:通过模型学习出适合任务的数据增强策略,例如AutoAugment自动增强。

GAN(generative adversarial networks)包含两个网络,生成网络和对抗网络:

  1. 生成网络接收随机噪声z,通过噪声生成图片,记做G(z) 。
  2. 对抗网络判别图片是否由G生成的,训练好的生成网络能生成以假乱真的图片。

AutoAugment是Google提出的自动选择最优数据增强方案的研究,使用增强学习从数据本身寻找最佳图像变换策略,针对不同的任务学习出不同的增强方法,核心思想:

  1. 准备16个常用的数据增强操作。
  2. 选择n个操作,随机产生使用概率和幅度,称为一个sub-policy,共产生5个sub-policy。
  3. 训练过程每一个batch的图片随机采用5个sub-policy操作中的一种。

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

F_D_Z

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值