理解混淆矩阵.docx
《理解混淆矩阵.docx》由会员分享,可在线阅读,更多相关《理解混淆矩阵.docx(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、理解混淆矩阵混淆矩阵是描述分类器/分类模型的性能的表。它包含有关 分类器完成的实际和预测分类的信息,此信息用于评估分 类器的性能。请注意,混淆矩阵仅用于分类任务,因此不能用于回归模 型或其他非分类模型。在我们继续之前,让我们看看一些术语。分类器:分类器基本上是一种算法,它使用从训练数据 中获得的知识来将输入数据映射到特定类别或类别。 分类器是二元分类器或多类/多分类/多标签/多输出分类 器。 训练和测试数据:在构建分类模型/分类器时,数据集 被分成训练数据和具有相关标签的测试数据。标签是 预期的输出,它是数据所属的类别或类别。 实际分类:这是数据的预期输出(标签)。 预测分类:这是分类器为特定
2、输入数据提供的输出。一个例子:假设我们已经建立了一个分类器来将汽车的输 入图像分类为轿车或者不是轿车,我们在数据集中有一个 标记为非轿车的图像,但分类模型归类为轿车。在这种情况下,实际分类是非轿车,而预测分类是轿车。混淆矩阵的类型有两种类型的混淆矩阵: 2级混淆矩阵因此,分类器的精度为0.83,即83%如何生成混淆矩阵matplotlib. pylab as pitimport itertoolsimport numpy as npfrom sklearn. metrics import confusion_matrixdef plot_confusion matrix(cm, classes
3、, normalize=False):pit. figure (figsize = (5, 5)pit. imshow(cm, interpolation nearest, cmap pit. cm Blues)pit. title(,Confusion matrix)pit. colorbar ()tick_marks = np. arange(len(classes)pit. xticks(tick_marks, classes, rotation =90)pit. yticks(tick marks, classes) if normalize:cm = cm. astype C flo
4、at5) / cm sum(axis=l):, np. newaxis.thresh = cm. max () / 2.for i, j i n itertools. product(range(cm shape0), range(cm. shape1): pit. text(j, i, cmi, j,horizontalalignment二center”,color=white if cmi, j thresh else black)pit. tight_layout ()pit. ylabel ( Actual)pit. xlabel ( Predicted,)dict_character
5、s 二0: Non-sedan,, 1: Sedan,y_pred = model, predict(test_data)y_pred_classes = np. argmax(y_pred, axis-1)y_true = np. argmax(test_labels, axis=l)confusion_mat = confusion_matrix(y_true, y_pred_classes)plot_confusion_matrix(confusion mat, classes list(dict_characters. values ()为了生成混淆矩阵,我们利用numpy, matp
6、lotlib.pylab 来显示矩阵,来自 sklearn.metrics 包的 confusion_matrix 函数生成混淆矩阵,使用itertools进行循环/迭代。首先,我们定义一个函数plot_confusion_matrix,它将生 成的混淆矩阵和期望/可能的类作为参数,并使用 matplotlib.pylab来显示混淆矩阵。在摘录中,我们假设我们已经拥有经过培训的模型和培训 以及相关标签的测试数据。dict_characters是两个可能的类的字典,在我们的例子中, “非轿车和轿车。y_pred是分类器在测试数据模型上完成的预测数组是我们训练有素的分类器/算法test_data是
7、我们的测试数据y_pred_classes是一个相对于y_pred的索引的numpy数 组,y_pred是分类器在测试中完成的预测数组数据。y_true是相对于test_data的实际/正确标签的numpy索引 数组。testjabels是测试数据的标签列表。使用上面的内容,我们使用sklearn.metrics中的confusion_matrix函数生成混淆矩阵,传入正确的值(y_true)和分类器返回的估计值(y_pred_classes),并 将生成的混淆矩阵存储在变量confusion_mat中。然后,我们将混淆矩阵(confusion_mat)和我们可能的类 的值歹U 表(dict_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 理解 混淆 矩阵
限制150内