NLP常见评价指标

困惑度 是语言模型的一个衡量标准。因为单纯序列的似然概率是一个难以理解、难以比较的数字。 毕竟,较短的序列比较长的序列更有可能出现, 因此评估模型产生长篇巨著《战争与和平》的可能性会比产生中篇小说《小王子》可能性要小得多。

一个好的语言模型应该能让我们准确地预测下一个词元。 所以我们可以通过一个序列中 所有的 n 个词元的交叉熵损失的平均值 来衡量:

1 n − ∑ t = 1 n log P ( x t ∣ x 1 , ⋯ , x t − 1 ) \frac{1}{n} – \sum_{t=1}^n \text{log }P(x_t|x_1, \cdots, x_{t-1})n 1 ​−t =1 ∑n ​log P (x t ​∣x 1 ​,⋯,x t −1 ​)

其中 P P P 由语言模型给出, x t x_t x t ​ 是在时间步 t t t 从该序列中观察到的实际词元。 这使得不同长度的文档的性能具有了可比性。 由于历史原因,自然语言处理的科学家更喜欢使用一个叫做困惑度(perplexity)的量。 简而言之,它是上式的指数:

exp ( 1 n − ∑ t = 1 n log P ( x t ∣ x 1 , ⋯ , x t − 1 ) ) \text{exp}\Big(\frac{1}{n} – \sum_{t=1}^n \text{log }P(x_t|x_1, \cdots, x_{t-1})\Big)exp (n 1 ​−t =1 ∑n ​log P (x t ​∣x 1 ​,⋯,x t −1 ​))

如果是使用神经网络来编码语言模型,那么神经网络的输出loss的均值的指数值,即为一个句子的困惑度

  • 在最好的情况下,模型总是完美地估计标签词元的概率为1。 在这种情况下,模型的困惑度为1。
  • 在最坏的情况下,模型总是预测标签词元的概率为0。 在这种情况下,困惑度是正无穷大。

BLEU(bilingual evaluation understudy) 最早提出时是用于评估机器翻译的结果, 但现在它已经被广泛用于测量许多应用的输出序列的质量。 BLEU的定义为:

exp ( m i n ( 0 , 1 − l e n l a b e l l e n p r e d ) ) ∏ n = 1 k p n 1 / 2 n \text{exp}(min(0,1−\frac{len_{label}}{len_{pred}})) \prod_{n=1}^{k} p_n^{1/2^n}exp (m i n (0 ,1 −l e n p r e d ​l e n l a b e l ​​))n =1 ∏k ​p n 1 /2 n ​

其中 l e n l a b e l len_{label}l e n l a b e l ​ 表示标签序列中的词元数, l e n p r e d len_{pred}l e n p r e d ​ 表示预测序列中的词元数,k k k 是用于匹配的最长的 n-gram 。

另外,p n p_n p n ​ 表示 n-gram 的精确度,它是两个数量的比值: 第一个是预测序列中与标签序列匹配的 n-gram 的数量(注:只要预测序列中的 n-gram 在标签序列的 n-gram 中也存在即认为是匹配;如果预测序列中的某个 n-gram 出现了 i 次,而该 n-gram 在标签序列中出现了 j 次,那么算 min(i,j) 次匹配), 第二个是预测序列中 n-gram 的数量。

举例来说,给定标签序列 A , B 、 C 、 D 、 E 、 F 和预测序列 A 、 B 、 B 、 C 、 D , 则 p 1 = 4 5 , p 2 = 3 4 , p 1 = 1 3 , p 1 = 0 2 p_1 = \frac{4}{5},p_2 = \frac{3}{4},p_1 = \frac{1}{3},p_1 = \frac{0}{2}p 1 ​=5 4 ​,p 2 ​=4 3 ​,p 1 ​=3 1 ​,p 1 ​=2 0 ​。
\quad
以 p 2 p_2 p 2 ​ 为例具体说明:预测序列中的 2-gram 为: AB, BB, BC, CD,标签序列中的 2-gram 为:AB, BC, CD, DE, EF。因此预测序列中与标签序列匹配的 2-gram 有:AB, BC, CD ⇒ \Rightarrow ⇒ p 2 p_2 p 2 ​ 分母为4,分子为3.

根据上述BLEU的定义:

  • 当预测序列与标签序列完全相同时,BLEU为 1
  • 由于 n-gram 越长则匹配难度越大, 所以BLEU为更长的 n 元语法的精确度分配更大的权重。(n 越大,p n 1 / 2 n p_n^{1/2^n}p n 1 /2 n ​ 越大)
  • 由于预测的序列越短获得的 pn 值越高, 所以exp ( m i n ( 0 , 1 − l e n l a b e l l e n p r e d ) ) \text{exp}(min(0,1−\frac{{len_{label}}}{len_{pred}}))exp (m i n (0 ,1 −l e n p r e d ​l e n l a b e l ​​)) 用于惩罚较短的预测序列。当l e n l a b e l l e n p r e d > 1 \frac{len_{label}}{len_{pred}} > 1 l e n p r e d ​l e n l a b e l ​​>1 时,预测序列越短,惩罚系数exp ( m i n ( 0 , 1 − l e n l a b e l l e n p r e d ) ) \text{exp}(min(0,1−\frac{{len_{label}}}{len_{pred}}))exp (m i n (0 ,1 −l e n p r e d ​l e n l a b e l ​​)) 越小,也就是说惩罚力度越大

对于分类模型,假如有 C C C 个类别,那么对于任意类别 c c c,有:

  • 真正例(TP):样本真实类别为c c c,并且模型也预测为c c c 的数量:
    T P c = ∑ i = 1 n I ( y i = y i ^ = c ) TP_c = \sum_{i=1}^n \boldsymbol I(y_i = \hat{y_i} = c)T P c ​=i =1 ∑n ​I (y i ​=y i ​^​=c )
  • 假负例(FN):样本真实类别为c c c,但是模型将它预测为其他类别的数量:
    F N c = ∑ i = 1 n I ( y i = c ∩ y i ^ ≠ c ) FN_c = \sum_{i=1}^n \boldsymbol I(y_i = c \cap \hat{y_i} \neq c)F N c ​=i =1 ∑n ​I (y i ​=c ∩y i ​^​​=c )
  • 假正例(FP):样本真实类别为其他类别,但是模型将它预测为c c c 的数量:
    F P c = ∑ i = 1 n I ( y i ≠ c ∩ y i ^ = c ) FP_c = \sum_{i=1}^n \boldsymbol I(y_i \neq c \cap \hat{y_i} = c)F P c ​=i =1 ∑n ​I (y i ​​=c ∩y i ​^​=c )
  • 真负例(TN):样本真实类别为其他类别,并且模型也将它预测为其他类别的数量,对类别c c c 来说,这种情况一般不需要关注。

精确率,也叫 查准率,类别 c c c 的查准率是所有预测为类别 c c c 的样本中预测正确的比例:
P c = T P c T P c + F P c \mathcal{P_c} = \frac{TP_c}{TP_c+FP_c}P c ​=T P c ​+F P c ​T P c ​​

召回率,也叫 查全率,类别 c c c 的查全率是所有真实标签为类别 c c c 的样本中预测正确的比例:
R c = T P c T P c + F N c \mathcal{R_c} = \frac{TP_c}{TP_c+FN_c}R c ​=T P c ​+F N c ​T P c ​​

F1 score,是一个综合指标,为精确率和召回率的调和平均:
F c = 2 ∗ P c R c P c + R c \mathcal{F_c} = \frac{2*\mathcal{P_c}\mathcal{R_c}}{\mathcal{P_c}+\mathcal{R_c}}F c ​=P c ​+R c ​2 ∗P c ​R c ​​

计算分类算法在所有类别上的总体精确率,召回率和F1 score:
P = 1 C ∑ c = 1 C P c R = 1 C ∑ c = 1 C R c F = 2 ∗ P R P + R \begin{aligned} \mathcal{P} &= \frac{1}{C}\sum_{c=1}^C \mathcal{P_c}\ \mathcal{R} &= \frac{1}{C}\sum_{c=1}^C \mathcal{R_c}\ \mathcal{F} &= \frac{2*\mathcal{P}\mathcal{R}}{\mathcal{P}+\mathcal{R}} \end{aligned}P R F ​=C 1 ​c =1 ∑C ​P c ​=C 1 ​c =1 ∑C ​R c ​=P +R 2 ∗P R ​​

Reference:

Original: https://blog.csdn.net/muyuu/article/details/123302974
Author: muyuu
Title: NLP常见评价指标

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/531466/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球