Calculation of tp,tn,fp,fn for multi classes
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commenti
Risposta accettata
Greg Heath
il 22 Mar 2015
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
0 Commenti
Più risposte (1)
Star Strider
il 19 Mar 2015
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.
0 Commenti
Vedere anche
Categorie
Scopri di più su Sequence and Numeric Feature Data Workflows in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!