Ir al contenido

Ultralytics YOLOv5 🚀 en la guía de inicio rápido de AzureML

¡Bienvenido a la guía de inicio rápido de YOLOv5 de Ultralytics para Microsoft Azure Machine Learning (AzureML)! Esta guía le guiará a través de la configuración de YOLOv5 en una instancia de cálculo de AzureML, cubriendo todo, desde la creación de un entorno virtual hasta el entrenamiento y la ejecución de la inferencia con el modelo.

¿Qué es Azure?

Azure es la plataforma integral de computación en la nube de Microsoft. Ofrece una amplia gama de servicios, que incluyen potencia de cálculo, bases de datos, herramientas de análisis, capacidades de aprendizaje automático y soluciones de red. Azure permite a las organizaciones crear, implementar y administrar aplicaciones y servicios a través de centros de datos administrados por Microsoft, lo que facilita la migración de cargas de trabajo desde la infraestructura local a la nube.

¿Qué es Azure Machine Learning (AzureML)?

Azure Machine Learning (AzureML) es un servicio en la nube especializado, diseñado para desarrollar, entrenar e implementar modelos de aprendizaje automático. Proporciona un entorno colaborativo con herramientas adecuadas para científicos de datos y desarrolladores de todos los niveles. Las características clave incluyen el aprendizaje automático automatizado (AutoML), una interfaz de arrastrar y soltar para la creación de modelos y un potente SDK de Python para un control más granular sobre el ciclo de vida del ML. AzureML simplifica el proceso de integración del modelado predictivo en las aplicaciones.

Prerrequisitos

Para seguir esta guía, necesitarás una suscripción activa a Azure y acceso a un espacio de trabajo de AzureML. Si no tienes un espacio de trabajo configurado, consulta la documentación oficial de Azure para crear uno.

Crear una instancia de cómputo

Una instancia de cálculo en AzureML proporciona una estación de trabajo gestionada basada en la nube para los científicos de datos.

  1. Navegue a su espacio de trabajo de AzureML.
  2. En el panel izquierdo, seleccione Compute.
  3. Ve a la pestaña Instancias de Compute y haz clic en Nuevo.
  4. Configure su instancia seleccionando los recursos de CPU o GPU apropiados según sus necesidades para el entrenamiento o la inferencia.

create-compute-arrow

Abrir una Terminal

Una vez que su instancia de cómputo se esté ejecutando, puede acceder a su terminal directamente desde AzureML studio.

  1. Ve a la sección Notebooks en el panel izquierdo.
  2. Encuentre su instancia de cómputo en el menú desplegable superior.
  3. Haga clic en la opción Terminal debajo del explorador de archivos para abrir una interfaz de línea de comandos en su instancia.

open-terminal-arrow

Configurar y Ejecutar YOLOv5

Ahora, configuremos el entorno y ejecutemos Ultralytics YOLOv5.

1. Cree un Entorno Virtual

Es una buena práctica utilizar un entorno virtual para administrar las dependencias. Utilizaremos Conda, que está preinstalado en las instancias de cálculo de AzureML. Para obtener una guía de configuración detallada de Conda, consulte la Guía de inicio rápido de Conda de Ultralytics.

Crear un entorno Conda (p. ej., yolov5env) con una versión específica de Python y actívelo:

conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env                     # Activate the environment
conda install pip -y                         # Ensure pip is installed

2. Clone el Repositorio YOLOv5

Clone el repositorio oficial de Ultralytics YOLOv5 desde GitHub usando Git:

git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5                                       # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursive

3. Instale las Dependencias

Instale los paquetes de python necesarios que se enumeran en el requirements.txt archivo. También instalamos ONNX para las capacidades de exportación de modelos.

pip install -r requirements.txt # Install core dependencies
pip install onnx > =1.12.0      # Install ONNX for exporting

4. Realice Tareas YOLOv5

Una vez completada la configuración, ya puede entrenar, validar, realizar inferencias y exportar su modelo YOLOv5.

  • Entrena el modelo en un conjunto de datos como COCO128. Consulta la documentación del Modo de entrenamiento para obtener más detalles.

    # Start training using yolov5s pretrained weights on the COCO128 dataset
    python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16
    
  • Valide el rendimiento del modelo entrenado utilizando métricas como Precisión, Recall y mAP. Consulte la guía del Modo de Validación para ver las opciones.

    # Validate the yolov5s model on the COCO128 validation set
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
    
  • Ejecutar Inferencia en nuevas imágenes o vídeos. Explore la documentación del Modo de Predicción para varias fuentes de inferencia.

    # Run inference with yolov5s on sample images
    python detect.py --weights yolov5s.pt --source data/images --img 640
    
  • Exporta el modelo a diferentes formatos como ONNX, TensorRT o CoreML para su implementación. Consulta la guía del Modo de exportación y la página de Integración de ONNX.

    # Export yolov5s to ONNX format
    python export.py --weights yolov5s.pt --include onnx --img 640
    

Usando un Notebook

Si prefieres una experiencia interactiva, puedes ejecutar estos comandos dentro de un AzureML Notebook. Necesitarás crear un kernel de IPython personalizado vinculado a tu entorno Conda.

Crear un nuevo kernel de IPython

Ejecute los siguientes comandos en el terminal de su instancia de cálculo:

# Ensure your Conda environment is active
# conda activate yolov5env

# Install ipykernel if not already present
conda install ipykernel -y

# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"

Después de crear el kernel, actualiza tu navegador. Cuando abras o crees un .ipynb archivo de notebook, seleccione su nuevo kernel ("Python (yolov5env)") en el menú desplegable del kernel en la parte superior derecha.

Ejecución de comandos en celdas de Notebook

  • Celdas de python: El código en las celdas de Python se ejecutará automáticamente utilizando el seleccionado yolov5env kernel.

  • Celdas Bash: Para ejecutar comandos shell, utiliza el siguiente comando: %%bash comando magic al principio de la celda. Recuerde activar su entorno Conda dentro de cada celda bash, ya que no heredan automáticamente el contexto del entorno del kernel del notebook.

    %%bash
    source activate yolov5env # Activate environment within the cell
    
    # Example: Run validation using the activated environment
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
    

¡Enhorabuena! Ha configurado y ejecutado Ultralytics YOLOv5 correctamente en AzureML. Para una mayor exploración, considere consultar otras Integraciones de Ultralytics o la documentación detallada de YOLOv5. También puede encontrar útil la documentación de AzureML para escenarios avanzados como el entrenamiento distribuido o el despliegue de modelos como un punto final.



📅 Creado hace 1 año ✏️ Actualizado hace 4 meses

Comentarios