2025面试必备!这份大模型(LLMs)面试辅助资料,助你轻松拿下心仪offer------夏の哉------97it.---top/---15034/
解码策略终极指南:Beam Search vs Temperature Scaling 面试详解
在大模型生成文本的过程中,“解码策略” 扮演着至关重要的角色 —— 它决定了模型如何从概率分布中选择下一个 token,直接影响生成结果的质量(如流畅度、相关性、创造性)。Beam Search(束搜索)和 Temperature Scaling(温度缩放)是两种最经典的解码策略,分别适用于不同场景(如精确任务 vs 创意生成)。在技术面试中,不仅需要掌握它们的原理,更要理解其背后的设计逻辑与适用边界。
一、解码策略的核心目标:平衡 “准确性” 与 “多样性”
大模型生成文本的本质是 “序列决策”:在生成第 t 个 token 时,模型会输出一个包含所有可能 token 的概率分布(如 P (“的”|“我爱中国”) = 0.8,P (“人”|“我爱中国”) = 0.1),解码策略则是从这个分布中选择下一个 token 的规则。
理想的解码策略需在两个维度平衡:
- 准确性:生成的 token 应与上下文高度相关(如 “我爱中国的” 后面接 “文化” 比接 “星球” 更合理);
- 多样性:避免生成重复或单调的内容(如 “今天天气好,今天天气好,今天天气好”)。
Beam Search 和 Temperature Scaling 分别从不同角度实现这种平衡,但其设计理念截然不同:
- Beam Search 通过 “保留候选路径” 提升准确性,适合需要精确结果的场景(如机器翻译、摘要生成);
- Temperature Scaling 通过 “调整概率分布形状” 控制多样性,适合创意生成场景(如诗歌、故事创作)。
二、Beam Search:通过 “候选路径筛选” 提升准确性
Beam Search(束搜索)是一种贪心搜索的改进算法,核心思想是 “保留前 k 个最优候选序列,避免因单次错误选择导致整体结果偏差”。
1. 核心原理:从 “单路径贪心” 到 “多路径筛选”
- 贪心搜索(Greedy Search) :每次选择概率最高的 token(如选择 P 最大的 token),优点是速度快,缺点是容易陷入局部最优(如早期选择一个概率高但后续无合理延续的 token)。
- Beam Search:设置束宽(beam size = k),每次生成时保留概率最高的 k 个候选序列,最终从 k 个序列中选择总概率最高的作为结果。
例如,生成 “我爱北京” 的过程(k=2):
- 第 1 步:生成第一个 token “我”(唯一初始序列);
- 第 2 步:模型预测 “我” 后面的 token 概率分布,选择前 2 个(“爱” P=0.9,“是” P=0.05),候选序列为 [“我→爱”, “我→是”];
- 第 3 步:对每个候选序列预测下一个 token,“我→爱” 的后续 token 中 “北” P=0.8,“上” P=0.1;“我→是” 的后续 token 中 “学” P=0.3,“医” P=0.2。计算序列总概率(乘积),保留前 2 个:“我→爱→北”(总 P=0.9×0.8=0.72)、“我→爱→上”(总 P=0.9×0.1=0.09);
- 第 4 步:最终生成 “我→爱→北→京”(总概率最高)。
2. 关键参数:束宽 k 的影响
- k=1:等价于贪心搜索,速度最快,多样性最差;
- k 增大:保留更多候选路径,生成结果更准确(减少局部最优风险),但计算量线性增加(每个步骤需处理 k 个序列);
- 实际取值:机器翻译中 k 通常取 5-10,摘要生成取 10-20,超大模型(如 100B 参数)因计算成本限制,k 可能≤5。
3. 优缺点与适用场景
优点:
- 生成结果更连贯、准确,比贪心搜索减少 “荒诞错误”(如 “我爱中国→星球”);
- 可通过调整 k 平衡性能与效率。
缺点:
- 多样性差:倾向于生成概率高的 “安全序列”,缺乏新意(如翻译同一文本,多次生成结果几乎相同);
- 计算成本高于贪心搜索(k 倍开销)。
适用场景:对准确性要求高、多样性要求低的任务,如机器翻译(“中译英” 需准确传递原意)、法律文档生成(需严格符合条款)、代码生成(语法必须正确)。
4. 面试高频问题
- Beam Search 与 Viterbi 算法的区别?
两者都保留候选路径,但 Viterbi 算法用于有向图(如 HMM),每个步骤的状态数固定,且路径概率是加性(对数概率);Beam Search 用于序列生成,状态数随步骤增加,路径概率是乘性。
- 如何解决 Beam Search 的 “重复生成” 问题?
可引入 n-gram 惩罚:若候选序列中出现重复的 n 元组(如 “今天天气” 重复),降低其概率;或动态调整束宽(早期 k 大,后期 k 小)。
三、Temperature Scaling:通过 “概率分布调整” 控制多样性
Temperature Scaling(温度缩放)是一种基于 softmax 函数的解码策略,通过调整 “温度参数” 控制概率分布的 “陡峭程度”,进而影响生成的多样性。
1. 核心原理:软化或锐化概率分布
大模型输出的原始 logits(未归一化的分数)通过 softmax 转化为概率:( P(y_i | x) = \frac{e^{z_i}}{\sum_j e^{z_j}} )
其中( z_i )是 logits。Temperature Scaling 在 softmax 前引入温度参数 T:( P(y_i | x, T) = \frac{e^{z_i / T}}{\sum_j e^{z_j / T}} )
- T=1:原始分布,保持模型的输出概率;
- T>1:分布软化(扁平化),低概率 token 的概率升高,高概率 token 的概率降低→多样性增加(如 T=2 时,原本 P=0.8 和 P=0.1 的 token 可能变为 P=0.6 和 P=0.3);
- T<1:分布锐化(陡峭化),高概率 token 的概率更高,低概率 token 几乎被忽略→多样性降低,更接近贪心搜索(如 T=0.5 时,原本 P=0.8 的 token 可能升至 P=0.95)。
2. 温度参数的直观影响
以生成 “天空是____” 为例,模型原始 logits 对应的概率为:“蓝色”(0.7)、“灰色”(0.2)、“绿色”(0.1)。
- T=0.5(锐化):“蓝色” 概率升至 0.9,“灰色” 0.09,“绿色” 0.01→几乎必然生成 “蓝色”(准确性高,多样性低);
- T=1(原始):“蓝色” 0.7,“灰色” 0.2,“绿色” 0.1→大概率生成 “蓝色”,偶尔生成 “灰色”;
- T=2(软化):“蓝色” 0.5,“灰色” 0.3,“绿色” 0.2→可能生成 “灰色” 甚至 “绿色”(多样性高,准确性降低)。
3. 优缺点与适用场景
优点:
- 实现简单(仅需调整一个参数);
- 能连续控制多样性(从 “几乎贪心” 到 “高度随机”)。
缺点:
- 过度追求多样性(T 过大)会导致生成内容与上下文无关(如 “天空是苹果”);
- 缺乏长程规划,可能生成语法正确但语义混乱的序列。
适用场景:对多样性要求高的创意生成任务,如诗歌创作(T=1.2-1.5)、故事续写(T=1.0-1.3)、广告文案生成(T=1.5-2.0)。
4. 面试高频问题
- Temperature 与 Top-k/Top-p 解码的关系?
三者常结合使用:Temperature 控制分布形状,Top-k 只保留前 k 个 token(过滤极低概率 token),Top-p 只保留累积概率≥p 的 token(动态 k)。例如,“T=1.5 + Top-p=0.9”:先软化分布,再过滤掉累积概率 < 90% 的 token,平衡多样性与合理性。
- 为什么 T→0 时接近贪心搜索?
当 T→0 时,( z_i / T )中最大的( z_i )会主导指数项,其他项可忽略,导致概率分布接近 one-hot(某一 token 概率≈1),等价于贪心选择。
四、两种策略的对比与组合使用
| 维度 | Beam Search | Temperature Scaling |
|---|---|---|
| 核心机制 | 多路径筛选(保留最优 k 条) | 概率分布调整(温度 T 控制) |
| 准确性 | 高(适合精确任务) | 中(T 小时高,T 大时低) |
| 多样性 | 低(易重复,依赖 k) | 高(T 可灵活控制) |
| 计算成本 | 中(k 倍于贪心) | 低(与贪心相当) |
| 典型应用 | 机器翻译、摘要、代码生成 | 诗歌、故事、创意文案 |
| 面试考点 | 束宽选择、重复抑制 | 温度对分布的影响、与 Top-k 结合 |
组合策略:取长补短
实际应用中,两种策略常结合使用:
- Beam Search + Temperature:对 Beam Search 的候选序列,用 Temperature 调整其内部 token 的选择概率(如 T=0.8,既保留候选路径的准确性,又增加局部多样性);
- 分阶段解码:生成初期用 Temperature(T=1.2)保证多样性,后期用 Beam Search(k=5)确保结尾连贯(如故事开头自由创作,结尾收束逻辑)。
五、面试总结:解码策略的选型逻辑
回答解码策略相关问题时,需体现 “场景驱动” 的思维:
- 明确任务目标:是追求 “准确无误”(如法律翻译)还是 “创意多样”(如广告生成)?
- 分析策略特性:Beam Search 的准确性适合结构化任务,Temperature 的多样性适合开放式任务;
- 权衡成本与效果:高束宽 Beam Search 效果好但慢,大 Temperature 多样性高但可能出错;
- 结合实际案例:例如 “在智能客服系统中,回复用户问题需准确,故用 Beam Search(k=3);生成营销话术需多样,故用 Temperature(T=1.5)+ Top-p=0.9”。
解码策略是大模型 “生成能力” 的直观体现,理解其原理不仅能应对面试,更能在实际开发中选择合适的策略,让模型在 “精确” 与 “灵动” 之间找到最佳平衡点。
面试高频问题速答:
- Q:Beam Search 中束宽 k 是否越大越好?
A:不是。k 过大会增加计算成本,且超过一定阈值(如 k=20)后,效果提升边际递减;同时 k 越大,候选序列越相似,多样性反而下降。
- Q:Temperature=0 时会发生什么?
A:T→0 时,softmax 输出接近 one-hot 分布,解码等价于 “argmax”(选择 logits 最大的 token),即贪心搜索,多样性为 0。
- Q:如何评价一个解码策略的好坏?
A:定量指标(如 BLEU、ROUGE 用于准确性,Self-BLEU 用于多样性)+ 人工评估(流畅度、相关性),需结合具体任务(如翻译看 BLEU,创意生成看人工评分)。