Meet YOLO26: next-gen vision AI.

Link to this sectionUltralytics YOLOv5 🚀 en el inicio rápido de AzureML#

¡Bienvenido 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.

Link to this section¿Qué es Azure?#

Azure es la plataforma integral de computación en la nube 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.

Link to this section¿Qué es Azure Machine Learning (AzureML)?#

Azure Machine Learning (AzureML) es un servicio en la nube especializado y diseñado para el desarrollo, entrenamiento y despliegue de 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 clave incluyen machine learning 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 de ML. AzureML simplifica el proceso de integrar modelos predictivos en aplicaciones.

Link to this sectionRequisitos previos#

Para seguir esta guía, necesitarás una suscripción a Azure activa 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.

Link to this sectionCrear una instancia de computación#

Una instancia de computación en AzureML proporciona una estación de trabajo gestionada en la nube para científicos de datos.

  1. Navega a tu espacio de trabajo de AzureML.
  2. En el panel izquierdo, selecciona Compute (Computación).
  3. Ve a la pestaña Compute instances (Instancias de computación) y haz clic en New (Nuevo).
  4. Configura tu instancia seleccionando los recursos de CPU o GPU adecuados según tus necesidades de entrenamiento o inferencia.
Azure ML create compute instance interface

Link to this sectionAbrir un terminal#

Una vez que tu instancia de computación esté en ejecución, puedes acceder a su terminal directamente desde AzureML studio.

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

Ubicación del botón para abrir el terminal en Azure ML

Link to this sectionConfigurar y ejecutar YOLOv5#

Ahora, vamos a configurar el entorno y ejecutar Ultralytics YOLOv5.

Link to this sectionCrear 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 Guía de inicio rápido de Conda de Ultralytics.

Crea un entorno de 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 installed

Link to this sectionClonar 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 --recursive

Link to this sectionInstalar 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 exporting

Link to this sectionRealizar tareas de 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 Modo Entrenamiento 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 Precisión, Recall y mAP. Consulta la guía del Modo Validación para conocer 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 imágenes o vídeos nuevos. Explora la documentación del Modo Predicción para conocer 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 Modo Exportación y la página de Integración con ONNX.

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

Link to this sectionUsar un Notebook#

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

Link to this sectionCrear un nuevo kernel de IPython#

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 en la parte superior derecha.

Link to this sectionEjecutar comandos en celdas de Notebook#

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

  • Celdas de Bash: Para ejecutar comandos de shell, usa el comando mágico %%bash al principio de la celda. Recuerda activar tu entorno de 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

¡Enhorabuena! Has configurado y ejecutado con éxito Ultralytics YOLOv5 en AzureML. Para seguir explorando, considera echar un vistazo a otras Integraciones de Ultralytics o a la detallada documentación de YOLOv5. También puede resultarte útil la documentación de AzureML para escenarios avanzados como el entrenamiento distribuido o el despliegue de modelos como endpoint.

Colaboradores

Comentarios