YOLO Vision 2026:
返回 Ultralytics 术语表

Perplexity

了解困惑度的含义、它如何衡量语言模型性能、如何计算困惑度以及解释结果的最佳实践。

困惑度是一种用于衡量概率模型预测标记序列好坏的评估指标。它最常用于语言建模中,其中较低的值意味着模型对评估文本的意外程度较低。直观地说,为 10 的困惑度表明,在每个预测步骤中,模型的不确定性大致相当于在 10 个可能性相同的替代项中进行选择。这种解释是近似的,但它使该指标更容易理解。

困惑度的工作原理#

语言模型根据前面的上下文为每个可能的下一个标记分配概率。正如 Google 的语言模型简介中所解释的那样,自回归模型会反复预测下一个标记并将其添加到上下文中。

困惑度汇总了跨评估序列分配给正确标记的概率。它源自平均负对数似然,通常表示为交叉熵:

  • 如果交叉熵使用自然对数,则困惑度是 e 的交叉熵次方。
  • 如果交叉熵使用以 2 为底的对数,则困惑度是 2 的交叉熵次方。

Google 机器学习词汇表提供了一个相关的解释:困惑度近似于模型包含正确预测所需的猜测次数。正如 NLTK 语言模型困惑度 API 所示,库也可以直接计算它。

这个极简的 Python 示例根据分配给四个正确标记的概率计算困惑度:

import math

# Probability assigned to the correct token at each position
token_probabilities = [0.50, 0.25, 0.80, 0.40]

negative_log_probs = [-math.log(probability) for probability in token_probabilities]
cross_entropy = sum(negative_log_probs) / len(negative_log_probs)
perplexity = math.exp(cross_entropy)

print(f"Cross-entropy: {cross_entropy:.3f}")
print(f"Perplexity: {perplexity:.3f}")

该计算使用 Python 记录的math.exp 指数函数。在模型训练代码中,诸如 PyTorch 交叉熵损失之类的框架通常在对损失进行指数运算之前计算平均损失。

如何解释困惑度#

较低的困惑度通常表明模型为观察到的标记分配了更高的概率。但是,该数字仅在受控比较中才有意义。

假设模型 A 在同一验证数据上的困惑度为 20,模型 B 的困惑度为 30。模型 A 更有效地预测该数据集。它不一定会产生更多事实性、有用性、安全或可读的答案。

困惑度也不同于几个相关的概念:

  • 损失函数 交叉熵是底层的训练或评估损失,而困惑度是其指数化的、更直观的表示。
  • 准确率: 准确率检查选定的预测是否正确。困惑度评估整个预测概率分布,包括模型为替代项分配了多少概率。
  • 置信度: 置信度通常描述单个预测的确信度。困惑度聚合了跨许多序列位置的预测不确定性。
  • 生成质量: 低困惑度模型可能会产生流利但重复、不正确或无帮助的文本。困惑度并不能直接衡量事实性或推理能力。

实际应用#

  • 预测文本和序列生成 开发者可以使用来自预定领域的保留文本,针对键盘建议、转录或自动完成来比较语言模型。例如,在医学术语上具有较低困惑度的模型可能会在临床听写中提供更好的下一个标记预测。该指标可以帮助在单独评估延迟和用户接受度之前选择模型。

  • 带视觉注意力的图像描述生成 图像描述系统通常使用视觉编码器后跟语言解码器。困惑度可以衡量解码器在给定图像特征的情况下预测参考描述标记的效果。这与视觉语言模型相关,尽管仅凭低困惑度无法确定描述是否正确识别了每个对象或避免了幻觉细节。

基于概率的评估还可以支持专业诊断。NVIDIA 的对数概率评估指南解释了如何将标记概率聚合到诸如困惑度等指标中,而无需进行自由形式的生成。

限制与最佳实践#

当模型使用不同的分词方案时,不应比较困惑度值。字级模型、字符级模型和基于子字的大语言模型以不同的方式划分相同的句子,从而改变预测步骤的数量和难度。

评估数据集还必须与目标领域相匹配。模型可能在新闻文章上实现低困惑度,但在源代码或技术支持对话上表现不佳。通过使用具有代表性的独立评估数据和一致的预处理,遵循既定的机器学习质量指南

在多模态和计算机视觉系统中,将困惑度与特定任务的度量配对。Ultralytics 关于模型评估和微调的指南涵盖了视觉预测的精度、召回率和平均精度均值等指标。总之,语言和视觉指标比单独的困惑度提供更完整的评估。

Explore solutions

让我们共同构建 AI 的未来!

开启你的机器学习未来之旅