微信扫码
添加专属顾问
一、剪枝与蒸馏的意义
从头开始预训练(pretrain)SLMs并不总是可行的,因为在数据收集、预训练(pretraining)管道等方面存在重大挑战。一种流行的替代方法是从较大的LLMs开始,并将其蒸馏(distill)为较小的模型。剪枝(pruning)和蒸馏(distillation)是该领域最受欢迎的两种技术。最近,NVIDIA发布了两个基于Llama 3.1–450B蒸馏(distilled)版本的模型,分别是Minitron-8B和Minitron-4B。
Minitron专注于通过剪枝(pruning)和蒸馏(distillation)来减少AI模型的大小,使其在不牺牲太多准确性的情况下更加高效。
剪枝(pruning)通过切割层(深度剪枝,depth pruning)或移除神经元、注意力头(attention heads)或嵌入通道(embedding channels)来减少模型的大小。为了恢复一些丢失的准确性,剪枝(pruning)后通常需要重新训练。
蒸馏(distillation)是一种相关技术,其中较小的模型(称为学生模型,student model)从较大、复杂的模型(称为教师模型,teacher model)中学习。目标是创建一个更紧凑的模型,保留较大模型的大部分预测能力,同时更快且对资源要求更少。
二、蒸馏方法:SDG微调与经典知识蒸馏
Minitron确定了两种关键的蒸馏(distillation)风格。一种方法是SDG微调(fine-tuning),其中较小的预训练(pretrained)学生模型(student model)使用由较大教师模型(teacher model)生成的数据进行细化。在这种方法中,学生模型(student model)模仿教师模型(teacher model)预测的最终标记,如一些流行的教程和AI平台所示。
另一种方法,经典知识蒸馏(classical knowledge distillation),更为复杂。学生模型(student model)不仅关注预测的标记,还尝试复制教师模型(teacher model)的各种内部状态。这种技术在训练过程中提供了更详细的反馈,从而提高了准确性。然而,实施这种方法需要在训练框架中提供特定支持,因为它涉及处理来自教师内部状态的大量数据。
这两种方法并不互斥,可以相辅相成。Minitron主要强调经典知识蒸馏(classical knowledge distillation)方法。
三、剪枝(pruning)和蒸馏(distillation)工作流程
为了创建更高效的模型,Minitron将剪枝(pruning)与经典知识蒸馏(classical knowledge distillation)相结合。从较大的模型(如15B参数模型)开始,Minitron评估不同组件(层、神经元等)的重要性,然后将模型缩小到较小的尺寸,如8B模型。较小的模型经过轻量级的重新训练过程,从原始较大模型中学习。这个过程可以重复进行,以进一步减少模型大小,最终生成更小的版本,如4B模型。
剪枝(pruning)和蒸馏(distillation)过程是迭代的,每个较小的模型作为下一轮压缩和重新训练的基础。
参考上图,步骤解释如下:
这张图片展示了如何通过剪枝(pruning)和蒸馏(distillation)技术将一个大型语言模型(LLM)逐步缩小为更小、更高效的模型。让我们一步一步地解释这个过程:
首先,我们有一个已经训练好的大型语言模型(LLM),它包含了很多层(Layer),每一层都有不同的组件,比如嵌入(Embedding)、变压器块(Transformer Block)、注意力机制(Attention)、层归一化(Layer Norm)和多层感知机(MLP)。
接下来,我们需要评估每个组件的重要性。我们通过前向传播(forward propagation)来记录每个组件的活动情况,然后计算它们对模型整体性能的贡献。这一步帮助我们确定哪些组件是最重要的,哪些可以被移除。
根据重要性评估的结果,我们对组件进行排序。重要性高的组件排在前面,重要性低的排在后面。这一步是为了在剪枝时有一个明确的优先级。
在这一步,我们根据排序结果移除那些重要性较低的组件。比如,我们可能会移除一些嵌入(Embedding)、注意力头(Attention Heads)和嵌入通道(Embedding Channels)。这样,模型的大小就会减小,但仍然保留了大部分重要的功能。
剪枝后,我们对模型进行蒸馏。蒸馏的过程是让一个较小的学生模型(Student Model)从较大的教师模型(Teacher Model)中学习。通过这种方式,学生模型可以保留教师模型的大部分预测能力,但体积更小,运行更快。
图片的下半部分展示了具体的例子:
从15B到8B:我们从一个15B参数的模型开始,经过上述步骤,剪枝和蒸馏后得到一个8B参数的模型。
从8B到4B:然后,我们再从8B参数的模型开始,重复同样的步骤,最终得到一个4B参数的模型。
通过这种方法,我们可以逐步将一个非常大的模型缩小为更小、更高效的版本,同时尽量保持其性能。
四、剪枝(pruning)影响
有效剪枝(pruning)模型需要了解其哪些部分是必不可少的。Minitron使用基于激活数据的方法来估计各种组件(层、神经元、注意力头(attention heads)和嵌入通道(embedding channels))的重要性,使用一个小数据集。这个方法只需要前向传播,比依赖反向传播和梯度计算的技术更简单且更具成本效益。
虽然可以在模型的不同部分之间交替进行剪枝(pruning)和重要性估计,但Minitron发现大多数情况下单轮重要性估计就足够了。
Minitron将这些技术应用于Llama 3.1模型家族,其中包括从405B到8B参数的模型。具体来说,他们专注于将8B模型蒸馏(distill)为更高效的4B版本。
微调教师模型
在剪枝(pruning)之前,Minitron微调了8B模型,以应对原始训练集数据分布的变化。如果没有这一步,教师模型(teacher model)可能无法在蒸馏(distillation)过程中为学生模型(student model)提供最佳指导。
深度剪枝(depth pruning)
为了将8B模型减少到4B,Minitron剪除了16层,通过逐一移除并跟踪性能影响来评估其重要性。他们发现模型开头和结尾的层对保持准确性最为关键。基于此分析,Minitron为最终的4B模型移除了特定的一组层。
宽度剪枝(width pruning)
除了深度剪枝(depth pruning),Minitron还沿宽度维度进行剪枝(pruning),目标是注意力头(attention heads)、嵌入通道(embedding channels)和隐藏层。剪枝(pruning)后,重新训练有助于恢复初始剪枝步骤中丢失的一些性能。有趣的是,尽管宽度剪枝(width pruning)最初导致的损失高于深度剪枝(depth pruning),但重新训练使模型随着时间的推移更有效地恢复。
五、使用经典知识蒸馏(classical knowledge distillation)进行重新训练
剪枝(pruning)后,Minitron使用经典知识蒸馏(classical knowledge distillation)重新训练较小的模型。这涉及通过在模型的各个阶段(包括嵌入输出、logits和变压器架构中的特定损失)最小化损失来教导剪枝后的模型。学生模型(student model)通过比较不同层的输出从未剪枝的教师模型(teacher model)中学习。
这张图展示了教师模型(Teacher Model)和学生模型(Student Model)在知识蒸馏(knowledge distillation)过程中的对比和学习关系。通过这个过程,学生模型从教师模型中学习,以便在保持性能的同时变得更小、更高效。让我们一步一步地解释这张图:
嵌入(Embeddings):输入数据首先通过嵌入层,将原始数据转换为适合模型处理的向量表示。
多头注意力(Multi-Head Attention):嵌入向量经过多个注意力头,捕捉输入数据中的不同特征。
前馈神经网络(Feed Forward, MLP):注意力机制后的输出经过前馈神经网络进行进一步处理。
语言模型头(LM Head):最终的输出经过语言模型头,生成预测结果(logits)。
学生模型的结构与教师模型类似,但通常规模较小:
嵌入(Embeddings):输入数据同样通过嵌入层。
多头注意力(Multi-Head Attention):嵌入向量经过多个注意力头。
前馈神经网络(Feed Forward, MLP):注意力机制后的输出经过前馈神经网络。
语言模型头(LM Head):最终的输出经过语言模型头,生成预测结果(logits)。
在知识蒸馏过程中,学生模型通过多种损失函数从教师模型中学习:
嵌入输出损失(Embedding Output Loss):学生模型的嵌入输出与教师模型的嵌入输出进行比较,计算损失。
MLP输入损失(MLP Input Loss):学生模型的前馈神经网络输入与教师模型的前馈神经网络输入进行比较,计算损失。
编码器块输出损失(ENC Block Output Loss):学生模型的编码器块输出与教师模型的编码器块输出进行比较,计算损失。
语言模型头损失(LM Head Loss):学生模型的语言模型头输出与教师模型的语言模型头输出进行比较,计算损失。
logits损失(Logit Loss):学生模型的最终预测结果(logits)与教师模型的最终预测结果进行比较,计算损失。
通过这些损失函数,学生模型可以在多个层次上模仿教师模型,从而在保持性能的同时变得更小、更高效。
通过广泛的实验,Minitron总结了压缩语言模型的几个最佳实践:
· 模型大小:从训练最大的模型开始,然后逐步剪枝(pruning)和蒸馏(distillation)以创建较小的版本。
· 剪枝策略:对于高达15B参数的模型,重点关注宽度剪枝(width pruning)而非深度剪枝(depth pruning)。单次重要性估计通常足够。
· 重新训练:使用蒸馏损失(distillation loss)而非传统训练进行重新训练。当显著剪枝层时,结合logits、中间状态和嵌入的损失。对于较小的深度减少,仅使用logit蒸馏(logit-only distillation)。
五、单次重要性估计(single-shot importance estimation)
它是一种在剪枝(pruning)过程中使用的方法,用来确定模型中哪些部分可以被移除,而不会对模型的性能造成太大影响。这个方法的特点是只需要进行一次评估,而不是多次反复评估。
具体步骤如下:
前向传播(Forward Propagation):我们用一个小数据集让模型运行一次,记录下模型中每个部分(比如层、神经元、注意力头(attention heads)、嵌入通道(embedding channels)等)的活动情况。
重要性评估(Importance Estimation):根据记录下来的活动情况,计算每个部分的重要性分数。这些分数告诉我们每个部分对模型整体性能的贡献有多大。
剪枝(Pruning):根据重要性分数,移除那些分数较低、对模型性能贡献较小的部分。
相比需要多次评估和调整的方法,单次重要性估计只需要进行一次全面的评估,因此更省时间和计算资源。虽然这种方法可能不如多次评估的方法那么精确,但在大多数情况下,它已经足够有效,能够显著减少模型的大小,同时保持较高的性能。
六、结果
NVIDIA在多个基准上评估了Minitron模型,结果与基线模型的性能相匹配。
Minitron模型在多个基准测试中的表现显示出其在保持较高精度的同时显著减少了模型的大小。具体来说,Minitron 4B在宽度剪枝(Width-pruned)和深度剪枝(Depth-pruned)版本中,尽管参数量减少,但在大多数基准测试中的精度仍然接近或优于Llama-3.1 8B。例如,在winogrande和MMLU测试中,Minitron 4B的宽度剪枝版本分别达到了0.7403和0.5860的准确性,接近Llama-3.1 8B的0.7727和0.6528。此外,Llama-3.1-Minitron 4B(宽度剪枝)在hellaswag和arc_challenge测试中表现尤为突出,分别达到了0.7606和0.5555的标准化准确性,甚至超过了Llama-3.1 8B。这表明,通过剪枝和蒸馏技术,Minitron模型在显著减少参数量的同时,仍能保持较高的性能。
参考:https://pub.towardsai.net/how-nvidia-pruned-and-distilled-llama-3-1-to-create-minitron-4b-and-8b-6646d42c92c6
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-07-02
AReaL 2.0 正式发布:面向 Agent 应用的 Online RL 微服务架构升级
2026-06-19
从 BERT 标注到 Agent Skill:短文本标签体系的四次“工业革命”
2026-05-14
多轮 Agent 场景下,滴滴的 EAGLE-3 训推加速实践
2026-05-06
谁说 Mac 只能写代码?Google 官宣:M 芯片本地微调 Gemma 4 时代开启!
2026-04-20
用 Unsloth 微调 Embedding 模型,让你的 RAG 检索不再答非所问
2026-04-15
ComfyUI v0.19.0 更新:大量新节点、新模型、新修复与性能优化全面落地,工作流与训练能力再升级
2026-04-13
Agent 持续学习落地路径:先做 Traces,再做 Context,最后才微调模型 | Jinqiu Select
2026-03-23
养死四只龙虾的小白有感
2026-04-15
2026-04-13
2026-04-20
2026-05-06
2026-05-14
2026-06-19
2026-07-02
2026-01-02
2025-11-19
2025-09-25
2025-06-20
2025-06-17
2025-05-21
2025-05-17
2025-05-14
欢迎您使用【53AI 官方网站】(以下简称“本网站”或“我们”)。本《会员服务协议》(以下简称“本协议”)是您(以下简称“会员”或“用户”)与【深圳市博思协创网络科技有限公司】之间关于注册、登录及使用本网站会员服务所订立的法律协议。
在您注册或登录前,请务必审慎阅读、充分理解各条款内容,特别是免除或限制责任的条款、知识产权条款、争议解决条款等。此类条款将以加粗形式提示您注意。 当您通过微信公众号授权、手机验证码验证或其他方式成功登录本网站时,即视为您已完全理解并同意接受本协议的全部内容。
一、 定义
本网站:指由【深圳市博思协创网络科技有限公司】运营的,域名为【53ai.com】的网站及相关移动端页面。
会员服务:指本网站向注册会员提供的知识库文章查阅、内容检索及其他相关增值服务。
知识库内容:指本网站发布的包括但不限于文字、图表、数据、研究报告、行业分析等数字化内容资源。
二、 账号注册与登录
登录方式:本网站支持以下登录方式,您可根据实际情况选择:
微信公众号授权登录:您同意将您的微信OpenID信息授权给本网站,用于创建或关联会员账号。
手机验证码登录:您需提供真实有效的手机号码,并通过短信验证码完成身份验证与登录/注册。
账号安全:您的账号仅限您本人使用,禁止赠与、借用、租用、转让或售卖。因您保管不善导致的账号被盗、密码泄露等损失,由您自行承担。
实名认证:根据相关法律法规要求,我们可能要求您在特定功能下完成实名认证。如您拒绝提供,可能无法使用部分或全部服务。
未成年人保护:若您未满18周岁,请在法定监护人的陪同下阅读本协议,并在征得监护人同意后使用本服务。
三、 服务内容与规范
知识库查阅权限:会员登录后,有权按照其会员等级对应的权限范围,在线浏览、检索本网站知识库中的相关文章及内容。
服务变更:我们有权根据业务发展需要,调整、变更或终止部分服务内容,并将以网站公告、公众号消息等方式提前通知。
禁止行为:您在使用服务时不得实施以下行为:
利用技术手段批量爬取、下载、转存知识库内容;
将知识库内容用于商业目的或未经授权地向第三方传播;
干扰本网站正常运行或侵犯其他用户合法权益;
发布违法违规信息或从事违反公序良俗的活动。
四、 知识产权声明
权利归属:本网站知识库中的排版设计、软件代码等内容的知识产权均归【公司全称】或原权利人所有,受《中华人民共和国著作权法》等法律保护。
有限许可:本网站授予会员一项非独占、不可转让、不可转授权的普通许可,仅限于个人学习、研究之目的在线查阅知识库内容。
侵权追责:未经书面许可,任何单位或个人不得以任何形式复制、转载、摘编、镜像、汇编或以其他方式使用上述内容。一经发现,我们保留追究其法律责任的权利。
五、 个人信息保护
我们重视对您个人信息的保护。关于我们如何收集、使用、存储和保护您的个人信息,请单独阅读 《隐私政策》。
您通过微信公众号授权或手机号验证所提供的信息,我们将严格按照《个人信息保护法》的规定处理,仅用于身份识别、服务提供及安全验证等必要用途。
您可以随时通过网站设置或联系客服行使查阅、更正、删除个人信息及撤回授权同意的权利。
六、 免责声明
内容准确性:知识库内容仅供参考,不构成专业建议。我们不对其完整性、准确性、时效性作任何明示或暗示的保证,您应自行判断并承担使用风险。
不可抗力:因自然灾害、政策法规变化、网络故障、第三方平台接口异常(如微信接口维护、运营商短信通道故障)等不可抗力导致的服务中断或延迟,我们不承担违约责任。
第三方链接:本网站可能包含指向第三方网站的链接,该等网站的内容和服务不受我们控制,请您自行甄别风险。
七、 违约责任
如您违反本协议约定,我们有权视情节采取警告、限制功能、暂停服务、注销账号等措施,并保留要求赔偿损失的权利。
如因您的违约行为导致我们遭受行政处罚、第三方索赔或商誉损失,您应承担全部赔偿责任(包括但不限于罚款、赔偿金、律师费、公证费等)。
八、 法律适用与争议解决
本协议的订立、执行和解释均适用中华人民共和国大陆地区法律。
因本协议产生的或与本协议有关的任何争议,双方应友好协商解决;协商不成的,任何一方均可向【公司所在地】有管辖权的人民法院提起诉讼。
九、 其他
本协议构成双方就本服务达成的完整协议,取代此前任何口头或书面约定。
本协议任一条款被认定为无效或不可执行的,不影响其他条款的效力。
我们对本协议享有最终解释权,并在法律允许的范围内保留随时修改的权利。修改后的协议一经公布即生效,继续使用服务即视为同意修订内容。