Fecha de publicación: 19 de enero de 2024
Colaboradores: Jacob Murel, Ph.D. y Eda Kavlakoglu
La matriz de confusión ayuda a evaluar el rendimiento del modelo de clasificación en el aprendizaje automático comparando los valores previstos con los valores reales de un conjunto de datos.
Una matriz de confusión (o matriz de error) es un método de visualización para los resultados del algoritmo clasificador. Más específicamente, es una tabla que desglosa el número de instancias reales de una clase específica frente al número de instancias previstas para esa clase. Las matrices de confusión son una de las varias métricas de evaluación que miden el rendimiento de un modelo de clasificación. Se pueden utilizar para calcular otras métricas de rendimiento del modelo, como la precisión y la coincidencia, entre otras.
Las matrices de confusión se pueden utilizar con cualquier algoritmo clasificador, como Naïve Bayes, modelos de regresión logística, árboles de decisión, etc. Debido a su amplia aplicabilidad en la ciencia de datos y los modelos de machine learning, muchos paquetes y bibliotecas vienen previamente cargados con funciones para crear matrices de confusión, como el módulo sklearn.metrics de scikit-learn para Python.
Explore IBM watsonx y aprenda a crear modelos de machine learning empleando conjuntos de datos estadísticos.
Suscríbase al boletín de IBM
En una matriz de confusión, las columnas representan los valores previstos de una clase dada, mientras que las filas representan los valores reales (por ejemplo, datos reales) de una clase determinada, o viceversa. Tenga en cuenta que lo contrario también aparece en la investigación. Esta estructura de cuadrícula es una herramienta práctica para visualizar la precisión de la clasificación del modelo al mostrar el número de previsiones correctas e incorrectas para todas las clases una al lado de la otra.
Una plantilla de matriz de confusión estándar para un clasificador binario podría verse así:
El cuadro superior izquierdo proporciona el número de verdaderos positivos (TP), que es el número de previsiones correctas para la clase positiva. El recuadro de abajo muestra los falsos positivos (FP), es decir, las instancias de la clase negativa identificadas de manera incorrecta como casos positivos. Estos también se denominan errores de tipo I en estadística. El cuadro de la parte superior derecha es el número de falsos negativos (FN), los casos positivos reales que se previeron como negativos por error. Por último, el cuadro de la parte inferior derecha muestra el número de negativos verdaderos (TN), que son las instancias reales de la clase negativa previstas con precisión. La suma de cada uno de estos valores proporcionaría el número total de previsiones del modelo.1
Por supuesto, esta plantilla es para un problema rudimentario de clasificación binaria. La matriz de confusión también puede visualizar resultados para problemas de clasificación multiclase. Por ejemplo, imagine que estamos desarrollando un modelo de clasificación de especies como parte de un programa de conservación de la vida marina. El modelo prevé especies de peces. Una matriz de confusión para un problema de clasificación multiclase de este tipo puede verse así:
Todos los cuadros diagonales indican verdaderos positivos previstos. Los otros cuadros proporcionan cantidades para falsos positivos, falsos negativos y verdaderos negativos según la clase en la que elija enfocarse.
Dada la visualización de fácil acceso de los resultados previstos del clasificador, la matriz de confusión es útil para calcular otras métricas de evaluación de modelos. Los valores pueden simplemente extraerse de la matriz y conectarse a un serie de ecuaciones para medir el rendimiento del modelo.
La precisión del modelo no es una métrica de evaluación totalmente informativa para los clasificadores. Por ejemplo, imagine que ejecutamos un clasificador en un conjunto de datos de 100 instancias. La matriz de confusión del modelo muestra solo un falso negativo y ningún falso positivo; el modelo clasifica correctamente todas las demás instancias de datos. Por lo tanto, el modelo tiene una precisión del 99 %. Aunque sea aparentemente deseable, una alta precisión no es en sí misma indicativa de un excelente rendimiento del modelo. Por ejemplo, digamos que nuestro modelo tiene como objetivo clasificar enfermedades muy contagiosas. El 1 % de clasificación errónea supone un riesgo enorme. Por lo tanto, se pueden utilizar otras métricas de evaluación para proporcionar una mejor imagen del rendimiento del algoritmo de clasificación.
La precisión es la proporción de previsiones de clase positivas que realmente pertenecen a la clase en cuestión.2 Otra forma de entender la precisión es que mide la probabilidad de que una instancia elegida de manera aleatoria pertenezca a una determinada clase.3 La precisión también puede denominarse valor previsto positivo (PPV). Se representa mediante la ecuación:
La coincidencia denota el porcentaje de instancias de clase detectadas por un modelo.4 En otras palabras, indica la proporción de previsiones positivas para una clase dada de todas las instancias reales de esa clase.5 La coincidencia también se conoce como sensibilidad o tasa de verdaderos positivos (TPR) y se representa mediante la ecuación:
En ocasiones, la precisión y la coincidencia pueden compartir una relación inversa. A medida que un modelo aumenta la coincidencia al devolver más instancias de clase reales (p. ej. verdaderos positivos), el modelo inevitablemente clasificará de manera errónea las no instancias (es decir, falsos positivos) también, disminuyendo así la precisión.6 La puntuación de F1 intenta combinar precisión y coincidencia para resolver esta compensación.
La puntuación F1, también llamada puntuación F, medida F o media armónica de precisión y coincidencia, combina precisión y coincidencia para representar la precisión total de clase de un modelo. Con estos dos valores, se puede calcular la puntuación F1 con la ecuación, donde P denota precisión (PPV) y R denota coincidencia (sensibilidad):
La puntuación F1 es particularmente útil para conjuntos de datos desequilibrados, en los que la compensación entre precisión y coincidencia puede ser más evidente. Por ejemplo, supongamos que tenemos un clasificador que prevé la probabilidad de una enfermedad rara. Un modelo que prevé que nadie en nuestro conjunto de datos de prueba tiene la enfermedad puede tener una precisión perfecta pero cero coincidencia. Mientras tanto, un modelo que prevé que todos en nuestro conjunto de datos tienen la enfermedad devolvería una coincidencia perfecta pero una precisión igual al porcentaje de personas que realmente tienen la enfermedad (por ejemplo, 0.00001 % si solo uno de cada diez millones tiene la enfermedad). La puntuación F1 es un medio de equilibrar estos dos valores para obtener una visión más integral del rendimiento de un clasificador.7
Algunos investigadores critican el uso de la puntuación F1 como métrica de rendimiento. Estos argumentos suelen afirmar que la puntuación F1 da el mismo peso a la precisión y a la coincidencia, que pueden ser métricas de rendimiento que no tengan la misma importancia para todos los conjuntos de datos.8 En respuesta, los investigadores propusieron variantes modificadas de la puntuación F1.9
Las medidas condicionales significan la tasa de precisión de un modelo para detectar una clase o no clase determinada. La coincidencia, también conocida como tasa positiva verdadera (TPR) o sensibilidad, es una de esas medidas, que indica la proporción de previsiones de clase positivas de todas las instancias de clase reales. La especificidad, o tasa negativa verdadera (TNR), es la otra medida condicional. Mide la proporción de predicciones negativas correctas de las no instancias reales de una clase determinada. Se puede calcular la especificidad con la ecuación:10
La especificidad ayuda a calcular la tasa de falsos positivos (FPR) de un modelo. Otras visualizaciones de evaluación de clasificadores, en particular la curva ROC y AUC, utilizan FPR. La FPR es la probabilidad de que un modelo clasifique de manera equivocada una no instancia de una determinada clase como parte de esa clase. Por lo tanto, según su nombre, representa la tasa a la que un modelo devuelve falsos positivos, conocidos como errores de tipo I en estadísticas.
Mientras que los errores de tipo I se refieren a falsos positivos, los errores de tipo II denotan falsos negativos, instancias reales de una clase determinada clasificadas por error como que no forman parte de esa clase. Por su nombre, la tasa de falsos negativos (FNR) denota la probabilidad de que un modelo clasifique por error una instancia de clase real como que no forma parte de esa clase. Así como FPR corresponde a especificidad, FNR corresponde a sensibilidad:
Tenga en cuenta que FNR a menudo no se utiliza en la literatura porque requiere conocer el número total de instancias reales para una clase determinada, que puede permanecer desconocido en conjuntos de datos de prueba que no sean visibles.11
Las métricas incondicionales son aquellas que representan las posibilidades de que una clase específica ocurra o no ocurra de acuerdo con el modelo. La precisión, o valor previsto positivo (PPV), es una métrica incondicional. Como se mencionó, mide la probabilidad de que una instancia elegida pertenezca a una determinada clase. La otra métrica incondicional, el valor previsto negativo (NPV), es la probabilidad de que una instancia elegida no pertenezca a esa clase. Esencialmente, ambas métricas incondicionales intentan responder si una instancia elegida al azar pertenecerá a una clase específica o no. Se puede calcular el NPV con la ecuación:12
Utilice scikit-learn para crear una matriz de confusión para un problema simple de clasificación binaria.
Obtenga más información sobre cómo analizar el rendimiento del modelo mediante matrices de confusión y métricas de rendimiento.
Utilice scikit-learn para crear una matriz de confusión como parte de una tarea de clasificación de texto con SVM.
Utilice varios paquetes de R para crear una matriz de confusión para un problema simple de clasificación binaria.
1 Kai Ming Ting, “Confusion matrix,” Encyclopedia of Machine Learning and Data Mining, Springer, 2018.
2 Ethan Zhang y Yi Zhang, “Precision,” Encyclopedia of Database Systems, Springer, 2018.
3 Max Kuhn y Kjell Johnson, Applied Predictive Modeling, Springer, 2016.
4 Ethan Zhang y Yi Zhang, “Recall,” Encyclopedia of Database Systems, Springer, 2018.
5 Max Kuhn y Kjell Johnson, Applied Predictive Modeling, Springer, 2016.
6 Ben Carterette, “Precision and Recall,” Encyclopedia of Database Systems, Springer, 2018.
7 Ian Goodfellow, Yoshua Bengio y Aaron Courville, Deep Learning, MIT Press, 2016, https://www.deeplearningbook.org/ (enlace externo a ibm.com). Kevin Murphy, Machine Learning: A Probabilistic Perspective, MIT Press, 2012.
8 David Hand y Peter Christen, "A note on using the F-measure for evaluating record linkage algorithms," Statistics and Computing, Vol. 28, 2018, págs. 539–547, https://link.springer.com/article/10.1007/s11222-017-9746-6 (enlace externo a ibm.com).
9 David Hand, Peter Christen y Nishadi Kirielle, "F*: an interpretable transformation of the F-measure," Machine Learning, Vol. 110, 2021, págs. 451 456, https://link.springer.com/article/10.1007/s10994-021-05964-1 (enlace externo a ibm.com). Davide Chicco y Giuseppe Jurman, "The advantages of the Matthews correlation coefficient (MCC) over F1 score and accuracy in binary classification evaluation," BMC Genomics, Vol. 21, 2020,https://bmcgenomics.biomedcentral.com/articles/10.1186/s12864-019-6413-7 (enlace externo a ibm.com).
10 Max Kuhn y Kjell Johnson, Applied Predictive Modeling, Springer, 2016.
11 Allen Downey, Think Stats, 2.ª edición, O'Reilly, 2014.
12 Max Kuhn y Kjell Johnson, Applied Predictive Modeling, Springer, 2016.