Cuando se analiza la distribución de datos se observa que los valores NO representan el 73% de todos los datos lo cual hace que el balance sea muy desproporcionado
Luego de entrenar el modelo se obtiene un accuracy de 0.81 y unos valores de precision y recall muy bajos para la clase 1, sobretodo el F1 que tiene 0.59 algo que evidencia claramente que el modelo no esta correctamente entrenado
Para solucionarlo he usado la libería imbalanced-learn la cual viene instalada en GoogleColab por lo que solo se tiene que importar tal como se muestra a continuación:
En la imagen anterior se observa como ahora las clases quedan practicamente igual,con estos nuevos X_bal & y_bal podemos entrenar el modelo (reemplazamos X_bal & y_bal en la función train_test_split y lo demás continua como se estaba haciendo. Al evaluar los resultados se observa claramente como han mejorado lo resutados pasando de un accuracy de 0.81 a 0.95 (asismo e mejora precision,recall y F1 en la clase 1).
Este “truco” lo utlizo en todos los problema de clasificación binomial. Espero les sirva 😃
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?