Saltar para o conteúdo

Ultralytics YOLOv5 🚀 no AzureML Quickstart

Bem-vindo ao Ultralytics YOLOv5 para o Microsoft Azure Machine Learning (AzureML)! Este guia irá guiá-lo através da configuração YOLOv5 numa instância de computação AzureML, abrangendo tudo, desde a criação de um ambiente virtual até à formação 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 capacidade 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 Microsoft, facilitando a migração de cargas de trabalho da infraestrutura local para a nuvem.

O que é o Azure Machine Learning (AzureML)?

O Azure Machine Learning (AzureML) é um serviço de cloud especializado concebido para desenvolver, treinar e implementar modelos de machine learning. Fornece um ambiente colaborativo com ferramentas adequadas para cientistas de dados e programadores de todos os níveis de competências. As principais caraterísticas incluem a aprendizagem automática de máquinas (AutoML), uma interface de arrastar e largar para a criação de modelos e uma poderosa ferramenta Python para um controlo mais granular sobre o ciclo de vida do ML. O AzureML simplifica o processo de incorporação da modelação preditiva nas aplicações.

Pré-requisitos

Para seguir este guia, é necessário ter uma subscrição ativa do Azure e acesso a um espaço de trabalho AzureML. Se 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 com base na nuvem para cientistas de dados.

  1. Navegue para o seu espaço de trabalho AzureML.
  2. No painel esquerdo, selecione Computação.
  3. Vá para o separador Instâncias de computação e clique em Novo.
  4. Configure a sua instância selecionando a CPU ou GPU adequados com base nas suas necessidades de formação ou inferência.

criar seta de computação

Abrir um terminal

Quando a sua instância de computação estiver em execução, pode aceder ao seu terminal diretamente a partir do AzureML studio.

  1. Vá para a secção Blocos de notas no painel esquerdo.
  2. Localize a sua instância de computação no menu pendente superior.
  3. Clique na opção Terminal abaixo do navegador de ficheiros para abrir uma interface de linha de comandos para a sua instância.

seta de terminal aberto

Configurar e executar YOLOv5

Agora, vamos configurar o ambiente e executar Ultralytics YOLOv5.

1. Criar um ambiente virtual

É uma prática recomendada usar um ambiente virtual para gerenciar dependências. Usaremos o Conda, que é pré-instalado nas instâncias de computação do AzureML. Para obter um guia de configuração detalhado do Conda, consulte oGuia de início rápido do Ultralytics Conda.

Criar um ambiente Conda (por exemplo, yolov5env) com uma versão específica Python e activá-la:

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. Clonar o repositório YOLOv5

Clone o repositório oficial do 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. Instalar 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. Executar as tarefas YOLOv5

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

  • Treine o modelo num 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, Recuperação e mAP. Consulte o guia 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 a inferência em novas imagens ou vídeos. Explore 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
    
  • Exportar o modelo para diferentes formatos como ONNX, TensorRTou CoreML para implantação. Consulte o guia Modo de exportação e a página IntegraçãoONNX .

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

Utilizar um bloco de notas

Se preferir uma experiência interactiva, pode executar estes comandos num Notebook AzureML. Terá de criar um kernel IPython personalizado ligado ao seu ambiente Conda.

Criar um novo kernel IPython

Execute os seguintes comandos no terminal da 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 criar o kernel, actualize o seu browser. Quando abrir ou criar um .ipynb notebook, selecione o seu novo kernel (Python (yolov5env)") a partir do menu pendente do kernel no canto superior direito.

Executar comandos em células do bloco de notas

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

  • Células Bash : Para executar comandos shell, utilize a opção %%bash no início da célula. Lembre-se de ativar o seu ambiente Conda dentro de cada célula bash , uma vez que estas não herdam automaticamente o contexto de ambiente do kernel do portátil.

    %%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! Configurou e executou com êxito Ultralytics YOLOv5 no AzureML. Para uma exploração mais aprofundada, considere consultar outras integraçõesUltralytics ou a documentação detalhada YOLOv5 . 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 ponto de extremidade.



📅C riado há 1 ano ✏️ Atualizado há 2 meses

Comentários