В соответствии с документацией Scikit Learn, показатель коэна каппа может быть рассчитан следующим образом:
from sklearn.metrics import cohen_kappa_score
y_true = [1, 0, 1, 1, 1, 1]
y_pred = [1, 0, 1, 1, 1, 1]
print(cohen_kappa_score(y_true, y_pred)
1
, где 0 и 1 - метки, назначенные аннотаторами.
однако, если оба аннотаторы никогда не назначают второй ярлык (например, 0), тогда оценка равна nan! который должен быть 1 (если я не ошибаюсь), так как оба аннотатора согласились.
from sklearn.metrics import cohen_kappa_score
y_true = [1, 1, 1, 1, 1, 1]
y_pred = [1, 1, 1, 1, 1, 1]
print(cohen_kappa_score(y_true, y_pred)
packages/sklearn/metrics/_classification.py:604: RuntimeWarning: invalid value encountered in true_divide
k = np.sum(w_mat * confusion) / np.sum(w_mat * expected)
nan
Чего мне не хватает?
Обновление: я нашел это в выпусках github: https://github.com/scikit-learn/scikit-learn/issues/9624
Все еще не понял, что это идеальное случайное соглашение, где его следует учитывать как правильная аннотация