Métricas de Evaluación Clasificación con Scikit Learn

En una anterior entrada te expliqué toda la parte teoría para calcular los errores al momento de construir un modelo utilizando algoritmos de clasificación. Bueno, acá te explicaré como puedes implementar cada uno de esas métricas utilizando la librería de Scikit Learn.

A medida que entrenas tu modelo predictivo de clasificación, seguramente querrás evaluar qué tan bueno es. Curiosamente, hay muchas maneras diferentes de evaluar el desempeño. La mayoría de los desarrolladores que usan Python usan la librería Scikit Learn. Esta contiene muchas funciones incorporadas para analizar el rendimiento de los modelos. En esta entrada repasaremos algunas de estas métricas y explicaremos cómo implementarlas utilizando la librería Scikit Learn.

Matriz de Confusión

Una matriz de confusión puede definirse vagamente como una tabla que describe el desempeño de un modelo de clasificación en un conjunto de datos de prueba cuyos valores verdaderos son conocidos. Una matriz de confusión es altamente interpretativa y puede ser usada para estimar un número de otras métricas.

metricas 1

Scikit Learn proporciona un método para realizar la matriz de confusión en el conjunto de datos de la prueba. El método confusión_matrix requiere los valores reales de prueba y los valores predichos por el modelo construido para determinar la matriz.

En caso de que el modelo solo tenga dos clases de respuestas, puede ser categorizado como un problema de clasificación binaria. Por lo tanto, la matriz de confusión es una cuadrícula de 2 x 2. La matriz de confusión se interpreta de manera diferente en las diferentes implementaciones.

Exactitud

La exactitud de la clasificación es la relación entre las predicciones correctas y el número total de predicciones. O más simplemente, con qué frecuencia es correcto el clasificador.

metricas 2

Podemos calcular la precisión usando la matriz de confusión, pero por supuesto, Scikit Learn proporciona un método para su cálculo, acá accuracy_score se implementa junto con los datos reales de prueba y los datos predichos por el modelo.

Precisión

La precisión es la relación entre las predicciones correctas y el número total de predicciones correctas previstas. Esto mide la precisión del clasificador a la hora de predecir casos positivos.

metricas 3

Scikit Learn proporciona el método precision_score para calcular la precisión. Acá se utiliza los datos de prueba reales y los datos obtenidos desde el modelo desarrollado.

Sensibilidad

La sensibilidad también es llamada en inglés recall, es la relación entre las predicciones positivas correctas y el número total de predicciones positivas. O más simplemente, cuán sensible es el clasificador para detectar instancias positivas. Esto también se conoce como la tasa verdadera positiva.

metricas 4

Scikit Learn proporciona un método llamado recall_score para encontrar la puntuación de sensibilidad.

Puntaje de F1

El puntaje F1 es la medida armónica de la memoria y la precisión, con una puntuación más alta como mejor modelo.

metricas 5

Podemos obtener la puntuación F1 a partir de Scikit Learn, utilizando el modulo f1_score, que toma como entrada los datos reales de prueba y los datos predichos por el modelo.

Recuerda que para conocer la parte teórica de cada una de las métricas explicadas acá debes ingresar al siguiente link en donde fueron explicadas a detalle.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *