1、问题与挑战html
2、解决方法/创新web
3、背景/介绍
模型压缩的目的是学习出轻量级网络,该网络能在精度和速度之间达到平衡,主要有两类方法:网络
Hinton的文章"Distilling the Knowledge in a Neural Network"首次提出了知识蒸馏(暗知识提取)的概念,经过引入与教师网络(teacher network:复杂、但推理性能优越)相关的软目标(soft-target)做为total loss的一部分,以诱导学生网络(student network:精简、低复杂度)的训练,实现知识迁移(knowledge transfer)
————————————————
版权声明:本文为CSDN博主「Law-Yao」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处连接及本声明。
原文连接app
通常知识蒸馏模型:
和
分别表示teacher model 和student model的从图像域到特征域的映射函数,
和
表示中间层的子函数
模型蒸馏的目的是从
中将知识蒸馏到能力有限的
中,使
能够嵌入与
类似的隐藏空间。该目标能够经过在
的训练过程当中逐步比较两者的输出来实现。
①
和
表示特征的转换函数,使teacher和student的特征表示一致,一般是恒等变换或
,这个函数控制了前一直是的比例
②
表示对
和
特征差别的度量函数,隐含定义了要从
转移到
的知识框架
4、本文提出
用KD方法来学习适用于开集人脸识别的轻量级网络,须要从两个方面去考虑:
(1)蒸馏知识的表示;
(2)如何在teacher和student之间有效地迁移知识
1.从Teacher超球面蒸馏知识
对闭集问题,
(1)用L2距离计算
和
特征间的类似度差别。对于能力有限的
,这种约束至关于对每一个
进行正则化,会致使过正则化,且
的学习过程会变得艰难:ide
(2)用
的预测几率做为
的soft label,仅适于test classes和train classes固定一致的闭集问题。对开集问题来讲,这种
的预测几率做为知识,没有很大的价值。
对开集问题,因为test classes未在training中定义过,所以每一个类别的样本分布和类间间隔(margin)成为更有意义的知识。Teacher中样本间的角度差别和样本在Teacher超球面上的分布对student更有用。所以,本文提出将teacher的角度信息做为知识蒸馏到student中。svg
Softmax Loss Revisit
若是对
和
都进行L2归一化,那么他们之间的角度就成为惟一的分类标准,最小化softmax loss意味着让样本与所属class表示的角度差别达到最小函数
Feature Direction as Distilled Knowledge
前面提到利用
学习到的角度信息做为知识,其实就是指特征的方向(用角度来表示),让
的特征方向与
一致,就能够学习到类似的样本分布,使得特征能够在隐藏空间中,分布在任意半径的超球面上。为
的学习过程提供了必定的自由度,去解释
的知识。本文定义为Angular Distillation Loss:
The Transformation Function
本文方法中,
和
的变换函数分别为恒等变换和
,保证不丢失重要的图像信息:性能
学习
Geometric Interpretation
前面说过,若是分别对特征和类别表示进行归一化,那么softmax中惟一的分类标准就是特征与类别表示之间的夹角。
Figure1(a):给定一个高性能的复杂网络,他学习出的样本分布中,不一样类别间的决策边界具备很大的间隔
Figure1(b):若是让student网络本身训练,那么它产生的类决策边界的减少,没有足够的判别性将不一样类别的identity给分开
Figure1(c):用teacher的特征方向作指导,student能够作出更好的决策边界,使不一样类别间具备较大的间隔
2. 从中间层进行知识蒸馏
设
的输入是问题,输出的特征分布是答案,则中间过程的特征
能够视为
对解决过程的中间理解或解释。为了让
更好地“理解”解决过程,
应该向
展现:什么是好的特征表示,以及 当前特征是否足以获得后续步骤的特征分布
所以,
能够再中间各层就对
进行监督,有效地更正
,使
的学习过程更加高效:
在中间层进行知识蒸馏,本文用各层
和
之间的角度差别,来验证
的优劣。
3. 用于人脸识别的ShrinkTeaNet
分别从中间各层以及最后的结果进行知识蒸馏,所以本文ShrinkTeaNet的总目标函数以下:
下图是ShrinkTeaNet的知识蒸馏框架:
5、实验结果
1.数据集
MS-Celeb-1M: 5.8M photos from 85K identities
Labeled Faces in the Wild (LFW) : 13,233 in-the-wild facial images of 5749 subjects.
MegaFace : 1 million images of 690K subjects, the probe set consists of
100K photos from 530 identities.
Celebrities Frontal-Profifile : 7000 matching pairs from 500 subjects
AgeDB : 4 testing age groups, each group consists of 10 splits of 600 matching pairs from 440 subjects.
IJB-B and IJB-C : IJC-B provides 12115 templates with 10270 positive matches and 8M negative matches, IJB-C, further provides 23124 templates with 19557 positive and 15639K negative matching pairs.
2.实现细节
Face Detection: MTCNN
Image Size: 112 * 112
Teacher Model: ResNet-100
Student Model: MobileNetV1/V2, MobileFaceNet
3.结果对比
Small-scale Protocols
Megaface Protocol
IJB-B and IJB-C Protocols
5、总结