YOLO Vision 2026:

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

Iniciar uma jornada pela inteligência artificial (AI) e pela aprendizagem automática (ML) pode ser entusiasmante, especialmente quando aproveitas o poder e a flexibilidade de uma plataforma de computação em nuvem. O Google Cloud Platform (GCP) oferece ferramentas robustas adaptadas tanto a entusiastas como a profissionais de ML. Uma dessas ferramentas é a VM de Deep Learning, pré-configurada para tarefas de ciência de dados e ML. Neste tutorial, vamos percorrer o processo de configuração do Ultralytics YOLOv5 numa VM de Deep Learning do GCP. Quer estejas a dar os primeiros passos em ML, quer sejas um profissional experiente, este guia fornece um caminho claro para implementar modelos de deteção de objetos baseados no YOLOv5.

🆓 Além disso, se fores um novo utilizador do GCP, estás com sorte: tens direito a uma oferta de crédito gratuito de 300 $ para iniciares os teus projetos.

Além do GCP, explora outras opções acessíveis de início rápido para YOLOv5, como o nosso Notebook do Google Colab Open In Colab para uma experiência baseada no navegador, ou a escalabilidade da Amazon AWS. Além disso, os entusiastas de contentores podem utilizar a nossa imagem oficial do Docker disponível no Docker Hub Docker Pulls para um ambiente encapsulado, seguindo o nosso Guia de início rápido do Docker.

Passo 1: criar e configurar a tua VM de Deep Learning#

Vamos começar por criar uma máquina virtual otimizada para Deep Learning:

  1. Acede ao marketplace do GCP e seleciona a VM de Deep Learning.
  2. Escolhe uma instância n1-standard-8; ela oferece um equilíbrio entre 8 vCPUs e 30 GB de memória, adequado para muitas tarefas de ML.
  3. Seleciona uma GPU. A escolha depende da tua carga de trabalho; até uma GPU T4 básica acelerará significativamente o treino do modelo.
  4. Marca a opção "Instalar automaticamente o controlador da GPU NVIDIA no primeiro arranque?" para uma configuração simples.
  5. Atribui um Persistent Disk SSD de 300 GB para evitar estrangulamentos de E/S.
  6. Clica em "Implementar" e permite que o GCP aprovisione a tua VM de Deep Learning personalizada.

Esta VM vem pré-carregada com ferramentas e frameworks essenciais, incluindo a distribuição Python Anaconda, que inclui convenientemente muitas dependências necessárias para o YOLOv5.

Ilustração do Google Cloud Marketplace sobre a configuração de uma VM de Deep Learning

Passo 2: preparar a VM para o YOLOv5#

Depois de configurares o ambiente, vamos instalar e preparar o YOLOv5:

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

# Install dependencies
pip install -r requirements.txt

Este processo de configuração garante que tens um ambiente Python na versão 3.8.0 ou posterior e PyTorch 1.8 ou posterior. Os nossos scripts transferem automaticamente modelos e datasets da versão mais recente do YOLOv5, simplificando o processo de iniciar o treino do modelo.

Passo 3: treinar e implementar os teus modelos YOLOv5#

Com a configuração concluída, estás pronto para treinar, validar, fazer previsões e exportar com o YOLOv5 na tua VM do 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 apenas alguns comandos, o YOLOv5 permite-te treinar modelos personalizados de deteção de objetos adaptados às tuas necessidades específicas ou utilizar pesos pré-treinados para obter resultados rápidos em várias tarefas. Explora diferentes opções de implementação de modelos depois de exportares o modelo.

Treino de um modelo YOLOv5 numa VM do GCP

Atribuir espaço de swap (opcional)#

Se estiveres a trabalhar com datasets particularmente grandes que possam exceder a RAM da tua VM, considera adicionar espaço de 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 datasets personalizados#

Para treinares o YOLOv5 no teu dataset personalizado dentro do GCP, segue estes passos gerais:

  1. Prepara o teu dataset de acordo com o formato do YOLOv5 (imagens e os respetivos ficheiros de etiquetas). Consulta a nossa visão geral dos datasets para obteres orientação.

  2. Carrega o teu dataset para a tua VM do GCP utilizando gcloud compute scp ou a funcionalidade SSH da consola Web.

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

  4. Inicia o processo de treino utilizando o YAML do teu dataset personalizado e, potencialmente, 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 de dados e o treino com datasets personalizados, consulta a documentação de treino do Ultralytics YOLOv5.

Aproveitar o Cloud Storage#

Para uma gestão eficiente dos dados, especialmente com datasets grandes ou numerosas 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 grandes datasets e modelos treinados na nuvem de forma segura e económica, minimizando os requisitos de armazenamento na tua instância de VM.

Considerações finais#

Parabéns! Estás agora preparado para aproveitar as capacidades do Ultralytics YOLOv5 combinadas com o poder computacional do Google Cloud Platform. Esta configuração oferece escalabilidade, eficiência e versatilidade para os teus projetos de deteção de objetos. Quer seja para exploração pessoal, investigação académica ou criação de soluções industriais, deste um passo significativo no mundo da AI e do ML na nuvem.

Considera utilizar a Ultralytics Platform para uma experiência simplificada e sem código para treinares e gerires os teus modelos.

Não te esqueças de documentar o teu progresso, partilhar conhecimentos com a dinâmica comunidade Ultralytics e utilizar recursos como as discussões do GitHub para colaboração e suporte. Agora, avança e inova com YOLOv5 e GCP!

Queres continuar a melhorar as tuas competências de ML? Explora a nossa documentação e consulta o Blog da Ultralytics para encontrares mais tutoriais e informações. Que a tua aventura na AI continue!

Comentários