confusionmat
计算混淆矩阵的分类问题
语法
描述
例子
显示混淆矩阵
显示数据的混淆矩阵有两个错误,一个失踪的分类。
创建向量组和预测组。
g1 = (3 2 2 3 1 1) ';%被组g2 =[4 2 3南1 1]';%预测组
返回混淆矩阵。
C = confusionmat (g1, g2)
C =4×42 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0
指数的混淆矩阵的行和列C
是相同的和默认的顺序安排的吗(g1, g2)
,也就是说,(1、2、3、4)
。
混淆矩阵表明,组1的两个数据点已知正确分类。2组,一组数据点分类错误的3。同样,一个已知的数据点在3组被误诊成4组。confusionmat
将南
在分组变量值g2
作为一个缺失值和不包括它的行和列C
。
情节混淆矩阵的混淆矩阵表使用confusionchart
。
confusionchart (C)
你不需要计算混淆矩阵,然后情节。相反,情节混淆矩阵图直接从真实和预测标签使用confusionchart
。
厘米= confusionchart (g1, g2)
厘米= ConfusionMatrixChart属性:NormalizedValues: [4 x4双]ClassLabels: [4 x1双]显示所有属性
的ConfusionMatrixChart
对象存储的数字混淆矩阵NormalizedValues
属性和类ClassLabels
财产。使用点符号显示这些属性。
cm.NormalizedValues
ans =4×42 0 0 0 0 1 1 0 0 0 0 1 0 0 0 0
cm.ClassLabels
ans =4×11 2 3 4
指定组混淆矩阵的顺序
显示数据的混淆矩阵有两个错误,一个失踪分类,并指定该组织秩序。
创建向量组和预测组。
g1 = (3 2 2 3 1 1) ';%被组g2 =[4 2 3南1 1]';%预测组
指定组织秩序和返回混淆矩阵。
C = confusionmat (g1, g2,“秩序”[4 3 2 1])
C =4×40 0 0 0 1 0 0 0 0 1 1 0 0 0 0 2
指数的混淆矩阵的行和列C
的顺序是相同的,并安排由集团指定的顺序,也就是说,(4、3、2、1)
。
混淆矩阵的第二行C
显示一个数据点已知组3分类错误组4。的第三行C
显示一个数据点属于组2被误诊为组3,和第四行显示两个数据点在组1被分类正确。confusionmat
将南
在分组变量值g2
作为一个缺失值和不包括它的行和列C
。
混淆矩阵的分类
对样本进行分类的fisheriris
数据集和显示结果分类混淆矩阵。
加载费雪的虹膜数据集。
负载fisheriris
随机数据的测量和组。
rng (0,“旋风”);%的再现性numObs =长度(物种);p = randperm (numObs);量=量(p:);物种=物种(p);
火车判别分析分类器通过使用测量上半年的数据。
一半=地板(numObs / 2);培训=量(1:一半,:);trainingSpecies =物种(1:一半);Mdl = fitcdiscr(培训、trainingSpecies);
预测下半年标签的测量数据通过使用训练分类器。
示例=量(5 + 1:最终,);grouphat =预测(Mdl、样本);
指定组秩序和显示结果分类混淆矩阵。
组=物种(5 + 1:结束);[C,顺序]= confusionmat(组、grouphat“秩序”,{“setosa”,“多色的”,“virginica”})
C =3×329日22 0 0 0 2 0 0 22
订单=3 x1细胞{' setosa}{“癣”}{' virginica '}
混淆矩阵表明,测量属于setosa virginica分类正确,而两个测量并被错误地归类为virginica属于杂色的。输出订单
包含的顺序混淆矩阵的行和列指定的序列组订单{“setosa”、“癣”、“virginica '}
。
混淆矩阵分类使用高数组
执行一系列高的分类fisheriris
的数据集,计算已知的混淆矩阵,预测高标签使用confusionmat
函数,绘制混淆矩阵使用confusionchart
函数。
当你执行计算高数组,MATLAB®使用一个平行池(默认如果你有并行计算工具箱™)或当地的MATLAB会话。如果你想运行这个示例使用当地的MATLAB会话并行计算工具箱后,你可以改变全球执行环境使用mapreduce
函数。
加载费雪的虹膜数据集。
负载fisheriris
把内存中的数组量
和物种
高大的数组。
tx =高(量);
开始平行池(parpool)使用“本地”概要文件…连接到平行池(工人数量:6)。
泰=高(物种);
在高数组找到观测的数量。
numObs =收集(长度(ty));%收集收集高数组到内存中
设置使用随机数生成器的种子rng
和tallrng
再现性和随机选择训练样本。结果取决于工人的数量和执行环境高数组。有关详细信息,请参见控制你的代码运行。
rng (“默认”)tallrng (“默认”)numTrain =地板(numObs / 2);[txTrain, trIdx] = datasample (tx numTrain,“替换”、假);tyTrain =泰(trIdx);
适合一个决策树分类器模型的训练样本。
mdl = fitctree (txTrain tyTrain);
评估高表达式使用并行池“当地”:——通过1 2:在3.9秒完成,通过2 2:在1.5秒完成评估在7.3秒完成评估高表达式使用并行池“当地”:——通过1 4:在0.88秒完成,通过2 4:在1.6秒完成,通过3 4:在4秒完成,通过4 4:在2.7秒完成评估在11秒完成评估高表达式使用并行池“当地”:——通过1 4:在0.54秒完成,通过2 4:在1.2秒完成,通过3 4:完成在3秒-通过4 4:在2秒完成评估在7.6秒完成评估高表达式使用并行池“当地”:——通过1 4:在0.51秒完成,通过2 4:在1.3秒完成,通过3 4:在3.1秒完成,通过4 4:在2.5秒完成评估在8.5秒完成评估高表达式使用并行池“当地”:——通过1 4:在0.42秒完成,通过2 4:在1.2秒完成,通过3 4:完成在3秒-通过4 4:在2.1秒完成评估在7.6秒完成
预测测试样本的标签使用训练模型。
txt = tx (~ trIdx:);标签=预测(mdl, txt);
计算结果的混淆矩阵分类。
tyTest =泰(~ trIdx);[C,顺序]= confusionmat (tyTest、标签)
C = M×N×……高大的数组?吗?吗?…吗?吗?吗?…吗? ? ? ... : : : : : : Preview deferred. Learn more. order = M×N×... tall array ? ? ? ... ? ? ? ... ? ? ? ... : : : : : : Preview deferred. Learn more.
使用收集
函数执行的延迟计算并返回结果confusionmat
在内存中。
收集(C)
评估高表达式使用并行池“当地”:通过1对1:在1.9秒完成评估在2.3秒完成
ans =3×320 30 0 0 1 2 0 0 22
收集(顺序)
评估高表达式使用并行池“当地”:评估在0.032秒完成
ans =3×1细胞{' setosa}{“癣”}{' virginica '}
混淆矩阵显示三个测量杂色的类被误诊。所有的测量属于setosa和virginica正确分类。
计算和绘制混淆矩阵,使用confusionchart
代替。
厘米= confusionchart (tyTest标签)
评估高表达式使用并行池“当地”:通过1对1:在0.34秒完成评估在0.6秒完成评估高表达式使用并行池“当地”:通过1对1:在0.48秒完成评估在0.67秒完成
厘米= ConfusionMatrixChart属性:NormalizedValues:[3×3双]ClassLabels:{} 3×1细胞显示所有属性
显示矩阵的频率
使用confusionmat
函数来创建一个矩阵显示的航班数量之间的旅游机场一个高大的列表中列出。
当你执行计算高数组,MATLAB®使用一个平行池(默认如果你有并行计算工具箱™)或当地的MATLAB会话。要运行示例使用当地的MATLAB会话并行计算工具箱后,改变全球执行环境使用mapreduce
函数。
mapreduce (0)
创建一个数据存储airlinesmall.csv
数据集。治疗“NA”
值缺失的数据,这样他们所取代南
值。选择的变量起源
和桌子
包括数据存储。
varnames = {“起源”,“桌子”};ds =数据存储(“airlinesmall.csv”,“TreatAsMissing”,“NA”,…“SelectedVariableNames”,varnames);
创建一个高数据存储中的数据的数组。因为数据在ds
是表格,结果是一个高大的表。如果数据没有表格高
创建一个高的单元阵列。
T =高(ds)
T =(高表起源Dest ____ ____{“宽松”}{‘SJC} {‘SJC}{“钻”}{‘圣’}{SMF的}{“钻”}{‘SJC} {SMF的}{“宽松”}{“宽松”}{‘SJC}{‘圣’}{“旧金山”}{‘海’}{“宽松”}::::
高的显示表显示的行数的数据是未知的。
创建一个矩阵显示列之间的航班数量T.Origin
和T.Dest
。这个矩阵不是混淆矩阵,因为两列不包含已知从分类和预测价值。然而,您可以使用confusionmat
函数创建一个矩阵的频率。
(助教、结核病)= confusionmat (T.Origin T.Dest)
ta = MxNx……高大的数组?吗?吗?…吗?吗?吗?…吗? ? ? ... : : : : : : tb = MxNx... tall array ? ? ? ... ? ? ? ... ? ? ? ... : : : : : :
执行延迟计算通过使用收集
函数,返回的结果confusionmat
在内存中。
[freqMatrix, airportOrder] =收集(助教、结核病);
评估高表达式使用当地的MATLAB会话:通过1 1:在2.5秒完成评估在3.2秒完成
显示矩阵的前五行freqMatrix
和相应的行和列的顺序airportOrder
。
:freqMatrix (1:5)
ans =5×3230 153 169 0 91 161 322 0 44 6 56 24 0 0 23 180 122 150 63 77 134 51 37 10 0 3 0 1 311 0 15 0 32 0 9 2 15 12 293 81 30 53 20 38 1 73 0 41 168 0 75 59 79 76 0 6 14 0 1 0 0 0 51 54 60 0 5 0 1 5 0 0 0 0 1 0 0 0 0 0 8 67 55 50 0 0 0 0 18 1 59 1 0 0 11 0 4 187 87 0 0 78 39 120 0 14 1 18 19 0 0 0 98 95 2 19 3 14 14 72 108 0 0 0 0 0 0 0 0 1 0 1 31 4 14 0 1 0 3 9 172 5 13 0 21 0 10 0 0 0 61 58 25 83 23 3 2 1 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 0 0 21日13 87 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 67 114 88 73 0 70 20 5 4 47 1 3 0 0 0 39 40 0 1 0 0 3 57 50 0 0 0 0 0 0 0 0 1 0 1 28 1 0 0 0 0 0 2 58 5 0 0 21 0 0
airportOrder (1:5)
ans =5 x1细胞{“宽松”}{‘SJC}{‘圣’}{“钻”}{SMF的}
矩阵freqMatrix
显示的航班出发地机场(行)到目的地机场(列)。例如,总共168年
航班离开SJC
和到达宽松的
(见freqMatrix (2, 1)
)。同样的,88年
航班离开SMF
和到达圣
(见freqMatrix (5,3)
)。正如前面提到的,freqMatrix
不是一个混淆矩阵,但显示了一个机场之间的航班。正如所料,对角元素都是0,因为来源和目的地机场总是不同的。
输入参数
grouporder
- - - - - -组订单
数值向量|逻辑向量|字符数组|字符串数组|单元阵列的特征向量|分类向量
组,指定为一个数值向量,逻辑向量,字符数组,字符串数组,单元阵列特征向量,或分类向量。
grouporder
是一个分组变量包含所有的元素集团
和grouphat
。指定grouporder
定义的行和列的顺序C
。如果grouporder
包含的元素并不在集团
或grouphat
,相应的条目C
是0
。
默认情况下,该组织顺序取决于的数据类型s =[集团;grouphat]
:
对数字和逻辑向量,订单的顺序
年代
。对于分类向量,秩序是返回的顺序
。类别
(年代)对于其他数据类型,秩序是第一次出现在的顺序
年代
。
例子:“秩序”,{“setosa”、“癣”,“virginica”}
数据类型:单
|双
|逻辑
|字符
|字符串
|细胞
|分类
输出参数
C
——混淆矩阵
矩阵
混淆矩阵,作为一个方阵的大小等于返回不同的元素的总数集团
和grouphat
参数。C (i, j)
观察组已知的数吗我
但预计集团j
。
的行和列C
有相同的顺序相同的指数。默认情况下,该组织顺序取决于的数据类型s =[集团;grouphat]
:
对数字和逻辑向量,订单的顺序
年代
。对于分类向量,秩序是返回的顺序
。类别
(年代)对于其他数据类型,秩序是第一次出现在的顺序
年代
。
改变订单,指定grouporder
,
的confusionmat
函数把南
空的,“定义”
分组变量中的值作为缺失值,不包括他们的行和列C
。
订单
行和列的顺序
数值向量向量| | |逻辑向量分类单元阵列的特征向量
行和列的顺序C
,作为一个数值向量,返回逻辑向量,分类向量,或单元阵列特征向量。如果集团
和grouphat
字符数组,字符串数组,数组或单元的特征向量,然后变量订单
是一个单元阵列的特征向量。否则,订单
相同类型的是吗集团
和grouphat
。
选择功能
使用
confusionchart
混淆矩阵计算和情节。此外,confusionchart
显示有关您的数据的汇总统计和排序的类来说混淆矩阵根据精度(阳性预测值)来说回忆(真阳性),或总数正确分类的观察。
扩展功能
高大的数组
计算和数组的行比装入内存。
这个函数完全支持高数组。金宝app有关更多信息,请参见高大的数组。
版本历史
介绍了R2008b
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup金宝appportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。