该问题归类到Transformer架构问题集——解码策略——自回归生成。请参考LLM数学推导——Transformer架构问题集。
1. 引言
在大语言模型(LLM)的蓬勃发展中,自回归生成(Autoregressive Generation)凭借其循序渐进、逐 Token 生成文本的特性,成为文本生成任务的核心方式。然而,自回归生成过程中存在的暴露偏差(Exposure Bias)问题,如同隐藏在引擎中的瑕疵,悄然影响着生成文本的质量。它会导致模型生成的内容偏离预期,出现语义不通顺、逻辑不连贯等情况。本文将深入剖析暴露偏差的技术原理、数学表达,结合丰富的 LLM 使用实例,通过代码示例与解读,全面解析这一问题,帮助读者深入理解并找到应对之策。
2. 技术原理
2.1 自回归生成机制
自回归生成的核心逻辑是基于前文已生成的 Token,不断预测下一个最有可能出现的 Token,逐步构建完整文本。以 Transformer 架构的 LLM 为例,在生成过程中,模型首先接收输入文本并将其编码为向量表示,通过多头注意力机制捕捉文本的语义关联与上下文信息。然后,模型根据已生成的 Token 序列,在每一步计算词汇表中每个 Token 的概率分布,选择概率最高的 Token(贪心搜索)或通过其他策略(如束搜索、温度采样)选取合适 Token 添加到序列中,重复这一过程直至达到预设长度或遇到结束符 。
例如,当生成句子 “我喜欢阅读” 时,模型先基于输入的 “我”,计算后续 Token 的概率分布,选择概率较高的 “喜欢”;接着基于 “我喜欢”,再次计算概率分布选择 “阅读”,以此类推完成整个句子的生成。
2.2 暴露偏差的产生
在训练阶段,LLM 基于大量标注数据学习,模型输入的是真实正确的 Token 序列,以此预测下一个 Token。但在推理生成阶段,模型只能依赖自身之前生成的 Token 作为后续预测的条件。若之前生成的 Token 存在错误或偏离真实分布,就会导致后续预测受到影响,产生偏差。这种训练与推理阶段数据分布的差异,使得模型在推理时难以适应自身生成的不完美输入,从而引发暴露偏差 。
形象地说,训练时模型走在标注好的 “正确道路” 上学习预测;而推理时,模型只能依据自己走过的 “不确定道路” 继续前行,一旦前期 “道路” 方向有误,后续就容易偏离正轨,出现预测偏差。
3. 数学表达
3.1 训练阶段的数学表达
在训练阶段,给定训练数据集,其中
是输入文本序列,
是对应的目标输出序列,T为序列长度。模型的目标是最大化似然函数,即最小化交叉熵损失函数L: