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_weightshape 为 (n_samples,) 的 array-like, default=None

样本权重。

返回:
kappafloat

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

References

示例

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