首页 文章详情

NeurIPS 2022 | 如何度量知识蒸馏中不同数据增强方法的好坏?一种统...

公众号CVer | 55 2023-02-24 08:15 0 0 0
UniSMS (合一短信)

点击下方 卡片 ,关注“ CVer ”公众号

AI/CV重磅干货,第一时间送达

点击进入—>【计算机视觉】微信技术交流群

         

8c7726a10c5fc5ad42ab4c6b70c6d11e.webp

         

[NeurIPS 2022] 如何度量知识蒸馏中不同数据增强方法的好坏?一种统计学视角

作者单位:美国东北大学,三菱电机研究实验室(美国)

         

●Arxiv:https://arxiv.org/abs/2012.02909

●Code:https://github.com/MingSun-Tse/Good-DA-in-KD

●Webpage:http://huanwang.tech/Good-DA-in-KD/

         

1. 研究背景与动机  


知识蒸馏(knowledge distillation,KD)是一种通用神经网络训练方法,它使用大的 teacher模型来 “教” student模型,在各种AI任务上有着广泛应用。 数据增强(data augmentation,DA) 更是神经网络训练的标配技巧。

         

知识蒸馏按照蒸馏的位置通常分为(1)基于网络中间特征图的蒸馏,(2)基于网络输出的蒸馏。对于后者来说,近几年分类任务上KD的发展主要集中在新的损失函数,譬如ICLR’20的CRD和ECCV’20的SSKD将对比学习引入损失函数,可以从teacher模型中提取到更丰富的信息,供student模型学习,实现了当时的SOTA。

         

本文没有探索损失函数、蒸馏位置等传统研究问题上, 我们延用了最原始版本的KD loss (也就是Hinton等人在NIPS’14 workshop上提出KD的时候用的Cross-Entropy + KL divergence )。我们重点关注网络的输入端:如何度量不同数据增强方法在KD中的好坏?(相比之下,之前的KD paper大多关注网络的中间特征,或者输出端)。系统框图如下所示,本文的核心目标是要提出一种指标去度量图中 “Stronger DA” 的强弱程度。

          2f7104a6a6153759ad3566353c88a848.webp

         

这一切起源于一个偶然的实验发现:在KD中延长迭代次数,通常可以非常明显地提升KD的性能。譬如KD实验中常用的ResNet34/ResNet18 pair, 在ImageNet-1K上,将迭代次数从100 epochs增加到200 epochs,可以将top1/top5准确率从70.66/89.88提升到71.38/90.59, 达到当时的SOTA方法CRD的性能(71.38/90.49)。这显得很迷,将最baseline的方法训练久一点就可以SOTA?经过很多实验分析我们最终发现,是数据增强在背后起作用。

         

直觉上的解释是:每次迭代,数据增强是随机的,得到的样本都不一样。那么,迭代次数变多,student见到的不一样的样本就越多,这可以从teacher模型中提取到更丰富的信息(跟对比学习loss似乎有着异曲同工之妙),帮助student模型学习。

         

很自然我们可以进一步推想:不同数据增强方法引入的数据“多样性”应该是不同的,譬如我们期待基于强化学习搜出来的AutoAugment应该要比简单的随机翻转要更具有多样性。简单地说,这篇paper就是在回答:具体怎么度量这种多样性,以及度量完之后我们怎么在实际中应用。         

为什么这个问题重要?(1)理论意义:帮助我们更深地理解KD和DA,(2)实际意义:实验表明在KD中使用更强的DA总能提高性能,如果我们知道了什么因素在控制这种“强弱”,那么我们就可以缔造出更强的DA,从而坐享KD性能的提升。


2. 主要贡献和内容  


文章的主要贡献是三点:

         

(1)我们提出了一个定理来严格回答什么样的数据增强是好的,结论是:好的数据增强方法应该降低teacher-student交叉熵的协方差。

         

定理的核心部分是看不同数据增强方法下训练样本之间的相关性,相关性越大意味着样本越相似,多样性就越低,student性能应该越差。这个直觉完全符合文中的证明,这是理论上的贡献。值得一提的是,相关性不是直接算原始样本之间的相关性,而是算样本经过了teacher得到的logits之间的相关性,也就是,raw data层面上样本的相关性不重要,重要的是在teacher看来这些样本有多么相似,越不相似越好。

         

(2)基于这个定理,提出了一个具体可用的指标(stddev of teacher’s mean probability, T. stddev),可以对每一种数据增强方法算一个数值出来, 按照这个数值排序,就知道哪种数据增强方法最好。文中测试了7种既有数据增强方法, 发现CutMix最好用。

         

(3)基于该定理,提出了一种新的基于信息熵筛选的数据增强方法,叫做CutMixPick,它是在CutMix的基础上挑选出熵最大的样本(熵大意味着信息量大,多样性多)进行训练。实验表明,即使是使用最普通的KD loss也可以达到SOTA KD方法(例如CRD)的水平。

         

3. 实验效果  


文中最重要的实验是,验证提出的指标(T. Stddev)是否真的能刻画不同数据增强方法下student性能(S. test loss)的好坏,也就是二者之间的相关性如何。结果表明:相关性显著!

         

文章总共测试了9种数据增强方法,我们在CIFAR100,Tiny ImageNet, ImageNet100上均做了验证,相关性都很强,p-value多数情况下远小于5%的显著性界限,如下所示:

          a081d0232a841e2ea3f799cf0ab8c033.webp

          277300ff9c73fd84ae934528b7225337.webp

         

这其中最有意思的一点是,纵轴是student的性能,而横轴的指标是完全用teacher计算出来的,对于student没有任何信息,但是somehow,二者呈现出很强的相关性。这说明,KD中对DA好坏的评价很可能独立于student的。同时,对于不同teacher、数据集,DA之间的相对排序也比较稳定(譬如CutMix稳定地比Cutout要好)。这些都意味着我们在一种网络、数据集下找到的好的DA有很大概率可以迁移到其他的网络跟数据集中,大大提升了实际应用价值。

         

更多结果请参考我们的文章。代码已经开源,欢迎尝试!


●Arxiv:https://arxiv.org/abs/2012.02909

●Code:https://github.com/MingSun-Tse/Good-DA-in-KD

●Webpage:http://huanwang.tech/Good-DA-in-KD/


4. 总结和局限性  

本文关注数据增强在知识蒸馏中的影响,在理论和实际算法方面均有贡献,主要有三点:(1) 我们对 “如何度量知识蒸馏中不同数据增强方法的好坏” 这一问题给出了严格的理论分析(答:好的数据增强方法应该最小化teacher-student交叉熵的协方差);(2)基于该理论提出了一个实际可计算的度量指标(stddev of teacher’s mean probability);(3)最后提出了一个基于信息熵筛选的新数据增强方法(CutMixPick),可以进一步提升CutMix,在KD中达到新的SOTA性能。

         

局限性: 在ImageNet-1K上,提出的指标(T. Stddev)跟student性能的相关性不显著,目前还没有找到明确的原因,我们将留作未来工作。谢谢关注!


点击进入—>CV微信技术交流群


CVPR/ECCV 2022论文和代码下载

    


后台回复: CVPR2022, 即可下载CVPR 2022论文和代码开源的论文合集

      

后台回复: ECCV2 022, 即可下载ECCV 2022论文和代码开源的论文合集

后台回复: Transformer综述, 即可下载最新的3篇Transformer综述PDF


      

目标检测和Transformer 交流 群成立


扫描下方二维码,或者添加微信: CVer222 ,即可添加CVer小助手微信,便可申请加入CVer- 目标检测或者Transformer  微信交流 群。另外其他垂直 方向已涵盖: 目标检测、图像分割、目标跟踪、人脸检测&识别、OCR、姿态估计、超分辨率、SLAM、医疗影像、Re-ID、GAN、NAS、深度估计、自动驾驶、强化学习、车道线检测、模型剪枝&压缩、去噪、去雾、去雨、风格迁移、遥感图像、行为识别、视频理解、图像融合、图像检索、论文投稿&交流、PyTorch、TensorFlow和Transformer 等。


一定要备注: 研究方向+地点+学校/公司+昵称 (如 目标检测或者Transformer +上海+上交+卡卡) ,根据格式备注,可更快被通过且邀请进群


820fc449999663e49580f4040433a159.webp

▲扫码或加微信号: CVer222,进交流群


CVer学术交流群(知识星球)来了! 想要了解 最新最快最好 的CV/DL/ML论文速递、优质开源项目、学习教程和实战训练等资料 ,欢迎扫描下方二维码,加入CVer学术交流群,已汇集数千人!


4394f7b056e8a6c9ac950621fd668026.webp

扫码进群

▲点击上方卡片,关注CVer公众号

    

整理不易,请点赞和在看02631f2ae8035c35f38971a4ef17facb.webp

good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter