cohen_kappa_score#

sklearn.metrics.cohen_kappa_score(y1, y2, *, labels=None, weights=None, sample_weight=None)[source]#

计算 Cohen's kappa (科恩卡帕系数):衡量注释者之间一致性的统计量。

此函数计算 Cohen's kappa [1],该分数表示两个注释者在分类问题上的一致程度。其定义为

\[\kappa = (p_o - p_e) / (1 - p_e)\]

其中 \(p_o\) 是任意样本标签经验一致性的概率(观察到的一致性比率),\(p_e\) 是当两个注释者随机分配标签时的预期一致性。\(p_e\) 是根据每个注释者对类别标签的经验先验估计得出的 [2]

用户指南中了解更多信息。

参数:
y1形状为 (n_samples,) 的类数组对象

第一个注释者分配的标签。

y2形状为 (n_samples,) 的类数组对象

第二个注释者分配的标签。kappa 统计量是对称的,因此交换 y1y2 不会改变其值。

labels形状为 (n_classes,) 的类数组对象,默认为 None

用于索引矩阵的标签列表。这可用于选择标签的子集。如果为 None,则使用在 y1y2 中至少出现一次的所有标签。请注意,labels 中必须至少有一个标签

存在于 y1 中,尽管此函数在其他方面对 y1y2 的顺序不敏感。

weights{‘linear’, ‘quadratic’},默认为 None

计算分数的加权类型。None 表示不加权;“linear”表示线性加权;“quadratic”表示二次加权。

sample_weight形状为 (n_samples,) 的类数组对象,默认为 None

样本权重。

返回:
kappa浮点数

kappa 统计量,一个介于 -1 和 1 之间的数字。最大值表示完全一致;零或更低表示偶然一致。

参考文献

示例

>>> from sklearn.metrics import cohen_kappa_score
>>> y1 = ["negative", "positive", "negative", "neutral", "positive"]
>>> y2 = ["negative", "positive", "negative", "neutral", "negative"]
>>> cohen_kappa_score(y1, y2)
0.6875