返回顶部
热门问答 更多热门问答
技术文章 更多技术文章

大模型,进入剪枝蒸馏时代!

[复制链接]
链载Ai 显示全部楼层 发表于 5 小时前 |阅读模式 打印 上一主题 下一主题


文章的目标是通过pruning和distillation,将Llama 3.1 8B和Mistral NeMo 12B模型分别压缩到4B和8B参数。总的来说,获得了非常好的结果。

先压缩参数 -> 剪枝。 先计算每层、神经元、头和嵌入维度的重要性,开始剪枝过程。然后,对这些重要性分数进行排序,以计算相应的重要性排名。

判断是否重要,考虑三个不同的指标来评估层重要性:(1) LM dev loss,(2) Block Importance (BI) 和 (3) 下游任务的准确性。

  • 1,3好理解,2就是衡量输入输出cosine距离的一个策略,之前的论文也提到过。

一般开源模型不知道什么数据训练的,所以文中提出了在剪枝和蒸馏之前对教师模型进行微调的步骤,称为teacher correction,用了127B tokens。

至于蒸馏,仅在teacher和student logits 上使用前向 KL 散度损失

是否加teacher correction步骤,差异如下:

Width vs Depth Pruning, 两种变体具有相同数量的参数,但宽度剪枝可以得到较小的初始损失,并始终优于深度剪枝模型。

与随机初始化更小的网络相比,pruning起点明显更低,另外基于蒸馏的训练优于传统训练方法,同时需要更少的训练tokens(下图红线和绿线)

teacher correction不回影响到剪枝的重要性排序,结合蒸馏,可以弥补剪枝从原始权重带来的差距

开头和结尾的layer是最重要的。删除不连续的layer可以获得更好的 LM 验证损失(下图虚线)。但是这个结论在下游任务准确率上不一定稳定成立。

最后文中的总结结论,上面大体上提到了:



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

链载AI是专业的生成式人工智能教程平台。提供Stable Diffusion、Midjourney AI绘画教程,Suno AI音乐生成指南,以及Runway、Pika等AI视频制作与动画生成实战案例。从提示词编写到参数调整,手把手助您从入门到精通。
  • 官方手机版

  • 微信公众号

  • 商务合作

  • Powered by Discuz! X3.5 | Copyright © 2025-2025. | 链载Ai
  • 桂ICP备2024021734号 | 营业执照 | |广西笔趣文化传媒有限公司|| QQ