Ultralytics YOLO27:
Get Started

Padroneggiare la distribuzione di YOLOv5 sulla VM Deep Learning di Google Cloud Platform (GCP)#

Intraprendere un percorso nell'intelligenza artificiale (AI) e nel machine learning (ML) può essere entusiasmante, soprattutto quando sfrutti la potenza e la flessibilità di una piattaforma di cloud computing. Google Cloud Platform (GCP) offre strumenti affidabili pensati sia per gli appassionati sia per i professionisti del ML. Uno di questi è la VM Deep Learning, preconfigurata per attività di data science e ML. In questo tutorial vedremo come configurare Ultralytics YOLOv5 su una VM GCP Deep Learning. Che tu stia muovendo i primi passi nel ML o sia già un professionista esperto, questa guida ti offre un percorso chiaro per implementare modelli di rilevamento degli oggetti basati su YOLOv5.

🆓 Inoltre, se sei un nuovo utente GCP, puoi approfittare dell'offerta di 300 $ di credito gratuito per avviare i tuoi progetti.

Oltre a GCP, scopri altre opzioni accessibili per iniziare rapidamente con YOLOv5, come il nostro notebook Google Colab Open In Colab per lavorare dal browser o la scalabilità di Amazon AWS. Inoltre, chi preferisce i container può usare la nostra immagine Docker ufficiale disponibile su Docker Hub Docker Pulls per un ambiente isolato, seguendo la nostra guida rapida a Docker.

Passaggio 1: crea e configura la tua VM Deep Learning#

Iniziamo creando una macchina virtuale ottimizzata per il deep learning:

  1. Vai al marketplace GCP e seleziona Deep Learning VM.
  2. Scegli un'istanza n1-standard-8: offre un buon equilibrio con 8 vCPU e 30 GB di memoria, adatto a molte attività di ML.
  3. Seleziona una GPU. La scelta dipende dal tuo carico di lavoro; anche una GPU T4 di base accelererà notevolmente il training del modello.
  4. Seleziona la casella 'Install NVIDIA GPU driver automatically on first startup?' per configurare tutto senza difficoltà.
  5. Assegna un disco SSD persistente da 300 GB per evitare colli di bottiglia nell'I/O.
  6. Fai clic su 'Deploy' e attendi che GCP configuri la tua VM Deep Learning personalizzata.

Questa VM include già strumenti e framework essenziali, tra cui la distribuzione Python Anaconda, che comprende comodamente molte dipendenze necessarie per YOLOv5.

Illustrazione del marketplace GCP per la configurazione di una VM Deep Learning

Passaggio 2: prepara la VM per YOLOv5#

Dopo aver configurato l'ambiente, installiamo YOLOv5 e prepariamolo all'uso:

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

# Install dependencies
pip install -r requirements.txt

Questa procedura assicura di avere un ambiente Python versione 3.8.0 o successiva e PyTorch 1.8 o successivo. I nostri script scaricano automaticamente modelli e dataset dall'ultima release di YOLOv5, semplificando l'avvio del training del modello.

Passaggio 3: addestra e distribuisci i tuoi modelli YOLOv5#

Completata la configurazione, puoi addestrare, convalidare, eseguire previsioni ed esportare con YOLOv5 sulla tua VM 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

Con pochi comandi, YOLOv5 ti permette di addestrare modelli personalizzati per il rilevamento degli oggetti, adattati alle tue esigenze, oppure di usare pesi preaddestrati per ottenere rapidamente risultati in varie attività. Dopo l'esportazione, scopri le diverse opzioni di distribuzione del modello.

Training del modello YOLOv5 su una VM GCP

Assegnare spazio di swap (facoltativo)#

Se lavori con dataset particolarmente grandi, che potrebbero superare la RAM della VM, valuta l'aggiunta di spazio di swap per evitare errori di 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

Addestramento di dataset personalizzati#

Per addestrare YOLOv5 sul tuo dataset personalizzato in GCP, segui questi passaggi generali:

  1. Prepara il dataset nel formato YOLO (immagini e relativi file di etichette). Consulta la nostra panoramica sui dataset per indicazioni.

  2. Carica il dataset sulla tua VM GCP usando gcloud compute scp o la funzionalità SSH della console web.

  3. Crea un file YAML di configurazione del dataset (custom_dataset.yaml) che specifichi i percorsi dei dati di training e convalida, il numero di classi e i nomi delle classi.

  4. Avvia il processo di training usando il file YAML del tuo dataset personalizzato e, se vuoi, partendo da pesi preaddestrati:

    # 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

Per istruzioni complete sulla preparazione dei dati e sul training con dataset personalizzati, consulta il tutorial Addestramento con dati personalizzati.

Sfruttare lo spazio di archiviazione cloud#

Per gestire i dati in modo efficiente, soprattutto con dataset grandi o numerosi esperimenti, integra il flusso di lavoro 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/

Questo approccio ti permette di archiviare nel cloud dataset di grandi dimensioni e modelli addestrati in modo sicuro e conveniente, riducendo al minimo lo spazio di archiviazione richiesto sulla tua istanza VM.

Considerazioni finali#

Congratulazioni! Ora puoi sfruttare le potenzialità di Ultralytics YOLOv5 insieme alla potenza di calcolo di Google Cloud Platform. Questa configurazione offre scalabilità, efficienza e versatilità per i tuoi progetti di rilevamento degli oggetti. Che si tratti di esplorazione personale, ricerca accademica o sviluppo di soluzioni industriali, hai compiuto un passo importante nel mondo dell'AI e del ML sul cloud.

Valuta l'uso di Ultralytics Platform per addestrare e gestire i tuoi modelli in modo semplice e senza codice.

Ricordati di documentare i tuoi progressi, condividere le tue idee con la vivace community Ultralytics e usare risorse come le discussioni su GitHub per collaborare e ricevere supporto. Ora vai e innova con YOLOv5 e GCP!

Vuoi continuare a migliorare le tue competenze di ML? Approfondisci la nostra documentazione ed esplora il blog di Ultralytics per altri tutorial e approfondimenti. Continua la tua avventura nell'AI!

Domande frequenti#

  • Una macchina n1-standard-8 con una sola GPU T4 è sufficiente per la maggior parte delle attività di training e inferenza con YOLOv5. Passa a una L4 o A100 per dataset di grandi dimensioni o modelli più grandi e seleziona sempre l'opzione per installare automaticamente il driver NVIDIA al primo avvio.

  • Arresta la VM dalla console di Compute Engine quando è inattiva. Continuerai a pagare il disco collegato, quindi elimina la VM e il disco una volta terminato il progetto e dopo aver copiato in sicurezza i pesi su Cloud Storage.

  • Per i dataset di piccole dimensioni, usa gcloud compute scp. Per dataset più grandi, caricali in un bucket di Cloud Storage e scaricali con gsutil cp -r gs://your-bucket/dataset ./datasets/, che è molto più veloce all'interno della rete di Google.

  • Sì. La Deep Learning VM include già PyTorch, quindi pip install ultralytics aggiunge il training e l'esportazione di YOLO26 tramite la CLI yolo. Per maggiori dettagli, consulta la guida introduttiva.

Commenti