LLMs之PPL:解读多个权威文档(比如huggingface)中对PPL(困惑度)的定义、PPL的多种计算方式、多种代码实现

557 篇文章 426 订阅
本文深入探讨了固定长度模型如GPT-2的困惑度(PPL)计算,包括两种近似算法:独立计算每个子序列的PPL和滑动窗口策略。滑动窗口策略虽然计算复杂度高,但能提供更精确的困惑度评估。通过GPT-2在WikiText-2数据集上的实例,展示了如何实施这两种策略。
摘要由CSDN通过智能技术生成

LLMs之PPL:解读多个权威文档(比如huggingface)中对PPL(困惑度)的定义、PPL的多种计算方式、多种代码实现

导读:这篇文章主要分析了固定长度模型计算困惑度(perplexity)的问题。首先给出了困惑度的定义。困惑度反映了模型预测序列每个token的能力,是经常用于评估语言模型的一个重要指标。对于顺序语言模型,可以将序列分解为条件概率,然后计算困惑度。但对于固定长度模型,如GPT系列,由于模型有最大输入长度限制,无法得到条件上下文所有token的概率。文章提出了两种计算困惑度的方法:

T1、将序列切分为不相交的块,分别计算每个块的负对数似然,然后相加。这种方法计算简单,但近似不准,通常得到的困惑度值会更高

T2、使用滑动窗口策略。将上下文窗口按一定步长滑动计算每个token的条件概率。这种方法近似真实分解,通常能得到更佳的困惑度值。但计算代价较高

文中以GPT-2为例,加载WikiText-2数据集,使用不同步长的滑动窗口策略计算困惑度。步长等于最大输入长度时,等效于第一种方法。步长减小可以使模型在预测每个token时拥有更多上下文,通常困惑度会更低。

总之,这篇文章系统介绍了固定长度模型计算语言模型困惑度的问题,给出了两种近似算法,并通过实验证明使用滑动窗口策略计算结果更准确且更佳。为固定长度模型下的困惑度计算提供了重要参考。

目录

两种近似算法计算固定长度语言模型的困惑度

Perplexity of fixed-length models固定长度模型困困惑度

PPL是GPT-Style模型的评估指标

PPL的具体计算公式

Calculating PPL with fixed-length models使用固定长度模型计算 PPL

T1、基序列分解策略计算PPL:独立计算每个子序列的PPL+简单快速+易导致较高的PPL值(因较少的上下文)

T2、基于滑动窗口策略计算PPL:重复滑动上下文窗口+每个预测步骤中有更多的上下文+计算较慢+但更有效

Example: Calculating perplexity with GPT-2 in Transformers用GPT-2计算Transformer中的困惑度

用GPT-2来演示

实现代码

加载WikiText-2数据集并使用几种不同的滑动窗口策略评估困惑度

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个处女座的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值