上海交通大学、清华大学、微软研究院和香港中文大学的研究人员推出一种新型的知识蒸馏(Knowledge Distillation, KD)方法,称为直接偏好知识蒸馏(Direct Preference Knowledge Distillation, DPKD),专门为大型语言模型(Large Language Models, LLMs)设计的。知识蒸馏是一种技术,它允许我们将一个大型、复杂的模型(称为教师模型)的知识转移给一个更小、更高效的模型(称为学生模型)。论文中通过一系列实验验证了DPKD方法的有效性,展示了它在不同数据集和不同规模的LLMs上的性能。此外,论文还提供了代码和数据,以便其他研究人员可以复现和进一步研究这种方法。
- GitHub:https://github.com/microsoft/LMOps/tree/main/dpkd
例如,我们有一个大型语言模型,它能够理解和回答复杂的问题。我们希望建立一个更小的模型,具有类似的能力,但计算成本更低。通过DPKD,我们可以训练这个学生模型,使其在接收到相同的问题时,生成与大型模型相似的答案。例如,如果大型模型回答“太阳系中有多少行星?”时给出了答案“太阳系中有8颗行星”,那么我们的学生模型经过DPKD训练后,也应该能够给出相同的答案。
主要功能:
- 能力转移:将教师模型的知识有效地转移到学生模型。
- 效率提升:通过学生模型实现与大型模型相似的性能,但计算成本更低。
主要特点:
- 直接偏好学习:DPKD通过考虑模型输出的偏好概率来改进知识蒸馏过程。
- 隐式奖励函数:引入隐式奖励函数来补充传统的KL散度(Kullback-Leibler divergence)不足之处。
- 两阶段优化:首先优化包含隐式奖励和反向KL散度的目标函数,然后提高教师输出相对于学生输出的偏好概率。
工作原理:
- 隐式奖励函数:LLMs可以作为一个隐式奖励函数,帮助指导学生模型更接近教师模型的输出。
- 分布差异表示:使用分布差异来表示偏好损失和隐式奖励函数。
- 两阶段优化:在第一阶段,优化目标函数,结合隐式奖励和反向KL散度;第二阶段,提高教师模型输出相对于学生模型输出的偏好概率。
具体应用场景:
- 指令调整:在指令调整任务中,模型需要根据给定的指令、提示和输入完成回答。DPKD可以用于训练学生模型,使其能够生成高质量的结果。
- 文本生成:在需要生成文本的场景中,如摘要生成、回答问题等,DPKD可以帮助学生模型学习如何生成更符合教师模型风格的文本。
0条评论