论文标题:Joint-DetNAS: Upgrade Your Detector with NAS, Pruning and Dynamic

Distillation

论文来源:CVPR2021

论文链接:https://arxiv.org/abs/2105.12971

作者单位:香港科技大学&华为诺亚

 

【推荐理由】

本文将NAS、剪枝、动态蒸馏有机结合,提出一个用于目标检测的NAS框架,该算法主要包括两个核心进程:学生态射(student morphism)是对学生的结构进行优化,去除冗余参数,而动态蒸馏(dynamic distillation)则是寻找最优的匹配教师网络。对于学生态射,采用权重继承策略,允许学生在充分利用前辈权重的同时灵活更新体系结构,大大加快了搜索速度;为了便于动态蒸馏,采用综合渐进收缩策略训练弹性教师池,采样教师检测器,而不增加后续搜索的成本。

 

【主要内容】

三种方法的优缺点:

NAS:参数不可知,训练与搜索解耦搜索的架构需要从头训练

剪枝:结构不可知,预训练模型结构固定

KD: 固定的教师-学生对,不需考虑两者之间的结构依赖

 

三者各有局限性,NAS和剪枝都只关注一个方面而忽略了另一个方面:当前NAS的范例认为体系结构是影响模型性能的唯一因素,而剪枝只考虑参数,与结构无关。而研究表明:修剪后的模型的最终性能高度依赖于它的再训练初始化,这表明结构和参数是高度依赖的,都很重要。另外,传统蒸馏中教师-学生对的结构关系非常武断,没有理论依据。同样有研究表明KD中存在结构性知识,这意味着教师的结构必须与学生相匹配,以促进知识迁移。因此提出将动态KD纳入文章框架,其中教师被动态采样,为学生找到最优匹配。

 

Joint-DetNAS框架


学生态射(Student Morphism)

调整输入检测器的backbone,使其能够更好地适应给定的任务。

动作空间(Action Space)

动作空间包含剪枝和网络态射,它允许学生灵活调整结构以充分利用预训练的权重。

剪枝

层剪枝:直接剪掉一层

通道剪枝:剪去不重要的通道

网络态射:

增加层:在给定位置插入新层并引入更多的容量以增强模型的性能

重新排列:将层从一个阶段移动到相邻阶段,可以灵活重新分配骨干网用于检测任务的计算预算

动态分辨率搜索(Search with Dynamic Resolution)

输入图像的分辨率对探测器的性能和推理速度起着重要的作用。没有将输入分辨率直接纳入搜索过程,(会大大扩展搜索空间),而是提出在每次训练迭代中动态采样一个分辨率来训练学生。因此,训练后可以对多个分辨率进行评估,提高了搜索效率。

综合渐进收缩训练(Training with Integrated Progressive Shrinking ,IPS)

训练过程:第一阶段,只训练最大超网

第二阶段:在接下来的阶段中,逐步将深度和宽度缩小的子网加入到子网空间中,而super-net作为教师对所有子网进行蒸馏

此外,本文提出的融合渐进收缩策略联合优化较小的深度和宽度,从而显著降低了训练成本。

检测任务的蒸馏

检测任务的蒸馏需要精细设计的蒸馏空间和位置信息,文章方法包含两个部分:特征级蒸馏最大化教师和学生骨架特征感兴趣区域之间的一致性;预测级蒸馏使用教师的预测输出作为软标签训练学生

(由于文档编辑问题,格式出现未知错误!)

内容中包含的图片若涉及版权问题,请及时与我们联系删除