¿Qué hago después cuando logré un programa de aprendizaje automático (supervisado) con un 97% de precisión y buen ajuste?

En primer lugar, la precisión del 97% es un gran logro. Pero en este punto tienes que hacerte varias preguntas.

  1. ¿La precisión es la métrica correcta para medir el rendimiento en mi caso? Si su conjunto de datos está altamente desequilibrado, cambie a la puntuación F1, porque la precisión no refleja el rendimiento en este caso (imagine el problema binario donde la clase mayoritaria es el 90% de los casos, entonces el clasificador que ‘no importa qué’ siempre genera el la clase mayoritaria tiene un 90% de precisión, lo cual es un problema). Tenga cuidado, hay dos tipos de puntaje F1: macro-promedio y micro-promedio. Verifica ambos.
  2. Si el procedimiento de prueba es correcto? Mezcle los datos antes de entrenar y probar. Ejecute la validación cruzada n-folds. Asegúrese de que su resultado sea consistente.
  3. Finalmente, la pregunta más importante, ¿por qué logré un rendimiento tan bueno? Este es un problema de aprendizaje supervisado, así que identifique la importancia de la característica (cuáles son las características que más contribuyeron al rendimiento).

¡Y que la fuerza te acompañe!

El siguiente paso sería tratar de mejorar la precisión al 97.1%, luego al 98%, y así sucesivamente, hasta que ya no pueda mejorar la precisión. Sin embargo, antes de seguir adelante, es posible que desee comprobar

  • ¿Es ese un problema fácil? ¿Puede alguien sin muchos antecedentes de este problema obtener una alta precisión con algún algoritmo arbitrario?
  • ¿Estás sobreajustando los datos? ¿Has realizado una validación cruzada completa? ¿Hiciste pruebas estadísticas para confiar en tus resultados?
  • ¿Es eso un problema importante? Clasificar gatos y perros es un gran problema, pero puede no ser significativo O ¿Puede hacer que este problema sea significativo?
  • ¿Por qué cree que el 97% de precisión es un límite superior para este problema?
  • ¿Es la precisión la métrica correcta para su problema? ¿Su problema tiene desequilibrio de clase o distribución de clase sesgada [1]?

Notas al pie

[1] La respuesta de Shehroz Khan a ¿Por qué es que obtengo una mejor puntuación de precisión cuando uso clases desequilibradas con un clasificador de Bosque aleatorio?

  1. Hay varias métricas para medir el rendimiento, la precisión es solo una de ellas y es propenso al desequilibrio en los datos, como lo señala la respuesta de Vasily a continuación. Para elegir el que realmente importa entre todas las métricas, pregúntese cuál tiene un impacto en su problema. También puede probar el marco de valor esperado sugerido en este libro.
  2. También puede ser que su programa se ajuste demasiado a los datos de entrenamiento, para evitar eso, ejecute la validación cruzada.
  3. Identifique características importantes, ciertos modelos ofrecen gráficos de características importantes, por ejemplo, xgboost