ConfusionMatrixMultilabel

Calcola la matrice di confusione per ogni etichetta. Il metodo viene applicato al vettore dei valori previsti.

uint vector::ConfusionMatrixMultiLabel(
   const vector&       vect_true,     // vettore di valori reali
   matrix&             confusions[]   // array delle matrici di confusione calcolate 
   );
 

Parametri

vect_true

[in] Vettore di valori reali.

confusions

[out] Un array di matrici 2 x 2 con matrici di confusione calcolate per ogni etichetta.

Valore Restituito

Dimensione dell'array delle matrici di confusione calcolate. In caso di fallimento, restituisce 0

Nota

L'array risultante può essere dinamico o statico. Se l'array è statico, allora non deve avere dimensioni inferiori al numero di classi.

Le dimensioni del vettore dei valori reali e del vettore dei valori previsti dovrebbero essere le stesse.

Esempio:

   vector y_true={7,2,1,0,4,1,4,9,5,9,0,6,9,0,1,5,9,7,3,4,8,4,2,7,6,8,4,2,3,6};
   vector y_pred={7,2,1,0,4,1,4,9,5,9,0,6,9,0,1,5,9,7,3,4,2,9,4,9,5,9,2,7,7,0};
   matrix label_confusions[12];
 
   uint   res=y_pred.ConfusionMatrixMultiLabel(y_true,label_confusions);
   Print("res=",res,"  size=",label_confusions.Size());
   for(uint i=0i<resi++)
      Print(label_confusions[i]);
 
 
/*
  res=10  size=12
  [[26,1]
   [0,3]]
  [[27,0]
   [0,3]]
  [[25,2]
   [2,1]]
  [[28,0]
   [1,1]]
  [[24,1]
   [2,3]]
  [[27,1]
   [0,2]]
  [[27,0]
   [2,1]]
  [[25,2]
   [1,2]]
  [[28,0]
   [2,0]]
  [[23,3]
   [0,4]]
*/