论文阅读(8):ShrinkTeaNet: Million-scale Lightweight Face Recognition via Shrinking Teacher-Student Net

在这里插入图片描述

一、问题与挑战

  1. 大规模人脸识别在很多领域得以应用,这些系统大多依赖于复杂、参数量多的深度神经网络来实现,计算量大,复杂度高。需要高性能、有并行计算能力的特殊硬件才能执行,不适用于移动设备或嵌入式系统
  2. 现有的知识蒸馏方法专注于闭集问题下的精度和压缩比,以“测试类别与训练类别是固定的”为前提,不适用于开集任务
  3. 现有知识蒸馏方法大多数都才去teacher和student的特征间L2距离,要求特征进行精确匹配(exact match),会导致student过正则化,不稳定

二、解决方法/创新

  1. 提出了新的Teacher-Student Framework,即ShrinkTeaNet,以学习出轻量级、高精度、少参数的人脸识别网络
  2. 提出了Angular Dstillation Loss,以teacher net的特征方向以及样本分布为知识蒸馏到student中,使student更加灵活地提取特征,同时可以处理那些测试集中的未见类别,适用于开集任务

三、背景/介绍
    模型压缩的目的是学习出轻量级网络,该网络能在精度和速度之间达到平衡,主要有两类方法:

  1. Network Pruning 网络剪枝:分析并去除heavy network中存在的冗余度,包括三个阶段:
            (1)训练大规模模型(Over-Parameterized);
            (2)基于某些准则为训练好的大模型进行剪枝;
            (3)为剪枝网络进行微调,以达到高性能;
  2. Knowledge Dstillation 知识蒸馏:学习出一个轻量级网络,它可以模仿复杂网络(teacher)的行为,达到与之相似的效果。从teacher中转移有用的信息给student,可以使student更加灵活、有效地训练。
    ★ 一般做法:最小化teacher和student提取的特征间的L2距离,这就使二者的特征达到“精确匹配”,不适用于开集任务
    ★ Hinton提出,由teacher预测的类别概率之间的隐藏关系更有信息价值,因此teacher的预测结果会作为student的soft label,和ground truth label一起作为student训练的监督信息

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 版权协议,转载请附上原文出处链接及本声明。
原文链接

一般知识蒸馏模型:
在这里插入图片描述     T T T S S S分别表示teacher model 和student model的从图像域到特征域的映射函数, T i T_i Ti S i S_i Si表示中间层的子函数
在这里插入图片描述
    模型蒸馏的目的是从 T T T中将知识蒸馏到能力有限的 S S S中,使 S S S可以嵌入与 T T T相似的隐藏空间。该目标可以通过在 S S S的训练过程中逐步比较二者的输出来实现。
    ① g i t ( ⋅ ) g_i^t(·) git() g i s ( ⋅ ) g_i^s(·) gis()表示特征的转换函数,使teacher和student的特征表示一致,通常是恒等变换或 1 ∗ 1 ∗ C o n v 1*1*Conv 11Conv ,这个函数控制了前一直是的比例
    ② d ( ⋅ , ⋅ ) d(·,·) d(,)表示对 T T T S S S特征差异的度量函数,隐含定义了要从 T T T转移到 S S S的知识

四、本文提出
    用KD方法来学习适用于开集人脸识别的轻量级网络,需要从两个方面去考虑:
(1)蒸馏知识的表示;
(2)如何在teacher和student之间有效地迁移知识
1.从Teacher超球面蒸馏知识
    对闭集问题
(1)用L2距离计算 T T T S S S特征间的相似度差异。对于能力有限的 S S S,这种约束相当于对每个 F i s F_i^s Fis进行正则化,会导致过正则化,且 S S S的学习过程会变得艰难:

在这里插入图片描述(2)用 T T T的预测概率作为 S S S的soft label,仅适于test classes和train classes固定一致的闭集问题。对开集问题来说,这种 T T T的预测概率作为知识,没有很大的价值。
    对开集问题,由于test classes未在training中定义过,因此每个类别的样本分布和类间间隔(margin)成为更有意义的知识。Teacher中样本间的角度差异和样本在Teacher超球面上的分布对student更有用。因此,本文提出将teacher的角度信息作为知识蒸馏到student中。

Softmax Loss Revisit在这里插入图片描述
    如果对 W c W_c Wc F n s F_n^s Fns都进行L2归一化,那么他们之间的角度就成为唯一的分类标准,最小化softmax loss意味着让样本与所属class表示的角度差异达到最小

Feature Direction as Distilled Knowledge
    前面提到利用 T T T学习到的角度信息作为知识,其实就是指特征的方向(用角度来表示), S S S的特征方向与 T T T一致,就可以学习到相似的样本分布,使得特征可以在隐藏空间中,分布在任意半径的超球面上。为 S S S的学习过程提供了一定的自由度,去解释 T T T的知识。本文定义为Angular Distillation Loss:
在这里插入图片描述
The Transformation Function
    本文方法中, T T T S S S的变换函数分别为恒等变换和 1 ∗ 1 ∗ C o n v 1*1*Conv 11Conv,保证不丢失重要的图像信息:

g n t ( F n t ) = F n t g_n^t(F_n^t) = F_n^t gnt(Fnt)=Fnt
g n s ( F n s ) = H n s : R h n ∗ w n ∗ m n s − > R h n ∗ w n ∗ m n t g_n^s(F_n^s) = H_n^s : R^{h_n*w_n*m_n^s} -> R^{h_n*w_n*m_n^t} gns(Fns)=Hns:Rhnwnmns>Rhnwnmnt

Geometric Interpretation
在这里插入图片描述
    前面说过,如果分别对特征和类别表示进行归一化,那么softmax中唯一的分类标准就是特征与类别表示之间的夹角。
    Figure1(a):给定一个高性能的复杂网络,他学习出的样本分布中,不同类别间的决策边界具有很大的间隔
    Figure1(b):如果让student网络自己训练,那么它产生的类决策边界的减小,没有足够的判别性将不同类别的identity给分开
    Figure1(c):用teacher的特征方向做指导,student可以做出更好的决策边界,使不同类别间具有较大的间隔

2. 从中间层进行知识蒸馏
    设 S S S的输入是问题,输出的特征分布是答案,则中间过程的特征 F i s F_i^s Fis可以视为 S S S对解决过程的中间理解或解释。为了让 S S S更好地“理解”解决过程, T T T应该向 S S S展示:什么是好的特征表示,以及 当前特征是否足以得到后续步骤的特征分布
    因此, T T T可以再中间各层就对 S S S进行监督,有效地更正 S S S,使 S S S的学习过程更加高效:
在这里插入图片描述
    在中间层进行知识蒸馏,本文用各层 F i t F_i^t Fit F i t F_i^t Fit之间的角度差异,来验证 F i s F_i^s Fis的优劣。

3. 用于人脸识别的ShrinkTeaNet
    分别从中间各层以及最后的结果进行知识蒸馏,因此本文ShrinkTeaNet的总目标函数如下:
在这里插入图片描述
下图是ShrinkTeaNet的知识蒸馏框架
在这里插入图片描述
在这里插入图片描述
五、实验结果
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
在这里插入图片描述

五、总结

  1. 本文提出了一个新的Teacher-Student Framework,即ShrinkTeaNet。适用于开集人脸识别任务
  2. 还提出了Angular Distillation Loss,在中间和最后的嵌入阶段进行知识蒸馏,使student以较为松弛的方式来吸收teacher超球面样本分布的知识。在开集问题下,即使测试类别在训练阶段未见,这种知识也可以得到灵活的应用。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值