Sistemas de AA de producción: Entrenamiento estático versus dinámico

En términos generales, puedes entrenar un modelo de dos maneras:

  • El entrenamiento estático (también llamado entrenamiento sin conexión) significa que entrenas un modelo solo una vez. Luego, puedes entregar ese mismo modelo entrenado durante un tiempo.
  • El entrenamiento dinámico (también llamado entrenamiento en línea) significa que entrenas un modelo de forma continua o, al menos, con frecuencia. Por lo general, se entrega el modelo más recién entrenado.
Figura 2: La masa cruda crea tres panes idénticos.
Figura 2: Entrenamiento estático Entrena una vez y publica el mismo modelo compilado varias veces. (Imágenes de Pexels y fancycrave1).

 

Figura 3: La masa cruda crea hogazas de pan ligeramente diferentes cada vez.
Figura 3: Entrenamiento dinámico Vuelve a entrenar con frecuencia y entrega el modelo compilado más reciente. (Imágenes de Pexels y Couleur).

 

Tabla 1: Ventajas y desventajas principales.

Entrenamiento estático Entrenamiento dinámico
Ventajas Más simple. Solo debes desarrollar y probar el modelo una vez. Más adaptable. Tu modelo se mantendrá al día con cualquier cambio en la relación entre los atributos y las etiquetas.
Desventajas A veces, más inactivos. Si la relación entre los atributos y las etiquetas cambia con el tiempo, las predicciones de tu modelo se degradarán. Más trabajo. Debes compilar, probar y lanzar un producto nuevo todo el tiempo.

Si tu conjunto de datos realmente no cambia con el tiempo, elige el entrenamiento estático, ya que es más económico crearlo y mantenerlo que el entrenamiento dinámico. Sin embargo, los conjuntos de datos suelen cambiar con el tiempo, incluso aquellos con atributos que crees que son tan constantes como, por ejemplo, el nivel del mar. Conclusión: Incluso con el entrenamiento estático, debes supervisar los datos de entrada en busca de cambios.

Por ejemplo, considera un modelo entrenado para predecir la probabilidad de que los usuarios comprarán flores. Debido a la presión del tiempo, el modelo se entrena solo una vez con un conjunto de datos del comportamiento de compra de flores durante julio y agosto. El modelo funciona bien durante varios meses, pero luego hace predicciones terribles alrededor del Día de San Valentín porque el comportamiento de los usuarios durante ese período de festividades florales cambia de forma drástica.

Para explorar con más detalle el entrenamiento estático y dinámico, consulta el curso Cómo administrar proyectos de AA.

Ejercicios: Comprueba tu comprensión

¿Cuáles de las siguientes afirmaciones son verdaderas sobre el entrenamiento estático (sin conexión)?
El modelo se mantiene actualizado a medida que ingresan datos nuevos.
En realidad, si entrenas sin conexión, el modelo no tiene forma de incorporar datos nuevos a medida que ingresan. Esto puede provocar que el modelo se desactualice si la distribución de la que intentas aprender cambia con el tiempo.
Puedes verificar el modelo antes de aplicarlo en producción.
Sí, el entrenamiento sin conexión ofrece una gran oportunidad para verificar el rendimiento del modelo antes de incorporarlo en producción.
El entrenamiento sin conexión requiere menos supervisión de los trabajos de entrenamiento que el entrenamiento en línea.
En general, los requisitos de supervisión en el momento del entrenamiento son más simples para el entrenamiento sin conexión, lo cual te protege de muchas consideraciones de producción. Sin embargo, cuanto más frecuentemente entrenes tu modelo, mayor será la inversión que deberás realizar en la supervisión. También querrás validar con frecuencia para asegurarte de que los cambios en tu código (y sus dependencias) no afecten negativamente la calidad del modelo.
Se debe realizar muy poca supervisión de los datos de entrada en el momento de la inferencia.
Contrario a lo que se podría pensar, sí debes supervisar los datos de entrada durante el tiempo de publicación. Si cambian las distribuciones de entrada, es posible que las predicciones de nuestro modelo no sean confiables. Imagina, por ejemplo, un modelo que se entrenó solo con datos de ropa de verano que, de repente, se usa para predecir el comportamiento de compra de ropa en invierno.
¿Cuál de las siguientes afirmaciones es verdadera sobre el entrenamiento dinámico (en línea)?
El modelo se mantiene actualizado a medida que ingresan datos nuevos.
Este es el beneficio principal del entrenamiento en línea. Puedes evitar muchos problemas de inactividad si permites que el modelo entrene con datos nuevos a medida que llegan.
Se debe realizar muy poca supervisión de los trabajos de entrenamiento.
En realidad, debes supervisar los trabajos de entrenamiento de forma continua para asegurarte de que funcionen correctamente. También necesitarás una infraestructura de asistencia, como la capacidad de revertir un modelo a una instantánea anterior en caso de que algo salga mal en el entrenamiento, como un trabajo con errores o una corrupción en los datos de entrada.
Se debe realizar muy poca supervisión de los datos de entrada en el momento de la inferencia.
Al igual que con un modelo estático sin conexión, también es importante supervisar las entradas de los modelos que se actualizan de forma dinámica. Es probable que no exista un riesgo de efectos estacionales importantes, pero los cambios grandes y repentinos de las entradas (como una fuente de datos superior que pasa a ser inferior) pueden causar predicciones poco confiables.