17 天前

基于知识蒸馏的神经网络进行面部关键点检测

Ali Pourramezan Fard, Mohammad H. Mahoor
基于知识蒸馏的神经网络进行面部关键点检测
摘要

面部关键点检测是众多面部图像分析应用中的关键步骤。尽管一些基于深度学习的方法在该任务中已取得良好性能,但这些方法通常难以在移动设备上高效运行。其主要原因在于这些方法依赖参数量庞大的网络结构,导致训练与推理过程耗时较长。相比之下,训练轻量级神经网络(如MobileNets)往往面临挑战,且模型精度可能较低。受知识蒸馏(Knowledge Distillation, KD)思想的启发,本文提出一种新型损失函数,用于训练轻量级学生网络(如MobileNetV2)完成面部关键点检测任务。我们采用两个教师网络——一个“宽容教师”(Tolerant-Teacher)和一个“严格教师”(Tough-Teacher),与学生网络协同工作。其中,“宽容教师”通过主动形状模型(Active Shape Models)生成的软标签(Soft-landmarks)进行训练,而“严格教师”则使用真实标注的硬标签(Hard-landmarks,即地面真实关键点)进行训练。为充分利用教师网络预测的面部关键点信息,我们为每个教师网络定义了一个辅助损失函数(Assistive Loss, ALoss)。此外,我们提出一种称为KD-Loss的新损失函数,该函数利用两个预训练的教师网络(EfficientNet-b3)所预测的关键点,引导轻量级学生网络更准确地预测出真实的硬标签关键点。在三个具有挑战性的面部数据集上的实验结果表明,所提出的架构能够训练出性能更优的学生网络,显著提升面部关键点检测的精度。