Las fases de Entrenamiento, Validación y Pruebas en IA, explicado de una forma que nunca olvidarás
Acompaña a Mr. Bean a tomar su primer examen de Cálculo
Traducido por Ale Koretzky del original por Cassie Kozyrkov. (Editado por Carlos Secada)
Si has escuchado sobre validación en el contexto de Machine Learning (ML) e Inteligencia Artificial (IA), pero no estás del todo seguro sobre de qué se trata todo esto, validación es solo uno de los conceptos más importantes en IA aplicada, ni más ni menos, entonces aquí encontrarás la analogía que estabas esperando. Imagina que Mr. Bean está por tomar su primer examen de Cálculo…
Como de costumbre, nuestro torpe personaje favorito olvidó comprar el libro asignado, pero, afortunadamente, escribió una ecuación en la pizarra (estamos en los años ’90) y ahora tiene una noche para aprender lo suficiente y aprobar el examen. A propósito, en esta historia tú eres su profesor de cálculo. Aplaudo tu paciencia.
Fase de Entrenamiento y Ajuste en ML/IA
Mr. Bean desentierra la única ecuación que pudo guardar y comienza a estudiarla para el examen de mañana. No tiene ningún otro ejemplo (instancias de datos) o recursos que lo puedan ayudar y tampoco se molestó en escribir reglas explícitas que expliquen cómo funciona el Cálculo, así que todo lo que puede hacer es intentar encontrar patrones en su ecuación.
Al igual que un algoritmo de IA, su objetivo es encontrar algún patrón de datos que pueda convertir en una receta (“modelo”) de tal forma que lo pueda llevar desde la entrada del lado izquierdo del signo “=” a la salida del lado derecho. Esto es precisamente lo que sucede durante las etapas de Entrenamiento y Ajuste en un proyecto de IA aplicada (los pasos 6–7 en mi guía paso a paso)
En la fase de Entrenamiento, todo se trata de construir una receta en base a los patrones presentes en los ejemplos disponibles.
Así que veamos el ejemplo nuevamente con mayor detenimiento… ¿Podemos ver algún patrón?
¡Eureka! ¡Mr. Bean encontró uno! Simplemente toma ese 8, rótalo 90 grados y allí está la respuesta.
La receta definitivamente funciona en este ejemplo. Se ajusta perfectamente. ¡Felicitaciones! ¿Debería Mr. Bean correr a tomar su examen? Basado en algunos de los exámenes de universitarios que he corregido, la respuesta no es tan obvia. Pero te apuesto que tú, mi querido y brillante lector, puedes hacerlo mejor. Si fueras Mr. Bean, tú preferirías hacer algo distinto primero, ¿cierto?
Casi puedo escuchar tus gritos desde aquí. “¡¡¡INTENTA CON OTRO EJEMPLO!!!” ¡Exactamente! La diferencia entre tú y Mr. Bean es que ambos intentarán con otro ejemplo… pero tú eres lo suficientemente inteligente como para hacerlo antes del examen. En otras palabras, en un escenario de bajo riesgo con espacio para redimirse, en lugar de uno de alto riesgo en el que no te puedes echar para atrás.
Fase de Validación en ML/IA
Esto es exactamente lo que la validación es (paso 8) en Machine Learning. La Validación crea una oportunidad segura y de bajo riesgo para que los estudiantes prueben sus recetas sobre ejemplos que no han estudiado explícitamente. Así es como obtienen una señal sobre si están listos para el examen real.
La Validación le da a tu proyecto un poco de espacio para la redención.
(Mr. Bean es muy afortunado de tener un profesor como tú. ¡Gracias por enviarle ejemplos adicionales para probar desde la comodidad y seguridad de su dormitorio!)
Así que Mr. Bean está a punto de intentar con uno nuevo. ¡Validemos!
Mr. Bean aplica su modelo…
De la misma manera, rota 90 grados ese numero 5, y ¡boom! La respuesta está servida.
Luego chequea el resultado (performance) contra la respuesta correcta que tú le brindaste y …
Tristemente, no es así como la matemática funciona.
¡Tiempo de Iteración!
¿Y ahora qué?
Mr. Bean vio cuán mal su modelo funciona y ahora tiene que elegir: comenzar nuevamente o ir al examen y listo.
Si elige comenzar nuevamente, puede que vuelva a la etapa de Entrenamiento (paso 6) y busque nuevos patrones en los datos con los que ya cuenta (ese único pequeño ejemplo) ó, puede ir incluso más atrás y considerar ajustar los datos con los que está trabajando (si fuera él, te estaría rogando por ejemplos adicionales, lo que implicaría retroceder hasta el paso 2 en mi guía)
A los estudiantes (y los Ingenieros en ML/IA) se les está permitido ir y venir entre la búsqueda de patrones y la validación de sus recetas, tanto como gusten. (¡Pero no se quedan toda la noche estudiando!)
Finalmente, a las 3 de la mañana, Mr. Bean encontró un patrón que funciona correctamente en todos los ejemplos de validación que tú le has dado.
Estudiar Cálculo le pasó factura a la apariencia de Mr. Bean.
Ahora recibes el siguiente e-mail a las 3:08 AM:
“Estimado Profesor,
He descubierto una receta que funciona 100% perfectamente en esos ejemplos de validación que me ha dado. Soy probablemente el mejor estudiante de Cálculo que ha tenido. ¿Por qué no ahorramos tiempo y me salteo su examen? Puede simplemente darme una A+ mientras descanso tranquilo.
Atentamente,
M.R. Bean”
¿Qué dices tú, Profesor?
Fase de Pruebas en ML/IA
Estás prácticamente gritando, “¡¡¡Por supuesto que no!!!”
¿Por qué no? Al responder eso, estarás respondiendo por qué cada proyecto de ML/IA aplicado que merezca respeto necesita tanto Validación COMO Pruebas.
Todo proyecto de ML/IA aplicada que merezca respeto necesita Validación y Pruebas.
Quizás Mr. Bean se esté mintiendo a sí mismo, al pensar que entiende esas ecuaciones cuando en realidad no es así. Por lo poco que sabes, quizás haya construido una loca receta que se sobreajusta (overfitting), en otras palabras, que se adapta o se ajusta a aquellos ejemplos específicos que ha estado mirando toda la noche. Quizás haya memorizado todas las respuestas y esa sea su receta: simplemente acudir a su memoria. No hay garantías de que entienda algo lo suficientemente general para resolver nuevos problemas.
Así que no confiemos en su palabra. Un principio clave en ML/IA es que nunca confiamos… probamos.
La prueba de fuego de una receta de ML/IA se da siempre al momento de comer.
Si Mr. Bean intentó convencerme de dejarle pasar el examen sin tomarlo, contándome su receta o “entendimiento”, bien, muy lindo, pero como todos aquellos experimentados en IA aplicada que han trabajado lo suficiente como para haberse quemado alguna vez, no confiaré en él hasta que me muestre cuán bien realiza la tarea sobre ejemplos nuevos que nunca ha visto con anterioridad. (Aunque entender su receta, puede ayudarme a ayudarlo a mejorarla, por lo que la explicabilidad es muy útil en la etapa de Entrenamiento.
Un principio clave en ML/IA es que nunca confiamos… probamos.
Seguro, Mr. Bean intentó lo mejor que pudo y su receta final refleja su mejor entendimiento. Eso no significa que merezca pasar el examen. Desafortunadamente, a veces la mejor intención del estudiante (o del sistema) no es suficiente. Quizás sus ejemplos (datos) no eran lo suficientemente informativos, quizás no tenía suficientes ejemplos como para poder descubrir patrones útiles (un sólo ejemplo nunca iba a ser suficiente para aprender a resolver problemas de cálculo de límites, lo siento), o quizás su algoritmo (mejor dicho, su cerebro) no pudo encontrar la receta ganadora. Mala suerte para Mr. Bean, no todo estudiante o sistema de IA va a tener éxito cuando la tarea a aprender es compleja. Así es la vida.
Entonces, el mejor intento de Mr. Bean ¿es suficientemente bueno? ¿Deberías acaso aprobarlo para que pueda ir al paso siguiente (donde lo preparas para las matemáticas salvajes) o deberías delicadamente sugerirle que cambie de carrera?
La fase de Pruebas te permite averiguar cuán bien tu estudiante ha aprendido la tarea.
Averigüémoslo invitando a Mr. Bean a tomar un examen real donde probará su receta con nuevos ejemplos que no podría haber memorizado… Si falla en este, es el fin del juego. ¡Buena suerte, Mr. Bean!
Este artículo es la parte 1 de 2. La historia continúa aquí.
Obtén más información sobre ciencia de datos e inteligencia artificial en español aquí.