探索之路永不止步:挑战无法拯救的拒绝,新知识的冒险从未停歇
DeepSeek引入了火知识蒸馏技术,而原作者最近透露,这一创新其实一开始就并未得到广泛的认可和支持。 这项技术的引入无疑为DeepSeek平台增添了一抹亮色,但其背后的故事也反映了新技术在初期往往难以获得充分重视的现实。这不仅是对DeepSeek团队的一种挑战,也提醒我们,在科技迅速发展的今天,如何识别并支持那些具有潜力的新技术,仍然是一个需要深思的问题。
称得上是“蒸馏圣经”、由Hinton、Oriol Vinyals、Jeff Dean三位大佬合写的《Distilling the Knowledge in a Neural Network》,当年被NeurIPS 2014拒收。
如何评价这篇论文的含金量?
知识蒸馏技术的提出,为模型压缩提供了一种有效的解决方案。这项技术能够在不显著降低准确率的前提下,大幅度减少模型的参数量,使其更易于在资源有限的环境中进行部署。例如,在移动设备或物联网设备上运行复杂的人工智能应用时,这种技术显得尤为重要。通过知识蒸馏,我们可以确保这些设备不仅能够高效地处理数据,还能保持较高的预测准确性。这不仅扩展了人工智能应用的范围,也使得更多用户能够享受到技术带来的便利。 我的看法是,知识蒸馏技术的发展标志着人工智能领域的一个重要进步。它不仅解决了模型部署中的实际难题,还为资源有限的环境下的技术创新开辟了新的道路。未来,随着这一技术的进一步发展和完善,我们有理由相信,更多的智能应用将能够惠及更广泛的用户群体,推动社会整体的技术进步。
例如,Siri能够集成到我们的手机中,这得益于知识蒸馏技术对大型语音模型进行压缩处理。这项技术不仅让智能助手更加便捷地融入日常生活中,而且也使得设备运行效率得到了显著提升。通过压缩模型,用户可以享受到更流畅、响应更快的语音交互体验,而无需担心手机性能受到太大影响。这种技术的应用前景十分广阔,未来有望进一步优化人工智能产品的性能与用户体验。
自它之后,大模型通过多种方法提升性能上限,然后再将其知识蒸馏到小模型上的做法,已经成为当前行业的标准流程。这种技术不仅使得资源有限的小型设备也能享受到高级模型带来的便利,还大大推动了人工智能应用的普及。然而,值得注意的是,虽然蒸馏技术提高了效率,但在某些特定任务上,大型模型依然具有优势,因此如何平衡两者之间的关系,将是未来研究的一个重要方向。
再来看它的主创阵容。
Hinton,深度学习之父,如今已是诺奖得主。
Oriol Vinyals,Google DeepMind研究科学家,参与开发的明星项目包括TensorFlow、AlphaFold、Seq2Seq、AlphaStar等。
Jeff Dean,作为Google DeepMind的首席科学家,自2018年起全面负责谷歌的人工智能工作。在当前的大模型浪潮中,他积极推动了PaLM(Pathways Language Model)和Gemini的发展。这些项目不仅展示了深度学习技术的巨大潜力,也预示着人工智能领域正在经历一场革命性的变革。 Jeff Dean的工作不仅促进了技术的进步,还为整个行业设定了新的标准。PaLM和Gemini等项目的成功,证明了大规模模型在处理复杂任务时的优势,同时也引发了关于如何更好地利用这些技术来解决现实世界问题的讨论。随着人工智能技术的不断发展,我们期待看到更多创新成果的出现,并希望这些技术能够更广泛地应用于医疗、教育和社会服务等领域,以改善人类的生活质量。
不过,那又怎样?
主创之一Ori尔·维尼耶尔斯表示,由于缺乏创新性和影响力,这篇论文被拒绝了。感谢审稿人(字面意思),感谢arxiv!
方法简单、适用于各种模型
简单粗暴总结,《Distilling the Knowledge in a Neural Network》是一篇更偏工程性改进的文章,但是带来的效果提升非常显著。
Caruana等人于2006年探讨了将集成知识压缩至单一模型的可能性,这一观点在论文中得到了明确阐述。
Hinton等人的研究介绍了一种简洁且高效的迁移学习框架,其应用范围比Caruana团队的方案更为广泛。
方法看上去非常简单:
用软目标代替硬目标
在Softmax层中引入温度参数T。当T等于1时,即为标准的Softmax函数输出。随着T值的增加,概率分布将变得更加均匀(平滑)。
他们认为此前人们习惯性地将模型中的知识与模型的具体参数绑定在一起,因此很难想到该如何在改变模型结构的同时仍旧保留这些知识。
若我们将知识视作由输入向量到输出向量的一种抽象映射,而非特定参数的具体实现方式,那么知识在不同模型间的迁移将更易于理解。
知识蒸馏的核心在于使小型模型能够模仿大型模型的“理解方式”。当大型模型是由多个模型集成而成,并展现出强大的泛化能力时,我们可以通过蒸馏训练来引导小型模型学习这种泛化方法。这种方法不仅能够让小型模型吸收大型模型中的核心知识,还使其更适应实际的应用部署。从技术角度看,这样的方法无疑为人工智能领域提供了新的视角。它表明,通过巧妙的设计,我们可以实现高效且经济的模型压缩,从而在不牺牲性能的前提下提高模型的实用性和可访问性。这不仅是技术上的突破,也为未来的AI应用开辟了更广阔的道路。
怎么将泛化能力转移?
使用大模型生成的类别概率作为软目标来训练小模型。
在这一过渡阶段,我们可以选择继续使用与初始训练相同的数据库,也可以专门构建一个“迁移”数据库。这种做法不仅有助于保持模型的一致性,还能通过引入新的数据来提升其适应性和灵活性。我认为,这种方法能够有效平衡资源利用效率与模型性能优化之间的关系。在快速变化的信息时代,灵活调整数据来源对于保持模型的有效性至关重要。同时,这也有助于我们更好地理解不同数据源对模型效果的影响,从而为未来的改进提供有价值的参考。
如果大模型是由多个模型集成而成,通常我们会取这些模型预测结果的平均值来作为最终输出。这种做法在很多情况下能够有效提升模型的整体性能,减少单一模型可能带来的偏差。例如,在一项研究中,研究人员发现通过集成多个模型,并对它们的预测结果进行平均处理,可以显著提高预测准确率10%以上。这不仅证明了集成学习方法的有效性,也展示了它在实际应用中的巨大潜力。这种方法不仅可以应用于机器学习领域,还可以扩展到数据分析和其他需要高精度预测的场景中。总的来说,集成模型的方法为提升预测准确性和稳定性提供了一条可行的路径。
软目标的特点在于,在高熵状态下(即预测概率分布更为均匀时),每个训练样本中蕴含的信息量远超硬目标,同时,训练样本间的梯度变化也相对较小。
因此,在利用软目标训练小模型的过程中,通常可以仅使用比原始模型更少的数据量,并且能够采用更高的学习率。
小模型可以利用无标签数据进行训练,或者使用原始训练数据。如果选择使用原始训练数据,可以让小模型在学习真实标签的同时,也吸收大模型的软目标,从而提升性能。
在最新的研究中,采用了一种结合软目标交叉熵损失与真实标签交叉熵损失的方法,通过加权平均来优化模型性能。这种方法若在设置较小的真实标签交叉熵损失权重时,通常能够取得更佳的效果。 这一发现表明,在训练深度学习模型的过程中,灵活调整不同损失函数的权重可以显著提升模型的表现。这不仅为研究人员提供了新的思路,也提示我们在实际应用中需要根据具体任务的需求进行细致调参,以达到最优效果。这种策略的应用,无疑为提高模型准确性和鲁棒性开辟了新的途径。
此外,他们发现,软目标的梯度大小会随着蒸馏温度T的变化而变化。当同时使用真实标签和软目标时,例如将软目标的梯度乘以T,这有助于确保在调整蒸馏温度这一关键超参数的过程中,硬目标和软目标对模型训练的贡献比例基本保持稳定。 这种机制对于深度学习模型的优化非常重要,特别是在面对复杂数据集时,能够更灵活地平衡不同类型的监督信息。通过精细调节蒸馏温度,研究人员能够更好地控制模型的学习过程,从而提升模型的泛化能力和准确性。这种方法不仅提高了模型训练的效果,也为进一步探索深度学习算法提供了新的思路。
实验结果显示,在MNIST数字识别时延中,教师模型(1200层)的错误案例为67个,学生模型(800层)使用蒸馏技术后的错误案例为74个。这一结果表明,尽管学生模型在训练过程中借助了先进的知识蒸馏技术,但在处理复杂任务时依然存在一定的局限性。这可能意味着当前的知识蒸馏方法还需要进一步优化,以更好地提升学生模型的学习效果。同时,这也提示我们在设计深度学习模型时,不仅要关注模型的层数和容量,还要考虑如何更有效地利用各种技术手段来提升模型的整体性能。
在JFT数据集上,基准模型的错误率为27.4%,集成模型的错误率为25%。蒸馏模型错误率为25.6%,效果接近集成模型但计算量大幅减少。
在语音识别实验中,蒸馏模型的表现与集成模型相当,但其训练数据量仅占3%。
或许还有很多沧海遗珠
值得一提的是,Vinyals还提到,Jürgen Schmidhuber在1991年发表的一篇论文可能与当前热门的长上下文问题密切相关,因为这篇论文介绍了LSTM(长短期记忆网络)。
他提到的应该是《Learning complex, extended sequences using the principle of history compression》这篇论文。该论文的核心内容是利用“历史压缩”的原则,通过特定的模型结构和算法将序列的历史信息有效编码和存储,从而在处理长序列时减少计算开销,同时保留关键信息。这一方法不仅在理论上具有创新性,而且在实际应用中也展现了巨大的潜力。它为解决深度学习中的长依赖问题提供了一种新的思路,并且可能在未来的研究中成为一种重要的工具。
有人就说,不妨设立一个“未被接纳奖”来表彰那些未能获得通过的论文吧。
同时也有人在这个话题下想到了DeepSeek。
曾在苹果、MattHenderson指出,DeepSeek在进行模型蒸馏时,仅采用了对教师模型输出结果的微调技术,而未利用软目标,这主要是由于两种模型的分词方式存在差异。 这一情况表明,尽管DeepSeek在技术上有所突破,但在处理跨模型一致性的问题上还有待改进。模型间的分词方式差异,不仅限制了软目标的应用,也可能影响最终模型的效果。如何有效地解决这类跨模型兼容性问题,将是未来研究的一个重要方向。
Vinyals回应说,那看来我们取蒸馏这个名字真的不错~
参考链接:
[1]https://x.com/OriolVinyalsML/status/1887594344183701814
[2]https://arxiv.org/abs/1503.02531