问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

【深度学习】关于Kappa系数、二次加权Kappa系数(QWK)

创作时间:
作者:
@小白创作中心

【深度学习】关于Kappa系数、二次加权Kappa系数(QWK)

引用
CSDN
1.
https://blog.csdn.net/WS_Change/article/details/132510052

关于Kappa系数、二次加权Kappa系数

Kappa系数

1. 定义

Kappa系数是统计学中度量一致性的指标,值在[-1,1]之间。对于评分系统,一致性就是不同打分人平均的一致性;对于分类问题,一致性就是模型预测结果和实际分类结果是否一致。

Kappa系数的计算是基于混淆矩阵,取值为-1到1之间,通常大于0。基于混淆矩阵的Kappa系数计算公式如下:

$$
kappa=\frac{p_o-p_e}{1-p_e}
$$

其中:

  • $p_o$ 为预测的准确率,也可理解为预测的一致性
  • $p_o=\frac{对角线元素之和}{整个矩阵的元素之和}$,也就是ACC。
  • $p_e$ 表示偶然一致性
  • $p_e=\frac{\sum_i第i行元素之和\times第i列元素之和}{\rm(\sum矩阵所有元素)^2}$,也就是所有类别分别对应“实际与预测数量的乘积”总和除以“样本总数的平方”。

Kappa值含义:

  • -1:完全不一致
  • 0: 偶然一致
  • 0.0~0.20: 极低的一致性(slight)
  • 0.21~0.40: 一般的一致性(fair)
  • 0.41~0.60: 中等的一致性(moderate)
  • 0.61~0.80: 高度的一致性(substantial)
  • 0.81~1: 几乎完全一致(almost perfect)

2. 使用Kappa的原因

分类问题中,最常见的评价指标是acc,它能够直接反映分正确的比例,同时计算非常简单。但是实际的分类问题中,各个类别的样本数量往往不太平衡。在这种不平衡数据集上如不加以调整,模型很容易偏向大类别而放弃小类别(eg: 正负样本比例1:9,直接全部预测为负,acc也有90%。但正样本就完全被“抛弃”了)。此时整体acc挺高,但是部分类别完全不能被召回

这时需要一种能够惩罚模型的“偏向性”的指标来代替acc。而根据kappa的计算公式,越不平衡的混淆矩阵,$p_e$ 越高,kappa值就越低,正好能够给“偏向性”强的模型打低分。

Kappa系数计算示例

混淆矩阵:

成绩评级
a
b
c
d
e
f
g
h
i

$$
p_o=\frac{a+e+i}{a+b+c+d+e+f+g+h+i}
$$

$$
p_e=\frac{(a+d+g)\times(a+b+c)+(d+e+f)\times(b+e+h)+(c+f+i)\times(g+h+i)}{(a+b+c+d+e+f+g+h+i)^2}
$$

将得到的$p_o$ 和$p_e$ 带入Kappa计算公式即可。

二次加权Kappa(Quadratic Weighted Kappa——QWK)

对于一些有序关系的级别得分, 使用上面简单的计算方法存在一些问题。 比如在疾病预判时, 假设病人是无病的, 一个医生预测为得病且特别严重, 另一个医生预测为得病且中度. 很明显, 第一个医生的预测结果更加不可接受。 所以, 我们要在计算kappa值时加入权重的概念, 以区分这种预测结果的后果程度。

其中,$w_{i,j}$ 是平方加权,$O_{i,j}$ 为观察矩阵中的元素,$E_{i,j}$ 为期望矩阵中的元素,N为分类的总类数,二次加权Kappa的数学计算公式为:

$$
k=1-\frac{\sum_{i,j}w_{i,j}O_{i,j}}{\sum_{i,j}w_{i,j}E_{i,j}}
$$

$$
w_{i,j}=\frac{(i-j)^2}{(N-1)^2}
$$

$$
E_{i,j}=\frac{(x\times y)}{n\times m}
$$

【注】$E_{i,j}$ 为自己写出的公式,根据参考资料的文字描述得出。

上面的公式当中的i和j,代表的是矩阵中元素所在位置的行数和列数,如下表中的a对应的i=1,j=1,以此类推。而x 代表元素所在行的元素之和,y 代表元素所在列的元素之和,n 代表该矩阵的行的元素总数,m 代表该矩阵的列的元素总数。网上很多帖子都没有说清楚公式中字母的含义,导致初期看的很困惑,下面举个很“常见”的例子:

这里的N=2,i=j=2。

完整的计算公式应该如下:

$$
\sum_{i,j}w_{i,j}O_{i,j}=\frac{(1-1)^2}{(2-1)^2}\times22+\frac{(1-2)^2}{(2-1)^2}\times2+\frac{(2-1)^2}{(2-1)^2}\times4+\frac{(2-2)^2}{(2-1)^2}\times11\=0\times22+1\times2+1\times4+0\times11=6
$$

根据该表我们还可以算出他的期望矩阵E ,如下表所示:

以表格中a为例,$E_{1,1}=\large\frac{(24\times26)}{39}=16$,其他元素以此类推。

$$
\sum_{i,j}w_{i,j}E_{i,j}=\frac{(1-1)^2}{(2-1)^2}\times\frac{(24\times26)}{39}+\frac{(1-2)^2}{(2-1)^2}\times\frac{(24\times13)}{39}+\frac{(2-1)^2}{(2-1)^2}\times\frac{(15\times26)}{39}+\frac{(2-2)^2}{(2-1)^2}\times\frac{(15\times13)}{39}\ =0\times16+1\times8+1\times10+0\times5=18
$$

所以最终的二次加权Kappa系数就等于$k=1-{\large\frac{6}{18}}=0.67$

来源:
二次加权kappa计算公式
kappa与quadratic weighted kappa

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号