返回课堂

后训练:把任务信号变成参数变化

课堂在 ICL 示例之后,用同一份 A/B 实验材料走完 SFT。这里继续展开偏好、奖励与可验证反馈:它们是针对不同训练信号的做法,不要求每个模型按同一流水线全部采用。每节都可从 SFT 的本页说明进入,再返回原课堂状态。

预训练模型已经能产生丰富语言,但“很会续写”不等于稳定完成每一种用户要求。后训练通过更明确的任务样本和评价继续塑造输出分布及任务表现。关键不是记住一条固定算法流水线,而是识别手里有哪些信号:示范回答、比较偏好,还是能够自动检查的结果。

共同材料与监督微调

本课的材料全文是:“在相同设置下,A用时12秒,B用时8秒。未测量内存。”任务是“请只根据材料,用一句话概括结果,并保留尚不能判断的部分。”教学示范回答为:“B在本次测试中耗时更短,内存尚未比较。”这不是某个模型的实测输出,而是为比较训练机制建立的共同对象。

监督微调(SFT)把指令、输入和示范回答组织成样本:

Instruction:请只根据材料,用一句话概括结果,并保留尚不能判断的部分。
Input:在相同设置下,A用时12秒,B用时8秒。未测量内存。
Response:B在本次测试中耗时更短,内存尚未比较。

三个字段和角色分隔符用于教学,不声称是某个模型的真实 chat template。序列化以后,回应各位置读取指令、材料和此前参考回应;使用参考前缀提供下一目标就是这里的 teacher forcing。若输入为x,回答为y,常见回答监督目标为

$$ L_{\mathrm{SFT}}=-\sum_t\log\pi_\theta(y_t\mid x,y_{<t}). $$

条件x提供完成任务所需信息,回答token贡献损失。真实训练还应核对聊天模板、特殊token、回答mask和截断方式;并非所有实现都完全相同。继续预测token的形式与预训练可能相近,但训练分布和所要求的行为改变了。梯度继续改变模型参数,不能与“在使用时加入一条提示”混为一谈。本课画面的 mask 只让 assistant 回答参与损失,是当前教学设置,不代表所有 SFT 实现。SFT 可以培养任务行为,也可能学入知识,不能机械地说它只改风格而不改能力。

loss mask 与 causal mask 各管什么

N38–N39保留同一完整样本。这里采用 response-only loss:指令与材料对应目标的直接loss权重为0;回应token与必要结束标记为1。mask按被预测的目标位置对齐,而不是按看起来位于哪一块文字粗略切分。回应首目标B由最后一个prompt位置的logits预测;若把监督从“B位置的logits”才开始,就漏掉了首回应token。

causal mask 决定每个位置能看谁,loss mask 决定哪些目标计分。prompt的直接loss为0并不把它从attention中删除:它仍经过前向,回应通过attention读取它,回应loss也可沿这些依赖回传到prompt表示和共享参数。本课程只指定这个实现示例,不假称 InstructGPT 原文逐位采用相同mask。full-sequence loss是另一种选择,要按真实实现比较。

换事实,检验可迁移行为

N40保持同一请求,把材料换成“在相同设置下,A用时7秒,B用时11秒。未测量内存。”教师参考回应应是“A在本次测试中耗时更短,内存尚未比较。”继续复述旧答案“B更快”便不符合新证据,但这里没有声称真实模型犯过这个错。

评价可以交叉比较预训练参数与SFT参数、无示例与同一个正确格式示例四种条件,使用独立样例检查事实对应、未测边界和任务/格式符合。四格都需要实际评价,不能在未运行时预填SFT必胜。训练期望保留的是按新材料组织回应的行为,不能把记住12/8或某句答案当作成功。

CS224N后训练p19–20展示的FLAN-T5例子要求解释句子“The reporter and the chef will discuss their favorite dishes.”中的代词,并在记者的、厨师的或歧义三个选项间作答。课程给出的训练前输出主要复述和改写,训练后输出选择(C)。它说明任务化训练可能改变回应方式;其身份是公开课程示例,不是本课运行,也不足以证明所有语言歧义都已解决。

从比较数据到奖励模型

对同一材料,教学回答甲守住内存未知的范围,乙却说“B在速度和内存方面都优于A”。偏好甲的依据是证据一致性,而不是甲更长或更自信。将输入x、获选回答y⁺与未获选回答y⁻组成比较数据,可以训练一个奖励模型r,使获选回答倾向获得更高分。例如成对目标可写为

$$ L_{\mathrm{RM}}=-\log\sigma\big(r(x,y^+)-r(x,y^-)\big). $$

σ是把实数映射到0与1之间的sigmoid函数。这个目标要求两者有正确的相对顺序,并不要求人工为所有回答指定绝对分数。不同任务可能有多个可接受答案,因此比较信号可以很有用;同时它也会继承标注偏好和覆盖不足。奖励模型是评价的近似,不能代替事实来源或任务检验。

RLHF:哪一个模型正在改变

在常见RLHF路线中,先训练奖励模型,再用它评价生成策略采样的回答。策略πθ就是负责生成的条件概率模型;参考策略πref保留一个固定参照。在策略更新阶段,奖励模型和参考模型固定,正在更新的是生成策略。

一段回答由许多token选择构成。训练依据奖励信号调整这些选择的概率,使较好轨迹更可能再次出现,并以相对于参考策略的约束限制偏离。概念上可理解为优化“期望奖励减去偏离参照的惩罚”;真实PPO实现还涉及优势估计、截断更新和批次组织。奖励是信号来源,PPO是组织更新的一种方法,二者不要混淆。

奖励上升也可能表示模型学会讨好评分器。例如更冗长的回答若经常被评分器高估,策略可能追求长度而非准确性。保留独立任务评价是为了识别这种偏离。参考约束有助于控制变化,但不构成正确性保证。

DPO:直接利用已有偏好对

原始DPO从已有偏好对直接优化策略。定义

$$ \Delta=\log\frac{\pi_\theta(y^+\mid x)}{\pi_{\mathrm{ref}}(y^+\mid x)}-\log\frac{\pi_\theta(y^-\mid x)}{\pi_{\mathrm{ref}}(y^-\mid x)}, \qquad L_{\mathrm{DPO}}=-\log\sigma(\beta\Delta). $$

它比较当前策略对两回答的相对优势,相对于参考原有优势发生多少变化。β控制目标的尺度;这里不是简单把它解释成“越大越保守”的独立旋钮,因为实际效果也取决于数据与优化。回答概率由各token条件概率组成,取对数后可以相加。

DPO不要求另训练显式奖励模型,也不要求训练时完成在线RL采样闭环,但仍然需要偏好数据、固定参考和参数优化。目标推动的是相对优势,不保证获选回答的绝对概率每一步单独上升;它也不能修复数据本身把流畅当正确的偏差。回答长度、分布外样本和偏好覆盖仍需要检验。

可验证奖励与GRPO

对于“17×19”这样的任务,可以直接核对最终答案323。代码可以通过测试获得反馈。这使训练能重复评价大量生成,但验证器只覆盖其定义的条件:测试未覆盖的输入、答案提取失败、格式投机,都可能影响反馈。通过验证不自动等于完成全部真实目标。

GRPO的一种核心组织方式,是对同一问题采样G个答案,根据组内奖励形成相对优势。例如可用

$$ A_i=\frac{r_i-\operatorname{mean}(r)}{\operatorname{std}(r)+\epsilon} $$

说明组内标准化的直觉。随后用策略概率比组织受约束更新,通常还保留参考策略约束。这个示意不是完整实现公式:实际算法的token归一、截断和KL处理须按采用版本核对。若所有奖励相同,优势可能接近零,说明这组没有提供谁优于谁的区分;增加采样本身不保证新增信息。组内相对评价也不等同一套独立学习的价值函数。

DeepSeek-R1-Zero从已经预训练的DeepSeek-V3-Base起步,未先SFT便进行RL;“Zero”不表示随机参数。正式R1采用多阶段SFT与RL。两条路线共同提示:后训练利用已有能力与新增反馈改变表现,选择路线要依赖能获得什么信号和怎样评价,而不是只依赖算法名称。

来源与课堂定位

把这个问题带进实验

打开对应 Notebook 后,找到下列同名小节。各本的准备说明、已有输出和证据边界保留在本册中。

查看全部实验与课堂页对应

本篇 Markdown