Melhora o seguimento e a visualização da experiência YOLOv8 com Weights & Biases
Os modelos de deteção de objectos como o Ultralytics YOLOv8 tornaram-se parte integrante de muitas aplicações de visão computacional. No entanto, o treino, a avaliação e a implementação destes modelos complexos apresentam vários desafios. O acompanhamento das principais métricas de formação, a comparação das variantes do modelo, a análise do comportamento do modelo e a deteção de problemas requerem instrumentação substancial e gestão de experiências.
Este guia apresenta a integração do Ultralytics YOLOv8 com o Weights & Biases' para um melhor acompanhamento das experiências, verificação de modelos e visualização do desempenho dos modelos. Inclui também instruções para configurar a integração, treinar, afinar e visualizar resultados utilizando as funcionalidades interactivas do Weights & Biases'.
Weights & Biases
Weights & Biases é uma plataforma MLOps de ponta concebida para acompanhar, visualizar e gerir experiências de aprendizagem automática. Inclui o registo automático de métricas de formação para uma reprodutibilidade total da experiência, uma interface de utilizador interactiva para uma análise de dados simplificada e ferramentas de gestão de modelos eficientes para implementação em vários ambientes.
YOLOv8 Formação com Weights & Biases
Podes utilizar o Weights & Biases para aumentar a eficiência e a automatização do teu processo de formação YOLOv8 .
Instalação
Para instalar os pacotes necessários, executa:
Instalação
Para obter instruções detalhadas e melhores práticas relacionadas com o processo de instalação, consulta o nosso guia de instalaçãoYOLOv8 . Durante a instalação dos pacotes necessários para YOLOv8, se tiveres alguma dificuldade, consulta o nosso guia de Problemas comuns para obteres soluções e sugestões.
Configurações Weights & Biases
Depois de instalar os pacotes necessários, o próximo passo é configurar o teu ambiente Weights & Biases . Isto inclui a criação de uma conta Weights & Biases e a obtenção da chave API necessária para uma ligação sem problemas entre o teu ambiente de desenvolvimento e a plataforma W&B.
Começa por inicializar o ambiente Weights & Biases no teu espaço de trabalho. Podes fazer isso executando o seguinte comando e seguindo as instruções apresentadas.
Configuração inicial do SDK
Navega para a página de autorização Weights & Biases para criar e obter a sua chave API. Utiliza esta chave para autenticar o teu ambiente com a W&B.
Usa: Treina YOLOv8 com Weights & Biases
Antes de mergulhar nas instruções de utilização para a formação do modelo YOLOv8 com Weights & Biases, não te esqueças de verificar a gama de modelosYOLOv8 oferecidos por Ultralytics. Isto ajudar-te-á a escolher o modelo mais adequado aos requisitos do teu projeto.
Usa: Treina YOLOv8 com Weights & Biases
import wandb
from ultralytics import YOLO
from wandb.integration.ultralytics import add_wandb_callback
# Step 1: Initialize a Weights & Biases run
wandb.init(project="ultralytics", job_type="training")
# Step 2: Define the YOLOv8 Model and Dataset
model_name = "yolov8n"
dataset_name = "coco8.yaml"
model = YOLO(f"{model_name}.pt")
# Step 3: Add W&B Callback for Ultralytics
add_wandb_callback(model, enable_model_checkpointing=True)
# Step 4: Train and Fine-Tune the Model
model.train(project="ultralytics", data=dataset_name, epochs=5, imgsz=640)
# Step 5: Validate the Model
model.val()
# Step 6: Perform Inference and Log Results
model(["path/to/image1", "path/to/image2"])
# Step 7: Finalize the W&B Run
wandb.finish()
Compreender o código
Vamos entender os passos mostrados no trecho de código de uso acima.
-
Etapa 1: Inicializa uma execução do Weights & Biases : Começa por inicializar uma execução Weights & Biases , especificando o nome do projeto e o tipo de trabalho. Essa execução acompanhará e gerenciará os processos de treinamento e validação do seu modelo.
-
Passo 2: Define o modelo YOLOv8 e o conjunto de dados: Especifica a variante do modelo e o conjunto de dados que deseja usar. O modelo YOLO é então inicializado com o arquivo de modelo especificado.
-
Passo 3: Adiciona Weights & Biases Callback para Ultralytics: Este passo é crucial, pois permite o registo automático das métricas de formação e dos resultados de validação em Weights & Biases, fornecendo uma visão detalhada do desempenho do modelo.
-
Passo 4: Treina e afina o modelo: Começa a treinar o modelo com o conjunto de dados especificado, o número de épocas e o tamanho da imagem. O processo de treino inclui o registo de métricas e previsões no final de cada época, oferecendo uma visão abrangente do progresso da aprendizagem do modelo.
-
Passo 5: Valida o modelo: Após o treino, o modelo é validado. Esta etapa é crucial para avaliar o desempenho do modelo em dados não vistos e garantir a sua generalização.
-
Passo 6: Executa a inferência e regista os resultados: O modelo efectua previsões em imagens especificadas. Estas previsões, juntamente com sobreposições visuais e informações, são automaticamente registadas numa tabela W&B para exploração interactiva.
-
Passo 7: Finaliza a execução de W&B: Este passo marca o fim do registo de dados e guarda o estado final do processo de formação e validação do seu modelo no painel de controlo W&B.
Compreender a saída
Ao executar o trecho de código de utilização acima, podes esperar os seguintes resultados principais:
- A configuração de uma nova execução com o seu ID único, indicando o início do processo de formação.
- Apresenta um resumo conciso da estrutura do modelo, incluindo o número de camadas e os parâmetros.
- Actualizações regulares de métricas importantes, como perda de caixa, perda de cls, perda de dfl, precisão, recuperação e pontuações mAP durante cada época de treino.
- No final do treino, são apresentadas métricas detalhadas, incluindo a velocidade de inferência do modelo e métricas de precisão geral.
- Liga para o painel de controlo Weights & Biases para uma análise e visualização aprofundadas do processo de formação, juntamente com informações sobre as localizações dos ficheiros de registo locais.
Ver o painel de controlo Weights & Biases
Depois de executar o fragmento de código de utilização, podes aceder ao painel de controlo Weights & Biases (W&B) através da ligação fornecida na saída. Este painel oferece uma visão abrangente do processo de formação do teu modelo com YOLOv8.
Principais características do painel de controlo Weights & Biases
-
Acompanhamento de métricas em tempo real: Observa métricas como perda, precisão e pontuações de validação à medida que evoluem durante o treinamento, oferecendo insights imediatos para o ajuste do modelo.
-
Otimização de hiperparâmetros: Weights & Biases ajuda a afinar parâmetros críticos, como a taxa de aprendizagem, o tamanho do lote e muito mais, melhorando o desempenho de YOLOv8.
-
Análise comparativa: A plataforma permite comparações lado a lado de diferentes treinos, essenciais para avaliar o impacto de várias configurações de modelos.
-
Visualização do progresso do treinamento: As representações gráficas das principais métricas fornecem uma compreensão intuitiva do desempenho do modelo ao longo das épocas.
-
Monitorização de recursos: Controla a utilização da CPU, GPU e memória para otimizar a eficiência do processo de formação.
-
Gestão de artefactos de modelos: Acede e partilha pontos de verificação de modelos, facilitando a implementação e a colaboração.
-
Visualiza os resultados da inferência com a sobreposição de imagens: Visualiza os resultados da previsão em imagens utilizando sobreposições interactivas em Weights & Biases, proporcionando uma visão clara e detalhada do desempenho do modelo em dados do mundo real. Para obter informações mais detalhadas sobre as capacidades de sobreposição de imagens do Weights & Biases, consulta esta ligação.
Ao utilizar estas funcionalidades, podes acompanhar, analisar e otimizar eficazmente a formação do teu modelo YOLOv8 , garantindo o melhor desempenho e eficiência possíveis.
Resumo
Este guia ajudou-te a explorar a integração de Ultralytics' YOLOv8 com Weights & Biases. Ilustra a capacidade desta integração para acompanhar e visualizar eficazmente a formação de modelos e os resultados da previsão.
Para mais informações sobre a utilização, visita Weights & Biases' documentação oficial.
Além disso, não te esqueças de consultar a página do guia de integraçãoUltralytics , para saberes mais sobre diferentes integrações interessantes.