
精通 Llm 蒸馏:使用 Hugging Face Auto Train 优化性能的 5 个关键步骤
大型语言模型 (LLMs) 与对高效替代方案的需求
大型语言模型 (LLMs) 的规模呈指数级增长,OpenAI 的 GPT-4.5 达到了 12.8 万亿个参数。这种扩张带来了诸多挑战,例如计算成本、能源消耗以及对环境的影响增加。高昂的费用限制了小型企业和研究人员的可及性。此外,部署这些大规模模型带来了可扩展性和实用性问题,包括数据管理和安全问题。
因此,迫切需要能够保持高性能的、更高效的小型模型。最近的 AI 研究为应对这些挑战提供了有前景的解决方案。
为了探讨这些发展如何塑造 AI 的未来,请继续阅读本博客,其中将使用这篇研究论文进行深入分析:LLM Distillation Research Paper
了解模型蒸馏
想象一下,仅仅让一个新手学生死记硬背书籍,而不让他理解和推理过程以及业务用例,来教他 GenAI 或 LLMs。这种情况类似于人工智能中的传统模型蒸馏,其中一个较小的“学生”模型从一个较大的“老师”模型的输出中学习,而不是从其内部推理中学习。
学生通过死记硬背学习或学生通过逐步理解学习
传统模型蒸馏:基础知识
在 AI 中,模型蒸馏涉及将知识从一个大型、复杂的模型转移到一个更小、更高效的模型。目标是在减少计算需求的同时保持性能。该过程通常包括:
- 训练教师模型:一个大型模型从大量的数据集中学习,捕捉复杂的模式。
- 生成软目标:教师模型在可能的输出上产生概率分布(软目标),提供超越正确答案的细微信息。
- 训练学生模型:一个较小的模型学习模仿教师的软目标,旨在用更少的资源复制其性能。
使用教师 LLM 的最终答案进行 LLM 蒸馏
虽然传统蒸馏提供了效率,但它也有明显的缺点:
- 依赖大型数据集:有效的蒸馏通常需要大量的数据,而这些数据可能并不总是可用。
- 推理能力的丧失:学生模型学习教师的输出,而不是其内部的推理过程,这可能会限制其泛化或处理复杂任务的能力。
- 技术复杂性:蒸馏过程在技术上可能具有挑战性,尤其是在处理多任务学习场景时。
这些限制具有实际影响。例如,最近涉及 DeepSeek 的 R1 模型的争议,据报道该模型在 OpenAI 的输出上使用了蒸馏技术,突出了 AI 社区的伦理和法律问题。
引入“逐步蒸馏”
想象一位大师级艺术家教导学徒,不仅仅是展示最终的杰作,而是演示每一笔画,解释颜色的选择,并详细说明所使用的技术。
学生从大师的逐步推理和实践中学习
这种教学方法侧重于过程而不是结果,可以带来更深入的理解,并能够复制甚至创新原始作品。在人工智能领域,出现了一种类似的方法:“逐步蒸馏”。
逐步蒸馏如何优于传统 LLM 蒸馏?
传统的模型蒸馏涉及训练一个较小的“学生”模型来模仿一个较大的“教师”模型的输出。虽然“逐步蒸馏”减少了计算需求,但它通常会导致学生模型缺乏其教师的细微推理能力。“逐步蒸馏”通过侧重于教导较小的模型模仿不仅是答案,而且是较大模型的推理过程来解决这一限制。这种方法从大型语言模型 (LLMs) 中提取推理——逐步的解释——并将其用作训练期间的额外监督。
逐步蒸馏工作流程
通过逐步推理增强学习
通过结合这些推理,学生模型可以深入了解教师模型的思维过程,即使使用较少的训练数据也能提高性能。这种方法已被证明可以训练出优于大型 LLM 的小型模型,从而使 AI 更易于访问和高效。
“逐步蒸馏”是如何工作的?
传统的模型蒸馏侧重于通过让较小的模型模仿较大模型的输出来将知识从较大模型转移到较小的模型。然而,这种方法通常忽略了这些输出背后的推理过程。“逐步蒸馏”通过将大型语言模型 (LLMs) 的推理途径纳入较小模型的训练来弥补这一差距。
从 LLMs 中提取推理:使用思维链 (CoT) 提示
这种方法的第一步涉及通过思维链 (CoT) 提示从 LLMs 中提取推理。CoT 提示是一种引导 LLMs 生成中间推理步骤的技术,增强了它们解决复杂问题的能力。通过向模型展示包含问题和详细解决方案路径的示例,模型可以学习为新问题生成类似的逐步解释。
从 LLMs 中提取推理:使用思维链 (CoT) 提示
训练学生模型:采用多任务学习框架
一旦提取出这些推理依据,它们就作为额外的监督来训练较小的“学生”模型。这是通过一个多任务学习框架实现的,学生模型学习预测最终答案和得出该答案的推理过程。通过这样做,学生模型不仅复制了较大模型的结果,而且内化了其解决问题的策略,即使在减少训练数据的情况下也能提高性能。
训练学生模型
这种方法已经证明,当使用逐步推理依据进行训练时,较小的模型可以优于缺乏这种显式推理监督的较大模型。
本地或服务器上以及 Hugging Face Auto-Train 的 LLM 蒸馏 Python 实现
使用 Python,可以使用 Hugging Face 库加载教师模型和学生模型,或者您也可以使用 OLLAMA 作为本地 LM。
之后,遵循我上面解释的这 3 条基本规则。
- 从 LLM 中提取推理依据:使用思维链 (CoT) 提示
- 训练学生模型:采用多任务学习框架
- 部署最终模型。
使用 Auto Train,只需使用使用教师 LLM 创建的推理依据数据集,然后将其直接放入 Hugging Face Auto-Train UI 中。
我在下面的视频中一步一步地解释了所有内容,并提供了代码解释。
最终想法
“逐步蒸馏”在 AI 模型训练方面取得了重大进展,它使较小的模型能够模拟较大模型的推理过程。
这种技术不仅减少了对大量训练数据的需求,而且提高了小型模型的性能,使 AI 更加高效和易于访问。
这种方法的影响在各个行业中都是深远的:
- 医疗保健:蒸馏模型可以为诊断工具提供支持,这些工具在资源受限的环境中有效运行,促进实时分析和决策。
- 金融:金融机构可以使用这些模型进行快速欺诈检测和高效的客户服务,在成本效益和准确性之间取得平衡。
- 边缘计算:蒸馏模型降低的复杂性和资源需求使其适合部署在计算能力有限的设备上,例如物联网设备和智能手机。
随着人工智能的不断发展,“逐步蒸馏”提供了一条通往更可持续和多功能应用的道路,确保广泛的用户和行业都能获得先进的人工智能能力。
进一步学习机会:
要加深您对 RAG 及其应用的理解和专业知识,请考虑探索以下资源:
- **从头开始学习 RAG:**此综合 YouTube 播放列表提供了 RAG 实现的基础知识和高级技术。
- **金融领域的 LLM + RAG 用例:**了解 RAG 与 LLM 结合如何通过实际用例和见解彻底改变金融领域。
抓住这些学习机会,站在人工智能创新的前沿,并确保您的系统既高效又可扩展。