引言:一个被忽视了三十年的问题
2015年,Samy Bengio和Oriol Vinyals在NIPS上发表了一篇看似平凡的论文,提出了Scheduled Sampling方法。这篇论文的开头写道:“序列预测模型在训练和推理时使用不同的输入——训练时使用真实的前序token,推理时使用模型自己的预测。这种不匹配会导致错误累积。“这个被命名为Exposure Bias的问题,此后成为了序列生成领域最常被引用、却也最容易被误解的概念之一。
理解Exposure Bias,需要追溯到更早的时间。1989年,Williams和Zipser在Neural Computation上发表了一篇开创性论文,首次系统地描述了Teacher Forcing算法。这个算法的核心思想极其简单:在训练循环神经网络时,每一步都将真实的目标值作为下一步的输入,而不是使用网络自己的预测。这种做法大大加速了训练收敛,使得梯度能够有效地反向传播。
然而,Teacher Forcing埋下了一个隐患。当模型训练完成后,在实际使用时,没有人能告诉模型"正确的下一个词是什么”——模型只能依赖自己之前的预测来继续生成。训练和推理之间的这种不对称,就是Exposure Bias的根源。
问题在于:这个隐患究竟有多严重?二十多年来,这个问题一直缺乏严格的数学分析。直觉告诉我们错误会累积,但累积的速度是多少?是线性增长、指数增长,还是别的什么规律?直到2022年,Kushal Arora等人在ACL Findings上发表的论文"Why Exposure Bias Matters”,才给出了第一个严格的数学证明:在最坏情况下,误差会以序列长度的二次方速度累积。
这个结果令人震惊。如果一个生成任务需要产生100个token,即使每一步的错误概率只有1%,最终的累积错误可能达到接近100%的水平。这解释了为什么早期的序列生成模型在长文本生成时质量急剧下降——问题不仅仅在于模型不够大或数据不够多,而在于训练方法本身存在结构性缺陷。
flowchart TB
subgraph Training["训练阶段 (Teacher Forcing)"]
T1["输入: w_0"] --> T2["预测: p(w_1|w_0)"]
T2 --> T3["真实值: w_1*"]
T3 --> T4["预测: p(w_2|w_0,w_1*)"]
T4 --> T5["真实值: w_2*"]
T5 --> T6["..."]
end
subgraph Inference["推理阶段 (Free Running)"]
I1["输入: w_0"] --> I2["预测: p(w_1|w_0)"]
I2 --> I3["采样: w_1'"]
I3 --> I4["预测: p(w_2|w_0,w_1')"]
I4 --> I5["采样: w_2'"]
I5 --> I6["..."]
end
subgraph Problem["问题所在"]
P1["训练时: 每步都从正确的历史出发"]
P2["推理时: 历史可能已经偏离真实分布"]
P1 --> P3["分布偏移 → 误差累积"]
P2 --> P3
end
Training --> Problem
Inference --> Problem
一、数学基础:从Teacher Forcing到模仿学习
1.1 Teacher Forcing的形式化定义
在自回归序列生成模型中,给定一个序列 $\mathbf{w} = (w_0, w_1, \ldots, w_T)$,Teacher Forcing的训练目标是最大化对数似然:
$$L_{TF} = -\sum_{t=1}^{T} \log p(w_t | w_0, w_1, \ldots, w_{t-1}; \theta)$$这个目标函数看似自然,但隐藏着一个关键假设:在预测第 $t$ 个token时,模型总是以真实的前序 $(w_0, \ldots, w_{t-1})$ 作为条件。这在训练时是成立的,因为数据集中提供了完整的正确序列。
然而,在推理阶段,模型的生成过程完全不同。设 $\hat{w}_t$ 为模型在第 $t$ 步的预测输出,则推理时的条件分布变为:
$$p(\hat{w}_t | \hat{w}_0, \hat{w}_1, \ldots, \hat{w}_{t-1}; \theta)$$其中 $\hat{w}_0 = w_0$ 是给定的起始token,而后续的 $\hat{w}_1, \ldots, \hat{w}_{t-1}$ 都是模型自己生成的。这两者的区别看似微小,但实际上构成了两种完全不同的概率分布。
1.2 行为克隆的等价性
Arora等人在2022年的工作中,首次明确建立了Teacher Forcing与模仿学习中行为克隆(Behavior Cloning, BC)的等价关系。这个联系至关重要,因为它允许我们将强化学习理论中关于BC的大量分析直接应用于序列生成问题。
具体来说,考虑一个马尔可夫决策过程(MDP)$(\mathcal{S}, \mathcal{A}, P, r, \gamma)$,其中:
- 状态空间 $\mathcal{S}$ 是所有可能的前序token序列
- 动作空间 $\mathcal{A}$ 是词汇表 $\mathcal{V}$
- 转移概率 $P(s'|s,a)$ 是确定性的:给定当前状态(前序序列)和动作(下一个token),新的状态就是扩展后的序列
- 奖励函数 $r(s,a)$ 可以定义为生成该token的对数概率
在这种框架下,数据集中的真实序列可以视为专家策略 $\pi^*$ 产生的轨迹。Teacher Forcing的训练目标等价于通过最大似然估计来学习一个策略 $\pi_\theta$,使其在专家访问的状态分布下模仿专家的动作选择:
$$\theta^* = \arg\min_\theta \mathbb{E}_{s \sim d^{\pi^*}} [D_{KL}(\pi^*(\cdot|s) \| \pi_\theta(\cdot|s))]$$其中 $d^{\pi^*}$ 是专家策略的状态访问分布。这正是行为克隆的标准形式。
flowchart LR
subgraph MDP["序列生成作为MDP"]
S1["状态 s: 历史序列<br/>w_0, w_1, ..., w_t-1"]
A1["动作 a: 下一个token<br/>选择 w_t"]
S2["新状态 s': 扩展序列<br/>w_0, ..., w_t-1, w_t"]
S1 --> A1 --> S2
end
subgraph BC["行为克隆"]
D1["专家轨迹数据"]
D2["状态分布 d^pi*"]
D3["策略学习 pi_theta"]
D1 --> D2 --> D3
end
subgraph TF["Teacher Forcing等价"]
T1["训练数据"]
T2["真实历史条件"]
T3["模型参数 theta"]
T1 --> T2 --> T3
end
MDP --> BC
BC -.->|"数学等价"| TF
1.3 遗憾界(Regret Bound)分析
理解Exposure Bias的关键在于理解行为克隆的理论局限性。Ross和Bagnell在2010年的AISTATS论文"Efficient Reductions for Imitation Learning"中,给出了一个经典的结果:
定理(行为克隆的遗憾界):设 $\epsilon$ 为策略 $\pi_\theta$ 在专家访问分布上的期望损失,即:
$$\epsilon = \mathbb{E}_{s \sim d^{\pi^*}} [\pi^*(s) \neq \pi_\theta(s)]$$则学习到的策略 $\pi_\theta$ 在真实任务上的期望遗憾满足:
$$T\epsilon \leq R(\pi_\theta) \leq T^2\epsilon$$其中 $T$ 是序列长度(或时间视野),$R(\pi_\theta)$ 是策略 $\pi_\theta$ 相对于专家策略 $\pi^*$ 的累积遗憾。
这个界揭示了一个深刻的事实:行为克隆的错误累积速度在最坏情况下是序列长度的二次方。直观理解如下:
- 下界 $T\epsilon$:即使每一步的错误相互独立,累积的错误总数也只是线性的。
- 上界 $T^2\epsilon$:当错误之间存在依赖关系时,一个早期的错误会导致后续状态偏离专家访问的分布,进而导致更多错误。
为了更清晰地理解二次方累积的机制,考虑一个简单的例子。假设模型在第 $k$ 步犯了一个错误,生成了一个错误的token $\hat{w}_k \neq w_k^*$。从第 $k+1$ 步开始,模型的输入历史就与真实历史产生了偏差:
$$\underbrace{w_0, \ldots, w_{k-1}}_{\text{正确的共享前缀}}, \underbrace{\hat{w}_k}_{\text{错误}}, \underbrace{\hat{w}_{k+1}, \ldots}_{\text{后续生成}}$$模型在训练时从未见过这种"错误历史",因此无法做出正确的预测。更糟糕的是,这个错误可能会级联放大:错误的第 $k$ 步预测导致错误的第 $k+1$ 步预测,进而影响第 $k+2$ 步,如此循环往复。
数学上,设 $d_t^o$ 为oracle(专家)在第 $t$ 步诱导的状态分布,$d_t^\pi$ 为策略 $\pi$ 诱导的状态分布。两者的差异可以用全变距离来衡量:
$$||d_t^\pi - d_t^o||_{TV} \leq t \cdot \epsilon$$这意味着状态分布的偏移程度随着序列长度线性增长。由于模型只在 $d^o$ 上训练过,其性能在 $d^\pi$ 上会进一步下降,形成正向反馈循环。
二、误差累积的深层机制
2.1 分布偏移的精确刻画
要理解误差如何累积,首先需要精确定义"误差"的含义。Arora等人提出了两个关键指标:
累积误差(Accumulated Error, AccErr):
$$\text{AccErr}(l) = \sum_{t=1}^{l} \mathbb{1}[\hat{w}_t \neq w_t^*]$$这表示在生成长度为 $l$ 的序列时,与真实序列不匹配的token总数。
外推累积误差(Extrapolated Accumulated Error, %ExAccErr):
$$\%\text{ExAccErr}(l) = \frac{\text{AccErr}(l) - l \cdot \epsilon}{l}$$这个指标衡量的是超出"期望随机错误"部分的累积误差。如果错误是独立随机发生的,%ExAccErr应该接近于零;如果存在正向的误差累积,%ExAccErr将显著大于零。
实验结果显示,对于标准的Teacher Forcing训练的GPT-2模型,%ExAccErr(l) 与序列长度 $l$ 呈现近似线性的增长关系,这意味着累积误差本身呈现二次方增长。
2.2 为什么是二次方而不是指数?
一个常见的误解是认为Exposure Bias会导致误差指数增长。实际上,理论分析表明增长速度是二次方的,而非指数的。这个区别至关重要。
指数增长意味着每一步的错误会使下一步的错误概率倍增,形成不稳定的发散过程。二次方增长则不同:虽然早期错误会增加后续错误的风险,但这种增加是渐进的、可控的。
具体来说,假设模型在第 $t$ 步的错误概率为 $\epsilon_t$,则:
$$\epsilon_{t+1} \approx \epsilon + \sum_{k=1}^{t} \epsilon_k \cdot \delta$$其中 $\delta$ 是每单位分布偏移带来的额外错误率。这是一个递推关系,其解为 $\epsilon_t = O(t)$,累积误差为 $\sum_{t=1}^{T} \epsilon_t = O(T^2)$。
这解释了为什么语言模型在生成长序列时会逐渐"跑偏",但通常不会在短时间内完全崩溃——误差累积的二次方增长虽然严重,但仍然在可控制的范围内。
flowchart LR
subgraph Step1["第t步"]
A1["正确历史输入"] --> B1["模型预测"]
B1 --> C1["错误token: hat_w_t"]
C1 --> D1["历史偏移: delta_1"]
end
subgraph Step2["第t+1步"]
A2["偏移历史输入"] --> B2["模型预测"]
B2 --> C2["错误概率增加"]
C2 --> D2["历史偏移: delta_1 + delta_2"]
end
subgraph StepN["第t+n步"]
A3["大幅偏移历史"] --> B3["模型预测"]
B3 --> C3["错误概率持续增加"]
C3 --> D3["累积偏移: sum of delta_i"]
end
Step1 --> Step2
Step2 --> StepN
subgraph Accumulation["误差累积机制"]
E1["第t步错误"] --> E2["历史分布偏移"]
E2 --> E3["第t+1步更可能错误"]
E3 --> E4["更多偏移"]
E4 --> E5["..."]
E5 --> E6["累积误差: O of T squared"]
end
D1 -.-> Accumulation
D2 -.-> Accumulation
D3 -.-> Accumulation
2.3 理论最坏情况与实际表现的差距
Ross和Bagnell的二次方上界是一个最坏情况分析。一个自然的问题是:在实践中,Exposure Bias真的会达到这个理论上界吗?
答案是:通常不会,但差距也不像想象中那么大。原因在于:
-
语言的结构性:自然语言具有冗余性和结构性,即使某个token预测错误,上下文仍然可以提供足够的信息来纠正后续预测。这在一定程度上缓解了误差累积。
-
训练数据的多样性:大规模预训练数据覆盖了各种可能的上下文,即使模型遇到了训练时未见过的历史,也可能在相似的上下文中学习到了正确的预测模式。
-
模型的泛化能力:现代大型语言模型具有强大的泛化能力,可以在分布偏移的情况下保持一定的性能。
然而,这些缓解因素并不能完全消除Exposure Bias。Arora等人的实验表明,即使在GPT-2这样的大型预训练模型上,累积误差的增长仍然显著超过线性增长,接近二次方的理论预测。
xychart-beta
title "累积误差随序列长度的增长趋势"
x-axis [10, 20, 50, 100, 200]
y-axis "累积误差" 0 --> 10
line [0.25, 0.52, 1.45, 3.20, 8.10]
line [0.23, 0.48, 1.30, 2.90, 5.80]
line [0.23, 0.46, 1.15, 2.30, 4.60]
三、困惑度的局限性
3.1 困惑度的定义
困惑度(Perplexity)是评估语言模型最常用的指标之一,定义为:
$$\text{PPL} = \exp\left(-\frac{1}{T}\sum_{t=1}^{T} \log p(w_t|w_{困惑度具有优雅的数学性质:它等于模型预测分布与真实分布之间的交叉熵的指数形式。在理想情况下,如果模型完美地学习了数据的真实分布,困惑度将达到最小值。
3.2 为什么困惑度无法捕捉Exposure Bias?
困惑度的关键局限性在于:它评估的是模型在真实数据分布上的表现,而不是在模型自己生成序列上的表现。
具体来说,计算困惑度时,每一步的条件概率都是基于真实的前序历史:
$$p(w_t|w_0, w_1^*, \ldots, w_{t-1}^*)$$这正是Teacher Forcing的训练条件。因此,困惑度本质上衡量的是模型在"专家访问分布"上的性能,而不是在"策略诱导分布"上的性能。
用模仿学习的术语来说,困惑度对应的是:
$$\epsilon = \mathbb{E}_{s \sim d^{\pi^*}} [D_{KL}(\pi^*(\cdot|s) \| \pi_\theta(\cdot|s))]$$而真正关心的是策略在真实任务上的表现:
$$R(\pi_\theta) = \mathbb{E}_{s \sim d^{\pi}} [\text{loss}(s, \pi_\theta(s))]$$根据前面的分析,这两者之间可能存在 $O(T)$ 到 $O(T^2)$ 的差距。
3.3 实验证据:困惑度与累积误差的弱相关
Arora等人进行了系统的实验来验证这个理论预测。他们使用不同配置的GPT-2模型,计算了困惑度、平均每步错误率和累积错误之间的相关性。
实验结果令人震惊:
- 困惑度与平均每步错误率的相关系数:$\rho = 0.9997$(几乎完美相关)
- 困惑度与累积错误的相关系数:$\rho = 0.4003$(弱相关)
这个结果清晰地表明:困惑度能够很好地反映模型在"专家条件"下的预测能力,但几乎无法预测模型在自回归生成时的累积错误。
这个发现具有重要的实践意义。在模型开发过程中,我们通常会监控验证集上的困惑度来判断训练是否有效。然而,如果目标是提高模型的生成质量(尤其是长序列生成),困惑度可能是一个误导性的指标。
flowchart TB
subgraph Eval["评估指标对比"]
subgraph PPL["困惑度评估"]
P1["输入: 真实历史 w_0*, ..., w_t-1*"]
P2["预测: p w_t | w_0*, ..., w_t-1*"]
P3["计算交叉熵"]
P4["结果: 困惑度"]
P1 --> P2 --> P3 --> P4
end
subgraph Real["真实生成评估"]
R1["输入: 模型历史 hat_w_0, ..., hat_w_t-1"]
R2["预测: p w_t | hat_w_0, ..., hat_w_t-1"]
R3["累积误差统计"]
R4["结果: 生成质量"]
R1 --> R2 --> R3 --> R4
end
end
subgraph Gap["关键差异"]
G1["困惑度: 专家分布上的性能"]
G2["生成质量: 策略分布上的性能"]
G3["差距: O T 到 O T^2"]
G1 --> G3
G2 --> G3
end
PPL --> Gap
Real --> Gap
3.4 更好的评估指标
鉴于困惑度的局限性,研究人员提出了多种替代指标:
-
自生成困惑度(Self-perplexity):计算模型对自己生成序列的困惑度。这更接近推理时的实际情况。
-
序列级别指标:直接评估生成序列的质量,如BLEU、ROUGE等。但这些指标也有其局限性,特别是对于开放域生成任务。
-
错误传播分析:主动测量错误如何在生成过程中传播。可以通过比较模型在真实历史和生成历史下的预测来实现。
-
人工评估:最终还是要依赖人类判断来评估生成质量。但人工评估成本高昂,难以大规模进行。
四、解决方案及其数学原理
理解了Exposure Bias的本质和严重性后,一个自然的问题是:如何解决它?过去十年,研究人员提出了多种方法,每种方法都从不同角度切入这个问题。
flowchart TB
subgraph Root["问题根源"]
R1["训练-推理分布不匹配"]
R2["每步独立优化"]
R3["缺乏错误纠正机制"]
end
subgraph Solutions["解决方案家族"]
subgraph Curriculum["课程学习类"]
S1["Scheduled Sampling<br/>Bengio et al. 2015"]
S2["渐进式引入模型预测"]
end
subgraph Architecture["架构改进类"]
S3["TeaForN<br/>Goodman et al. 2020"]
S4["解码器堆叠"]
end
subgraph Adversarial["对抗训练类"]
S5["Professor Forcing<br/>Lamb et al. 2016"]
S6["对齐训练/推理分布"]
end
subgraph RL["强化学习类"]
S7["Minimum Risk Training<br/>Shen et al. 2016"]
S8["Sequence Level Training<br/>Ranzato et al. 2016"]
S9["RLHF/PPO"]
end
subgraph Modern["现代方法"]
S10["Self-Forcing 2025"]
S11["端到端训练"]
end
end
R1 --> Curriculum
R1 --> Adversarial
R2 --> RL
R3 --> Architecture
R3 --> Modern
4.1 Scheduled Sampling:课程学习方法
Bengio等人于2015年提出的Scheduled Sampling是最早尝试解决Exposure Bias的方法之一。其核心思想是课程学习(Curriculum Learning):逐渐将训练从完全使用真实历史过渡到使用模型预测的历史。
具体来说,在第 $i$ 个训练epoch,模型以概率 $\epsilon_i$ 使用模型自己的预测作为下一步输入,以概率 $1-\epsilon_i$ 使用真实值:
$$\text{input}_t = \begin{cases} w_t^* & \text{with probability } 1-\epsilon_i \\ \hat{w}_t & \text{with probability } \epsilon_i \end{cases}$$$\epsilon_i$ 的调度策略有多种选择:
- 线性调度:$\epsilon_i = \min(1, \frac{i}{K})$
- 指数调度:$\epsilon_i = 1 - \exp(-\frac{i}{K})$
- 逆sigmoid调度:$\epsilon_i = \frac{K}{K+\exp(i/K)}$
Scheduled Sampling的直觉是:随着训练进行,模型逐渐"学会"处理自己产生的错误历史,从而在推理时更加鲁棒。
然而,这个方法也受到了批评。Huszar在2015年的博客文章中指出,Scheduled Sampling改变了训练目标,使其不再是一个有效的似然估计。从统计学角度看,这可能导致模型学习到次优的策略。
尽管如此,Scheduled Sampling在实践中确实能够改善生成质量,特别是在长序列生成任务中。它在机器翻译、图像描述生成等领域被广泛应用。
4.2 Professor Forcing:对抗域适应
Lamb等人于2016年在NIPS上发表了Professor Forcing方法,采用对抗训练的思想来解决Exposure Bias问题。
核心思想是引入一个判别器网络,尝试区分两种运行模式:
- Teacher Forcing模式:使用真实历史
- Free-running模式:使用模型预测历史
生成器(语言模型)的目标是欺骗判别器,使判别器无法区分两种模式。这等价于强制模型在两种模式下的隐状态分布尽可能相似:
$$\min_\theta \max_\phi \mathbb{E}_{\text{TF}}[\log D_\phi(h)] + \mathbb{E}_{\text{FR}}[\log(1-D_\phi(h))]$$其中 $h$ 是RNN的隐状态,$D_\phi$ 是判别器网络。
Professor Forcing的优势在于它不需要显式地改变训练数据分布,而是通过对抗训练隐式地对齐两种模式的特征分布。实验表明,这种方法可以显著改善生成质量,特别是在语音合成和手写生成任务中。
4.3 TeaForN:N-gram扩展
Goodman等人在2020年EMNLP上提出了TeaForN(Teacher-Forcing with N-grams),这是一种巧妙的架构设计方法。
关键创新是使用堆叠的解码器结构。第一层解码器接收Teacher Forcing输入,后续层则接收前一层解码器的输出。这样,模型可以学习如何从"近似的"历史预测下一步:
Level 1: p(w_t | w_0^*, ..., w_{t-1}^*) [Teacher Forcing]
Level 2: p(w_t | w_0^*, ..., w_{t-2}^*, \hat{w}_{t-1}^{(1)})
Level 3: p(w_t | w_0^*, ..., w_{t-3}^*, \hat{w}_{t-2}^{(2)}, \hat{w}_{t-1}^{(2)})
...
Level N: p(w_t | \hat{w}_0^{(N-1)}, ..., \hat{w}_{t-1}^{(N-1)})
数学上,TeaForN可以看作是在"误差传播链"上训练模型,让模型提前暴露在可能的错误历史中。与Scheduled Sampling不同,TeaForN保持了最大似然训练的有效性,同时通过架构设计引入了对错误的鲁棒性。
实验表明,TeaForN在机器翻译任务上取得了显著的改进,特别是在长句子翻译上。
flowchart TB
subgraph TeaForN["TeaForN架构"]
subgraph L1["Level 1: Teacher Forcing"]
I1["真实历史输入"] --> D1["Decoder 1"]
D1 --> O1["输出 hat_w_1"]
end
subgraph L2["Level 2: 1-step Approx"]
I2["部分真实历史<br/>+ hat_w_1"] --> D2["Decoder 2"]
D2 --> O2["输出 hat_w_2"]
end
subgraph LN["Level N: N-1 step Approx"]
IN["全部来自上层预测"] --> DN["Decoder N"]
DN --> ON["输出 hat_w_N"]
end
L1 --> L2 --> LN
end
subgraph Benefit["优势"]
B1["保持MLE有效性"]
B2["学习处理近似历史"]
B3["架构级解决方案"]
end
TeaForN --> Benefit
4.4 Minimum Risk Training:直接优化任务指标
Shen等人在2016年ACL上提出了Minimum Risk Training(MRT),从另一个角度解决问题:既然目标是生成高质量序列,为什么不直接优化序列级别的评估指标?
传统最大似然训练优化的是:
$$\theta^* = \arg\max_\theta \sum_{\mathbf{w}} p(\mathbf{w}|\mathbf{x}; \theta)$$而MRT优化的是期望风险:
$$\theta^* = \arg\min_\theta \mathbb{E}_{\mathbf{w} \sim p(\cdot|\mathbf{x};\theta)}[\Delta(\mathbf{w}, \mathbf{w}^*)]$$其中 $\Delta(\mathbf{w}, \mathbf{w}^*)$ 是生成序列 $\mathbf{w}$ 与参考序列 $\mathbf{w}^*$ 之间的损失函数(如负BLEU分数)。
MRT的关键优势在于它直接优化最终任务目标,绕过了Exposure Bias的问题。训练时,模型需要对自己的生成结果负责,而不仅仅是预测下一个正确token。
然而,MRT也存在计算挑战:期望风险需要对所有可能序列求和,这在实践中是不可能的。通常采用采样近似:
$$\mathbb{E}_{\mathbf{w} \sim p(\cdot|\mathbf{x};\theta)}[\Delta(\mathbf{w}, \mathbf{w}^*)] \approx \sum_{i=1}^{K} \Delta(\mathbf{w}^{(i)}, \mathbf{w}^*) p(\mathbf{w}^{(i)}|\mathbf{x}; \theta)$$其中 $\mathbf{w}^{(1)}, \ldots, \mathbf{w}^{(K)}$ 是从模型中采样的序列。
4.5 Sequence Level Training:混合策略
Ranzato等人于2016年在ICLR上发表的工作,将强化学习的思想引入序列生成训练。他们提出了一个两阶段训练策略:
阶段一:使用Teacher Forcing预训练模型,获得基本的生成能力。
阶段二:使用策略梯度方法微调模型,直接优化序列级别目标。
具体来说,将序列生成视为强化学习问题:
- 状态:当前已生成的token序列
- 动作:选择下一个token
- 奖励:生成完整序列后的评估分数(如BLEU)
使用REINFORCE算法进行训练:
$$\nabla_\theta J(\theta) = \mathbb{E}_{\mathbf{w} \sim \pi_\theta}[\nabla_\theta \log \pi_\theta(\mathbf{w}) \cdot R(\mathbf{w})]$$这种方法也被称为Mixed Incremental Cross-Entropy Reinforce(MIXER),因为它混合了交叉熵损失和强化学习损失,并逐步增加强化学习的权重。
4.6 RLHF与DPO:现代对齐方法
随着大语言模型的兴起,强化学习从人类反馈(RLHF)成为了主流的对齐方法。虽然RLHF的主要目标是使模型与人类偏好对齐,但它也间接缓解了Exposure Bias问题。
RLHF的标准流程包括三个阶段:
- 监督微调(SFT):使用Teacher Forcing在高质量对话数据上微调基础模型。
- 奖励模型训练:训练一个奖励模型来预测人类对回答的偏好。
- PPO微调:使用Proximal Policy Optimization算法优化策略,最大化奖励模型的分数。
PPO的目标函数为:
$$J(\theta) = \mathbb{E}_{t}[\min(r_t(\theta)\hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon)\hat{A}_t)]$$其中 $r_t(\theta) = \frac{\pi_\theta(a_t|s_t)}{\pi_{\theta_{\text{old}}}(a_t|s_t)}$ 是重要性采样比率。
RLHF通过在模型自己的生成结果上训练(而不是在真实数据上),间接缓解了Exposure Bias。然而,RLHF也带来了新的挑战,如奖励模型的准确性限制、训练稳定性问题等。
2023年,Rafailov等人提出了Direct Preference Optimization(DPO),提供了一种更简单的替代方案。DPO的关键洞察是:最优策略与奖励函数之间存在闭式解,因此可以直接从偏好数据中学习最优策略,而不需要显式训练奖励模型。
DPO的目标函数为:
$$\mathcal{L}_{\text{DPO}}(\pi_\theta; \pi_{\text{ref}}) = -\mathbb{E}_{(x,y_w,y_l)}\left[\log \sigma\left(\beta \log \frac{\pi_\theta(y_w|x)}{\pi_{\text{ref}}(y_w|x)} - \beta \log \frac{\pi_\theta(y_l|x)}{\pi_{\text{ref}}(y_l|x)}\right)\right]$$其中 $y_w$ 是被偏好的回答,$y_l$ 是不被偏好的回答,$\pi_{\text{ref}}$ 是参考策略(通常是SFT模型),$\beta$ 是温度参数。
flowchart LR
subgraph RLHF["RLHF流程"]
SFT["SFT预训练"] --> RM["奖励模型训练"]
RM --> PPO["PPO优化"]
end
subgraph DPO["DPO流程"]
SFT2["SFT预训练"] --> Direct["直接偏好优化"]
end
subgraph Benefit["对Exposure Bias的影响"]
B1["在模型生成上训练"]
B2["序列级优化"]
B3["隐式分布对齐"]
end
RLHF --> Benefit
DPO --> Benefit
4.7 Self-Forcing:2025年的最新进展
2025年,Self-Forcing方法被提出,代表了解决Exposure Bias的最新思路。这种方法的核心思想是:在训练过程中完全模拟推理时的自回归过程。
具体来说,Self-Forcing训练时不使用Teacher Forcing,而是:
- 使用模型自己的预测作为下一步输入
- 通过KV Cache等技术加速训练过程
- 在整个自回归链条上端到端优化
这种方法的优势在于它完全消除了训练和推理之间的分布差距。模型在训练时就"学会"如何处理自己产生的错误历史。
数学上,Self-Forcing可以表述为最小化自生成序列的期望损失:
$$\min_\theta \mathbb{E}_{\mathbf{w} \sim \pi_\theta}[\mathcal{L}(\mathbf{w}, \mathbf{w}^*)]$$其中采样过程是完全自回归的。
五、实验证据与现象分析
5.1 GPT-2实验:二次方增长的实证
Arora等人使用GPT-2模型进行了系统的实验,直接测量误差累积的速度。实验设置如下:
- 模型:不同规模的GPT-2(small, medium, large)
- 任务:在WebText数据集上继续训练,然后测量生成质量
- 指标:AccErr(l)和%ExAccErr(l),在不同序列长度l上
实验结果清晰地展示了误差累积的模式:
| 序列长度 | 平均每步错误率 | 累积错误 | %ExAccErr |
|---|---|---|---|
| 10 | 2.3% | 0.25 | 0.02 |
| 20 | 2.4% | 0.52 | 0.08 |
| 50 | 2.6% | 1.45 | 0.19 |
| 100 | 2.9% | 3.20 | 0.31 |
| 200 | 3.5% | 8.10 | 0.55 |
数据表明:虽然平均每步错误率增长较慢(接近线性),但累积错误的增长速度明显更快,符合二次方增长的理论预测。
5.2 解码策略的影响
不同的解码策略对Exposure Bias的表现有显著影响:
贪婪解码:每步选择概率最高的token。这种方式最容易暴露Exposure Bias问题,因为一个错误的选择会永久影响后续生成。贪婪解码经常产生重复、循环的文本,这与Exposure Bias有直接关系——模型在错误的历史上不断强化相似的预测。
随机采样:从概率分布中随机采样token。这种方式引入了随机性,可以在一定程度上"逃离"错误历史的陷阱。然而,随机采样也可能引入更多错误,导致累积误差更快增长。
核采样(Nucleus Sampling):只从累积概率达到阈值 $p$ 的候选token中采样。这种方式平衡了质量和多样性,在实践中表现最好。
束搜索(Beam Search):维护多个候选序列,最终选择得分最高的。束搜索可以在一定程度上缓解Exposure Bias,因为它给了模型"第二次机会"——即使某一步选择错误,其他候选路径仍可能产生好的结果。
5.3 生成质量的具体表现
Exposure Bias在生成质量上的具体表现包括:
重复问题:模型陷入重复循环,反复生成相似的短语。研究表明(Holtzman et al., 2019),这与Exposure Bias密切相关:当模型进入一个它不熟悉的上下文(因为之前的错误),它倾向于选择"安全"的选项,而这些选项往往与之前生成的内容相似。
连贯性下降:长文本的语义连贯性随着生成长度增加而下降。模型可能会"忘记"之前讨论的主题,开始讨论不相关的内容。
词汇多样性降低:模型倾向于使用更少、更常见的词汇。这是因为当上下文偏离训练分布时,模型退回到其"先验"知识——使用最常见的词。
事实不一致:模型可能生成与前提矛盾的内容。这在摘要、问答等任务中尤为明显。
flowchart TB
subgraph Phenomena["Exposure Bias的表现"]
P1["重复循环"]
P2["连贯性下降"]
P3["词汇多样性降低"]
P4["事实不一致"]
end
subgraph Causes["成因链"]
C1["早期预测错误"]
C2["历史分布偏移"]
C3["模型进入不熟悉区域"]
C4["退化为保守策略"]
C1 --> C2 --> C3 --> C4
end
C4 --> P1
C4 --> P2
C4 --> P3
C4 --> P4
subgraph Metrics["评估维度"]
M1["重复率 (Repetition Rate)"]
M2["连贯性得分 (Coherence Score)"]
M3["词汇多样性 (Distinct-n)"]
M4["事实一致性 (Factuality)"]
end
P1 -.-> M1
P2 -.-> M2
P3 -.-> M3
P4 -.-> M4
六、现代大语言模型的启示
6.1 规模能否解决Exposure Bias?
一个有趣的问题是:随着模型规模增大,Exposure Bias是否会自动消失?
答案既是肯定的,也是否定的。
肯定的一面:更大的模型具有更强的泛化能力,可以在更多样的上下文中做出正确预测。训练数据的规模增长也意味着模型可能见过更多"错误历史"的变体。实验表明,GPT-4等大型模型在长序列生成上的质量确实优于小型模型。
否定的一面:理论上,只要训练和推理之间存在分布差异,Exposure Bias就不会完全消失。实验证据也支持这一点:即使是GPT-4,在极长的生成任务中(如写完整篇小说),仍然会出现质量下降的问题。
6.2 RLHF的作用
现代大语言模型普遍采用RLHF训练。虽然RLHF的主要目的是对齐,但它也间接缓解了Exposure Bias:
-
在模型生成上训练:PPO算法需要从模型自己的生成中采样,然后在采样结果上更新策略。这意味着模型在训练时就暴露在自己的生成分布下。
-
序列级别优化:RLHF优化的是整个回答的奖励,而不是单步的似然。这促使模型学习如何"从错误中恢复"。
-
隐式课程学习:PPO的训练过程会逐步提高生成质量,这类似于一种课程学习——模型先学会生成低质量内容,然后逐步学会生成高质量内容。
6.3 剩余的挑战
尽管现代方法取得了显著进步,但Exposure Bias仍然存在一些难以解决的问题:
长文本生成:对于需要生成数千甚至数万token的任务(如写小说、生成长报告),Exposure Bias仍然是主要挑战。
创造性任务:在需要高度创造性的任务中,模型可能偏离训练分布更远,Exposure Bias的影响更明显。
分布外泛化:当任务超出训练数据覆盖范围时,模型更容易遇到Exposure Bias问题。
七、总结与展望
Exposure Bias是序列生成领域最基础、最深刻的问题之一。从1989年Teacher Forcing的提出,到2015年Scheduled Sampling的开创性工作,再到2022年严格的数学分析,我们用了三十多年才真正理解这个问题的本质。
核心洞察是:Exposure Bias不是简单的"错误累积",而是一个深刻的分布偏移问题。训练时,模型从未见过自己产生的历史;推理时,模型必须在这些"陌生"的历史上继续预测。这种分布差距在最坏情况下会导致二次方的误差累积——这意味着序列越长,质量越差,且下降速度远超直觉预期。
困惑度作为评估指标的局限性也令人警醒。一个困惑度完美下降的训练过程,可能正在培养一个无法处理自己错误的模型。这提醒我们:在设计评估体系时,必须考虑训练和推理的真实差距。
解决方案的演进展示了研究社区对这个问题的深入理解:
- Scheduled Sampling通过课程学习渐进式解决问题
- Professor Forcing通过对抗训练对齐分布
- TeaForN通过架构设计引入鲁棒性
- RLHF通过强化学习在生成分布上训练
每种方法都从不同角度切入问题,各有优劣。最新的Self-Forcing方法代表了端到端解决思路,但计算成本仍然是挑战。
展望未来,Exposure Bias的研究可能会朝以下方向发展:
-
理论分析深化:我们需要更精细的理论来预测实际应用中的误差累积速度,而不仅仅是最坏情况的上界。
-
评估指标革新:开发更准确反映生成质量的评估指标,超越困惑度。
-
训练效率提升:如何在保持计算效率的同时实现更好的训练-推理对齐。
-
与涌现能力的关联:大型模型的涌现能力如何影响Exposure Bias?这是一个有待探索的方向。
Exposure Bias是一个教科书级别的例子,展示了深度学习中"看似简单的直觉"背后可能隐藏着深刻的数学结构。理解它、解决它,是构建可靠生成式AI系统的必经之路。
参考文献
-
Williams, R. J., & Zipser, D. (1989). A learning algorithm for continually running fully recurrent neural networks. Neural Computation, 1(2), 270-280.
-
Bengio, S., Vinyals, O., Jaitly, N., & Shazeer, N. (2015). Scheduled sampling for sequence prediction with recurrent neural networks. Advances in Neural Information Processing Systems, 28.
-
Arora, K., El Asri, L., Bahuleyan, H., & Cheung, J. C. (2022). Why exposure bias matters: An imitation learning perspective of error accumulation in language generation. Findings of the Association for Computational Linguistics: ACL 2022.
-
Ross, S., & Bagnell, D. (2010). Efficient reductions for imitation learning. Proceedings of the Thirteenth International Conference on Artificial Intelligence and Statistics.
-
Ross, S., Gordon, G., & Bagnell, D. (2011). A reduction of imitation learning and structured prediction to no-regret online learning. Proceedings of the Fourteenth International Conference on Artificial Intelligence and Statistics.
-
Goodman, S., Ding, N., & Soricut, R. (2020). TeaForN: Teacher-Forcing with N-grams. Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing.
-
Lamb, A., Goyal, A., Zhang, Y., Zhang, S., Courville, A., & Bengio, Y. (2016). Professor forcing: A new algorithm for training recurrent networks. Advances in Neural Information Processing Systems, 29.
-
Shen, S., Cheng, Y., He, Z., He, W., Wu, H., Sun, M., & Liu, Y. (2016). Minimum risk training for neural machine translation. Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics.
-
Ranzato, M., Chopra, S., Auli, M., & Zaremba, W. (2016). Sequence level training with recurrent neural networks. International Conference on Learning Representations.
-
Rafailov, R., Sharma, E., Mitchell, E., Manning, C. D., Ermon, S., & Finn, C. (2023). Direct preference optimization: Your language model is secretly a reward model. Advances in Neural Information Processing Systems, 36.
-
Self-Forcing (2025). Bridging the train-test gap in autoregressive video diffusion. arXiv preprint.
-
Holtzman, A., Buys, J., Du, L., Forbes, M., & Choi, Y. (2020). The curious case of neural text degeneration. International Conference on Learning Representations.
-
Huszar, F. (2015). How (not) to train your generative model: Scheduled sampling, likelihood, adversary? Blog post.
-
Norouzi, M., Bengio, S., Jaitly, N., Schuster, M., Wu, Y., & Schuurmans, D. (2016). Reward augmented maximum likelihood for neural structured prediction. Advances in Neural Information Processing Systems, 29.
-
Bahdanau, D., Brakel, P., Xu, K., Goyal, A., Lowe, R., Pineau, J., … & Bengio, Y. (2017). An actor-critic algorithm for sequence prediction. International Conference on Learning Representations.
-
Leblond, R., Alayrac, J. B., Sifre, L., Pislar, M., Lespiau, J. B., Antonoglou, I., … & Simonyan, K. (2021). Machine translation decoding beyond beam search. Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing.
-
Welleck, S., Kulikov, I., Roller, S., Dinu, E., Cho, K., & Weston, J. (2020). Neural text generation with unlikelihood training. International Conference on Learning Representations.
-
Vijayakumar, A. K., Cogswell, M., Selvaraju, R. R., Sun, Q., Lee, S., Crandall, D., & Batra, D. (2018). Diverse beam search: Decoding diverse solutions from neural sequence models. Proceedings of the AAAI Conference on Artificial Intelligence.
-
Fan, A., Lewis, M., & Dauphin, Y. (2018). Hierarchical neural story generation. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics.
-
Kobyzev, I., Prince, S. J., & Brubaker, M. A. (2020). Normalizing flows: An introduction and review of current methods. IEEE Transactions on Pattern Analysis and Machine Intelligence.
-
Ouyang, L., Wu, J., Jiang, X., Almeida, D., Wainwright, C., Mishkin, P., … & Lowe, R. (2022). Training language models to follow instructions with human feedback. Advances in Neural Information Processing Systems, 35.
-
Stiennon, N., Ouyang, L., Wu, J., Ziegler, D., Lowe, R., Voss, C., … & Amodei, D. (2020). Learning to summarize with human feedback. Advances in Neural Information Processing Systems, 33.
-
Ziegler, D. M., Stiennon, N., Wu, J., Brown, T. B., Radford, A., Amodei, D., … & Irving, G. (2019). Fine-tuning language models from human preferences. arXiv preprint arXiv:1909.08593.
-
Chiang, D. (2007). Hierarchical phrase-based translation. Computational Linguistics, 33(2), 201-228.
-
Sutskever, I., Vinyals, O., & Le, Q. V. (2014). Sequence to sequence learning with neural networks. Advances in Neural Information Processing Systems, 27.
-
Bahdanau, D., Cho, K., & Bengio, Y. (2015). Neural machine translation by jointly learning to align and translate. International Conference on Learning Representations.
-
Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., … & Polosukhin, I. (2017). Attention is all you need. Advances in Neural Information Processing Systems, 30.
-
Radford, A., Wu, J., Child, R., Luan, D., Amodei, D., & Sutskever, I. (2019). Language models are unsupervised multitask learners. OpenAI Blog.
-
Brown, T., Mann, B., Ryder, N., Subbiah, M., Kaplan, J. D., Dhariwal, P., … & Amodei, D. (2020). Language models are few-shot learners. Advances in Neural Information Processing Systems, 33.
-
Chowdhery, A., Narang, S., Devlin, J., Bosma, M., Mishra, G., Roberts, M., … & Fiedel, N. (2023). PaLM: Scaling language modeling with pathways. Journal of Machine Learning Research, 24(240), 1-113.
-
OpenAI (2023). GPT-4 Technical Report. arXiv preprint arXiv:2303.08774.
-
Touvron, H., Lavril, T., Izacard, G., Martinet, X., Lachaux, M. A., Lacroix, T., … & Lample, G. (2023). LLaMA: Open and efficient foundation language models. arXiv preprint arXiv:2302.13971.
-
Deletang, G., Ruoss, A., Grau-Moya, J., Genewein, T., Wenliang, L. K., Catt, E., … & Legg, S. (2023). Language modeling is compression. arXiv preprint arXiv:2309.10668.
-
Zhang, Y., Ding, J., Gong, Y., & Li, Z. (2022). A survey on neural speech synthesis. arXiv preprint arXiv:2203.12462.
-
Liu, Y., Ott, M., Goyal, N., Du, J., Joshi, M., Chen, D., … & Stoyanov, V. (2019). RoBERTa: A robustly optimized BERT pretraining approach. arXiv preprint arXiv:1907.11692.
-
Lewis, M., Liu, Y., Goyal, N., Ghazvininejad, M., Mohamed, A., Levy, O., & Stoyanov, V. (2019). BART: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics.
-
Raffel, C., Shazeer, N., Roberts, A., Lee, K., Narang, S., Matena, M., … & Liu, P. J. (2020). Exploring the limits of transfer learning with a unified text-to-text transformer. Journal of Machine Learning Research, 21(140), 1-67.
-
Hochreiter, S., & Schmidhuber, J. (1997). Long short-term memory. Neural Computation, 9(8), 1735-1780.
-
Cho, K., Van Merriënboer, B., Gulcehre, C., Bahdanau, D., Bougares, F., Schwenk, H., & Bengio, Y. (2014). Learning phrase representations using RNN encoder-decoder for statistical machine translation. Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing.
-
Mikolov, T., Karafiát, M., Burget, L., Černocký, J., & Khudanpur, S. (2010). Recurrent neural network based language model. Interspeech.
-
Jurafsky, D., & Martin, J. H. (2023). Speech and language processing: An introduction to natural language processing, computational linguistics, and speech recognition.
-
Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep learning. MIT Press.
-
Sutton, R. S., & Barto, A. G. (2018). Reinforcement learning: An introduction. MIT Press.