Inicio rápido de Ultralytics YOLOv5 🚀 en AzureML
¡Te damos la bienvenida a la guía de inicio rápido de Ultralytics YOLOv5 para Microsoft Azure Machine Learning (AzureML)! Esta guía te llevará paso a paso por la configuración de YOLOv5 en una instancia de computación de AzureML, cubriendo todo, desde la creación de un entorno virtual hasta el entrenamiento y la ejecución de inferencia con el modelo.
¿Qué es Azure?
Azure es la plataforma integral de cloud computing de Microsoft. Ofrece una amplia gama de servicios, incluyendo potencia de computación, bases de datos, herramientas de análisis, capacidades de machine learning y soluciones de red. Azure permite a las organizaciones crear, desplegar y gestionar aplicaciones y servicios a través de centros de datos gestionados por Microsoft, facilitando 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 y diseñado para desarrollar, entrenar y desplegar modelos de machine learning. Proporciona un entorno colaborativo con herramientas adecuadas para científicos de datos y desarrolladores de todos los niveles. Sus características principales incluyen automated machine learning (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 del ciclo de vida del ML. AzureML simplifica el proceso de integrar predictive modeling en tus aplicaciones.
Requisitos previos
Para seguir esta guía, necesitarás una Azure subscription activa y acceso a un AzureML workspace. Si no tienes un área de trabajo configurada, consulta la Azure documentation oficial para crear una.
Crear una instancia de computación
Una instancia de computación en AzureML proporciona una estación de trabajo gestionada basada en la nube para científicos de datos.
- Navega a tu área de trabajo de AzureML.
- En el panel izquierdo, selecciona Compute.
- Ve a la pestaña Compute instances y haz clic en New.
- Configura tu instancia seleccionando los recursos de CPU o GPU adecuados según tus necesidades para el entrenamiento o la inferencia.
Abrir un terminal
Una vez que tu instancia de computación esté en funcionamiento, puedes acceder a su terminal directamente desde AzureML studio.
- Ve a la sección Notebooks en el panel izquierdo.
- Busca tu instancia de computación en el menú desplegable superior.
- Haz clic en la opción Terminal debajo del explorador de archivos para abrir una interfaz de línea de comandos en tu instancia.

Configurar y ejecutar YOLOv5
Ahora, configuremos el entorno y ejecutemos Ultralytics YOLOv5.
Crear un entorno virtual
Es una buena práctica utilizar un entorno virtual para gestionar las dependencias. Usaremos Conda, que viene preinstalado en las instancias de computación de AzureML. Para obtener una guía detallada de configuración de Conda, consulta la Conda Quickstart Guide de Ultralytics.
Crea un entorno Conda (por ejemplo, yolov5env) con una versión específica de Python y actívalo:
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 installedClonar el repositorio de YOLOv5
Clona 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 --recursiveInstalar dependencias
Instala los paquetes de Python necesarios listados en el archivo requirements.txt. También instalamos ONNX para capacidades de exportación de modelos.
pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0" # Install ONNX for exportingRealizar tareas con YOLOv5
Con la configuración completada, ya puedes entrenar, validar, realizar inferencias y exportar tu modelo YOLOv5.
-
Entrena el modelo en un conjunto de datos como COCO128. Consulta la documentación del Training Mode para 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 -
Valida el rendimiento del modelo entrenado usando métricas como Precision, Recall y mAP. Consulta la guía del Validation Mode para ver las opciones.
# Validate the yolov5s model on the COCO128 validation set python val.py --weights yolov5s.pt --data coco128.yaml --img 640 -
Ejecuta la inferencia en nuevas imágenes o vídeos. Explora la documentación del Prediction Mode para ver diversas 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 despliegue. Consulta la guía del Export Mode y la página de ONNX Integration.
# Export yolov5s to ONNX format python export.py --weights yolov5s.pt --include onnx --img 640
Usar un Notebook
Si prefieres una experiencia interactiva, puedes ejecutar estos comandos dentro de un Notebook de AzureML. Necesitarás crear un IPython kernel personalizado vinculado a tu entorno Conda.
Crear un nuevo IPython kernel
Ejecuta los siguientes comandos en el terminal de tu instancia de computación:
# 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 archivo de notebook .ipynb, selecciona tu nuevo kernel ("Python (yolov5env)") en el menú desplegable de kernels que aparece arriba a la derecha.
Ejecutar comandos en las celdas de un Notebook
-
Celdas de Python: El código en las celdas de Python se ejecutará automáticamente usando el kernel
yolov5envseleccionado. -
Celdas de Bash: Para ejecutar comandos de shell, usa el comando mágico
%%bashal principio de la celda. Recuerda activar tu entorno Conda dentro de cada celda de 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
¡Felicidades! Has configurado y ejecutado con éxito Ultralytics YOLOv5 en AzureML. Para seguir explorando, considera echar un vistazo a otras Ultralytics Integrations o a la detallada YOLOv5 documentation. También puede que te resulte útil la AzureML documentation para escenarios avanzados como el entrenamiento distribuido o el despliegue de modelos como un punto de conexión (endpoint).