论文提出的GID结构可以自动挑选可辨别方针用于常识蒸馏,并且归纳了feature-based、relation-based和response-based常识,全方位蒸馏,适用于不同的检测结构中。从试验结果来看,效果非常不错,值得一看

来源:晓飞的算法工程笔记 大众号

论文: General Instance Distillation for Object Detection

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

  • 论文地址:arxiv.org/abs/2103.02…

Introduction


 在方针检测运用场景中,模型的轻量化和准确率是同样重要的,往往需求在速度和准确率之间权衡。常识蒸馏(Knowledge Distillation)是解决上述问题的一个有效办法,将大模型学习到的特征提取规矩(常识)搬运到小模型中,提高小模型的准确率,再将小模型用于实践场景中,到达模型压缩的目的。
目前的常识蒸馏办法大都针对分类使命,方针检测由于正负样本极度不平衡,直接将现有的办法运用到检测中一般都收益甚微。而目前提出的针对方针检测使命的常识蒸馏办法大都对常识进行了特定的束缚,比如控制蒸馏的正负样本份额或只蒸馏GT相关的区域。此外,这些办法大都不能一起运用于多种方针检测结构中。为此,论文希望找到通用的常识蒸馏办法,不仅能运用于各种检测结构,还能搬运尽或许多的常识,一起不用关怀正负样本。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 为了到达上述目的,论文结合response-based常识、feature-based常识和relation-based常识,提出了依据可辨别方针的蒸馏办法GID(general instances Distillation),首要长处有以下:

  • 可以对单图中的多个实例间的联系进行建模并用于蒸馏中。尽管已经有研讨表明实例间的联系信息在检测中的重要性,但还没有研讨将其运用的常识蒸馏中。
  • 避免手动设置正负样本份额或只挑选GT相关区域进行蒸馏。虽然GT相关区域包括最多信息,但布景也或许包括对student的泛化才能学习有协助的信息。论文经过试验发现自动挑选的可辨别实例(discriminative instance)对迁移学习有明显的提高效果,这些显著实例也称为通用实例(General Instance, GIs),由于不需求关怀其正负。
  • 对不同检测结构通用,GIs是依据student和teacher的输出进行挑选的,与网络的内部结构无关。

  总结起来,论文的首要贡献如下:

  • 界说通用实例(GIs)作为蒸馏方针,可以高效地提高检测模型的蒸馏效果。
  • 依据GI,初次将relation-based常识引进到常识蒸馏中,并与response-based常识和feature-based常识合作,使得student能超越teacher。
  • 在MSCOCO和PASCAL VOC数据集上验证不同检测结构下的有效性,均到达SOTA。

General Instance Distillation


 有研讨提出GT邻近的特征区域包括有助于常识蒸馏训练的丰厚信息,而论文发现不仅GT邻近的区域,即便归于布景的区域,只要是可辨别区域(discriminative patch)都对常识蒸馏有协助。依据上面的发现,论文规划了通用实例挑选模块(general instance selection module, GISM),用于从teacher和student的输出中挑选要害实例进行蒸馏。其次,为了更好地利用teacher的信息,论文归纳运用了feature-based、relation-based和response-based常识用于蒸馏。

General Instance Selection Module

 在检测模型中,猜测结果可以指出信息最丰厚的区域,而teacher和student的丰厚区域的差异恰恰便是性能的差异。为了量化每个结果的差异,挑选可辨别实例用于蒸馏,论文提出了两个指标:GI score和GI box,在每次迭代中动态核算。为了减少核算消耗,经过核算分类分数的L1 score作为GI score,而GI box则直接挑选分类分数更高的box。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 整个GI的挑选进程如图2所示,关于实例rr,其score和box的挑选界说为:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

PGIP_{GI}BGIB_{GI}分别为GI score和GI box。关于one-stage检测器,PtP_tPsP_s为teacher和student的分类分数,而关于two-stage检测器则为RPN的objectness分数,BtB_tBsB_s同理。RR为猜测框数目,CC为类别数。由于论文将teacher和student的detection head设置成彻底相同的,所以猜测框也是可以依据位置一一对应的。
需求留意的是,高GI score的实例或许重合度比较高,导致蒸馏丢失翻倍。为解决这一问题,运用NMS来去重,递归挑选重复实例中GI score最高的实例。在实践运用中,NMS的IoU为0.3,终究每张图片只挑选top-K个实例。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

Feature-based Distillation

 FPN结合了主干网络的不同层特征,可以显著提高检测模型对多尺度方针的鲁棒性。于是,论文打算将FPN加入到蒸馏中,依据GI box的尺寸挑选对应的FPN层特征。
由于每个FPN层的方针特征巨细不同,直接进行pixel-wise蒸馏会导致模型更倾向于大方针。于是论文转而采用ROIAlign将不同巨细的特征输出为相同巨细再进行蒸馏,如图a所示。feature-based蒸馏丢失核算如下:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

KK为GISM挑选的GI数目,tit_isis_i为ROIAlign处理后的FPN特征,fadaptf_{adapt}用于将sis_i缩放到tit_i的相同巨细。

Relation-based Distillation

 物体间的联系信息是分类使命进行蒸馏的要害,但还没在检测使命蒸馏中进行尝试。同一场景中的物体,不管是前景仍是布景,都是高度相关的,这对student网络的收敛有很大协助。
为了挖掘GIs中的联系常识,运用欧式间隔来衡量实例间的间隔,然后用L1间隔来传递常识。如图a所示。relation蒸馏丢失核算如下:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

K2={(i,j)∣i≠j,1≤i,j≤K}\mathbb{K}^2=\{(i,j)|i\ne j, 1\le i,j\le K\}\phi为归一化因子,ll为smooth L1丢失。

Response-based Distillation

 常识蒸馏的要害首要是来自teacher的response-based常识的束缚,这里的response-based常识指的是模型的终究输出。但由于检测输出往往存在正负样本不平衡或过多负样本的状况,如果直接将detection head的一切输出进行蒸馏,这种状况带来的噪声反而会损害student的性能。
有研讨提出只蒸馏detection head的正样本,但这种办法忽略了可辨其他负样本的效果。为此,论文规划了distillation mask,将分类分支和回归分支的输出与GIs挂钩,比只挑选正样本要高效。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 不同检测模型的输出是不同的,论文界说了一个通用的办法来进行detection head的蒸馏,如图b所示。首先,依据GIs的distillation mask核算为:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 函数FF是标签指定算法,输入为GI box,当匹配时,输出1,不然输出0。函数FF对不同的模型的界说是不同的,关于RetinaNet,运用anchor和GIs间的IoU决定是否匹配,而关于FCOS则一切中心点在GIs外的输出都是0。
然后,response-based丢失核算如下:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

RR为一切与挑选的GIs匹配的输出,teacher和student对应的输出其中一个匹配即可。yty_tysy_s为分类分支输出,rtr_trsr_s为回归分支输出,LclsL_{cls}LregL_{reg}为分类丢失函数和回归丢失函数。需求留意的是,为了简洁,关于two-stage检测器只蒸馏RPN输出。

Overall loss function

 模型的训练是端到端的,student的全体丢失函数为:

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

LGTL_{GT}为模型原本的丢失函数,\lambda为调节超参数。

Experiment


GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 在VOC上比照蒸馏效果。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 在COCO上比照蒸馏效果。

GID:旷视提出全方位的检测模型知识蒸馏 | CVPR 2021

 挑选的GI box可视化,前面为5000迭的挑选,后边为90000迭的挑选。绿色代表GT,红色为正样本,黄色为中心(非正非负)样本,青色为负样本。

Conclusion


 论文提出的GID结构可以自动挑选可辨别方针用于常识蒸馏,并且归纳了feature-based、relation-based和response-based常识,全方位蒸馏,适用于不同的检测结构中。从试验结果来看,效果非常不错,值得一看。



如果本文对你有协助,费事点个赞或在看呗~
更多内容请重视 微信大众号【晓飞的算法工程笔记】