【发布时间】:2020-08-05 09:06:41
【问题描述】:
我有一些分类器。我想用classification_report获取分类器的指标
我使用cross_val_predict 获取预测,然后将它们传递给classification_report。
我还使用cross_val_predict 的输出来绘制混淆矩阵。
labels = get_labels() #ground truth
result = cross_val_predict(classifier, features, labels, cv=KFold(n_splits=10, shuffle=True, random_state=seed))
report = classification_report(labels, result, digits=3, target_names=['no', 'yes'], output_dict=True)
cm = confusion_matrix(result, labels, [no, yes])
在cross_val_predict 文档中:
将这些预测传递到评估指标中可能不是衡量泛化性能的有效方法。结果可能与 cross_validate 和 cross_val_score 不同,除非所有测试集的大小都相同,并且指标在样本上分解。
那么,这是错误的做法吗?我该怎么做?
【问题讨论】:
标签: python scikit-learn classification