【发布时间】:2020-08-21 17:56:15
【问题描述】:
我想获得每个班级(我有 4 个班级)和每个交叉验证折叠的 F1 分数。 clf 是我训练的模型, X_test 是特征, y_test 是测试集的标签。由于我正在进行 5 折交叉验证,因此我应该在第一折中为每个班级获得 4 个 F1 分数,在第二折中获得 4 个……总共 20 个。我可以在 python 中以简单的方式做到这一点吗?
以下行将为我提供所有类的平均 F1,每个折叠只有 5 个值。我检查了 cross_val_score (https://scikit-learn.org/stable/modules/model_evaluation.html) 中变量 scoring 的选项,似乎我无法在每个折叠中获得每个班级的 F1 分数(或者我可能在某个地方迷路了)。
scores = cross_val_score(clf, X_test, y_test, cv=5, scoring='f1_macro')
【问题讨论】:
标签: python cross-validation multilabel-classification