Elección del destino de proceso adecuado
En Azure Machine Learning, los destinos de proceso son equipos físicos o virtuales en los que se ejecutan los trabajos.
Comprender los tipos de computación disponibles
Azure Machine Learning apoya múltiples tipos de computación para entrenamiento, experimentación e implementación. Al tener varios tipos de proceso, puede seleccionar el tipo de destino de proceso más adecuado para sus necesidades.
- Instancia de proceso: se comporta de forma similar a una máquina virtual y se usa principalmente para ejecutar cuadernos. Es ideal para la experimentación.
- Clústeres de cómputo: clústeres de varios nodos de máquinas virtuales que se escalan automáticamente hacia arriba o hacia abajo para satisfacer la demanda. Una manera rentable de ejecutar scripts que necesitan procesar grandes volúmenes de datos. Los clústeres también permiten usar el procesamiento paralelo para distribuir la carga de trabajo y reducir el tiempo necesario para ejecutar un script.
- Clústeres de Kubernetes: clúster basado en la tecnología de Kubernetes, lo que proporciona más control sobre cómo se configura y administra el proceso. Puede adjuntar su clúster autoadministrado de Azure Kubernetes (AKS) para computación en la nube, o un clúster de Arc Kubernetes para cargas de trabajo en las instalaciones.
- Proceso asociado: permite asociar un proceso existente como máquinas virtuales de Azure o clústeres de Azure Databricks al área de trabajo.
- Proceso sin servidor: un proceso totalmente administrado a petición que puede usar para los trabajos de entrenamiento.
Nota:
Azure Machine Learning le ofrece la opción de crear y administrar su propio proceso o usar el proceso totalmente administrado por Azure Machine Learning.
¿Cuándo usar qué tipo de computación?
Por lo general, hay algunos procedimientos recomendados que puede seguir al trabajar con objetivos de cálculo. Para comprender cómo elegir el tipo de cómputo adecuado, se proporcionan varios ejemplos. Recuerde que el tipo de cómputo que usa siempre depende de su situación específica.
Elección de un objetivo de cálculo para experimentación
Imagine que es científico de datos y se le pide que desarrolle un nuevo modelo de aprendizaje automático. Es probable que tenga un pequeño subconjunto de los datos de entrenamiento con los que puede experimentar.
Durante la experimentación y el desarrollo, es posible que prefiera trabajar en un cuaderno de Jupyter Notebook. Una experiencia de cuaderno se beneficia principalmente de un proceso que se ejecuta de forma continuada.
Muchos científicos de datos están familiarizados con la ejecución de cuadernos en su dispositivo local. Una alternativa en la nube administrada por Azure Machine Learning es una instancia de proceso. Como alternativa, también puede optar por que el proceso sin servidor de Spark ejecute código spark en cuadernos, si desea usar la potencia de proceso distribuida de Spark.
Elección de un objetivo de cálculo para producción
Después de la experimentación, puede entrenar los modelos mediante la ejecución de scripts de Python para prepararse para su producción. Los scripts serán más fáciles de automatizar y programar para cuando quiera volver a entrenar el modelo continuamente en el tiempo. Puede ejecutar scripts como trabajos (canalización).
Al pasar a producción, quiere que el destino de proceso esté listo para controlar grandes volúmenes de datos. Cuantos más datos use, mejor será el modelo de aprendizaje automático.
Al entrenar modelos con scripts, quiere un destino de proceso a petición. Un clúster de proceso se escala verticalmente automáticamente cuando se deben ejecutar los scripts y se reduce verticalmente cuando el script termina de ejecutarse. Si desea una alternativa que no tenga que crear y administrar, puede usar el proceso sin servidor de Azure Machine Learning.
Elija un objetivo de cómputo para la implementación
El tipo de proceso que necesita al usar el modelo para generar predicciones depende de si desea realizar predicciones por lotes o en tiempo real.
Para las predicciones por lotes, puede ejecutar un trabajo de canalización en Azure Machine Learning. Los objetivos de cálculo, como los clústeres de proceso y el proceso sin servidor de Azure Machine Learning, son ideales para las tareas de canalización, ya que son a petición y escalables.
Cuando desee predicciones en tiempo real, necesita un tipo de proceso que se ejecute continuamente. Por lo tanto, las implementaciones en tiempo real se benefician de un cómputo más ligero (y, por tanto, más rentable). Los contenedores son ideales para implementaciones en tiempo real. Al implementar el modelo en un punto de conexión en línea administrado, Azure Machine Learning crea y administra contenedores para que ejecute el modelo. Como alternativa, puede asociar clústeres de Kubernetes para administrar el proceso necesario para generar predicciones en tiempo real.