【发布时间】:2019-11-11 13:15:09
【问题描述】:
我正在尝试使用 sklean 包的分类报告模块评估多类分类模型。
y_pred 的维度:(1000,36) y_test的维度:(1000,36)
我尝试在 2 个数组上调用分类报告,即 y_test 和 y_pred
def display_results(y_test,y_pred,column_name=labels):
print(classification_report(y_test,y_pred,target_names=labels))
使用此代码,我得到:
ValueError: Unknown label type: (array([[1, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 1, 1, 0],
...,
[1, 0, 0, ..., 0, 0, 0],
[0, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 0, 0, 0]]), array([[1, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 0, 0, 0],
...,
[1, 0, 0, ..., 0, 0, 0],
[0, 0, 0, ..., 0, 0, 0],
[1, 0, 0, ..., 0, 0, 0]]))
我希望根据传递给函数的标签获得所有列的 Precision、Recall、F1 和总平均指标。
【问题讨论】:
-
你使用的是什么版本的 sklearn?
-
@MaximeKan sklearn 版本是'0.18.1'
-
能否请您添加变量
labels的值 -
classification_report不适用于单热编码标签 - 请参阅 this thread;但是您似乎处于 multi-label 设置中,因此在这里不起作用...
标签: scikit-learn multiclass-classification