Ultralytics YOLO27: Inscreve-te na lista de espera.
Começar

Domina a implementação do YOLOv5 numa VM Deep Learning da Google Cloud Platform (GCP)#

Google Cloud Platform (GCP) é uma plataforma de computação na nuvem cuja VM Deep Learning vem pré-configurada para tarefas de ciência de dados e aprendizagem automática (ML). Este tutorial explica como configurar Ultralytics YOLOv5 numa VM Deep Learning do GCP. Quer estejas a dar os primeiros passos em ML ou sejas um profissional experiente, o tutorial oferece um caminho claro para treinar e executar modelos de deteção de objetos com YOLOv5.

Os novos utilizadores do GCP também podem aproveitar uma oferta de crédito gratuito de 300 $ para começar.

Outras opções de início rápido para YOLOv5 incluem o nosso Google Colab Notebook Open In Colab para uma experiência no navegador, ou a escalabilidade da Amazon AWS. Também podes utilizar a nossa imagem Docker oficial disponível no Docker Hub Docker Pulls para obter um ambiente encapsulado, seguindo o nosso Guia de início rápido do Docker.

Etapa 1: criar e configurar a Deep Learning VM#

Começa por criar uma máquina virtual otimizada para aprendizagem profunda:

  1. Acede ao mercado da GCP e seleciona Deep Learning VM.
  2. Escolhe uma instância n1-standard-8; com 8 vCPUs e 30 GB de memória, oferece um equilíbrio adequado para muitas tarefas de ML.
  3. Seleciona uma GPU. A escolha depende da tua carga de trabalho; até uma GPU T4 básica vai acelerar bastante o treino do modelo.
  4. Marca a caixa «Instalar automaticamente o controlador NVIDIA GPU no primeiro arranque?».
  5. Atribui um Persistent Disk SSD de 300 GB para evitar estrangulamentos de E/S.
  6. Clica em 'Deploy' e deixa a GCP provisionar a tua Deep Learning VM personalizada.

Esta VM já inclui ferramentas e frameworks essenciais, incluindo a distribuição Python Anaconda, que reúne convenientemente muitas das dependências necessárias para o YOLOv5.

Ilustração do GCP Marketplace que mostra a configuração de uma Deep Learning VM

Etapa 2: preparar a VM para o YOLOv5#

Em seguida, instala YOLOv5 e as respetivas dependências:

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

# Install dependencies
pip install -r requirements.txt

YOLOv5 requer Python 3.8.0 ou posterior e PyTorch 1.8 ou posterior. Os scripts transferem automaticamente modelos e conjuntos de dados da versão mais recente do YOLOv5, simplificando o início do treino do modelo.

Etapa 3: treinar e implementar os teus modelos YOLOv5#

Com a configuração concluída, já podes treinar, validar, fazer previsões e exportar com o YOLOv5 na tua VM da 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

Com poucos comandos, você pode treinar modelos personalizados de detecção de objetos adaptados às suas necessidades ou começar com pesos pré-treinados para obter resultados rapidamente.

Treino do modelo YOLOv5 numa VM da GCP

Atribuir espaço swap (opcional)#

Se estiveres a trabalhar com conjuntos de dados particularmente grandes que possam exceder a RAM da VM, considera adicionar espaço swap para evitar erros de memória:

# 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

Treinar com conjuntos de dados personalizados#

Para treinar o YOLOv5 com o teu conjunto de dados personalizado na GCP, segue estas etapas gerais:

  1. Prepara o teu conjunto de dados no formato YOLOv5 (imagens e ficheiros de etiquetas correspondentes). Consulta a nossa visão geral dos conjuntos de dados para obteres orientações.

  2. Carrega o teu conjunto de dados para a VM da GCP usando gcloud compute scp ou a funcionalidade SSH da consola Web.

  3. Cria um ficheiro YAML de configuração do conjunto de dados (custom_dataset.yaml) que especifique os caminhos para os dados de treino e validação, o número de classes e os nomes das classes.

  4. Inicia o processo de treino usando o teu ficheiro YAML do conjunto de dados personalizado e, se quiseres, começando com pesos pré-treinados:

    # 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 obteres instruções completas sobre a preparação dos dados e o treino com conjuntos de dados personalizados, consulta o tutorial Treinar com dados personalizados.

Tirar partido do Cloud Storage#

Para gerir dados com eficiência, especialmente no caso de conjuntos de dados grandes ou de muitas experiências, integra o teu fluxo de trabalho do YOLOv5 com o 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/

Esta abordagem permite-te armazenar conjuntos de dados grandes e modelos treinados na nuvem de forma segura e económica, reduzindo os requisitos de armazenamento da tua instância VM.

Considerações finais#

Agora tens Ultralytics YOLOv5 a funcionar numa VM Deep Learning do Google Cloud Platform, pronta para projetos de deteção de objetos que vão desde experiências pessoais e investigação académica até soluções industriais.

Considera utilizar a Ultralytics Platform para treinar e gerir os teus modelos sem código.

Para colocar perguntas e colaborar, junta-te às discussões no GitHub.

Perguntas frequentes#

  • Uma máquina n1-standard-8 com uma única GPU T4 é suficiente para a maioria dos treinos e inferências com YOLOv5. Muda para uma L4 ou A100 para conjuntos de dados maiores ou modelos mais robustos e assinala sempre a opção de instalar automaticamente o controlador NVIDIA na primeira inicialização.

  • Para a VM na consola do Compute Engine quando estiver inativa. Continuarás a pagar pelo disco associado, por isso elimina a VM e o disco quando o projeto estiver concluído e os teus pesos estiverem copiados em segurança para o Cloud Storage.

  • Para conjuntos de dados pequenos, usa gcloud compute scp. Para qualquer conjunto maior, carrega-o para um bucket do Cloud Storage e transfere-o com gsutil cp -r gs://your-bucket/dataset ./datasets/, que é muito mais rápido dentro da rede da Google.

  • Sim. A Deep Learning VM já inclui PyTorch, então pip install ultralytics adiciona o treinamento e a exportação do YOLO26 com a CLI yolo.

Comentários

Faz uma pergunta, partilha os teus resultados ou ajuda alguém.