Calculation of tp,tn,fp,fn for multi classes

15 次查看(过去 30 天)
Output=[1,1,1,-1,1,2,9,2,2,2,3,3,3,3,3,4,4,4,4,4,5,5,5,2,5,6,4,14,3,4]
Labels=[1,1,1,1,1,2,2,2,2,2,3,3,3,3,3,4,4,4,4,4,5,5,5,5,5,6,6,6,6,6]
from these values I have to calculate TP,TN,FP,FN..
  3 个评论
asmi
asmi 2015-3-19
TP= true positive,TN=True negative ,FP=false positive and FN=false negative .I have calculated this related to Face Recognition code.
asmi
asmi 2015-3-20
I have calculated this parameter from 6 classes.(1,1,1,1,1) means it is one image like wise.Firstly I have to train the training data form feedforward neural network and getting that trained net I put the testing data and got these above output array.then match the labels and output matrix to calculate the tp,tn,fp,fn

请先登录,再进行评论。

采纳的回答

Greg Heath
Greg Heath 2015-3-22
The standard approach for c classes is to use a target matrix of size [ c N ]that only contains columns of the matrix eye(c). The correspondence between the true class indices 1,2,...c and the target is
N = length(truclassindices)
target = ind2vec(truclassindices)
The assigned classes and corresponding errors are obtained from the net output via
output = net(input);
assignedclasses = vec2ind(output);
errors = assignedclasses~=truclassindices;
Nerr = sum(errors)
PctErr = 100*Nerr/N
[cm order] = confusionmat(target,output)
Hope this helps.
Thank you for formally accepting my answer
Greg

更多回答(1 个)

Star Strider
Star Strider 2015-3-19
I don’t understand your output. In theory, your classifier should assign one of the labels for each input (1-6), but your output contains classes such as -1, 9, and 14. That fails.
Anyway, when you get that problem sorted (and you must before you can go any further), see the documentation for confusionmat.

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by