当前位置:   article > 正文

评估指标(Metric)(三)_perplexity metric

perplexity metric

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)=2xXp(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θ)=2inpr(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θ)=2n1inlog2pθ(xi)

NLP领域中的困惑度

在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 )

p(x)=p(w1,w2,...,wn)=i=1np(wi|w1,w2,...,wi1)
p(x)=p(w1,w2,...,wn)=i=1np(wiw1,w2,...,wi1)在语言模型训练完成之后,如何去评判语言模型的好坏?这时,困惑度就可以发挥作用了。一般来讲,用于评判语言模型的测试集均是合理的、高质量的语料,只要语言模型在测试集上的困惑度越高,则代表语言模型训练地越好,反之亦然。

在了解了语句概率的计算后,则对于语句 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

perplexity=p(s)1n=p(w1,w2,...,wn)1n=1p(w1,w2,...,wn)n=i=1n1p(wi|w1,w2,...,wi1)n
perplexity=p(s)n1=p(w1,w2,...,wn)n1=np(w1,w2,...,wn)1 =ni=1np(wiw1,w2,...,wi1)1 显然,测试集中句子的概率越大,困惑度也就越小。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/599001
推荐阅读
相关标签
  

闽ICP备14008679号