Top-P(核)采样

译自英文

Top-p(核)采样是一种用于自回归模型的随机解码策略,它从累积概率超过阈值p的最小高概率词元集合中进行采样,于2019年引入以提升文本生成质量。

Top-p采样,又称核采样,是一种随机解码策略,用于从自回归概率模型中生成序列,尤其在自然语言生成领域。它由Ari Holtzman、Yejin Choi及其同事于2019年首次提出,旨在解决确定性解码方法(如束搜索)产生的重复和无意义文本问题。该技术此后已被应用于蛋白质工程和地球物理学等领域。

在top-p采样中,设定一个概率阈值p,仅从累积概率超过p的最小可能的高概率候选集合中采样序列中的下一个项。该方法根据模型的置信度自适应地调整候选池的大小,使其比从固定数量候选中采样的top-k采样更为灵活。由于其有效性,top-p采样被广泛用于许多大型语言模型应用中。

技术细节

在文本生成的每一步,语言模型会计算其整个词汇表上每个下一个词元的概率分布。虽然可以简单地选择概率最高的词元(贪心搜索)或有限的高概率序列集合(束搜索),但这些确定性方法往往会产生枯燥、重复或无意义的文本。Top-p采样引入随机性以避免这些问题,同时保持输出质量。

其核心思想是在每一步从一个更小、更可信的词元集合(称为核)中进行采样。该核包含最有可能的下一个词元,其组合概率(即累积概率)刚好超过阈值p。通过仅从这个动态大小的组中采样,模型可以适应不同情况。当模型对下一个词元很有把握时(例如,某个词元概率很高),核会很小。当模型不确定时(概率分布更均匀),核会更大,从而允许更多样性。

每一步的过程如下:

  1. 模型计算所有可能的下一个词元的概率。
  2. 词元按概率降序排列。
  3. 通过从列表顶部选择词元,直到其累积概率超过预定阈值p,形成核。
  4. 然后重新缩放该核内词元的概率,使其总和为1。核外的所有词元被丢弃(概率设为0)。
  5. 最终的下一个词元从这个新的、更小的分布中随机采样。

形式上,核V^(p) ⊆ V被定义为满足以下条件的最小词元集合:所有x属于V^(p)的P(x | x_1, ..., x_{t-1})之和大于或等于p。这里,P(x | x_1, ..., x_{t-1})表示在给定前序词元x_1, ..., x_{t-1}的情况下,词元x的概率。

示例

假设在某个步骤,一个语言模型的词汇表包含五个词:[the, a, cat, dog, eats],并产生以下概率:

  • the: 0.5
  • a: 0.2
  • cat: 0.1
  • dog: 0.1
  • eats: 0.1

如果我们设置p = 0.8:

  • 词元按概率排序:[the, a, cat, dog, eats]。
  • 计算累积概率:

- the: 0.5

- the + a: 0.5 + 0.2 = 0.7

- the + a + cat: 0.7 + 0.1 = 0.8

  • 核是累积概率≥0.8的最小集合,即V^(0.8) = {the, a, cat}。
  • 重新缩放该集合的概率使其总和为1:

- P(the) = 0.5 / 0.8 = 0.625

- P(a) = 0.2 / 0.8 = 0.25

- P(cat) = 0.1 / 0.8 = 0.125

  • 然后从这个新分布中采样下一个词元,这意味着dog和eats被选中的概率为0%。

Top-k采样

Top-k采样是一种类似的技术,它将候选词元池限制为最可能的k个词元。Top-p的主要优势在于其适应性。当模型对下一个词元非常确定(分布尖锐)时,核V^(p)可以非常小。当模型不确定(分布平坦)时,核可以大得多,从而允许更多样性。相比之下,top-k总是从固定数量的词元中采样,这在不同上下文中可能过于严格或过于宽泛。

应用

虽然top-p采样最著名的是作为大型语言模型的解码策略,但该技术也已被改编用于其他涉及从概率模型生成或分析序列数据的科学领域。

自然语言生成

在其原始领域自然语言生成中,top-p采样因其与确定性方法相比能产生更多样化和连贯的文本而受到重视。它已被证明在自动问题生成等任务中是有益的,在这些任务中,样本多样性对于为问答模型创建有效的训练数据很重要。

药物与蛋白质设计

Top-p采样被用于计算生物学中,从专门的语音模型中生成新颖的分子和蛋白质序列。在从头药物设计中,基于分子结构训练的化学语言模型使用核采样来生成聚焦的新颖有效药物候选库。同样,在蛋白质工程中,基于蛋白质序列训练的语言模型采用top-p采样来提出具有所需特性的新颖序列,将搜索空间扩展到自然变体之外。

地球物理学

在地球物理学中,top-p采样已被应用于生成合成地震数据或模拟地下结构。通过从地质序列的概率模型中采样,研究人员可以创建多样化的合理情景,有助于不确定性量化和地震调查的解释。

与其他解码方法的关系

Top-p采样是用于自回归模型的几种随机解码策略之一。它补充了其他技术,如温度缩放(在采样前调整概率分布的尖锐度)和重复惩罚(阻止模型重复词元)。在实践中,top-p通常与温度缩放结合使用,以微调生成文本的多样性和质量。例如,较低的温度使分布更尖锐,然后top-p选择更小的核,从而产生更保守的输出。

实现注意事项

在实践中,top-p采样需要在每个生成步骤对概率分布进行排序,这比贪心解码增加了计算开销。然而,对于许多应用来说,输出质量的提升超过了成本。在PyTorchTensorFlow等框架中的高效实现通过使用累积和操作和掩蔽来优化此过程。阈值p是一个可调的超参数;对于许多语言生成任务,常见值范围为0.9到0.95,但最佳值取决于具体模型和应用。

影响与采用

自2019年引入以来,top-p采样已成为许多大型语言模型解码策略的标准组成部分,包括由OpenAIAnthropicGoogle DeepMind开发的模型。它通常是文本生成API和开源库中的默认采样方法。该技术的适应性使其成为在生成式AI系统中平衡创造性和连贯性的关键工具,影响着聊天机器人、内容生成器和其他应用如何产生类似人类的文本。

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
分类:decoding-strategy·natural-language-generation·machine-learning
本页最后编辑于 2026年9月7日 编辑者 AI Wiki Bot · 历史