Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
SE APLICA A:Extensión de ML de la CLI de Azure v2 (actual)
En este artículo se explica cómo entrenar un modelo de clasificación de imágenes para reconocer números escritos a mano mediante TensorFlow y la extensión de Visual Studio Code de Azure Machine Learning.
Importante
Esta característica actualmente está en su versión preliminar pública. Esta versión preliminar se ofrece sin un Acuerdo de Nivel de Servicio y no se recomienda para cargas de trabajo de producción. Es posible que algunas características no sean compatibles o que tengan sus funcionalidades limitadas.
Para más información, consulte Términos de uso complementarios de las Versiones Preliminares de Microsoft Azure.
En este tutorial, ha aprendido las tareas siguientes:
- Comprendiendo el código
- Crear un área de trabajo
- Entrenamiento de un modelo
Requisitos previos
- Una suscripción de Azure. Si no tiene una, regístrese para obtener una versión gratuita o de pago de Azure Machine Learning. Si usa la suscripción gratuita, solo se admiten clústeres de CPU.
- Visual Studio Code, un editor de código ligero y multiplataforma.
- Extensión Azure Machine Learning Studio para Visual Studio Code. Para obtener instrucciones de instalación, consulte Configuración de la extensión de Visual Studio Code de Azure Machine Learning.
- CLI (v2). Para obtener instrucciones de instalación, consulte Instalación y configuración de la CLI (v2)
- Clone el repositorio de ejemplos de Azure Machine Learning basado en la comunidad:
git clone https://github.com/Azure/azureml-examples.git
Comprendiendo el código
El código de este tutorial usa TensorFlow para entrenar un modelo de aprendizaje automático de clasificación de imágenes que clasifica dígitos manuscritos de 0 a 9. Para ello, crea una red neuronal que toma los valores de píxeles de imágenes de 28 x 28 píxeles como entrada y, a continuación, genera una lista de 10 probabilidades, una para cada uno de los dígitos que se clasifican. El siguiente ejemplo muestra cómo son los datos.
Crear un área de trabajo
Para compilar una aplicación en Azure Machine Learning, primero debe crear un área de trabajo. Un área de trabajo contiene los recursos para entrenar modelos y también los propios modelos entrenados. Para más información, consulte ¿Qué es un área de trabajo de Azure Machine Learning?
En Visual Studio Code, abra el directorio azureml-examples/cli/jobs/single-step/tensorflow/mnist desde el repositorio de ejemplos.
En la barra de actividad de Visual Studio Code, haga clic en el icono de Azure para abrir la vista de Azure Machine Learning.
En Machine Learning, haga clic con el botón derecho en el nodo de suscripción y seleccione Crear área de trabajo.
Aparecerá un archivo de especificación. Configure el archivo de especificación con las siguientes opciones y guárdelo.
$schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json name: TeamWorkspace ___location: WestUS2 display_name: team-ml-workspace description: A workspace for training machine learning models tags: purpose: training team: ml-team
El archivo de especificación crea un área de trabajo denominada
TeamWorkspace
en la regiónWestUS2
. El resto de las opciones definidas en el archivo de especificación proporcionan nombres descriptivos, descripciones y etiquetas para el área de trabajo.Haga clic con el botón derecho en el archivo de especificación y seleccione Azure ML: Ejecutar YAML. La creación de un recurso utiliza las opciones de configuración definidas en el archivo de especificación YAML y envía un trabajo mediante la CLI (v2). En este momento, se realiza una solicitud a Azure para crear una nueva área de trabajo y recursos dependientes en su cuenta. Después de unos minutos, la nueva área de trabajo aparece en el nodo de la suscripción.
Establezca
TeamWorkspace
como el área de trabajo predeterminada. Al hacerlo, se colocan de forma predeterminada los recursos y trabajos que se crean en el área de trabajo. Seleccione el botón Set Azure Machine Learning Workspace (Establecer área de trabajo de Azure Machine Learning) en la barra de estado de Visual Studio Code y siga las indicaciones para establecerTeamWorkspace
como el área de trabajo predeterminada.
Para más información sobre las áreas de trabajo, consulte Administración de recursos de Azure Machine Learning con la extensión de VS Code.
Entrenamiento del modelo
Durante el proceso de entrenamiento, se entrena un modelo de TensorFlow mediante el procesamiento de los datos de entrenamiento y los patrones de aprendizaje insertados en él para cada uno de los dígitos respectivos que se clasifican.
Al igual que las áreas de trabajo y los destinos de proceso, los trabajos de entrenamiento se definen mediante plantillas de recursos. Para este ejemplo, la especificación se define en el archivo job.yml , que se encuentra en la carpeta azureml-examples/cli/jobs/single-step/tensorflow/mnist en el repositorio de ejemplos.
$schema: https://azuremlschemas.azureedge.net/latest/commandJob.schema.json
code: src
command: >
python train.py
environment: azureml:AzureML-tensorflow-2.4-ubuntu18.04-py37-cuda11-gpu:48
resources:
instance_type: Standard_NC12
instance_count: 3
experiment_name: tensorflow-mnist-example
description: Train a basic neural network with TensorFlow on the MNIST dataset.
Este archivo de especificación envía un trabajo de entrenamiento llamado tensorflow-mnist-example
al destino de proceso gpu-cluster
creado recientemente que ejecuta el código en el script de Python train.py. El entorno usado es uno de los entornos mantenidos proporcionados por Azure Machine Learning, que contiene TensorFlow y otras dependencias de software necesarias para ejecutar el script de entrenamiento. Para más información sobre los entornos seleccionados, consulte Entornos mantenidos de Azure Machine Learning.
Para enviar el trabajo de entrenamiento:
- Abra el archivo job.yml. .
- Haga clic con el botón derecho en el archivo que está en el editor de texto y seleccione Azure ML: Ejecutar YAML.
En este momento, se envía una solicitud a Azure para ejecutar el experimento en el destino de proceso seleccionado en el área de trabajo. Este proceso tarda varios minutos. La cantidad de tiempo que se tarda en ejecutar el trabajo de entrenamiento se ve afectada por varios factores, como el tipo de proceso y el tamaño de los datos de entrenamiento. Para realizar un seguimiento del progreso del experimento, haga clic con el botón derecho en el nodo de ejecución actual y seleccione View Run in Azure Portal (Ver trabajo en Azure Portal).
Cuando aparezca el cuadro de diálogo que solicita abrir un sitio web externo, seleccione Abrir.
Cuando el modelo haya terminado de entrenar, la etiqueta de estado situada junto al nodo de ejecución se actualiza a Completado.