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.
- Navegue para o seu espaço de trabalho AzureML.
- No painel esquerdo, selecione Computação.
- Vá para o separador Instâncias de computação e clique em Novo.
- Configure a sua instância selecionando a CPU ou GPU adequados com base nas suas necessidades de formação ou inferência.
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.
- Vá para a secção Blocos de notas no painel esquerdo.
- Localize a sua instância de computação no menu pendente superior.
- Clique na opção Terminal abaixo do navegador de ficheiros para abrir uma interface de linha de comandos para a sua instância.
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.