是否可以绘制90个类的混淆矩阵?

时间:2016-02-08 15:08:32

标签: python scikit-learn

我希望为我的分类模型绘制混淆矩阵。它有大约20000个文档需要分类到90个类。我收到的混乱矩阵很大。我想绘制这个,但我似乎只能在各处找到二元分类图。是否有可能绘制这种多级混淆矩阵?我尝试了一些方法,但它没有显示清晰的方法。

这就是我的混淆矩阵的样子:

[[3919  344    0 ...,    0    0    1]
 [ 267 2739    0 ...,    0    0    0]
 [   1    6   17 ...,    0    0    0]
 ..., 
 [   4    1    0 ...,    6    0    0]
 [   0    2    0 ...,    0    0    0]
 [   6    1    0 ...,    0    0   15]]

2 个答案:

答案 0 :(得分:2)

以下是使用matplotlib的一些示例代码 (编辑:添加网格并关闭插值)

import numpy as np
import matplotlib.pyplot as plt

confmat=np.random.rand(90,90)
ticks=np.linspace(0, 89,num=90)
plt.imshow(confmat, interpolation='none')
plt.colorbar()
plt.xticks(ticks,fontsize=6)
plt.yticks(ticks,fontsize=6)
plt.grid(True)
plt.show()

enter image description here

答案 1 :(得分:0)

免责声明,

嗨,

我认为绘制混淆矩阵不是一个好的解决方案。建议您将其另存为html或csv文件。

PyCM是一个python模块,可以帮助您通过不同类型的报告(例如html报告)显示多类混淆矩阵。

有一个简单的代码可以保存html混淆矩阵报告。

cm.save_html("file_name",color=(R,G,B))