M4-011M4: Sequences & TransformersSeq2Seq & Attention OriginsHard
Mastery:
Seq2Seq & Attention Origins: 解释 beam search 与它的长度偏置。
📐 Mathematical Definition
⚡ Executive Summary
Core Concept: beam search 保留 top-k 候选序列逐步扩展;因每步累加对数概率,短序列得分天然更高,需长度归一化校正。
📌 Key Takeaways
- •贪心每步取最大,beam search 保留 k 条路径
- •对数概率求和使长序列得分单调更负 → 偏好短输出
- •长度惩罚 α 或长度归一化是必需的后处理
📐 Mathematical Derivations
数学机理:<strong>贪心解码</strong>每步取概率最大的 token,局部最优但可能错过全局更优的序列。<strong>beam search</strong> 保留 k 条(beam width)当前得分最高的<strong>部分序列</strong>,每步把它们各自扩展出 V 个候选、再按累计对数概率排序保留前 k 条,直到遇到结束符。<strong>长度偏置的根源</strong>:score(y)=Σ_{t=1}^{|y|} log p(y_t|y_{<t}),其中每项 log p≤0;序列越长,累加的负项越多、总分越负。故在'比较不同长度的候选'时,<strong>短序列天然占优</strong>——beam search 会系统性地偏好短输出(尤其在概率模型不确定时,早停即得高分)。<strong>修正</strong>:<strong>长度归一化</strong> score/|y|^α,或<strong>长度惩罚</strong>(如 Google NMT 的 lp(Y)=(5+|Y|)^α/(5+1)^α)。α=1 是完全平均、α=0 是不归一化;实践常取 α≈0.6~0.8(GNMT 用 0.6~0.7),在'避免过短'与'不过度鼓励冗长'间平衡。<strong>开放式生成的问题</strong>——在翻译(目标较确定)上 beam search 有效;但在<strong>对话/故事生成</strong>等开放式任务上,beam search 常导致'安全但无聊'的输出(因为高概率序列往往是通用套话),此时<strong>采样</strong>(top-k/top-p/温度)反而更好——这被称为'beam search curse'。
🏭 Production Trade-offs
深度剖析与工程权衡:① <strong>beam search 与'最大后验'的关系</strong>——beam search 近似求解 argmax p(y|x)(精确求解需指数搜索),但<strong>人类对话的目标不是最大后验</strong>(而是多样且合理);这是'解码目标与任务目标错配'的典型案例。② <strong>beam width 的收益递减</strong>——k 从 1 增到 5~10 收益明显,再增大收益迅速递减且成本线性增长;同时大 beam 会放大长度偏置与'通用化'倾向。③ <strong>多样性与质量的权衡</strong>——工程上用 (a) <strong>采样 + 温度</strong>、(b) <strong>top-k / top-p(nucleus)</strong>、(c) <strong>diverse beam search / 分组 beam</strong>、(d) <strong>对比解码</strong>(对比专家与业余模型的对数概率差)来平衡;LLM 时代默认是 top-p 采样而非 beam search。④ <strong>与 RLHF 的交互</strong>——RLHF 后的模型分布被'锐化'(偏向高奖励输出),此时采样 + 温度更可控;beam search 在 RLHF 模型上易产生重复与退化。⑤ <strong>长度归一化与业务目标</strong>——若业务偏好简洁输出,可把长度惩罚设强;若偏好完整,则设弱或改为'最小长度约束'。长度控制是产品级生成的重要调参项。⑥ <strong>面试要点</strong>——被问'beam search 的问题',应点出'<strong>对数概率求和导致长度偏置</strong>'与'<strong>开放式生成上的 beam search curse</strong>',并给出长度归一化与采样替代方案;只答'beam search 比贪心好'是明显不足。
⚠️ Common Interview Pitfalls
- ✕不加长度归一化直接比较不同长度的候选
- ✕在开放式生成上默认使用 beam search
🎯 Interviewer Follow-ups
- ?beam search 为什么在开放式生成上反而更差?
- ?α 如何选择?
📚
Associated Knowledge Base Guides & Mindmaps
Explore the comprehensive technical article, exam cards, and global architecture tree.