Meet YOLO26: next-gen vision AI.

Link to this sectionDomina el despliegue de YOLOv5 en la máquina virtual de aprendizaje profundo (Deep Learning VM) de Google Cloud Platform (GCP)#

Emprender el viaje de la inteligencia artificial (IA) y el aprendizaje automático (ML) puede ser emocionante, especialmente cuando aprovechas la potencia y flexibilidad de una plataforma de computación en la nube. Google Cloud Platform (GCP) ofrece herramientas sólidas adaptadas tanto para entusiastas del ML como para profesionales. Una de estas herramientas es la Deep Learning VM, preconfigurada para tareas de ciencia de datos y ML. En este tutorial, navegaremos por el proceso de configuración de Ultralytics YOLOv5 en una GCP Deep Learning VM. Tanto si estás dando tus primeros pasos en ML como si eres un profesional experimentado, esta guía proporciona un camino claro para implementar modelos de detección de objetos potenciados por YOLOv5.

🆓 Además, si eres un nuevo usuario de GCP, tienes suerte con una oferta de crédito gratuito de 300 $ para poner en marcha tus proyectos.

Además de GCP, explora otras opciones de inicio rápido accesibles para YOLOv5, como nuestro Google Colab Notebook Open In Colab para una experiencia basada en navegador, o la escalabilidad de Amazon AWS. Además, los aficionados a los contenedores pueden utilizar nuestra imagen oficial de Docker disponible en Docker Hub Docker Pulls para un entorno encapsulado, siguiendo nuestra Guía de inicio rápido de Docker.

Link to this sectionPaso 1: Crea y configura tu Deep Learning VM#

Comencemos creando una máquina virtual optimizada para el aprendizaje profundo:

  1. Navega al marketplace de GCP y selecciona la Deep Learning VM.
  2. Elige una instancia n1-standard-8; ofrece un equilibrio de 8 vCPU y 30 GB de memoria, adecuado para muchas tareas de ML.
  3. Selecciona una GPU. La elección depende de tu carga de trabajo; incluso una GPU T4 básica acelerará significativamente el entrenamiento del modelo.
  4. Marca la casilla '¿Instalar el controlador de GPU de NVIDIA automáticamente en el primer inicio?' para una configuración perfecta.
  5. Asigna un disco persistente SSD de 300 GB para evitar cuellos de botella en E/S.
  6. Haz clic en 'Desplegar' (Deploy) y permite que GCP aprovisione tu Deep Learning VM personalizada.

Esta VM viene precargada con herramientas y marcos esenciales, incluida la distribución de Python Anaconda, que agrupa convenientemente muchas dependencias necesarias para YOLOv5.

Ilustración del Marketplace de GCP para la configuración de una Deep Learning VM

Link to this sectionPaso 2: Prepara la VM para YOLOv5#

Después de configurar el entorno, vamos a instalar YOLOv5 y dejarlo listo:

# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5

# Install dependencies
pip install -r requirements.txt

Este proceso de configuración garantiza que tengas una versión del entorno Python 3.8.0 o posterior y PyTorch 1.8 o posterior. Nuestros scripts descargan automáticamente modelos y conjuntos de datos de la última versión de YOLOv5, simplificando el proceso de inicio del entrenamiento del modelo.

Link to this sectionPaso 3: Entrena y despliega tus modelos YOLOv5#

Con la configuración completa, estás listo para entrenar, validar, predecir y exportar con YOLOv5 en tu VM de GCP:

# Train a YOLOv5 model on your dataset (e.g., yolov5s)
python train.py --data coco128.yaml --weights yolov5s.pt --img 640

# Validate the trained model to check Precision, Recall, and mAP
python val.py --weights yolov5s.pt --data coco128.yaml

# Run inference using the trained model on images or videos
python detect.py --weights yolov5s.pt --source path/to/your/images_or_videos

# Export the trained model to various formats like ONNX, CoreML, TFLite for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite

Usando solo unos pocos comandos, YOLOv5 te permite entrenar modelos personalizados de detección de objetos adaptados a tus necesidades específicas o utilizar pesos preentrenados para obtener resultados rápidos en diversas tareas. Explora diferentes opciones de despliegue de modelos después de exportar.

Entrenamiento de modelos YOLOv5 en una VM de GCP

Link to this sectionAsignar espacio de intercambio (Swap Space) (Opcional)#

Si trabajas con conjuntos de datos particularmente grandes que podrían exceder la RAM de tu VM, considera agregar espacio de intercambio para evitar errores de memoria:

# Allocate a 64GB swap file
sudo fallocate -l 64G /swapfile

# Set the correct permissions for the swap file
sudo chmod 600 /swapfile

# Set up the Linux swap area
sudo mkswap /swapfile

# Enable the swap file
sudo swapon /swapfile

# Verify the swap space allocation (should show increased swap memory)
free -h

Link to this sectionEntrenamiento con conjuntos de datos personalizados#

Para entrenar YOLOv5 con tu conjunto de datos personalizado dentro de GCP, sigue estos pasos generales:

  1. Prepara tu conjunto de datos según el formato YOLOv5 (imágenes y archivos de etiquetas correspondientes). Consulta nuestra visión general de conjuntos de datos para obtener orientación.

  2. Sube tu conjunto de datos a tu VM de GCP usando gcloud compute scp o la función SSH de la consola web.

  3. Crea un archivo YAML de configuración del conjunto de datos (custom_dataset.yaml) que especifique las rutas a tus datos de entrenamiento y validación, el número de clases y los nombres de las clases.

  4. Comienza el proceso de entrenamiento usando el YAML de tu conjunto de datos personalizado y, potencialmente, comenzando desde pesos preentrenados:

    # Example: Train YOLOv5s on a custom dataset for 100 epochs
    python train.py --img 640 --batch 16 --epochs 100 --data custom_dataset.yaml --weights yolov5s.pt

Para obtener instrucciones completas sobre la preparación de datos y el entrenamiento con conjuntos de datos personalizados, consulta la documentación de entrenamiento de Ultralytics YOLOv5.

Link to this sectionAprovechamiento del almacenamiento en la nube#

Para una gestión eficiente de los datos, especialmente con grandes conjuntos de datos o numerosos experimentos, integra tu flujo de trabajo de YOLOv5 con Google Cloud Storage:

# Ensure Google Cloud SDK is installed and initialized
# If not installed: curl https://sdk.cloud.google.com/ | bash
# Then initialize: gcloud init

# Example: Copy your dataset from a GCS bucket to your VM
gsutil cp -r gs://your-data-bucket/my_dataset ./datasets/

# Example: Copy trained model weights from your VM to a GCS bucket
gsutil cp -r ./runs/train/exp/weights gs://your-models-bucket/yolov5_custom_weights/

Este enfoque te permite almacenar grandes conjuntos de datos y modelos entrenados de forma segura y rentable en la nube, minimizando los requisitos de almacenamiento en tu instancia de VM.

Link to this sectionReflexiones finales#

¡Enhorabuena! Ahora estás equipado para aprovechar las capacidades de Ultralytics YOLOv5 combinadas con la potencia computacional de Google Cloud Platform. Esta configuración proporciona escalabilidad, eficiencia y versatilidad para tus proyectos de detección de objetos. Ya sea para exploración personal, investigación académica o la creación de soluciones industriales, has dado un paso significativo en el mundo de la IA y el ML en la nube.

Considera usar la Plataforma Ultralytics para una experiencia simplificada y sin código para entrenar y gestionar tus modelos.

Recuerda documentar tu progreso, compartir ideas con la vibrante comunidad de Ultralytics y utilizar recursos como las discusiones de GitHub para la colaboración y el soporte. ¡Ahora, sal ahí fuera e innova con YOLOv5 y GCP!

¡Quieres seguir mejorando tus habilidades de ML? Sumérgete en nuestra documentación y explora el Blog de Ultralytics para obtener más tutoriales e información. ¡Deja que continúe tu aventura con la IA!

Colaboradores

Comentarios