DDK:Distilling Domain Knowledge for Efficient Large Language Models

速览方法论

不太了解知识蒸馏的可以看这篇文章【KD开山之作

本文的动机是"降低学生模型在各领域和老师模型的差异"。

在一些性能差异比较大的领域,ddk方法可以降低student模型的困惑度(PPL, Perplexity),提高学生模型在该领域的性能。

该篇文章的优势在于,提高了student模型的泛用性,相较于当下的方法,student性能更加均衡。

Contributions

1)To the best of our knowledge, we are the first to study the influence of domain-specific data mixtures for distilling LLMs, and efficiently transfer the domain knowledge of the teacher network upon the domain weights.

首个研究特定领域知识混合对大模型知识蒸馏的影响 ,并基于领域权重对领域知识迁移

2)DDKproposes a factor smooth updating strategy to strategically enhance the appropriate focus of the distillation process on targeted domains, which effectively stabilizes the domain knowledge guided sampling process for smoother distillation.

领域知识权重是基于它提出的discrepancy factor (领域差异因子)。文章提出了一种平滑更新该因子的策略。

3)Extensive experiments on multiple benchmark datasets demonstrate the effectiveness and generalization ability of our proposed DDK.

在多个基准数据集上进行广泛实验验证方法的有效性。

Method

领域差异因子

简单说明一下,M 是模型,CE是交叉熵,Y是label,下标s,t表示student,teacher。

是困惑度得分,将交叉熵得到的熵值通过exp放大,再通过Softmax获得在各领域上的分布。

这个r越大则差异越大。

平滑更新策略

第一项是因子的迭代公式,第二项是因子的基准线。

第二项用作者的话说就是 "为了防止出现过小的值,这样就能保证在不同领域进行数据采样时有一个基准概率,避免某些领域因为领域差异因子过小而几乎不被采样到数据的情况。"

谁没有斗公式的时候呢,哈哈

损失函数

对各领域的求和

第一项是输出的交叉熵,第二项是隐藏状态的KL散度(相对熵)

增加第二项的目的是近似学生模型和教师模型的分布

方法挺简单,但是人家实验用了16张A100 :)

这篇论文是alibaba发表的。一开始我看到使用的教师模型是7B左右的参数是有点疑惑的,但仔细想想其实这个研究方向就是大模型的轻量化,而从7B继续轻量化到1.5B并保持不错的效果,也就意味着大模型个人化的可能。

Appendix

相关推荐
冬奇Lab1 小时前
Workflow 系列(01):基础理论——三种执行模型与 Anthropic 5 种模式
人工智能·agent·工作流引擎
冬奇Lab1 小时前
每日一个开源项目(第143篇):page-agent - 纯 JS 的网页 GUI Agent,无需截图、无需插件、无需后端
前端·人工智能·agent
程序员cxuan3 小时前
虽迟但到!GPT-5.6 终于来了!
人工智能·后端·程序员
ZhengEnCi5 小时前
Q03-UI设计进阶技巧-让界面更高级的7个核心原则
人工智能
IT_陈寒6 小时前
React的这个渲染问题连官方文档都没说清楚
前端·人工智能·后端
不加辣椒7 小时前
第12章 工具调用与 Agent 提示工程
人工智能
用户1693176172667 小时前
前端给AI消息做日期分组与时间线
人工智能
i晟7 小时前
Claude Code Harness 深度拆解:从你敲回车到模型回复,中间发生了什么
人工智能
用户252736278148 小时前
【踩坑复盘】我在本地跑 RAG 知识库时踩了 5 个大坑,吐血整理避坑指南
人工智能
大模型真好玩8 小时前
LangChain DeepAgents 速通指南(九)—— 生产级智能体框架 DeepAgents Code 源码导读
人工智能·langchain·agent