cohen_kappa_score#
- sklearn.metrics.cohen_kappa_score(y1, y2, *, labels=None, weights=None, sample_weight=None, zero_division='warn')#
计算Cohen’s kappa:一种衡量标注者之间一致性的统计量。
该函数计算Cohen’s kappa [1],这是一个表示分类问题中两个标注者之间一致性水平的分数。其定义为
\[\kappa = (p_o - p_e) / (1 - p_e)\]其中 \(p_o\) 是任何样本的标签上观察到的协议概率(观察到的协议比率),而 \(p_e\) 是当两个标注者随机分配标签时的预期协议。 \(p_e\) 使用每个标注者的类标签经验先验进行估计 [2]。
更多信息请参阅 用户指南 。
- Parameters:
- y1形状为 (n_samples,) 的类数组
第一个标注者分配的标签。
- y2形状为 (n_samples,) 的类数组
第二个标注者分配的标签。kappa统计量是对称的,因此交换
y1
和y2
不会改变其值。- labels形状为 (n_classes,) 的类数组,默认=None
用于索引矩阵的标签列表。这可以用于选择标签的子集。如果为
None
,则使用在y1
或y2
中至少出现一次的所有标签。- weights{‘linear’, ‘quadratic’}, 默认=None
计算分数的加权类型。
None
表示不加权;”linear” 表示线性加权;”quadratic” 表示二次加权。- sample_weight形状为 (n_samples,) 的类数组,默认=None
样本权重。
- zero_division{“warn”, 0.0, 1.0, np.nan}, 默认=”warn”
设置在除零时的返回值。这种情况发生在标签
y1
和y2
都只包含0类时(例如[0, 0, 0, 0]
)(或者两者都为空)。如果设置为 “warn”,返回0.0
,但也会发出警告。Added in version 1.6.
- Returns:
- kappafloat
kappa统计量,其值在 -1 和 1 之间。最大值表示完全一致;零或以下表示随机一致。
References
Examples
>>> 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