YOLO Vision 2026:

Ultralytics YOLOv5 🚀 no Guia de Início Rápido do AzureML#

Bem-vindo(a) ao guia de início rápido do Ultralytics YOLOv5 para Microsoft Azure Machine Learning (AzureML)! Este guia vai orientar-te na configuração do YOLOv5 numa instância de computação do AzureML, cobrindo tudo desde a criação de um ambiente virtual até ao treino e execução de inferência com o modelo.

O que é o Azure?#

O Azure é a plataforma de computação em nuvem abrangente da Microsoft. Oferece uma vasta gama de serviços, incluindo potência de computação, bases de dados, ferramentas de análise, capacidades de aprendizagem automática e soluções de rede. O Azure permite às organizações criar, implementar e gerir aplicações e serviços através de centros de dados geridos pela Microsoft, facilitando a migração de cargas de trabalho de infraestruturas locais para a nuvem.

O que é o Azure Machine Learning (AzureML)?#

O Azure Machine Learning (AzureML) é um serviço em nuvem especializado, concebido para desenvolver, treinar e implementar modelos de aprendizagem automática. Fornece um ambiente colaborativo com ferramentas adequadas para cientistas de dados e programadores de todos os níveis de experiência. As principais funcionalidades incluem aprendizagem automática automatizada (AutoML), uma interface de arrastar e largar para a criação de modelos e um poderoso SDK Python para um controlo mais granular sobre o ciclo de vida de ML. O AzureML simplifica o processo de incorporação de modelação preditiva em aplicações.

Pré-requisitos#

Para seguir este guia, vais precisar de uma subscrição do Azure ativa e de acesso a uma área de trabalho do AzureML. Se ainda não tens uma área de trabalho configurada, consulta a documentação oficial do Azure para criar uma.

Criar uma Instância de Computação#

Uma instância de computação no AzureML fornece uma estação de trabalho gerenciada baseada em nuvem para cientistas de dados.

  1. Navegue até o seu workspace do AzureML.
  2. No painel esquerdo, selecione Compute.
  3. Vá para a aba Compute instances e clique em New.
  4. Configura a tua instância selecionando os recursos de CPU ou GPU adequados com base nas tuas necessidades de treino ou inferência.
Azure ML create compute instance interface

Abrir um Terminal#

Assim que sua instância de computação estiver em execução, você pode acessar seu terminal diretamente do estúdio AzureML.

  1. Vá para a seção Notebooks no painel esquerdo.
  2. Encontre sua instância de computação no menu suspenso superior.
  3. Clique na opção Terminal abaixo do navegador de arquivos para abrir uma interface de linha de comando para sua instância.

Localização do botão para abrir o terminal no Azure ML

Configurar e Executar o YOLOv5#

Agora, vamos configurar o ambiente e executar o Ultralytics YOLOv5.

Criar um Ambiente Virtual#

É uma boa prática utilizar um ambiente virtual para gerir dependências. Vamos usar o Conda, que vem pré-instalado nas instâncias de computação do AzureML. Para um guia detalhado de configuração do Conda, consulta o Guia de Início Rápido do Conda da Ultralytics.

Cria um ambiente Conda (por exemplo, yolov5env) com uma versão específica do Python e ativa-o:

conda create --name yolov5env -y python=3.10 # Create a new Conda environment
conda activate yolov5env                     # Activate the environment
conda install pip -y                         # Ensure pip is installed

Clonar o Repositório do YOLOv5#

Clona o repositório oficial do Ultralytics YOLOv5 a partir do GitHub utilizando o Git:

git clone https://github.com/ultralytics/yolov5 # Clone the repository
cd yolov5                                       # Navigate into the directory
# Initialize submodules (if any, though YOLOv5 typically doesn't require this step)
# git submodule update --init --recursive

Instalar Dependências#

Instala os pacotes Python necessários listados no ficheiro requirements.txt. Também instalamos o ONNX para capacidades de exportação de modelos.

pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0"      # Install ONNX for exporting

Realizar Tarefas com YOLOv5#

Com a configuração concluída, agora você pode treinar, validar, realizar inferência e exportar seu modelo YOLOv5.

  • Treina o modelo num conjunto de dados como o COCO128. Consulta a documentação do Modo de Treino para mais detalhes.

    # Start training using yolov5s pretrained weights on the COCO128 dataset
    python train.py --data coco128.yaml --weights yolov5s.pt --img 640 --epochs 10 --batch 16
  • Valida o desempenho do modelo treinado utilizando métricas como Precisão, Sensibilidade e mAP. Vê o guia do Modo de Validação para veres as opções.

    # Validate the yolov5s model on the COCO128 validation set
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
  • Executa a Inferência em novas imagens ou vídeos. Explora a documentação do Modo de Previsão para várias fontes de inferência.

    # Run inference with yolov5s on sample images
    python detect.py --weights yolov5s.pt --source data/images --img 640
  • Exporta o modelo para diferentes formatos como ONNX, TensorRT ou CoreML para implementação. Consulta o guia do Modo de Exportação e a página de Integração ONNX.

    # Export yolov5s to ONNX format
    python export.py --weights yolov5s.pt --include onnx --img 640

Usando um Notebook#

Se preferires uma experiência interativa, podes executar estes comandos num Notebook do AzureML. Precisas de criar um kernel IPython personalizado associado ao teu ambiente Conda.

Criar um Novo Kernel IPython#

Execute os seguintes comandos no terminal da sua instância de computação:

# Ensure your Conda environment is active
# conda activate yolov5env

# Install ipykernel if not already present
conda install ipykernel -y

# Create a new kernel linked to your environment
python -m ipykernel install --user --name yolov5env --display-name "Python (yolov5env)"

Depois de criares o kernel, atualiza o teu browser. Quando abrires ou criares um ficheiro de notebook .ipynb, seleciona o teu novo kernel ("Python (yolov5env)") no menu pendente de kernels no canto superior direito.

Executando Comandos em Células de Notebook#

  • Células Python: O código nas células Python será executado automaticamente utilizando o kernel yolov5env selecionado.

  • Células Bash: Para executar comandos de shell, utiliza o comando mágico %%bash no início da célula. Lembra-te de ativar o teu ambiente Conda dentro de cada célula bash, uma vez que estas não herdam automaticamente o contexto do ambiente do kernel do notebook.

    %%bash
    source activate yolov5env # Activate environment within the cell
    
    # Example: Run validation using the activated environment
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640

Parabéns! Configuraste e executaste com sucesso o Ultralytics YOLOv5 no AzureML. Para explorares mais, considera consultar outras Integrações da Ultralytics ou a documentação detalhada do YOLOv5. Também poderás achar a documentação do AzureML útil para cenários avançados, como treino distribuído ou implementação de modelos como endpoint.

Comentários