主要内容

confusionmat

분류문제에대한혼동행렬계산

설명

예제

C= confusionmat (集团grouphat)는알려진그룹集团과예측된그룹grouphat에의해결정된혼동행렬C를반환합니다。

예제

C= confusionmat (集团grouphat“秩序”grouporder)grouporder를사용하여C의행과열의순서를지정합니다。

예제

C订单= confusimat (___)는또한위에열거된구문에나와있는입력수를사용하여C의행과열순서를변수订单에반환합니다。

예제

모두 축소

두개의오분류와한개의누락된분류가있는데이터에대한혼동행렬을@ @시합니다。

알려진그룹과예측된그룹에대한벡터를생성합니다。

G1 = [3 2 2 3 1 1]';%已知组g2 = [4 2 3 NaN 1 1]';预测组

혼동행렬을반환합니다。

C = confusimat (g1,g2)
C =4×42 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0

혼동행렬C의행과열에대한marketing덱스는동일하며,기본적으로(g1, g2)의정렬된순서,즉(1、2、3、4)로정렬됩니다。

1에이혼동행렬은그룹속하는것으로알려진두개의데이터점이올바르게분류되었음을보여줍니다。그룹2의경우,데이터점중하나가그룹3으로오분류되었습니다。또한,그룹3에속하는것으로알려진데이터점중하나가그룹4로오분류되었습니다。confusionmat는그룹화변수g2에 있는값을누락값으로처리하여C의행과열에포함시키지않습니다。

confusionchart를사용하여혼동행렬을혼동행렬차트로플로팅합니다。

confusionchart (C)

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

혼동행렬을먼저계산한후플로팅할필가없습니다。대신confusionchart를사용하여실제레이블과예측레이블에서직접혼동행렬차트를플로팅할수있습니다。

Cm =混淆图(g1,g2)

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

cm = ConfusionMatrixChart with properties: NormalizedValues: [4x4 double] ClassLabels: [4x1 double]显示所有属性

ConfusionMatrixChart객체는NormalizedValues속성에숫자형혼동행렬을저장하고ClassLabels속성에클래스를저장합니다。점` ` `기법을사용하여이러한속성을` ` ` `시합니다。

厘米。NormalizedValues
ans =4×42 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0
厘米。ClassLabels
ans =4×11 2 3 4

두개의오분류와한개의누락된분류가있는데이터에대한혼동행렬을표시하고그룹순서를지정합니다。

알려진그룹과예측된그룹에대한벡터를생성합니다。

G1 = [3 2 2 3 1 1]';%已知组g2 = [4 2 3 NaN 1 1]';预测组

그룹순서를지정하고혼동행렬을반환합니다。

C = confismat (g1,g2,“秩序”,[4 3 2 1])
C =4×40 0 0 0 1 0 0 0 1 1 0 0 0 0 2

혼동행렬C의행과열에대한marketing덱스는동일하며,그룹순서로지정된순서,즉(4、3、2、1)로정렬됩니다。

혼동행렬C3에의두번째행은그룹속하는것으로알려진데이터점중하나가그룹4로오분류되었음을보여줍니다。C2에의세번째행은그룹속하는데이터점중하나가그룹3으로오분류되었음을보여주고,네번째행은그룹1에속하는것으로알려진두개의데이터점이올바르게분류되었음을보여줍니다。confusionmat는그룹화변수g2에 있는값을누락값으로처리하여C의행과열에포함시키지않습니다。

fisheriris데이터세트의표본에대해분류를수행하고결과로생성되는분류에대한혼동행렬을표시합니다。

피셔(费雪)의붓꽃데이터세트를불러옵니다。

负载fisheriris

데이터에서측정값과그룹을임의화합니다。

rng (0,“旋风”);%用于再现性numObs =长度(物种);p = randperm(numObs);Meas = Meas (p,:);Species = Species (p);

데이터의첫번째절반에포함된측정값을사용하여판별분석분류기를훈련시킵니다。

half = floor(numObs/2);训练= meas(1:一半,:);trainingSpecies =物种(1:一半);Mdl = fitcdiscr(training,trainingSpecies);

훈련된분류기를사용하여데이터의나머지절반에포함된측정값에대한레이블을예측합니다。

Sample = meas(half+1:end,:);grouphat = predict(Mdl,样本);

그룹순서를지정하고결과로생성된분류에대한혼동행렬을@ @시합니다。

Group = species(half+1:结束);[C,order] = confismat (group,grouphat,“秩序”, {“setosa”“多色的”“virginica”})
C =3×329 0 0 0 22 2 0 0 22
订单=3 x1细胞{'setosa'} {'versicolor'} {'virginica'}

이혼동행렬은setosa및virginica에속하는측정값이올바르게분류되었지만杂色的에속하는측정값중두개가virginica로오분류되었음을보여줍니다。출력값订单는그룹순서{“setosa”、“癣”、“virginica '}로지정된순서로혼동행렬의행과열의순서를포함합니다。

fisheriris데이터세트로구성된高형배열에대해분류를수행하고,confusionmat함수를사용하여알려진高형레이블및예측된高형레이블에대한혼동행렬을계산한후confusionchart함수를사용하여혼동행렬을플로팅합니다。

高형배열에대한계산을수행할때MATLAB®은병렬풀(并行计算工具箱™를사용할경우디폴트값)또는로컬MATLAB세션을사용합니다。并行计算工具箱가있는상태에서로컬MATLAB세션을사용하여예제를실행하려는경우mapreduce함수를사용하여전역실행환경을변경하면됩니다。

피셔(费雪)의붓꽃데이터세트를불러옵니다。

负载fisheriris

메모리내배열物种를高형배열로변환합니다。

Tx =高(平均);
使用“本地”配置文件启动并行池(parpool)…连接到并行池(工人数:6)。
Ty =高(物种);

高大형배열에포함된관측값개수를구합니다。

numObs = gather(length(ty));将高数组收集到内存中

재현이가능하도록rngtallrng를사용하여난수생성기의시드값을설정하고,훈련@본을무작위로선택합니다。결과는워커의개수및高형배열의실행환경에따라다를수있습니다。자세한내용은控制代码运行的位置항목을참조하십시오。

rng (“默认”) tallrng (“默认”) numTrain = floor(numObs/2);[txTrain,trIdx] = datasample(tx,numTrain,“替换”、假);tyTrain = ty(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秒内完成

훈련된모델을사용하여검정@ @본에대한레이블을예측합니다。

txTest = tx(~trIdx,:);label = predict(mdl,txTest);

결과로생성된분류에대한혼동행렬을계산합니다。

tyTest = ty(~trIdx);[C,order] = confismat (tyTest,label)
C = m×n×…高阵???...???...? ? ? ... : : : : : : Preview deferred. Learn more. order = M×N×... tall array ? ? ? ... ? ? ? ... ? ? ? ... : : : : : : Preview deferred. Learn more.

收集함수를사용하여보류했던계산을수행하고confusionmat의결과를메모리에반환합니다。

收集(C)
使用并行池“本地”评估tall表达式:-通过1 / 1:在1.9秒内完成评估,在2.3秒内完成
ans =3×320 0 0 1 30 20 0 22
收集(顺序)
使用并行池“本地”计算tall表达式:在0.032秒内完成计算
ans =3×1细胞{'setosa'} {'versicolor'} {'virginica'}

이혼동행렬은杂色的클래스에속하는측정값세개가오분류되었음을보여줍니다。濑户및弗吉尼亚에속하는모든측정값은올바르게분류되었습니다。

혼동행렬을계산하고플로팅하려면대신confusionchart를사용하십시오。

cm =混淆表(tyTest,label)
使用并行池“本地”评估高表达式:-通过1 / 1:在0.34秒内完成评估,在0.6秒内完成评估,使用并行池“本地”评估高表达式:-通过1 / 1:在0.48秒内完成评估,在0.67秒内完成

NormalizedValues: [3×3 double] ClassLabels: {3×1 cell}显示所有属性

입력marketing수

모두 축소

관측값을분류하는데사용되는알려진그룹으로,숫자형벡터,논리형벡터,문자형배열,字符串형배열,문자형벡터로구성된셀형배열또는直言형벡터로지정됩니다。

集团grouphat과같은유형의그룹화변수입니다。集团化学式수는grouphat과관측값개수가같아야합니다(그룹화변수의설명참조)。confusionmat함수는문자형배열과字符串형배열을문자형벡터로구성된셀형배열로처리합니다。또한,confusionmat集团에 있는값,빈값,“定义”값을누락값으로처리하고고유한그룹또는범주로간주하지않습니다。

예:{'男','女','女','男','女'}

데이터형:||逻辑|字符|字符串|细胞|分类

관측값을분류하는데사용되는예측된그룹으로,숫자형벡터,논리형벡터,문자형배열,字符串형배열,문자형벡터로구성된셀형배열또는直言형벡터로지정됩니다。

grouphat集团과같은유형의그룹화변수입니다。grouphat化学式수는集团과관측값개수가같아야합니다(그룹화변수의설명참조)。confusionmat함수는문자형배열과字符串형배열을문자형벡터로구성된셀형배열로처리합니다。또한,confusionmatgrouphat에 있는값,빈값,“定义”값을누락값으로처리하고고유한그룹또는범주로간주하지않습니다。

예:[1 0 0 1 0]

데이터형:||逻辑|字符|字符串|细胞|分类

그룹순서로,숫자형벡터,논리형벡터,문자형배열,字符串형배열,문자형벡터로구성된셀형배열또는直言형벡터로지정됩니다。

grouporder集团grouphat에있는모든고유한소를포함하는그룹화변수입니다。grouporder를지정하여C의행과열의순서를정의할수있습니다。grouporder集团이나grouphat에속하지않는소가포함된경우이에대응하는C의소는0이됩니다。

기본적으로,그룹순서는S = [group;grouphat]의데이터형에따라결정됩니다。

  • 숫자형벡터와논리형벡터의경우,年代의정렬된순서로@ @시됩니다。

  • 分类형벡터의경우,类别(年代)가반환한순서로@ @시됩니다。

  • 기타데이터형의경우,年代에처음나타난순서로@ @시됩니다。

예:“秩序”,{“setosa”、“癣”,“virginica”}

데이터형:||逻辑|字符|字符串|细胞|分类

출력marketing수

모두 축소

혼동행렬,集团化学式수와grouphat수에포함된고유한소의총개수와크기가같은정사각행렬로반환됩니다。C (i, j)는 그룹에속하는것으로알려졌지만그룹j에속하는것으로예측된관측값의개수입니다。

C의행과열은동일한그룹덱스와순서가같습니다。기본적으로,그룹순서는S = [group;grouphat]의데이터형에따라결정됩니다。

  • 숫자형벡터와논리형벡터의경우,年代의정렬된순서로@ @시됩니다。

  • 分类형벡터의경우,类别(年代)가반환한순서로@ @시됩니다。

  • 기타데이터형의경우,年代에처음나타난순서로@ @시됩니다。

순서를변경하려면grouporder를지정하십시오。

confusionmat함수는그룹화변수에있는값,빈값,“定义”값을누락값으로처리하고C의행과열에포함시키지않습니다。

C에포함된행과열의순서로,숫자형벡터,논리형벡터,直言형벡터또는문자형벡터로구성된셀형배열로반환됩니다。集团grouphat이문자형배열,字符串형배열,또는문자형벡터로구성된셀형배열tmp경우변수订单는문자형벡터로구성된셀형배열입니다。그렇지않은경우订单集团grouphat과동일한유형입니다。

대체 기능

  • confusionchart를사용하여혼동행렬을계산하고플로팅할수있습니다。또한,confusionchart는데이터에대한요약통계량을표시하고클래스별정밀도(양성예측도),클래스별재현율(참양성률)또는올바르게분류된관측값의총개수에따라혼동행렬의클래스를분류합니다。

확장 기능

버전 내역

R2008b에개발됨

참고 항목

||

도움말항목