ConfusionMatrixMultilabel

Calcula a matriz de erros para cada rótulo. O método é aplicado a um vetor de valores previstos.

uint vector::ConfusionMatrixMultiLabel(
  const vector&       vect_true,     // vetor de valores reais
   matrix&             confusions[]   // array de matrizes de erro calculadas
   );
 

Parâmetros

vect_true

[in] Vetor de valores reais.

confusions

[out] Array de matrizes 2 x 2 com matrizes de erro calculadas para cada rótulo.

Valor retornado

Tamanho do array de matrizes de erro calculadas. Em caso de falha, é retornado 0

Observação

O array de resultados pode ser dinâmico ou estático. Se o array for estático, ele deverá ter um tamanho pelo menos igual ao número de classes.

Os tamanhos do vetor de valores reais e do vetor de valores previstos devem ser os mesmos.

Exemplo:

   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]]
*/