一句话定义:计划采样(Scheduled Sampling)是一种训练序列生成模型的技巧——在训练过程中,按预定节奏把喂给模型的"真实上文"逐步替换成"模型自己生成的上文",让训练时的输入分布逐渐靠近推理时的真实情形。
问题的根源:曝光偏差
自回归模型(autoregressive model)生成一句话,是一步步来的:给定前文,预测下一个 token,再把预测结果接到前文后面继续。
但标准训练用的是教师强制(teacher forcing):每一步都拿语料里的真实前文当输入。于是出现一个错位——训练时模型见到的上文永远是正确的,推理时见到的上文却包含自己刚犯的错。这叫曝光偏差(exposure bias)。后果是误差累积:第一个词偏了一点,第二个词基于错误上文继续偏,越往后越离谱。
打个比方:老师让学生写作文,每次都在他写错一句后,先悄悄把这句改成正确的,再让他接着写下一句。学生练了一百篇,从没练习过"上一句写砸了怎么办"。真上考场,一句崩、篇篇崩。
怎么做的
思路很朴素:别总是给正确答案,偶尔让他带着自己的错误往下写。
具体做法是引入一个随训练进程变化的概率 ε:每一步以 ε 的概率用模型自己采样出的 token 作为下一步输入,以 1−ε 的概率仍用真实 token。ε 通常从接近 0 开始,随训练轮次逐渐升到接近 1——早期模型太差,先跟着标准答案走保证能收敛;后期越来越"放手",让它适应自己的输出分布。这个 ε 的变化曲线就叫"调度"(schedule),常见有线性、指数、反向 sigmoid 几种,具体选哪种以实验为准。
和相邻概念的区别
| 方法 | 训练输入 | 优化信号 | 特点 |
|---|---|---|---|
| 教师强制 | 全是真实 token | 逐 token 极大似然 | 稳定、可并行,但有曝光偏差 |
| 计划采样 | 真实与自采样混合 | 仍是逐 token 似然(但已偏离标准形式) | 改动小、成本低,训练目标变复杂 |
| 强化学习类方法 | 自采样 | 整句级别的奖励 | 直接优化序列质量,但方差大、难训 |
它和课程学习(curriculum learning)思想相通——由易到难;也和"训练时加噪"不同:加噪是随便扰动输入,计划采样扰动的来源是模型自己,目的指向训练与推理的分布对齐。
代价与坑
计划采样最大的问题是把训练目标搞复杂了:损失函数不再是对标准数据的严格极大似然,梯度带了偏,理论保证变弱。其次是破坏并行——要拿到模型自己生成的 token,就必须一步步串行前向,这在靠并行吃性能的大规模 Transformer 训练里代价很高。此外,它对调度曲线和混合比例很敏感,调不好反而拖慢收敛;也有研究认为它更多是让模型"适应噪声",而非真正消除曝光偏差。
对从业者的意义
真正的收获不是这个技巧本身,而是它点出的通用问题:训练分布和推理分布不一致。做自回归模型时如果发现"老师强制下指标很好、自由生成就崩",先分清是训练侧分布错位,还是解码策略(如 beam search)的问题。现代大模型更常用海量数据、强化学习微调或推理阶段的自我纠正来缓解同类问题,计划采样则是一个便宜、易懂、适合中小规模场景的参考方案。
