Hace apenas un par de años, la IA/ML prometía revolucionar nuestro mundo en pocas décadas. Sin embargo, ya oímos rumores sobre cómo no está cumpliendo esas promesas. Las quejas más comunes suenan como: «Mi modelo de aprendizaje automático lo hizo muy bien en el entrenamiento, pero es una gran decepción cuando se despliega en la producción».
En primer lugar, es demasiado pronto para descartar la IA/ML. En segundo lugar, conseguir su mayor valor requiere un cambio de enfoque por nuestra parte como ingenieros y desarrolladores. Si sus modelos de aprendizaje automático funcionan bien en el laboratorio pero no en la línea de producción, pruebe estos tres sencillos pasos de Janani Ravi, fundador de Loonycorn.
1. Evitar el sobreajuste
Este es el más fácil de los tres consejos, porque el problema de los modelos sobreajustados está muy bien estudiado y hay muchas técnicas disponibles. En resumen: «Un modelo sobreajustado es uno que funciona muy bien en la fase de entrenamiento, pero que no funciona bien con los datos reales cuando se despliega», dice Janani. Las causas son distintas, pero generalmente los datos de entrenamiento son demasiado escasos o simples para que el modelo aprenda a reconocer patrones generales.
Para evitar el sobreajuste con un algoritmo de aprendizaje automático tradicional, se puede utilizar una de estas estrategias
Regularización – que penaliza los modelos complejos y fomenta los más simples
Validación cruzada: los datos de entrenamiento se diferencian de los de validación para verificar mejor el resultado del modelo.
Desconexión (sólo si se utilizan redes neuronales): la desactivación intencionada de determinadas neuronas durante el proceso de entrenamiento obliga a otras neuronas a aprender más de los datos.
Aprendizaje de conjunto: las predicciones son agregados de múltiples modelos de predicción individuales en lugar de depender de un único modelo de aprendizaje automático
2. Manejar correctamente los datos en tiempo real
El sesgo del entrenamiento tiene que ver con la forma en que se procesan los datos. «Los datos de entrenamiento que utilizas para tu modelo suelen proceder de pipelines por lotes», explica Janani. «Los datos probablemente viven en un sistema de archivos o en una base de datos en algún lugar de su organización. Básicamente, procesas bien esos datos y los utilizas para entrenar el modelo». Sin embargo, los datos de predicción son datos en flujo y a menudo se procesan de manera más ad hoc.
Esta diferencia fundamental de procesamiento puede ser la causa de que un modelo tenga un mal rendimiento cuando se trabaja con datos de predicción del mundo real.
Para mitigar esta diferencia de procesamiento, puede asegurarse de que los datos por lotes y los de streaming utilicen la misma ruta. Se procesan de la misma manera, en el mismo pipeline.
Varias arquitecturas existentes permiten integrar el procesamiento de datos por lotes y de streaming. Entre ellas se encuentran, por ejemplo, la arquitectura Lambda y la arquitectura Kappa. Construir tus pipelines de aprendizaje automático utilizando estos principios de diseño garantiza que el modelo aprenda a manejar correctamente los datos en tiempo real.
3. Cuidar el modelo después de su despliegue
Construir un modelo de aprendizaje automático es muy parecido a tener un hijo: una gran parte del trabajo sigue siendo necesario después de la implementación. Los modelos suelen estar sujetos a la deriva conceptual; cualquier modelo de ML intenta capturar las relaciones que existen en el mundo real, y estas relaciones son dinámicas. Cambian con el tiempo. Los modelos requieren una supervisión continua y necesitan ser alimentados con datos actualizados, o de lo contrario se vuelven obsoletos y menos útiles con el tiempo.
Los modelos de aprendizaje automático necesitan a los humanos para seguir aprendiendo y seguir siendo relevantes. Esos humanos supervisan constantemente y vuelven a entrenar el modelo con nuevas instancias. En esencia, el aprendizaje debe ser tan dinámico como el mundo real que el modelo intenta predecir.
Los supervisores humanos son aún más importantes cuando un modelo tiene adversarios concertados, como los casos de uso común de la IA para la detección de fraudes, la detección de noticias falsas y el comercio cuantitativo. En estos casos, es frecuente que haya piratas informáticos que intenten engañar o engañar al modelo. Los asesores humanos revisan los resultados de estos modelos para ver qué datos se clasifican erróneamente y, a continuación, utilizar la información de esos casos para volver a entrenar el modelo para que siga siendo relevante.
«Recuerde que el despliegue de su modelo de aprendizaje automático es simplemente el primer paso», subraya Janani. «Todavía queda mucho trabajo por hacer. No te limites a pasar al siguiente problema genial».