Ultralytics YOLOv5 🚀 no AzureML: início rápido#
Bem-vindo ao guia de início rápido do Ultralytics YOLOv5 para o Microsoft Azure Machine Learning (AzureML)! Este guia vai mostrar-te como configurar o YOLOv5 numa instância de computação do AzureML, 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 abrangente plataforma de computação na nuvem da Microsoft. Oferece uma vasta gama de serviços, incluindo capacidade de computação, bases de dados, ferramentas de análise, funcionalidades 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 da infraestrutura local para a nuvem.
O que é o Azure Machine Learning (AzureML)?#
O Azure Machine Learning (AzureML) é um serviço especializado na nuvem, concebido para desenvolver, treinar e implementar modelos de aprendizagem automática. Fornece um ambiente colaborativo com ferramentas adequadas a cientistas de dados e programadores de todos os níveis de experiência. As principais funcionalidades incluem a aprendizagem automática automatizada (AutoML), uma interface de arrastar e largar para a criação de modelos e um poderoso SDK de Python para um controlo mais granular do ciclo de vida do ML. O AzureML simplifica o processo de incorporação de modelos preditivos em aplicações.
Pré-requisitos#
Para seguir este guia, precisas de uma subscrição do Azure ativa e de acesso a uma área de trabalho do AzureML. Se ainda não tiveres uma área de trabalho configurada, consulta a documentação oficial do Azure para criares uma.
Criar uma instância de computação#
Uma instância de computação no AzureML fornece uma estação de trabalho gerida baseada na nuvem para cientistas de dados.
- Navega até à tua área de trabalho do AzureML.
- No painel esquerdo, seleciona Computação.
- Acede ao separador Instâncias de computação e clica em Novo.
- Configura a tua instância selecionando os recursos de CPU ou GPU adequados às tuas necessidades de treino ou inferência.
Abrir um terminal#
Quando a tua instância de computação estiver em execução, podes aceder diretamente ao seu terminal a partir do estúdio do AzureML.
- Acede à secção Notebooks no painel esquerdo.
- Encontra a tua instância de computação no menu pendente superior.
- Clica na opção Terminal abaixo do navegador de ficheiros para abrir uma interface de linha de comandos para a tua instância.

Configurar e executar o YOLOv5#
Agora, vamos configurar o ambiente e executar o Ultralytics YOLOv5.
1. Criar um ambiente virtual#
É uma boa prática utilizar um ambiente virtual para gerir as dependências. Vamos utilizar o Conda, que vem pré-instalado nas instâncias de computação do AzureML. Para obteres um guia detalhado de configuração do Conda, consulta o Guia de início rápido do Conda do 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 installed2. 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 directory3. Instalar as dependências#
Instala os pacotes Python necessários listados no ficheiro requirements.txt. Também instalamos o ONNX para permitir a exportação de modelos.
pip install -r requirements.txt # Install core dependencies
pip install "onnx>=1.12.0" # Install ONNX for exporting4. Executar tarefas do YOLOv5#
Com a configuração concluída, já podes treinar, validar, executar inferência e exportar o teu modelo YOLOv5.
-
Treina o modelo num conjunto de dados como COCO128. Vê o tutorial Train Custom Data 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 Precision, Recall e mAP. Executa
python val.py --helppara todas as opções.# Validate the yolov5s model on the COCO128 validation set python val.py --weights yolov5s.pt --data coco128.yaml --img 640 -
Executa Inferência em novas imagens ou vídeos. Vê o YOLOv5 Quickstart para as fontes de inferência suportadas.
# 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 tutorial Model Export e a página ONNX Integration.
# Export yolov5s to ONNX format python export.py --weights yolov5s.pt --include onnx --img 640
Utilizar um Notebook#
Se preferires uma experiência interativa, podes executar estes comandos num Notebook do AzureML. Terás de criar um kernel do IPython personalizado associado ao teu ambiente Conda.
Criar um novo kernel do IPython#
Executa os seguintes comandos no terminal da tua 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 navegador. 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.
Executar comandos em células do Notebook#
-
Células Python: O código nas células Python será executado automaticamente utilizando o kernel
yolov5envselecionado. -
Células Bash: Para executar comandos da shell, utiliza o comando mágico
%%bashno início da célula. Lembra-te de ativar o teu ambiente Conda em cada célula bash, pois 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 possibilidades, consulta outras Integrações do Ultralytics ou a documentação do YOLOv5 detalhada. A documentação do AzureML também poderá ser útil para cenários avançados, como treino distribuído ou implementação de modelos como endpoint.
Perguntas frequentes#
Uma instância de CPU é suficiente para inferência e execuções de teste curtas no COCO128, mas o treino real precisa de um tamanho de GPU. Seleciona uma máquina virtual GPU quando criares a instância de computação e confirma que o PyTorch a vê com
python -c "import torch; print(torch.cuda.is_available())".As células Bash não herdam o ambiente do núcleo do bloco de notas. Começa cada célula
%%bashcomsource activate yolov5envou executa células Python com o núcleoPython (yolov5env)que criaste.Os ficheiros na partilha de ficheiros do espaço de trabalho montada em
~/cloudfilespersistem entre paragens e são visíveis a partir de outras instâncias de computação. Tudo o resto no disco da instância é mantido enquanto a instância existir, mas perde-se se for eliminada.Sim.
pip install ultralyticsoferece treino, validação e exportação de YOLO26 com a CLIyolono mesmo ambiente Conda. Vê o guia passo a passo baseado em pacotes no AzureML Quickstart.