Dominio de la implantación de YOLOv5 en la máquina virtual de aprendizaje profundo de Google Cloud Platform (GCP)
Embarcarse en el viaje de la inteligencia artificial y el aprendizaje automático puede ser estimulante, especialmente cuando se aprovecha la potencia y la flexibilidad de una plataforma en la nube. Google Cloud Platform (GCP) ofrece sólidas herramientas adaptadas tanto a los entusiastas como a los profesionales del aprendizaje automático. Una de estas herramientas es Deep Learning VM, que está preconfigurada para tareas de ciencia de datos y ML. En este tutorial, navegaremos a través del proceso de configuración de YOLOv5 en una máquina virtual de aprendizaje profundo de GCP. Tanto si está dando sus primeros pasos en ML como si es un profesional experimentado, esta guía está diseñada para proporcionarle un camino claro hacia la implementación de modelos de detección de objetos impulsados por YOLOv5.
🆓 Además, si eres un nuevo usuario de GCP, estás de suerte con una oferta de crédito gratuito de 300 $ para poner en marcha tus proyectos.
Además de GCP, explore otras opciones accesibles de inicio rápido para YOLOv5, como nuestro Cuaderno Google Colab para una experiencia basada en navegador, o la escalabilidad de Amazon AWS. Además, los aficionados a los contenedores pueden utilizar nuestra imagen Docker oficial en Centro Docker
para un entorno encapsulado.
Paso 1: Crear y configurar la máquina virtual de aprendizaje profundo
Empecemos por crear una máquina virtual preparada para el aprendizaje profundo:
- Dirígete al marketplace de GCP y selecciona la Deep Learning VM.
- Opte por una instancia n1-standard-8; ofrece un equilibrio de 8 vCPU y 30 GB de memoria, ideal para nuestras necesidades.
- A continuación, selecciona un GPU. Esto depende de tu carga de trabajo; incluso uno básico como el T4 acelerará notablemente el entrenamiento de tu modelo.
- Marque la casilla "¿Instalar automáticamente el controlador NVIDIA GPU en el primer arranque?" para una instalación sin complicaciones.
- Asigne un disco persistente SSD de 300 GB para garantizar que no se produzcan cuellos de botella en las operaciones de E/S.
- Pulsa "Deploy" y deja que GCP haga su magia para aprovisionar tu máquina virtual de aprendizaje profundo personalizada.
Esta máquina virtual viene cargada con un tesoro de herramientas y marcos de trabajo preinstalados, incluida la distribución Anaconda Python , que agrupa convenientemente todas las dependencias necesarias para YOLOv5.
Paso 2: Preparar la máquina virtual para YOLOv5
Una vez configurado el entorno, vamos a poner en marcha YOLOv5 :
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
# Change the directory to the cloned repository
cd yolov5
# Install the necessary Python packages from requirements.txt
pip install -r requirements.txt
Este proceso de configuración asegura que está trabajando con un entorno Python versión 3.8.0 o más reciente y PyTorch 1.8 o superior. Nuestros scripts descargan sin problemas modelos y conjuntos de datos directamente desde la últimaversión de YOLOv5 , lo que facilita el inicio del entrenamiento de modelos.
Paso 3: Formar e implantar los modelos YOLOv5
Una vez completada la configuración, está listo para profundizar en la formación y la inferencia con YOLOv5 en su GCP VM:
# Train a model on your data
python train.py
# Validate the trained model for Precision, Recall, and mAP
python val.py --weights yolov5s.pt
# Run inference using the trained model on your images or videos
python detect.py --weights yolov5s.pt --source path/to/images
# Export the trained model to other formats for deployment
python export.py --weights yolov5s.pt --include onnx coreml tflite
Con sólo unos comandos, YOLOv5 le permite entrenar modelos de detección de objetos personalizados y adaptados a sus necesidades específicas o utilizar pesos preentrenados para obtener resultados rápidos en una gran variedad de tareas.
Asignar espacio de intercambio (opcional)
Para quienes trabajen con grandes conjuntos de datos, considere la posibilidad de ampliar su instancia de GCP con 64 GB adicionales de memoria swap:
sudo fallocate -l 64G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
free -h # confirm the memory increment
Formación de conjuntos de datos personalizados
Para entrenar YOLOv5 en su conjunto de datos personalizado en GCP, siga estos pasos:
- Prepare su conjunto de datos en formato YOLOv5 (imágenes y etiquetas)
- Cargue su conjunto de datos en su GCP VM utilizando
gcloud
o SCP - Crear un archivo YAML de conjunto de datos especificando rutas y clases
- Inicie el entrenamiento con los parámetros adecuados:
Para obtener instrucciones más detalladas sobre el entrenamiento con conjuntos de datos personalizados, consulte la documentación deUltralytics YOLOv5 .
Aprovechar el almacenamiento en la nube
Para una gestión eficaz de los datos, integra tu flujo de trabajo YOLOv5 con Google Cloud Storage:
# Install Google Cloud SDK if not already installed
curl https://sdk.cloud.google.com | bash
gcloud init
# Copy data to/from Cloud Storage
gsutil cp -r gs://your-bucket/dataset ./
gsutil cp -r ./runs/train/exp/weights gs://your-bucket/models/
Este enfoque permite almacenar grandes conjuntos de datos y modelos entrenados de forma segura en la nube, manteniendo al mismo tiempo los requisitos de almacenamiento de la máquina virtual al mínimo.
Reflexiones finales
¡Enhorabuena! Ahora puede aprovechar las capacidades de YOLOv5 con la destreza computacional de Google Cloud Platform. Esta combinación proporciona escalabilidad, eficiencia y versatilidad para sus tareas de detección de objetos. Ya sea para proyectos personales, investigación académica o aplicaciones industriales, ha dado un paso fundamental en el mundo de la IA y el aprendizaje automático en la nube.
No olvide documentar su viaje, compartir ideas con la comunidad Ultralytics y aprovechar los espacios de colaboración, como los debates de GitHub, para seguir creciendo. Ahora, ¡a innovar con YOLOv5 y GCP!
¿Quiere seguir mejorando sus habilidades y conocimientos de ML? Sumérgete en nuestra documentación y tutoriales para obtener más recursos. ¡Que continúe tu aventura con la IA!