Mimicking Very Efficient
Network for Object
Detection
Mimic
› Mimic作为一种模型小型化的方法,在 Distilling the
Knowledge in a Neural Network
› 把我们需要的知识的缩小模型从复杂模型中提取出来
› 大部分有关于mimic的论文主要都是局限在较为简单的
classification 的任务中,很少应用于较为复杂一些的
detection任务
Mimic
› Mimic的难点在于如何缩减网络结构但是把网络中的知识保留下来。知识就是一幅
将输入向量导引至输出向量的地图。做复杂网络的训练时,目标是将正确答案的概
率最大化,但这引入了一个副作用:这种网络为所有错误答案分配了概率,即使这
些概率非常小。
› 我们将复杂模型转化为小模型时需要注意保留模型的泛化能力,一种方法是利用由
复杂模型产生的分类概率作为“soft targets ”来训练小模型。在转化阶段,我们可
以用同样的训练集或者是另外的“转化”训练集。当复杂模型是由简单模型复合而
成时,我们可以用各自的概率分布的代数或者几何平均数作为“soft targets ”。它
每次训练可以提供更多的信息和更小的梯度方差,因此小模型可以用更少的数据和
更高的学习率进行训练。
Mimic
› 在不同大小的模型上测试的参数和时间。
Logits Mimic Learning
› 传统的Mimic过程,一般使用一个已经训练好的大模型,固定该模型的weights不变,设
计一个小模型,学习大模型的soft targets 或者logits的输出;大模型学习到有效的信息
可以传递给小模型,使得小模型也可以有较为不错的性能表现,其Loss函数如下:
其中W为小模型的weights,g(x;W) 为小模型的输出,z为学习的大模型的输出。
Feature Map Mimic Learning
› 本文提出了一种学习feature map来实现Object Detection
任务上mimic的方法。
Feature Map Mimic Learning
› 然而直接套用该方法在检测任务中,效果很差,因此作者进行了进一步的探索。首
先,对于常见的检测网络如Faster-RCNN、RFCN、SSD等进行分析,可以发现,、
各大网络模型主要是feature extractor不同,对于feature map进行mimic,可以获
得较为有效的结果。
Network Architecture and Implementation
Details
› 在使用本身ground-truth监督小模型训练的同时,加入大小模型之间feature map
的监督,使得mimic的效果会更好。大致的流程如下图所示: