首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【CV-Image Classification-2017】图像分类之数据增强Mixup方法-超越经验风险最小化

我们一起读起来!!!了解过往历史文献的方法和不足之处,展望最新的文献和技术。

标题:mixup: Beyond Empirical Risk Minimization

时间:2017

引用次数:3954(截止目前)

1 遇到问题

大型深度神经网络(VGG、ResNet、DenseNet等网络)在计算机视觉成功应用中,这些神经网络有两个共同点:

首先,它们进行训练以将其训练数据的平均误差最小化,这种学习规则也被称为经验风险最小化(Empirical Risk Minimization,ERM)原则(Vapnik于1998年提出);

其次,这些当前最先进的神经网络的大小与训练样本的数量呈线性关系。

问题来了:该如何设计数据增强的方式?Mixup是如何混合(Mix)的?

2 前情提要

1)数据增强

之前常见的策略有:平移(Translation)、旋转(Rotation)、翻转(Fliplr)、放缩(zoom)、错切(shear)、裁剪(crop)、亮度、对比度增强、锐化(Sharpen)和添加噪声。

2)经验风险最小化

经验风险最小化(Empirical risk minimization,ERM)是目前大多数网络优化都遵循的一个原则,即使用已知的经验数据(训练样本)训练得到的学习器的误差或风险,也叫作“经验误差”或“训练误差”。

相对的,在新样本(未知样本)上的误差称为“泛化误差”,显然,我们希望学习器的“泛化误差”越小越好。然而,通常我们事先并不知道新样本是什么样的,实际能做的是努力使经验误差越小越好。但是,过分的减小经验误差,通常会在未知样本上产生很差的结果,也就是我们常说的“过拟合”。

在监督学习中,我们感兴趣的是找到一个函数f 来描述随机特征向量 X 和随机目标向量 Y 之间的关系,它遵循联合分布 P( X , Y )。定义了一个损失函数来预测f ( x ) 和实际目标 y 之间的差异。然后,损失函数的平均值在数据分布P上最小化,也称为预期风险:

不幸的是,在大多数实际情况下,分布P是未知的。

使用训练数据D ,我们可以通过经验分布来近似P :

使用经验分布P,我们现在可以通过经验风险来近似预期风险:

通过最小化上述损失函数来学习函数 f 被称为经验风险最小化 (ERM)原则。

3)邻域风险最小化

关于“泛化性”,通常可以通过使用大规模训练数据来提高,但是实际上,获取有标签的大规模数据需要耗费巨大的人工成本,甚至有些情况下根本无法获取数据。解决这个问题的一个有效途径是“邻域风险最小化”(Vicinal Risk Minimization,VRM),即通过先验知识构造训练样本的邻域值。一般的做法就是传统的数据增强方法,比如加噪、翻转、缩放等,但是这种做法很依赖于特定的数据集和人类的先验知识。

4)ResNet模型和DenseNet模型

ResNet网络模型,提出了残差模块的跳接结构,网络学习残差映射 f(x )−x ,每1个残差模块里有2个相同输出通道的3××3卷积层,每个卷积层后接1个BN(Batch normalization)层和ReLU激活函数。跳接结构可以使数据更快地向前传播,保证网络沿着正确的方向深化,准确率可以不断提高。

DenseNet块的目标不仅仅是学习残差映射,而且是学习类似泰勒展开的更高阶的项。DenseNet的跳接结构没有用加法,而是用了联结。

3 解决方案

1)Mixup方法

提出了一个通用的混合邻近分布,称为 mixup:

其中λ ~Beta( α , α ),对于α ∈ (0,∞) 从混合邻近分布中采样产生虚拟特征目标向量(凸函数):

其中 ( xi , yi ) 和 ( xj , yj ) 是从训练数据中随机抽取的两个特征目标向量,λ ∈[0, 1]。mixup 超参数α控制特征-目标对之间的插值强度,将 ERM 原理恢复为α 0。

2)代码实现

mixup究竟做了什么?

mixup混合邻近分布,可它令模型在处理样本和样本之间的区域时表现为线性。我们认为,这种线性建模减少了在预测训练样本以外的数据时的不适应性。从奥卡姆剃刀的原理出发,线性是一个很好的归纳偏见,因为它是最简单的可能的几种行为之一。

图1显示了mixup导致决策边界从一个类到另一个类线性的转变,提供了一个更平滑的不确定性估计。

图2显示了在CIFAR-10数据集上用mixup和ERM两个方法训练的两个神经网络模型的平均表现。两个模型有相同的结构,使用相同的训练过程,在同一个从训练数据里随机抽样而来的样本上来评估。用mixup训练的模型在预测训练数据之间的数据时更稳定。

4 实验结论

1)ImageNet

2)CIFAR

3)效果展示

MixUp方法

5 Pascal曰

1)数据增强的方法:mixup。mixup的基本思想是将数据混合构建虚拟样本,如上图有两个数据点A、B,其中A是class 0,而B是class 1,Label对应就是一个one hot向量。mixup就是通过混合AB来构建虚拟数据点,同时标签也进行混合得到概率分布,这样就得到了新的样本。

2)增加训练的数据量,提高模型的泛化能力。增加噪声数据,提升模型的鲁棒性。

3)文章中也讲到GAN相关内容,这次没有在分享中。后面有机会增加相关的内容。

针对人群:

不知道如何「入门算法 「,对于」初学者」这里有完整的学习路径图(历史中「经典」模型文献和论文复现),完成后将成为合格「初级算法工程师」

不知道「行业解决方案」,对于「算法工程师」这里有具体的行业中落地方案和呈现出商业价值,阅读后提供新的解决方法想法和成为「算法专家」

蓦然回首,自己从算法(数学)专业学习以及工作已十年有余。

同时希望大家成为算法经历者、分享者和创造者。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230613A08LMW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券