Link to this sectionDominando a implantação do YOLOv5 na Deep Learning VM do Google Cloud Platform (GCP)#
Embarcar na jornada de inteligência artificial (IA) e aprendizado de máquina (ML) pode ser emocionante, especialmente quando você aproveita o poder e a flexibilidade de uma plataforma de computação em nuvem. O Google Cloud Platform (GCP) oferece ferramentas robustas feitas sob medida para entusiastas e profissionais de ML. Uma dessas ferramentas é a Deep Learning VM, pré-configurada para tarefas de ciência de dados e ML. Neste tutorial, navegaremos pelo processo de configuração do Ultralytics YOLOv5 em uma GCP Deep Learning VM. Esteja você dando seus primeiros passos em ML ou seja um profissional experiente, este guia fornece um caminho claro para implementar modelos de detecção de objetos alimentados pelo YOLOv5.
🆓 Além disso, se você é um novo usuário do GCP, você tem sorte com uma oferta de $300 em créditos gratuitos para dar o pontapé inicial nos seus projetos.
Além do GCP, explore outras opções acessíveis de início rápido para o YOLOv5, como nosso Google Colab Notebook para uma experiência baseada em navegador, ou a escalabilidade da Amazon AWS. Além disso, os aficionados por contêineres podem utilizar nossa imagem oficial do Docker disponível no Docker Hub
para um ambiente encapsulado, seguindo nosso Guia de Início Rápido do Docker.
Link to this sectionPasso 1: Criar e configurar sua Deep Learning VM#
Vamos começar criando uma máquina virtual otimizada para aprendizado profundo:
- Navegue até o GCP marketplace e selecione a Deep Learning VM.
- Escolha uma instância n1-standard-8; ela oferece um equilíbrio de 8 vCPUs e 30 GB de memória, adequados para muitas tarefas de ML.
- Selecione uma GPU. A escolha depende da sua carga de trabalho; mesmo uma GPU T4 básica acelerará significativamente o treinamento do modelo.
- Marque a caixa para 'Instalar driver de GPU NVIDIA automaticamente na primeira inicialização?' para uma configuração perfeita.
- Aloque um Disco Persistente SSD de 300 GB para evitar gargalos de I/O.
- Clique em 'Implantar' (Deploy) e permita que o GCP provisione sua Deep Learning VM personalizada.
Esta VM vem pré-carregada com ferramentas e frameworks essenciais, incluindo a distribuição Anaconda Python, que convenientemente agrupa muitas dependências necessárias para o YOLOv5.

Link to this sectionPasso 2: Preparar a VM para o YOLOv5#
Após configurar o ambiente, vamos instalar o YOLOv5 e deixá-lo pronto:
# Clone the YOLOv5 repository
git clone https://github.com/ultralytics/yolov5
cd yolov5
# Install dependencies
pip install -r requirements.txtEste processo de configuração garante que você tenha uma versão do ambiente Python 3.8.0 ou mais recente e PyTorch 1.8 ou posterior. Nossos scripts baixam automaticamente modelos e conjuntos de dados da versão mais recente do YOLOv5 lançamento, simplificando o processo de início do treinamento do modelo.
Link to this sectionPasso 3: Treinar e implantar seus modelos YOLOv5#
Com a configuração concluída, você está pronto para treinar, validar, prever e exportar com o YOLOv5 na sua 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 tfliteUsando apenas alguns comandos, o YOLOv5 permite que você treine modelos personalizados de detecção de objetos adaptados às suas necessidades específicas ou utilize pesos pré-treinados para resultados rápidos em várias tarefas. Explore diferentes opções de implantação de modelo após exportar.

Link to this sectionAlocar espaço de swap (Opcional)#
Se você estiver trabalhando com conjuntos de dados particularmente grandes que podem exceder a RAM da sua VM, considere 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 -hLink to this sectionTreinando conjuntos de dados personalizados#
Para treinar o YOLOv5 em seu conjunto de dados personalizado dentro do GCP, siga estas etapas gerais:
-
Prepare seu conjunto de dados de acordo com o formato YOLOv5 (imagens e arquivos de rótulo correspondentes). Veja nossa visão geral de conjuntos de dados para orientação.
-
Carregue seu conjunto de dados para sua VM do GCP usando
gcloud compute scpou o recurso SSH do console web. -
Crie um arquivo YAML de configuração de conjunto de dados (
custom_dataset.yaml) que especifique os caminhos para seus dados de treinamento e validação, o número de classes e os nomes das classes. -
Comece o processo de treinamento usando seu YAML de conjunto de dados personalizado e possivelmente começando de 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 obter instruções abrangentes sobre a preparação de dados e treinamento com conjuntos de dados personalizados, consulte a documentação de treinamento do Ultralytics YOLOv5.
Link to this sectionAproveitando o armazenamento em nuvem#
Para um gerenciamento eficiente de dados, especialmente com grandes conjuntos de dados ou inúmeros experimentos, integre seu fluxo de trabalho do YOLOv5 ao 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/Essa abordagem permite armazenar grandes conjuntos de dados e modelos treinados de forma segura e econômica na nuvem, minimizando os requisitos de armazenamento em sua instância de VM.
Link to this sectionConsiderações finais#
Parabéns! Agora você está equipado para aproveitar os recursos do Ultralytics YOLOv5 combinado com o poder computacional do Google Cloud Platform. Essa configuração oferece escalabilidade, eficiência e versatilidade para seus projetos de detecção de objetos. Seja para exploração pessoal, pesquisa acadêmica ou construção de soluções industriais, você deu um passo significativo no mundo da IA e ML na nuvem.
Considere usar a Plataforma Ultralytics para uma experiência simplificada, sem código, para treinar e gerenciar seus modelos.
Lembre-se de documentar seu progresso, compartilhar insights com a vibrante comunidade Ultralytics e utilizar recursos como discussões do GitHub para colaboração e suporte. Agora, siga em frente e inove com o YOLOv5 e o GCP!
Quer continuar aprimorando suas habilidades em ML? Mergulhe em nossa documentação e explore o Blog da Ultralytics para mais tutoriais e insights. Deixe sua aventura em IA continuar!