【发布时间】:2023-04-01 11:35:01
【问题描述】:
我想通过使用 Scikit-learn 对我的预测计算 f1_score 来评估机器学习系统。然而,结果并不如预期。调用混淆矩阵显示
[[ 3 11]
[ 5 31]]
如果我手动计算 f1 分数为 2*(precision * recall) / (precision + recall),我得到 2*(3/8 * 31/42)/(3/8 + 31/42) = 0.497。但是调用 f1_score(y_true, y_pred, average="binary") 得到 0.7949。有人解释一下吗?
即使当真正的标签混合在一起时,我调用 f1_score 时始终预测为 1,但我得到的还是高分而不是 0,并带有我期待的警告。我怀疑 f1_score 不是我对 avg="binary" 的期望,但我无法理解它。
我的 scikit-learn 版本是 0.21.3。
感谢您的帮助。
【问题讨论】:
标签: python scikit-learn