Tengo un problema con 6 clases. Así que construyo un clasificador multiclase, de la siguiente manera: para cada clase, tengo un clasificador de regresión logística, usando One vs. All, lo que significa que tengo 6 clasificadores diferentes.
Puedo informar una matriz de confusión para cada uno de mis clasificadores. Pero me gustaría informar una matriz de confusión para TODOS los clasificadores, como he visto en muchos ejemplos aquí.
¿Cómo puedo hacerlo? ¿Tengo que cambiar mi estrategia de clasificación, usando un algoritmo One vs. One en lugar de One vs. All? Porque en estas matrices de confusión, los informes dicen los falsos positivos para cada clase.
Ejemplo de una matriz de confusión multiclase
Me gustaría encontrar la cantidad de artículos mal clasificados. En la primera fila, hay 137 ejemplos de la clase 1 que se clasificaron como clase 1 y 13 ejemplos de la clase 1 que se clasificaron como clase 2 . ¿Cómo obtener este número?
Respuestas:
Presumiblemente, está utilizando estos clasificadores para ayudar a elegir una clase en particular para un conjunto determinado de valores de entidad (como dijo que está creando un clasificador multiclase).
Esto es solo una extensión directa de la matriz de confusión de 2 clases.
fuente
Si bien ya hay algunas respuestas en este foro, pensé que daría las ecuaciones explícitas para hacerlo más definido:
Los elementos de confusión para cada clase están dados por:
fuente
Usando la matriz adjunta en la pregunta y considerando los valores en el eje vertical como la clase real, y los valores en el eje horizontal la predicción. Luego para la clase 1:
137
-> muestras de clase 1, clasificadas como clase 16
-> (1 + 2 + 4) muestras de las clases 2, 3 y 4, pero clasificadas como clase 118
-> (13 + 3 + 1 + 1) muestras de la clase 1, pero clasificadas como clases 2, 3, 6 y 7581
-> (55 + 1 + 6 ... + 2 + 26) La suma de todos los valores en la matriz, excepto los de la columna 1 y la fila 1fuente