Temperature、Top-K、Top-P 怎样改变生成结果?

从 Logits 到概率分布,理解确定性、随机性与候选截断

目录

  同一组 Logits 可以生成完全不同的文本。Greedy 每次选最高分,Sampling 按概率抽取;Temperature、Top-K、Top-P 会在抽样前重新塑造候选分布。

模型给出概率,解码策略决定如何从概率里选出下一个 Token。

Temperature、Top-K、Top-P 怎样改变生成结果?

第 17 课核心流程,点击查看原始 SVG

1、Greedy 与 Sampling

Greedy decoding 总选概率最高的 Token,结果稳定,但容易重复或过于保守。Sampling 按分布随机抽取,让低一些的候选也有机会出现,文本更多样。

2、Temperature 调整分布

Softmax 前把 Logits 除以温度 T。T 小于 1 时差距被放大,分布更尖;T 大于 1 时分布更平,随机性更强。

T 接近 0 常退化为近似 Greedy。Temperature 不会直接删除候选,只改变相对概率。

3、Top-K 固定保留 K 个

Top-K 只保留概率最高的 K 个 Token,其余设为不可选,再重新归一化。它简单,但无论当前分布很确定还是很分散,候选数量都固定。

4、Top-P 保留累计概率

Top-P 又叫 Nucleus Sampling。把 Token 按概率排序,从高到低累加,保留累计概率达到阈值 p 的最小集合。

分布很集中时候选少,分布很平时候选多,因此能随上下文自适应。

5、组合顺序

常见流程是先用 Temperature 调整 Logits,再应用 Top-K / Top-P 截断,重新归一化后抽样。不同框架在细节和默认值上可能不同,应查看实际实现。

6、参数没有万能答案

事实问答和代码生成通常需要更稳定;创意写作可以增加随机性。采样参数还会与重复惩罚、最大长度、停止词和模型本身交互。评估时应固定随机种子与配置。

容易混淆的三件事

  1. Temperature 不是直接删词。
  2. Top-P 的候选数不是固定值。
  3. 更随机不等于更有创造力或更正确。

记住这 5 件事

  1. Greedy 总选最大概率
  2. Temperature 改变分布尖锐度
  3. Top-K 固定候选数
  4. Top-P 固定累计概率
  5. 截断后必须重新归一化

参考资料

第十七课复习总图

大模型第十七课复习总图

第十七课复习总图,点击查看原始 SVG

  下一课解释 KV Cache:为什么逐 Token 生成时不必反复计算整个历史?