LLM(大语言模型)常用评测指标-困惑度(Perplexity)

困惑度(Perplexity)

是自然语言处理(NLP)中常用的一种评估语言模型的指标。它衡量的是模型对测试数据的预测能力,即模型对测试集中单词序列出现概率的预测准确度。困惑度越低,表示模型对数据的预测越准确。

计算方法

困惑度通常定义为测试集上的交叉熵的指数。对于一个语言模型,如果给定一个长度为 N N N 的词序列 W = w 1 , w 2 , ... , w N W=w_1,w_2,\ldots,w_N W=w1,w2,...,wN,其困惑度可以表示为:

P P ( W ) = 1 P ( w 1 , w 2 , ... , w N ) n PP(W)=\sqrt[n]{\frac1{P(w_1,w_2,\ldots,w_N)}} PP(W)=nP(w1,w2,...,wN)1

其中, P ( w 1 , w 2 , ... , w N ) P(w_1,w_2,\ldots,w_N) P(w1,w2,...,wN)是模型赋予该词序列的概率。在实际计算中,为了避免数值下溢,通常使用对数概率,并将公式转化为:

P P ( W ) = 2 − 1 N ∑ i = 1 N log ⁡ 2 P ( w i ∣ w 1 , w 2 , ... , w i − 1 ) PP(W)=2^{-\frac1N\sum_{i=1}^N\log_2P(w_i|w_1,w_2,\ldots,w_{i-1})} PP(W)=2−N1∑i=1Nlog2P(wi∣w1,w2,...,wi−1)

这里, ∑ i = 1 N log ⁡ 2 P ( w i ∣ w 1 , w 2 , ... , w i − 1 ) \sum_{i=1}^N\log_2P(w_i|w_1,w_2,\ldots,w_{i-1}) ∑i=1Nlog2P(wi∣w1,w2,...,wi−1)表示对整个测试集的对数似然,并且 N {N} N是测试集中的单词总数。

应用场景

困惑度常用于比较不同的语言模型或评估同一模型在不同数据集上的性能。它广泛应用于语言模型的训练和评估、机器翻译、语音识别等自然语言处理领域。

示例

假设一个简单的语言模型,给定一个测试集包含三个词的序列 "the cat sat",模型对这三个词的预测概率分别为 0.5, 0.4, 0.3。则该序列的困惑度计算如下:

P P ( W ) = 2 − ( 1 3 ( log ⁡ 2 0.5 + log ⁡ 2 0.4 + log ⁡ 2 0.3 ) ) ≈ 2.45 PP(W)=2^{-\left(\frac13(\log_20.5+\log_20.4+\log_20.3)\right)}\approx2.45 PP(W)=2−(31(log20.5+log20.4+log20.3))≈2.45

这意味着在这个简单的例子中,模型对测试集中单词序列的预测平均每个位置的不确定性相当于二进制选择中的2.45个选项。

当我们说模型对测试集中单词序列的预测平均每个位置的不确定性相当于二进制选择中的 2.45 个选项时,我们是在尝试将困惑度的数值转化为一个更直观的概念。具体来说,假设你面前有一个盒子,里面有若干个按钮,每个按钮代表一个不同的单词。每次你要预测下一个单词时,就需要按下一个按钮。如果模型对下一个单词的预测非常准确,那么你每次基本上只需要在少数几个按钮中选择。如果模型的预测非常不准确,那么你可能需要在很多按钮中进行选择。

困惑度的数值可以告诉我们,平均来看,你需要在多少个按钮中进行选择。在上面的例子中,困惑度为 2.45,这意味着平均每次预测时,你需要在大约 2.45 个按钮中进行选择。这个数值越小,表示模型的预测越准确,你需要在越少的选项中进行选择。

换句话说,困惑度可以被理解为模型在预测下一个单词时的平均"不确定性"。如果困惑度是 2.45,那么就好像你在进行二进制选择时平均有 2.45 个选项一样,这反映了模型对单词序列的预测能力。

相关推荐
过往入尘土5 小时前
YOLOv3详解:实时目标检测的巅峰之作
人工智能·计算机视觉·目标跟踪
sali-tec5 小时前
C# 基于halcon的视觉工作流-章46-不匀面划痕
人工智能·算法·计算机视觉·c#
JJJJ_iii5 小时前
【机器学习03】学习率与特征工程、多项式回归、逻辑回归
人工智能·pytorch·笔记·学习·机器学习·回归·逻辑回归
大明者省5 小时前
人工智能学科主要单词
人工智能
BEOL贝尔科技5 小时前
不稳定的冰箱如何做权限管理?冰箱锁加入远程管理功能后生物保存工作发生了哪些变化?
大数据·人工智能
AI拉呱_5 小时前
第144期《2025年AI现状报告》解读(二):产业篇
人工智能·chatgpt
IT_陈寒5 小时前
Vue3性能优化实战:这7个技巧让我的应用提速50%,尤雨溪都点赞!
前端·人工智能·后端
云端FFF6 小时前
论文理解 【LLM-回归】—— Decoding-based Regression
人工智能·数据挖掘·回归
电棍2338 小时前
工程记录:使用tello edu无人机进行计算机视觉工作(手势识别,yolo3搭载)
人工智能·计算机视觉·无人机
wan5555cn8 小时前
国产电脑操作系统与硬盘兼容性现状分析:挑战与前景评估
人工智能·笔记·深度学习·机器学习·电脑·生活