¿Cuál es la mejor manera de diagnosticar algoritmos de aprendizaje automático?

Realmente depende de la aplicación, pero para los problemas de clasificación, una matriz de confusión funciona mejor en mi opinión, aunque puede ser un poco intuitivo con más de 2 clases. Sin embargo, es bueno porque puedes ver tus verdaderos y falsos negativos y positivos.

Usar solo la precisión tiene el inconveniente de obtener una alta precisión cuando hay un desequilibrio de clase. Imagina que tenemos un conjunto de datos con 99.9% clase 0 y 0.1% clase 1. En ese caso, si ejecutas una precisión, obtendrás una precisión del 99.9% y te sorprenderás. Cuando en realidad estás teniendo cero verdaderos positivos. Así que diría que incluso si está informando sobre la precisión, el recuerdo o algo de esa naturaleza, asegúrese de echar un vistazo a su matriz de confusión para saber qué está pasando.

De hecho, recomendaría no iniciar ningún algoritmo a menos que conozca sus datos. Mire los histogramas, diagramas de dispersión, correlaciones, valores atípicos, valores perdidos, etc.

Para los problemas de regresión, creo que la MSE es suficiente, pero una vez más, tenga cuidado de las advertencias mencionadas anteriormente primero.

Pero, ¿cómo puedo saber el rendimiento deseado del problema o simplemente el problema no puede resolverse?

Eso no es una pregunta sobre el diagnóstico. Lo que estás preguntando es el problema de enmarcar la pregunta inicial

Debe encuadrar su pregunta de forma que se pueda resolver aprendiendo de los datos disponibles. Tengo un ejemplo de cómo convertir una pregunta encuadrada vagamente en algo que puede responder con datos.

Predecir cuando las personas abandonan sus trabajos

El rendimiento deseado (precisión o tiempo de respuesta, etc.) se determina según cómo aplique el resultado al final.

Para las recomendaciones de películas, es posible que no necesite una alta precisión, pero la latencia será un gran problema. Para aplicaciones médicas, la precisión puede ser literalmente un asunto de vida o muerte.

Puede diagnosticar algoritmos utilizando un conjunto de datos cuidadosamente diseñados para Capacitación y Pruebas. También es necesario que sus modelos guarden de manera segura los ajustes excesivos y los ajustes inferiores.