Ir para o conteúdo

Ultralytics YOLOv5 🚀 no AzureML Quickstart

Bem-vindo ao guia de início rápido do YOLOv5 da Ultralytics para Microsoft Azure Machine Learning (AzureML)! Este guia irá orientá-lo na configuração do YOLOv5 em uma instância de computação AzureML, abrangendo tudo, desde a criação de um ambiente virtual até o treinamento e a execução da inferência com o modelo.

O que é Azure?

Azure é a plataforma abrangente de computação em nuvem da Microsoft. Ela oferece uma vasta gama de serviços, incluindo poder de computação, bases de dados, ferramentas de análise, capacidades de machine learning e soluções de rede. O Azure permite que as organizações construam, implementem e gerenciem aplicações e serviços através de datacenters gerenciados pela Microsoft, facilitando a migração de cargas de trabalho da infraestrutura local para a nuvem.

O que é Azure Machine Learning (AzureML)?

Azure Machine Learning (AzureML) é um serviço de nuvem especializado, projetado para desenvolver, treinar e implementar modelos de machine learning. Ele fornece um ambiente colaborativo com ferramentas adequadas para cientistas de dados e desenvolvedores de todos os níveis de habilidade. Os principais recursos incluem machine learning automatizado (AutoML), uma interface de arrastar e soltar para criação de modelos e um poderoso SDK Python para um controlo mais granular sobre o ciclo de vida do ML. O AzureML simplifica o processo de incorporação de modelagem preditiva em aplicações.

Pré-requisitos

Para seguir este guia, você precisará de uma assinatura do Azure ativa e acesso a um espaço de trabalho do AzureML. Se você não tiver um espaço de trabalho configurado, consulte a documentação oficial do Azure para criar um.

Criar uma Instância de Computação

Uma instância de computação no AzureML fornece uma estação de trabalho gerida baseada na cloud para cientistas de dados.

  1. Navegue até seu espaço de trabalho AzureML.
  2. No painel esquerdo, selecione Compute.
  3. Vá para a aba Compute instances e clique em New.
  4. Configure sua instância selecionando os recursos apropriados de CPU ou GPU com base em suas necessidades para treinamento ou inferência.

create-compute-arrow

Abra um Terminal

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

  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.

abrir-terminal-seta

Configurar e Executar o YOLOv5

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

1. Crie um Ambiente Virtual

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

Criar um ambiente Conda (por exemplo, yolov5env) com uma versão específica do Python e ative-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

2. Clone o Repositório YOLOv5

Clone o repositório oficial Ultralytics YOLOv5 do GitHub usando 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

3. Instale as Dependências

Instale os pacotes Python necessários listados no requirements.txt ficheiro. Também instalamos 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

4. Execute as Tarefas YOLOv5

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

  • Treine o modelo em um conjunto de dados como o COCO128. Consulte a documentação do Modo de Treinamento para obter 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
    
  • Valide o desempenho do modelo treinado usando métricas como Precisão, Recall e mAP. Consulte o guia do Modo de Validação para obter opções.

    # Validate the yolov5s model on the COCO128 validation set
    python val.py --weights yolov5s.pt --data coco128.yaml --img 640
    
  • Executar Inferência em novas imagens ou vídeos. Explore a documentação do Modo de Prediçã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
    
  • Exporte o modelo para diferentes formatos como ONNX, TensorRT ou CoreML para implementação. Consulte 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 você preferir uma experiência interativa, pode executar esses comandos em um AzureML Notebook. Você precisará criar um kernel IPython personalizado vinculado ao seu 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)"

Após criar o kernel, atualize seu navegador. Ao abrir ou criar um .ipynb ficheiro notebook, selecione o seu novo kernel ("Python (yolov5env)") no menu pendente do kernel no canto superior direito.

Executando Comandos em Células do Notebook

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

  • Células Bash: Para executar comandos shell, use o %%bash comando mágico no início da célula. Lembre-se de ativar seu ambiente Conda dentro de cada célula bash, pois elas 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! Você configurou e executou com sucesso o Ultralytics YOLOv5 no AzureML. Para uma exploração mais aprofundada, considere verificar outras Integrações Ultralytics ou a documentação detalhada do YOLOv5. Você também pode achar a documentação do AzureML útil para cenários avançados, como treinamento distribuído ou implantação de modelo como um endpoint.



📅 Criado há 1 ano ✏️ Atualizado há 3 meses

Comentários