AI蒸馏技术简史
知识蒸馏是一种模型压缩技术,通过让学生模型模仿教师模型的输出,在保持性能的同时减小模型规模。本文回顾了从2015年Hinton等人提出蒸馏概念到现代应用的发展历程。
知识蒸馏(Knowledge Distillation)是人工智能领域的一项重要技术,旨在将大型、复杂的模型(教师模型)的知识迁移到小型、高效的模型(学生模型)中,从而在保持较高性能的同时减少计算资源消耗。这一概念最早由Geoffrey Hinton、Oriol Vinyals和Jeff Dean在2015年的论文《Distilling the Knowledge in a Neural Network》中系统阐述,但类似的思想在早期集成学习和模型压缩研究中已有萌芽。
蒸馏的核心思想是让学生模型学习教师模型的“软标签”(即输出概率分布),而不仅仅是真实标签。通过引入温度参数软化概率分布,学生模型能够捕捉教师模型中的暗知识(dark knowledge),例如类别间的相似性。这种方法不仅提高了学生模型的泛化能力,还能有效压缩模型体积,使其适用于移动端和嵌入式设备。
自2015年以来,蒸馏技术经历了多代演进。2016年,Romero等人提出FitNets,利用中间层特征进行蒸馏。2018年,Tian等人提出对比蒸馏,通过对比学习增强学生模型。在线蒸馏(Online Distillation)允许多个模型同时互相学习;自蒸馏(Self-Distillation)则让模型自我改进。这些变体进一步拓展了蒸馏的应用场景。
在大模型时代,蒸馏成为部署大型语言模型(如GPT、BERT)的关键技术之一。例如,DistilBERT通过蒸馏将BERT模型缩小40%,同时保留97%的语言理解能力。此外,蒸馏还被用于计算机视觉(如MobileNet)、推荐系统和强化学习等领域。随着模型规模持续增长,蒸馏技术在效率与性能平衡方面将扮演越来越重要的角色。