赞
踩
Perplexity,中文翻译为困惑度,是信息论中的一个概念,其可以用来衡量一个随机变量的不确定性,也可以用来衡量模型训练的好坏程度。通常情况下,一个随机变量的Perplexity数值越高,代表其不确定性也越高;一个模型推理时的Perplexity数值越高,代表模型表现越差,反之亦然。
对于离散随机变量 X X X,假设概率分布可以表示为 p ( x ) p(x) p(x),那么对应的困惑度为: 2 H ( p ) = 2 − ∑ x ∈ X p ( x ) l o g 2 p ( x ) 2^{H(p)}=2^{-\sum_{x \in X}p(x) log_2p(x)} 2H(p)=2−∑x∈Xp(x)log2p(x)其中, H ( p ) H(p) H(p) 为概率分布 p p p 的熵。可以看到,一个随机变量熵越大,其对应的困惑度也就越大,随机变量的不确定性也就越大。
困惑度也可以用来衡量模型训练的好坏程度,即衡量模型分布和样本分布之间的差异。一般来讲,在模型的训练过程中,模型分布越接近样本分布,模型训练得也就越好。
假设现在有一批数据 x 1 , x 2 , x 3 , . . . , x n x_1,x_2,x_3,...,x_n x1,x2,x3,...,xn,其对应的经验分布为 p r ( x ) p_r(x) pr(x)。现在我们根据这些样本成功训练出了一个模型 p θ ( x ) p_θ(x) pθ(x),那么模型分布 p θ ( x ) p_θ(x) pθ(x) 的好坏可以由困惑度进行定义: 2 H ( p r , p θ ) = 2 − ∑ i n p r ( x i ) l o g 2 p θ ( x i ) 2^{H(p_r,p_\theta)}=2^{-\sum^n_i p_r(x_i) log_2p_\theta(x_i)} 2H(pr,pθ)=2−∑inpr(xi)log2pθ(xi)其中, H ( p r , p θ ) H(p_r,p_θ) H(pr,pθ) 表示样本的经验分布 p ~ r \tilde p_r p~r和模型分布 p θ p_θ pθ之间的交叉熵。假设每个样本 x i xi xi 的生成概率是相等的,即 p r ( x i ) = 1 n p_r(x_i)=\frac 1 n pr(xi)=n1,则模型分布的困惑度可简化为: 2 H ( p r , p θ ) = 2 − 1 n ∑ i n l o g 2 p θ ( x i ) 2^{H(p_r,p_\theta)}=2^{-\frac 1 n\sum^n_i log_2p_\theta(x_i)} 2H(pr,pθ)=2−n1∑inlog2pθ(xi)
在NLP领域,语言模型可以用来计算一个句子的概率,假设现在有这样一句话
s
=
w
1
,
w
2
,
w
3
,
.
.
.
,
w
n
s=w_1,w_2,w_3,...,w_n
s=w1,w2,w3,...,wn, 我们可以这样计算这句话的生成概率:
p
(
x
)
=
p
(
w
1
,
w
2
,
.
.
.
,
w
n
)
=
∏
i
=
1
n
p
(
w
i
∣
w
1
,
w
2
,
.
.
.
,
w
i
−
1
)
在了解了语句概率的计算后,则对于语句
s
=
w
1
,
w
2
,
w
3
,
.
.
.
,
w
n
s=w_1,w_2,w_3,...,w_n
s=w1,w2,w3,...,wn,其困惑度可以这样来定义:
p
e
r
p
l
e
x
i
t
y
=
p
(
s
)
−
1
n
=
p
(
w
1
,
w
2
,
.
.
.
,
w
n
)
−
1
n
=
1
p
(
w
1
,
w
2
,
.
.
.
,
w
n
)
n
=
∏
i
=
1
n
1
p
(
w
i
∣
w
1
,
w
2
,
.
.
.
,
w
i
−
1
)
n
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。