AI学习者 · 2021年10月25日

Network Augmentation 韩松团队新作

【GiantPandaCV导语】

本文介绍的是韩松团队针对欠拟合问题提出的一种解决方案,在代价可接受范围内能够提升小模型的性能。

1 引入

专用于解决小型网络模型欠拟合 带来的问题,通过引入更大的模型包围住小模型从而得到额外的监督信息。欠拟合情况下使用正则化方法进行处理会导致性能更差。

image.png

NetAug适用场景:

  • 数据集量比较大
  • 模型参数量相对而言比较小
  • 由于模型容量有限导致的欠拟合问题

2 问题明确

  • 与知识蒸馏区别:

知识蒸馏相当于学习一个soft label(或者说learned label smoothing), 而NetAug主要强调处理欠拟合问题,通过增强小模型的模型宽度来获取更多监督信息。

  • 与普通正则化方法区别:

正则化方法有数据增强方法(Cutout,Mixup,AutoAug,RandAug)和Dropout系列(Dropout,StochasticDepth, SpatialDropout,DropBlock)。与这些解决过拟合正则化方法不同,NetAug主要关注欠拟合问题,进行数据增强反而会导致欠拟合问题。

3 核心方法

image.png

如上图所示,训练的过程中会引入比原先小模型更宽的一系列网络,用宽网络的监督信号来增强小模型的学习。

image.png

image.png

宽网络获取方式:augmentation factor r和diversity factor s两个系数。

image.png

  • r 是用于选择最宽的边界,假设基础宽度为w,那么宽度选择范围为【w, rxw】
  • s则是控制采样频率,从w到rxw等距采样s个宽模型。

训练过程:

image.png

每次权重更新只训练小网络和单个宽网络,这样可以降低计算代价,并且通过实验发现,没必要同时采样多个宽网络进行训练,那样会导致性能的下降。

通过以上改进为欠拟合小模型带来了一定的收益,同时训练开销仅增大了17%

4 实验

首先,论文为了证明NetAug和蒸馏方法是不相等的(正交),设计了一系列实验。

image.png

最优模型实际上是同时使用了知识蒸馏和NetAug的方案。

为了证明NetAug作用在欠拟合模型,设计了以下实验:

image.png

ProxylessNAS Mobile, MCUNet,MobileNetv2都是小模型,在这些小模型上使用NetAug均可以取得不错的提升。但是在比较大的模型ResNet50上,不存在欠拟合的问题,所以起到了反作用。

为了证明NetAug和其他正则化方法不同,设计了以下实验。

image.png

可以发现,在使用KD情况下加入正则化会导致性能下降。

但是使用KD情况下,采用NetAug会使得精度进一步提升。

在目标检测算法中应用:

image.png

5 总结

image.png

图源https://zhuanlan.zhihu.com/p/72038532

针对过拟合有很多耳熟能详的处理策略,比如Dropout,数据增强,增加数据,控制模型复杂度,正则化等。

而针对模型容量不足带来的欠拟合问题,通常采用的是增加模型容量,或者增加特征表示。

本文针对欠拟合问题提出了一种更优的解法,在保证模型大小不变的情况下,提升小模型的实际性能,具有很高的价值(缺点是实现起来比较复杂)。

文章转载于:GiantPandaCV
作者:pprp

推荐阅读

推荐阅读
关注数
16356
内容数
1226
嵌入式端AI,包括AI算法在推理框架Tengine,MNN,NCNN,PaddlePaddle及相关芯片上的实现。欢迎加入微信交流群,微信号:aijishu20(备注:嵌入式)
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息