news 2026/7/7 2:19:45

on-policy distillation 2

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
on-policy distillation 2

Illustration

下面我们看到一个真实的例子,展示了教师对学生错误轨迹的评分。这个例子来自 依赖于模型做出了一个关键观察:问题的前提很重要。正确答案是B,因为冰块在平底锅中会融化。学生模型Qwen3-4B-instruct-2507,错误地将这个问题当作纯数学问题处理,没有考虑物理背景

这是一个关于平均数的数学题,但是带有一个“现实常识”的陷阱(冰块在煎锅里)

已知条件:第1分钟放入四个冰块,第2分钟放入五个冰块,第3分钟放未知数量的冰块,第四分钟放入0块冰块。关键条件:放入冰块的平均数是每分钟个,问第3分钟结束时,锅里一共有多少个完整的冰块。如果只考虑到数学:那么就是4*5=20 ,有20个完整的冰块。

看这个note:

图片中的Note部分非常重要。AI意识到在现实中,冰块放在煎锅里(frying pan)煎蛋(frying a crispy egg)肯定会融化。

  • 但是,为了做这道数学题,AI通过高亮部分自我修正/假设:“假设冰块没有融化或被移除”。如果不做这个假设,答案就是0(全化了)。题目问的是“how many whole ice cubes”,暗示我们要按数学逻辑算,忽略物理融化。

深色表示从教师模型Qwen3-235B-A22B-Instruct-2507获得更高惩罚的token,该教师模型正确解决了这个问题。我们看到她惩罚哪些开始引导学生走向错误方向的短语token,直觉上对应于引导推理的重要分叉token。超越80/20法则:高熵少数token驱动LLM推理的有效强化学习。最终答案虽然错误,但没有被惩罚--它在整个前序序列条件下是完全可预测的

这句话的核心含义是:最终答案虽然错误,但没有被惩罚。它在整个前序条件下是完全可预测的。不是关键决策点,所以不惩罚

教师模型惩罚的是 分叉token(关键决策点),最终答案不是关键决策点,因为它是可以根据前面的条件预测的,教师模型只惩罚关键决策点,不惩罚可预测的token

Pseudocode 伪代码

我们在Tinker的强化学习(RL)脚本之上实现了在线策略蒸馏,该脚本已经实现了采样、奖励计算以及策略梯度(policy gradient)风格的训练

1.初始化教师客户端(initialize teacher client)Tinker AP支持轻松地为不同的模型创建不同的客户端,而无需担心模型引擎的利用率问题。我们使用一个采样客户端(sampling client),因为我们不需要教师模型反向传播对数概率(logprobs)

2.采样轨迹(Sample trajectories)。我们完全按照强化学习(RL)中的方式从学生模型(student)中采样rollout.在采样过程中,RL模块已经计算了学生的对数概率logπθ​(x),以便将其作为重要性采样损失(importance-sampling loss)的一部分来使用

3.计算奖励(Compute reward).我们使用compute_logprobs函数向教师客户端查询采样的轨迹,该函数会返回教师模型在学生采样的词元(tokens)x 上的对数概率。随后,我们利用这个结果来计算反向 KL 散度(reverse KL)。

4.使用 RL 进行训练(Train with RL)。 我们将每个词元(per-token)的优势值(advantage)设置为负的反向 KL 散度,并调用 RL 的重要性采样损失函数来对学生模型执行训练更新。

也就是其实就是计算学生的log,计算教师的log就行了,序列是学生自己的,教师只需要计算是学生产生的token的log就行了

在线策略蒸馏的详细流程:

步骤1:学生生成序列
- 学生模型生成轨迹(序列)
- 序列是学生自己生成的
- 不是教师生成的

步骤2:计算学生的log概率
- 学生模型计算自己生成token的log概率
- log π_θ(x)
- 用于计算反向KL散度

步骤3:教师计算log概率
- 教师模型计算学生生成token的log概率
- log π_teacher(x)
- 教师不需要生成序列,只需要计算log概率

步骤4:计算反向KL散度
- reverse_kl = log π_θ(x) - log π_teacher(x)
- 作为奖励(优势)
- 用于训练学生模型

关键:
- 序列是学生自己生成的
- 教师只需要计算log概率
- 不需要教师生成序列

在下面的实验中,我们通常使用在线策略蒸馏(on-plicy distillation)应用于那些已经在特定领域知识熵进行了中间预训练(mid-training)的模型。这种训练增加了学生模型生成属于教师模型分布范围内的token的概率,但这通常不足以完全复刻教师模型的性能

不是说反转KL的意思是 教师模型生成这个的概率高,然后如果学生生成这个的概率低的话,那么就惩罚。但是我看到这里发现不是这样的,是学生生成这样的token看教师生成这个token的概率是多少,然后让学生去更接近教师乐意生成的token,是这样的吗?那这样不就会导致学不到教师的更高级的,学生一开始根本不会生成的token

我看到这里的时候就有这个疑问,问了ai回答是:

反向KL散度的局限性:

问题1:学生不生成教师的高级token
- 学生一开始不会生成教师的高级token
- 如果学生不生成这些token,就无法学习这些token
- 反向KL只在学生生成的token上计算

问题2:无法学习新token
- 反向KL是"模式寻找"的
- 学生只能在已有的支持内学习
- 无法学习新的token

问题3:初始化很重要
- 学生需要先学会生成相关token
- 否则反向KL无法学习这些token
- 需要先用SFT训练

关键:
- 反向KL确实有这个局限性
-
需要先用SFT让学生学会生成相关token
- 然后用反向KL进行模式寻找

监督微调SFT使用的是前向·KL,它能够增加对新token的支持,让学生模型学会生成原本不会的词,随后,反向KL可以在初始化模型的支持域内进行模式寻找(mode seeking).通常,正如我们将在个性化示例中看到的那样,由于学生模型缺乏任何相关的领域知识,其生成相关token的初始概率往往为0

我们使用在线策略蒸馏进行训练后处理,并将其与专家模型训练最后关键阶段的其他方法进行比较。

666还有第二关,还有SFT的事情,下个博客继续

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 2:19:13

AD PCB封装设计避坑指南:5个常见错误与3步DRC检查流程

AD PCB封装设计避坑指南:5个常见错误与3步DRC检查流程 在PCB设计领域,封装设计是连接原理图与物理实现的关键环节。一个精确的封装设计能确保元器件正确安装和可靠焊接,而一个存在缺陷的封装则可能导致整批产品报废。本文将深入剖析新手工程师…

作者头像 李华
网站建设 2026/7/7 2:17:00

【单片机毕业设计】基于 STC89C52 的室内环境监测与智能通风控制系统设计, 基于 51 单片机的温湿度甲醛检测声光报警系统设计(017801)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能一、基础采集功能二、交互模式控制功能三、自动联动报警核心功能技术路线项目演示关于我们项目案例源码获取博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业&#x1f6…

作者头像 李华
网站建设 2026/7/7 2:13:06

做了四年游戏服务端,我转型做了游戏AI应用

一个做了四年游戏服务端的程序员,在行业裁员潮里差点被优化,最后用大模型给游戏NPC注入了灵魂。一、四年游戏服务端,加班加到怀疑人生 2024年3月,我在一家中型游戏公司当服务端开发,四年工龄。技术栈是Go Redis Mong…

作者头像 李华
网站建设 2026/7/7 2:12:37

LeetCode 373.查找和最小的K对数字

给定两个以 非递减顺序排列 的整数数组 nums1 和 nums2 , 以及一个整数 k 。 定义一对值 (u,v),其中第一个元素来自 nums1,第二个元素来自 nums2 。 请找到和最小的 k 个数对 (u1,v1), (u2,v2) … (uk,vk) 。 示例 1: 输入: nums1 [1,7,11], nums2 …

作者头像 李华
网站建设 2026/7/7 2:08:34

5分钟搞定VLC播放器终极美化:VeLoCity皮肤完整指南

5分钟搞定VLC播放器终极美化:VeLoCity皮肤完整指南 【免费下载链接】VeLoCity-Skin-for-VLC Castom skin for VLC Player 项目地址: https://gitcode.com/gh_mirrors/ve/VeLoCity-Skin-for-VLC 厌倦了VLC播放器千篇一律的默认界面?想要一个既美观…

作者头像 李华