How to plot confusion matrix

7 ビュー (過去 30 日間)
bayoishola20
bayoishola20 2014 年 10 月 20 日
コメント済み: bayoishola20 2014 年 11 月 4 日
I have performed my image segmentation using kmeans but need to get the confusion matrix. My image segmentation matrix for six(6) classes has numbers 1 to 6 in it which is perfect. On getting my trained classes BW_1,BW_2,BW_3,BW_4,BW_5,BW_6 I have in each only one's(1's) and zero's(0's) but need to create a single confusion matrix like in this link http://www.mathworks.com/help/nnet/ref/plotconfusion.html?searchHighlight=confusion%2520matrix

採用された回答

Greg Heath
Greg Heath 2014 年 10 月 20 日
The function plotconfusion handles more than 2 classes. Replace the iris_dataset or simplecluster_dataset in the help and doc examples for plotconfusion
[x,t] = iris_dataset;
net = patternnet;
rng('default')
[net tr y e] = train(net,x,t);
NMSE = mse(e)/mean(var(t',1)) %0.0418
R2 = 1-NMSE %0.9582
plotconfusion(t,y);
Find the minimum number of hidden nodes that yields an acceptable result
Hope this helps.
Thank you for formally accepting my answer
Greg
  3 件のコメント
Greg Heath
Greg Heath 2014 年 10 月 21 日
That command assumes the input and target matrices are combined as in the MATLAB example database
help nndatasets
doc nndatasets
If your data is not formatted that way, then change the command to read the way your data is formatted.
bayoishola20
bayoishola20 2014 年 11 月 4 日
You said the command assumes that my input & target matrices are combined. please in the case where my target matrix are 6 different matrices and each contain only ones and zeros while the input has 1,2,3,4,5,6. How can I achieve this. Thanks in advance.

サインインしてコメントする。

その他の回答 (1 件)

Star Strider
Star Strider 2014 年 10 月 20 日
編集済み: Star Strider 2014 年 10 月 20 日
The Neural Network Toolbox confusion function will only let you plot (2x2) classification results. To plot more classes, use the Statistics Toolbox confusion function.
The crosstab function will give you the chi-squared statistic and the probability.
  7 件のコメント
Star Strider
Star Strider 2014 年 10 月 20 日
If you have vectors with your known and predicted classes, those are your inputs to your confusion matrix. I got the impression from your Question, specifically ‘My image segmentation matrix for six(6) classes has numbers 1 to 6 in it which is perfect.’ that you already had those and simply wanted to know how to create a confusion matrix for your 6 classes.
bayoishola20
bayoishola20 2014 年 10 月 20 日
編集済み: bayoishola20 2014 年 10 月 20 日
Exactly! But am I to combine the trained classes(known, with 0's and 1's) so I could have a single matrix like the predicted or use them as they are? If so, please how do I do that?

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeImage Data Workflows についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by