Multi-Level Feature Distillation of Joint Teachers Trained on Distinct Image Datasets

📄 arXiv: 2410.22184v1 📥 PDF

作者: Adrian Iordache, Bogdan Alexe, Radu Tudor Ionescu

分类: cs.CV, cs.AI, cs.LG

发布日期: 2024-10-29

备注: Accepted at WACV 2025

🔗 代码/项目: GITHUB


💡 一句话要点

提出多层特征蒸馏方法,利用多个独立数据集训练的联合教师模型提升学生模型性能。

🎯 匹配领域: 支柱二:RL算法与架构 (RL & Architecture)

关键词: 知识蒸馏 多教师学习 特征融合 图像分类 动作识别 深度学习 模型泛化

📋 核心要点

  1. 现有方法难以有效利用多个独立数据集的知识,导致模型泛化能力受限。
  2. 提出多层特征蒸馏方法,通过联合教师模型融合不同数据集的特征,提升知识迁移效果。
  3. 实验表明,该方法在图像分类和动作识别任务上显著优于现有方法,并进行了消融实验验证。

📝 摘要(中文)

本文提出了一种新颖的教师-学生框架,用于从多个在不同数据集上训练的教师模型中提炼知识。首先,每个教师模型都在其自身的数据集上从头开始训练。然后,将这些教师模型组合成一个联合架构,该架构在多个表示层级融合所有教师模型的特征。联合教师架构在来自所有数据集的样本上进行微调,从而收集来自所有数据样本的有用通用信息。最后,我们采用多层特征蒸馏程序,将知识转移到每个考虑数据集的学生模型。我们在七个图像分类基准测试和三个动作识别基准测试上进行了实验。为了说明特征蒸馏程序的强大性,学生架构被选择为与各个教师模型的架构相同。为了展示我们方法的灵活性,我们组合了具有不同架构的教师模型。我们证明了我们新颖的多层特征蒸馏(MLFD)可以显著超越在单个数据集上训练或同时在所有数据集上联合训练的等效架构。此外,我们通过全面的消融研究证实了所提出的训练程序的每个步骤都具有充分的动机。我们公开了我们的代码在 https://github.com/AdrianIordache/MLFD。

🔬 方法详解

问题定义:现有知识蒸馏方法通常依赖于单个教师模型或在相同数据集上训练的多个教师模型。然而,在实际应用中,往往存在多个在不同数据集上训练的模型,如何有效地利用这些模型的知识来提升学生模型的性能是一个挑战。现有方法难以充分利用不同数据集的互补信息,导致学生模型的泛化能力受限。

核心思路:本文的核心思路是构建一个联合教师模型,该模型能够融合来自多个在不同数据集上训练的教师模型的特征。通过在所有数据集上微调联合教师模型,使其能够学习到更通用的知识表示。然后,利用多层特征蒸馏方法,将联合教师模型的知识迁移到学生模型,从而提升学生模型的性能。

技术框架:该方法包含三个主要阶段:1) 独立教师模型训练:每个教师模型都在其自身的数据集上从头开始训练。2) 联合教师模型构建与微调:将所有教师模型组合成一个联合架构,并在所有数据集上进行微调。3) 多层特征蒸馏:将联合教师模型的知识迁移到学生模型。联合教师模型通过特征融合模块将来自不同教师模型的特征进行融合。

关键创新:该方法最重要的创新点在于提出了多层特征蒸馏方法,该方法能够有效地将联合教师模型在多个表示层级上的知识迁移到学生模型。与传统的知识蒸馏方法相比,该方法能够更好地利用不同数据集的互补信息,从而提升学生模型的性能。此外,该方法还能够灵活地组合具有不同架构的教师模型。

关键设计:在联合教师模型中,使用了特征融合模块来融合来自不同教师模型的特征。特征融合模块可以采用不同的设计,例如,可以使用简单的拼接操作或更复杂的注意力机制。在多层特征蒸馏过程中,需要选择合适的蒸馏损失函数,例如,可以使用L2损失或KL散度。此外,还需要选择合适的蒸馏层,通常选择中间层的特征进行蒸馏。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,该方法在图像分类和动作识别任务上显著优于现有方法。在图像分类任务中,该方法在多个基准测试上取得了state-of-the-art的性能。在动作识别任务中,该方法也取得了显著的提升。例如,在某些数据集上,该方法可以将模型的准确率提升5%以上。

🎯 应用场景

该研究成果可应用于各种需要利用多个数据集进行模型训练的场景,例如,可以用于提升自动驾驶系统中目标检测和场景理解模型的性能,也可以用于提升医疗图像分析系统中疾病诊断模型的准确率。该方法具有广泛的应用前景,能够有效提升模型的泛化能力和鲁棒性。

📄 摘要(原文)

We propose a novel teacher-student framework to distill knowledge from multiple teachers trained on distinct datasets. Each teacher is first trained from scratch on its own dataset. Then, the teachers are combined into a joint architecture, which fuses the features of all teachers at multiple representation levels. The joint teacher architecture is fine-tuned on samples from all datasets, thus gathering useful generic information from all data samples. Finally, we employ a multi-level feature distillation procedure to transfer the knowledge to a student model for each of the considered datasets. We conduct image classification experiments on seven benchmarks, and action recognition experiments on three benchmarks. To illustrate the power of our feature distillation procedure, the student architectures are chosen to be identical to those of the individual teachers. To demonstrate the flexibility of our approach, we combine teachers with distinct architectures. We show that our novel Multi-Level Feature Distillation (MLFD) can significantly surpass equivalent architectures that are either trained on individual datasets, or jointly trained on all datasets at once. Furthermore, we confirm that each step of the proposed training procedure is well motivated by a comprehensive ablation study. We publicly release our code at https://github.com/AdrianIordache/MLFD.