Diseño del reentrenamiento

Completado

Al preparar su modelo para la producción en una solución de operaciones de aprendizaje automático (MLOps), debe diseñar pensando en el reentrenamiento.

Por lo general, hay dos enfoques para cuando quiera volver a entrenar un modelo:

  • En función de un calendario: si sabe que siempre necesitará la versión más reciente del modelo, puede decidir entrenar de nuevo su modelo cada semana o cada mes, según un calendario.
  • En función de algunas métricas: si solo quiere volver a entrenar el modelo cuando sea necesario, puede supervisar el rendimiento y el desfase de datos del modelo para decidir cuándo necesita volver a entrenarlo.

En cualquier caso, en el diseño debe tener en cuenta la posibilidad de tener que volver a entrenar el modelo. Para volver a entrenar fácilmente el modelo, debe preparar el código para la automatización.

Preparación del código

Idealmente, deberías entrenar modelos con scripts en lugar de cuadernos. Los scripts son más adecuados para la automatización. Puede agregar parámetros a un script y cambiar los parámetros de entrada, como los datos de entrenamiento o los valores de hiperparámetros. Al parametrizar los scripts, puede volver a entrenar fácilmente el modelo con nuevos datos si es necesario.

Otro aspecto importante para preparar el código es hospedarlo en un repositorio central. Un repositorio hace referencia a la ubicación donde se pueden almacenar todos los archivos pertinentes de un proyecto. Con los proyectos de aprendizaje automático, los repositorios basados en Git son idóneos para lograr el control de código fuente.

Al aplicar el control de código fuente al proyecto, puede colaborar fácilmente en un proyecto. Puede encargar a alguien que mejore el modelo actualizando el código. Podrá ver los cambios anteriores y podrá revisar los cambios antes de confirmarlos en el repositorio principal.

Automatización del código

Cuando quiera ejecutar automáticamente el código, puede configurar trabajos de Azure Machine Learning para ejecutar scripts. En Azure Machine Learning, también puede crear y programar canalizaciones para ejecutar scripts.

Si quiere que los scripts se ejecuten en función de un desencadenador o evento que se produzca fuera de Azure Machine Learning, es posible que desee desencadenar el trabajo de Azure Machine Learning desde otra herramienta.

Dos herramientas que se usan normalmente en proyectos de MLOps son Azure DevOps y GitHub (Acciones). Ambas herramientas permiten crear canalizaciones de automatización y pueden desencadenar canalizaciones de Azure Machine Learning.

Como científico de datos, puede que prefiera trabajar con el SDK de Python de Azure Machine Learning. Sin embargo, al trabajar con herramientas como Azure DevOps y GitHub, es posible que prefiera configurar los recursos y trabajos necesarios con la extensión de la CLI de Azure Machine Learning en su lugar. La CLI de Azure está diseñada para automatizar tareas y puede ser más fácil de usar con Azure DevOps y GitHub.

Sugerencia

Si quiere más información sobre MLOps, explore la introducción a las operaciones de aprendizaje automático (MLOps) o intente compilar la primera canalización de automatización de MLOps con Acciones de GitHub.