题目
请对比 greedy / beam search / top-k / top-p / temperature 等解码策略,说明各自适用场景与常见参数选择。
参考答案
基础策略:
- Greedy(贪心):每步选概率最高的 token。速度快、确定性强,但易重复、缺乏多样性,适合代码/抽取类任务。
- Beam Search:维护 条候选序列,最终选整体概率最高者。比贪心更优,但仍偏保守,长文本易出现重复退化。
采样策略(引入随机性):
- Temperature(温度):调整 softmax 锐度。 更确定(分布尖锐), 更随机(分布平坦)。 退化为贪心。
- Top-k 采样:只在前 个最高概率 token 中采样。 越大越多栞性越强。
- Top-p(nucleus)采样:选累计概率达到 的最小 token 集合中采样。自适应——分布集中时少选,分散时多选,比 top-k 更稳健。
对比表:
| 策略 | 多样性 | 质量 | 速度 | 适合场景 |
|---|---|---|---|---|
| Greedy | 低 | 中 | 快 | 代码、抽取、分类 |
| Beam Search | 低 | 高 | 慢 | 翻译、摘要 |
| Top-k | 中 | 中 | 中 | 通用生成 |
| Top-p | 中-高 | 高 | 中 | 对话、创作(主流) |
| 高 Temperature | 高 | 低 | 快 | 头脑风暴、创意 |
常见工程参数(对话场景):temperature=0.7, top_p=0.9, top_k=50,并加 frequency_penalty / presence_penalty 抑制重复。
重复惩罚:
- Repetition Penalty:对已出现 token 的概率除以惩罚因子(>1)。
- Frequency Penalty:按出现次数线性惩罚。
- Presence Penalty:只看是否出现(二值惩罚)。
面试加分点:
- 指出 top-p 比 top-k 更优:固定 在分布尖锐时会引入噪声 token,top-p 自适应避免此问题。
- Beam Search 不适合开放对话:易生成”安全但无聊”的重复,现代对话模型多用 top-p 采样。
- 数学任务用低温度()保证正确性,创意任务用高温度。
出处:大模型面经、OpenAI API 文档、HuggingFace Transformers 文档。
内容来源
整理自大模型面经与 OpenAI / HuggingFace 文档
本站内容整理自公开面经与开源仓库,仅供学习交流,严禁杜撰。