Buscar

Los Peligros del Aprendizaje Totalmente Automático

Actualizado: 2 de ene de 2019

Hace dos días nos compartieron un artículo titulado "La inteligencia artificial pifia y avergüenza a IBM y Amazon: 'este producto es un pedazo de mierda'" (sic). Coincidentemente, hace cuatro le brindamos una capacitación a un cliente acerca del uso de IBM Watson, viendo con él por primera vez la herramienta. Nos mostró un par de modelos que había creado con el servicio, cuyo gran atractivo es lograr tener un sistema predictivo online funcionando con pocos clics y sin hacer demasiadas preguntas complicadas. Éstas se las fuimos elaborando nosotros.

¿Cómo evaluaba el desempeño de un modelo? En uno de los procesos diseñados, en el % que se especificaba dejar como test set.... ¿o holdout? No estaba especificado. El cliente tenía unos 600 casos. ¿Bastaba dejar 20% o 50% a un lado? Cualquiera que haya tenido experiencia manual en aprendizaje automático se da cuenta que ante tan pocos datos, la métrica resultante de un simple esquema train/test va a ser extremadamente inestable. Como era de esperar, solamente cambiando la semilla aleatoria del proceso se conseguía que el desempeño moviera el GINI de 50% a 60%. En otro proceso que vimos junto al cliente, la prueba se realizaba directamente sobre la base de entrenamiento, lo cual no es solamente peor: es catastrófico. Si para el lector la palabra overfitting no significa nada, debería buscarla ya mismo.

Lo lógico sería que ante situaciones con pocos datos el algoritmo realice una validación cruzada y devuelva el resultado esperado con su desvío estándar correspondiente, lo cual, en realidad, sería simplemente cuestión de programar dicho algoritmo para esto. El problema es que mientras más reglas tenga, menos eficiente resulta y el usuario debe responder preguntas complicadas, como si resulta aceptable un GINI de 30% +/- 10%. Es más user-friendly dar un valor único (nada de +/- u otras cosas extrañas), colorearlo de verde, amarillo o rojo y calificarlo como bueno, regular o malo. Esto último es así en la interfaz y en ningún momento se determina qué tipo de problema está resolviendo. ¿35% GINI para predicción de churn con 6 meses de anticipación sería flojo porque menos de 40% es malo para cualquier modelo y ya?

IBM Watson, según un vocero de la compañía, se usa para apoyar a médicos en el tratamiento de 13 tipos de cáncer en 230 hospitales de todo el mundo, habiendo sido utilizado ya para asistir a más de 84.000 pacientes. Si bien la nota que mencionamos al principio rescata testimonios referidos a casos puntuales ("múltiples ejemplos de recomendaciones de tratamientos inseguros e incorrectos"), recordamos una vez más que ir al caso no es necesariamente la mejor manera de validar un modelo predictivo. Más allá de esta salvedad, queremos creer que los modelos detrás de esto son más que un drag-and-drop en una interfaz amigable para el usuario...

Dejando a un lado las primeras impresiones que tuvimos con el servicio de IBM, vale reconocer su envidiable mérito en contar con un SaaS (software as a service) funcionando de inicio a fin, dándole la posibilidad al usuario de conectarlo mediante APIs a otros servicios para tener implementación en la nube de los modelos predictivos (sean buenos o no). Soñamos con el día en que terminemos nuestro propio servicio de minería de datos 100% web-service, con un aprendizaje lo más automático posible, que resulte amigable pero detrás de escenas contenga todas las necesarias preguntas complicadas. Como se dice, podemos hacerlo rápido, o podemos hacerlo bien.


#InteligenciaArtificial #IBM #Amazon #IBMWatson #ModeloPredictivo #AprendizajeAutomático #GINI #Algoritmo #ValidaciónCruzada #MineríaDeDatos #DataMining

0 vistas