本页学习说明
预测首回应B时,合法前缀是完整prompt;预测后续“在”时,训练使用prompt加正确B作为前缀,这叫teacher forcing。本例采用response-only loss:回应目标计分,prompt目标不直接计分。因果mask控制读取范围,loss mask控制计分目标;prompt仍参与前向计算并影响回应损失的梯度。
| 控制项 |
问的问题 |
本例作用 |
| causal mask |
当前预测能读谁? |
允许合法前缀,禁止未来输入 |
| loss mask |
哪些目标进入损失? |
prompt目标0;回应B至EOS目标1 |
首回应B由prompt末位置的logits预测,因此其目标权重为1。完整prompt→B、prompt+正确B→在,是两个连续的teacher-forcing前缀—目标对。
深入解释与来源
把刚才的请求和回答,变成一条 SFT 样本
instruction、input、response是本例为说明职责而列出的字段。工程中需采用模型对应的chat template,处理角色、分隔与结束标记。本例的标记只是教学占位。训练时以正确回应前缀预测后续,这是teacher forcing。此处是生成式指令SFT,与N32早期GPT判别任务使用分类头的微调不可混成同一输出接口。
来源与材料身份
- 原始入口:§3.1、§3.5 Supervised fine-tuning;本例AB样本和字段是教学构造,不宣称论文使用此样本
输入不直接计分,为什么仍然必须计算?
本例明确采用response-only loss。loss mask对应被预测目标而不是直觉上的输入格:首回应B由最后一个prompt位置的logits预测,所以移位后该位置的标签B必须计分。若labels=[prompt₁,…,promptₘ,B,…,EOS],shifted_logits=logits[:-1],shifted_labels=labels[1:];prompt目标权重0,B至EOS目标权重1。直接损失为0不代表prompt不参与attention、不前向计算或其路径梯度为零。causal mask限制可读取位置;loss mask选择计分目标,两者职责不同。
来源与材料身份
- 原始入口:监督示范训练的一般方法;response-only mask为本课明确指定的实现算例,非声称该论文精确mask配置
阅读完整讲义