熵是衡量随机变量不确定性的指标,值越大表示不确定性越高;困惑度是基于熵的概念,用于衡量模型对数据的预测不确定性,值越大表示模型的预测越不准确。
熵 Entropy
熵在信息论中是一个用于衡量不确定性或信息量的一个指标, 对于一个离散随机变量 $X$, 其概率分布为 $P(X)$, 熵 $H(X)$ 定义为:
\[H(X) = - \sum_{x \in {X}} {P(x)} {log_e{P(x)}}\]其中 $log_e{P(x)}$ 是对数概率, 取值在 $(- \infty, 0]$
例如一个简单的抛硬币实验, 硬币正反面朝上的概率分别为 0.5, 那么熵为:
\[H(X) = -[0.5log_e{0.5} + 0.5log_e{0.5}] = 1 bit\]这表示抛硬币的结果有 1 bit 的不确定性, 熵越大, 表示随机变量的不确定性越高
-
性质
-
熵是非负的, $H(X) \ge 0$
-
当随机变量完全确定时熵为0
-
对于均匀分布的随机变量, 熵达到最大值, 对于一个有 $n$ 个可能取值的随机变量, 其熵为 $log_e{n}$
-
困惑度 Perplexity
困惑度是基于熵的一个概念, 用于衡量模型对数据的预测不确定性。对于一个语言模型,困惑度通常定义为:
\[Perplexity = 2^{H(X)}\]其中, $H(X)$ 是 token 概率分布的熵, 困惑都可以理解为模型在预测下一个 token 时的平均选择数, 例如, 如果困惑度为 2, 表示模型平均有 2 种选择来预测下一个词. 从数学上看, 困惑度是熵的指数形式. 它将熵的对数尺度转换为线性尺度, 使困惑度更易于理解.
-
性质
-
困惑度越大, 表示模型的预测不确定性越高.
-
困惑度的取值范围是 $[1, \infty)$, 当困惑度为 1 时, 表示模型完全确定, 没有不确定性.
-