主要内容

confusionchart

为分类问题创建混淆矩阵图表

描述

例子

ConfusionChart(trueLabelspredictedLabels从真实标签创建一个混淆矩阵图trueLabels和预测的标签predictedLabels并返回一个ConfusionMatrixChart对象。混淆矩阵的行对应真实的类,列对应预测的类。对角线和非对角线细胞分别对应正确和错误分类的观察。使用厘米在创建混乱矩阵图后修改它。有关属性列表,请参见ConfusionMatrixChart属性

例子

ConfusionChart(从数字混淆矩阵创建混淆矩阵图表.如果您在工作空间中已经有一个数字混淆矩阵,请使用此语法。

例子

ConfusionChart(ClassLabels.控件中显示的类标签x-axis和y-轴。如果您已经在工作区中有一个数字混淆矩阵和类标签,请使用此语法。

ConfusionChart(___在指定的图形、面板或制表符中创建混淆图

ConfusionChart(___名称,值指定附加的ConfusionMatrixChart属性使用一个或多个名称-值对参数。在所有其他输入参数之后指定属性。有关属性列表,请参见ConfusionMatrixChart属性

厘米= confusionchart (___返回ConfusionMatrixChart对象。使用厘米要在创建它后修改图表的属性。有关属性列表,请参见ConfusionMatrixChart属性

例子

全部折叠

为分类问题加载一个预测标签和真实标签的样本。trueLabels是图像分类问题的真正标签predictedLabels是卷积神经网络的预测。

负载(“Cifar10Labels.mat”“trueLabels”“predictedLabels”);

创建混淆矩阵图表。

figure cm = confusionchart(true,predictedLabels);

Figure包含一个confusimatrixchart类型的对象。

通过更改属性值来修改混淆矩阵图的外观和行为。添加列和行摘要和标题。列归一化列摘要显示每个预测类的正确和错误分类的观察的数量,作为相应预测类的观察次数的百分比。行标准化的行摘要显示每个真级的正确和错误分类的分类的数量,作为相应的真实类别的观察次数的百分比。

cm.columnsummary =“column-normalized”;厘米。RowSummary ='行标准化';厘米。Title ='CiFar-10混乱矩阵'

Figure包含一个confusimatrixchart类型的对象。《混淆矩阵图》的图表标题为《CIFAR-10混淆矩阵》。

您可以使用confusionchart用数字混淆矩阵创建混淆矩阵图表。

加载一个样本混淆矩阵和相关的类标签ClassLabels.

负载(“Cifar10ConfusionMat.mat”'M'“classLabels”);米
m =10×10923年4 21日8 4 1 5 5 23日6 5 972 2 0 0 0 0 1 5 15 26 892 30 13 8 17 5 4 3 12 4 32 826 24 48 30 12 5 7 5 1 898年28日24日13 14 14 2 1 2 7 28 111 18 801 13 17 0 3 5 0 943年16日27日3 4 1 1 0 9 1 14 13 915年22日17日3 2 4 37 10 4 4 0 1 2 1 931 10 20 39 3 3 0 0 2 1 9 923
ClassLabels.
classLabels =10x1分类飞机汽车鸟猫鹿狗青蛙马船卡车

从数字混淆矩阵和类标签创建混淆矩阵图表。

CM = ConfusionChart(M,ClassLabels);

Figure包含一个confusimatrixchart类型的对象。

为分类问题加载一个预测标签和真实标签的样本。trueLabels真正的标签是一个图像分类问题和predictedLabels是卷积神经网络的预测。使用列和行摘要创建混淆矩阵图表

负载(“Cifar10Labels.mat”“trueLabels”“predictedLabels”);figure cm = confusionchart(true标签,predicted标签,...“ColumnSummary”“column-normalized”...“RowSummary”'行标准化');

Figure包含一个confusimatrixchart类型的对象。

要按类别回忆(真阳性率)对混淆矩阵的类别进行排序,需要对每一行的单元格值进行规范化,即按具有相同真类别的观察数进行规范化。按照相应的对角线单元格值对类进行排序,并重新设置单元格值的标准化。这些类现在被排序,这样行摘要右边蓝色单元格中的百分比就会减少。

厘米。归一化='行标准化';sortClasses(厘米,'下降对角线');厘米。归一化=“绝对”

Figure包含一个confusimatrixchart类型的对象。

要按类的精度(阳性预测值)对类进行排序,需要对每一列的单元格值进行规范化,即按具有相同预测类的观察结果的数量进行规范化。按照相应的对角线单元格值对类进行排序,并重新设置单元格值的标准化。这些类现在是这样排序的:在底部的列摘要中,蓝色单元格中的百分比正在减少。

厘米。归一化=“column-normalized”;sortClasses(厘米,'下降对角线');厘米。归一化=“绝对”

Figure包含一个confusimatrixchart类型的对象。

输入参数

全部折叠

分类问题的真标签,指定为分类向量、数字向量、字符串向量、字符数组、字符向量单元数组或逻辑向量。如果trueLabels是一个向量,那么每个元素对应一个观测值。如果trueLabels是字符数组,则它必须是二维的,每行对应于一个观察的标签。

预测分类问题标签,指定为分类矢量,数字矢量,字符串向量,字符数组,字符向量或逻辑向量的单元数组。如果predictedLabels是一个向量,那么每个元素对应一个观测值。如果predictedLabels是字符数组,则它必须是二维的,每行对应于一个观察的标签。

混淆矩阵,指定为矩阵。必须是正方形,其元素必须是正整数。元素m (i, j)次数是观察到的吗真正的课程预计是如此j类。混淆矩阵图的每个彩色单元格对应于混淆矩阵的一个元素

混淆矩阵图的类标签,指定为类别向量、数字向量、字符串向量、字符数组、字符向量单元格数组或逻辑向量。如果ClassLabels.是一个向量,那么它必须具有与混淆矩阵的行和列相同的元素数。如果ClassLabels.是字符数组,则它必须是二维的,每行对应于一个类的标签。

父容器,指定为数字控制板标签TiledChartLayout.,或GridLayout对象。

名称-值参数

指定可选的逗号分隔的对名称,值论点。的名字参数名和价值是相应的价值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:CM = ConfusionChart(Truilabels,PredgeGightLabels,'标题','我的标题文本','columnsummary','列归一化')

请注意

这里列出的属性只是一个子集。有关完整列表,请参见ConfusionMatrixChart属性

混淆矩阵图的标题,指定为字符向量或字符串标量。

例子:cm = confusionchart(__,'Title','My Title Text')

例子:cm.title ='我的标题文本'

CUNDUSION MATIX图表的列摘要,指定为以下之一:

选项 描述
“关闭” 不要显示列摘要。
“绝对” 显示每个预测类正确和错误分类观察的总数。
“column-normalized” 显示每个预测类正确和错误分类的观察数,作为相应预测类的观察数的百分比。正确分类的观察的百分比可以被认为是阶级的精确度(或积极的预测值)。
'全归一化' 显示每个预测类的正确和错误分类的观察的数量,作为观察总数的百分比。

例子:厘米= confusionchart(__,‘ColumnSummary’,‘column-normalized’)

例子:cm.columnsummary =“column-normalized”

行摘要的混乱矩阵图,指定为以下之一:

选项 描述
“关闭” 不要显示行摘要。
“绝对” 显示每个真实类正确和错误分类观察的总数。
'行标准化' 显示每个真实类正确和错误分类的观察数,作为相应真实类的观察数的百分比。正确分类的观察的百分比可以被认为是阶级明智的回忆(或真正的阳性率)。
'全归一化' 显示正确和错误分类的数量的观察为每个真实类的百分比的总观察数量。

例子:厘米= confusionchart(__,‘RowSummary’,‘row-normalized’)

例子:厘米。RowSummary = ' row-normalized '

单元格值的归一化,指定为下列之一:

选项 描述
“绝对” 显示每个单元格中观察到的总数。
“column-normalized” 根据具有相同预测类的观察的数量对每个单元格值进行规范化。
'行标准化' 通过具有相同真实类的观察数来归一化每个单元值。
'全归一化' 通过观察总数正常化每个细胞值。

修改单元格值的标准化也会影响单元格的颜色。

例子:厘米= confusionchart(__“正常化”,“total-normalized”)

例子:厘米。归一化= ' total-normalized '

输出参数

全部折叠

ConfusionMatrixChart对象,它是独立的可视化.使用厘米在创建混乱矩阵图之后设置其属性。

限制

  • MATLAB®不支持代码生成万博1manbetxConfusionMatrixChart对象。

更多关于

全部折叠

独立的可视化

独立可视化是为特殊目的而设计的图表,它独立于其他图表。不像其他图表情节冲浪,独立可视化具有内置的预先配置的axes对象,一些定制是不可用的。独立可视化也有这些特点:

  • 它不能与其他图形元素组合,例如行,修补程序或曲面。就这样持有命令不支持。万博1manbetx

  • gca函数可以将图表对象返回为当前轴。

  • 您可以将图表对象传递给许多接受轴对象作为输入参数的MATLAB函数。例如,您可以将图表对象传递给标题函数。

提示

  • 如果您有一个热点(n中的一个)数据,请使用onehotdecode准备您的数据进行使用confusionchart.例如,假设你有真实的标签目标和预测的标签产出,将观察结果按列排列。你可以使用

    numClasses =大小(目标1);trueLabels = onehotdecode(目标1:numClasses, 1);predictedLabels = onehotdecode(输出,1:numClasses, 1);confusionchart (trueLabels predictedLabels)

  • 如果您有统计和机器学习工具箱™,可以为高阵列创建混淆矩阵图。有关详细信息,请参阅confusionchart(统计学和机器学习工具箱)高数组分类的混淆矩阵(统计学和机器学习工具箱)

介绍了R2018b