Salta para o conteúdo

Obtenha insights visuais com YOLOv8 Integração do com TensorBoard

Compreender e afinar modelos de visão por computador, como Ultralytics' YOLOv8, torna-se mais simples quando olhas mais de perto para os seus processos de formação. A visualização do treino do modelo ajuda-te a obter informações sobre os padrões de aprendizagem do modelo, as métricas de desempenho e o comportamento geral. YOLOv8 A integração do TensorBoard torna este processo de visualização e análise mais fácil e permite ajustes mais eficientes e informados ao modelo.

Este guia explica como utilizar o TensorBoard com YOLOv8. Vais aprender sobre várias visualizações, desde o acompanhamento de métricas até à análise de gráficos de modelos. Estas ferramentas vão ajudar-te a compreender melhor o desempenho do teu modelo YOLOv8 .

TensorBoard

Visão geral do Tensorboard

O TensorBoard, o conjunto de ferramentas de visualização do TensorFlow, é essencial para a experimentação da aprendizagem automática. O TensorBoard inclui uma série de ferramentas de visualização, cruciais para monitorizar modelos de aprendizagem automática. Estas ferramentas incluem o acompanhamento de métricas importantes como a perda e a precisão, a visualização de gráficos de modelos e a visualização de histogramas de weights and biases ao longo do tempo. Fornece também capacidades para projetar embeddings em espaços de dimensão inferior e apresentar dados multimédia.

YOLOv8 Treinar com o TensorBoard

Utilizar o TensorBoard para treinar modelos YOLOv8 é simples e oferece vantagens significativas.

Instalação

Para instalar o pacote necessário, executa:

Instalação

# Install the required package for YOLOv8 and Tensorboard
pip install ultralytics

O TensorBoard está convenientemente pré-instalado com YOLOv8, eliminando a necessidade de configuração adicional para efeitos de visualizaçã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.

Configurar o TensorBoard para Google Colab

Quando utilizas o Google Colab, é importante configurar o TensorBoard antes de iniciares o teu código de treino:

Configura o TensorBoard para Google Colab

%load_ext tensorboard
%tensorboard --logdir path/to/runs

Utilização

Antes de mergulhar nas instruções de utilização, não te esqueças de verificar a gama de modelosYOLOv8 oferecidos por Ultralytics. Isto ajudar-te-á a escolher o modelo mais adequado às necessidades do teu projeto.

Utilização

rom ultralytics import YOLO

 Load a pre-trained model
odel = YOLO('yolov8n.pt')

 Train the model
esults = model.train(data='coco8.yaml', epochs=100, imgsz=640)
``

ning the usage code snippet above, you can expect the following output:

text
ard: Start with 'tensorboard --logdir path_to_your_tensorboard_logs', view at http://localhost:6006/

put indica que o TensorBoard está agora a monitorizar ativamente a tua sessão de formação YOLOv8 . Podes aceder ao painel de controlo do TensorBoard visitando o URL fornecido (http://localhost:6006/) para veres as métricas de formação em tempo real e o desempenho do modelo. Para os utilizadores que trabalham em Google Colab, o TensorBoard será apresentado na mesma célula onde executaste os comandos de configuração do TensorBoard.

informações relacionadas com o processo de formação de modelos, consulta o nosso guiaYOLOv8 Model Training. Se estiveres interessado em saber mais sobre o registo, os pontos de controlo, a plotagem e a gestão de ficheiros, lê o nosso guia de utilização sobre configuração.

Colocar o TensorBoard em pé para YOLOv8 Training

O objetivo do presente capítulo é compreender as várias funcionalidades e componentes do TensorBoard no contexto da formação YOLOv8 . As três secções principais do TensorBoard são Time Series, Scalars e Graphs.

Série

O recurso Series no TensorBoard oferece uma perspetiva dinâmica e detalhada de várias métricas de treinamento ao longo do tempo para os modelos YOLOv8 . Concentra-se na progressão e nas tendências das métricas ao longo das épocas de treinamento. Aqui está um exemplo do que podes esperar ver.

(https://github.com/ultralytics/ultralytics/assets/25847604/20b3e038-0356-465e-a37e-1ea232c68354)

Características das séries cronológicas no TensorBoard

Filtra etiquetas e cartões fixados**: Esta funcionalidade permite aos utilizadores filtrar métricas específicas e fixar cartões para comparação e acesso rápidos. É particularmente útil para se concentrar em aspectos específicos do processo de formação.

Cartões de métricas individuais**: O Time Series divide as métricas em diferentes categorias, como as métricas de taxa de aprendizagem (lr), treinamento (train) e validação (val), cada uma representada por cartões individuais.

Mostra o gráfico**: Cada cartão na secção Série Temporal apresenta um gráfico detalhado de uma métrica específica ao longo da formação. Esta representação visual ajuda a identificar tendências, padrões ou anomalias no processo de formação.

Análise profunda**: A série temporal fornece uma análise aprofundada de cada métrica. Por exemplo, são apresentados diferentes segmentos de taxa de aprendizagem, oferecendo informações sobre como os ajustes na taxa de aprendizagem afectam a curva de aprendizagem do modelo.

Importância das séries cronológicas em YOLOv8 Training

A secção Séries é essencial para uma análise completa do progresso do treino do modelo YOLOv8 . Permite-te acompanhar as métricas em tempo real para identificar e resolver problemas rapidamente. Oferece também uma visão detalhada da progressão de cada métrica, o que é crucial para afinar o modelo e melhorar o seu desempenho.

ars

no TensorBoard são cruciais para traçar e analisar métricas simples, como perda e precisão, durante o treinamento de modelos YOLOv8 . Oferece uma visão clara e concisa de como essas métricas evoluem a cada época de treinamento, fornecendo informações sobre a eficácia e a estabilidade do aprendizado do modelo. Aqui está um exemplo do que podes esperar ver.

(https://github.com/ultralytics/ultralytics/assets/25847604/f9228193-13e9-4768-9edf-8fa15ecd24fa)

Características dos Scalars no TensorBoard

Etiquetas de taxa de aprendizagem (lr)**: Estas etiquetas mostram as variações na taxa de aprendizagem em diferentes segmentos (por exemplo, pg0, pg1, pg2). Isto ajuda-nos a compreender o impacto dos ajustamentos da taxa de aprendizagem no processo de formação.

Etiquetas de ética**: Os escalares incluem indicadores de desempenho, tais como:

AP50 (B)`: Precisão média a 50% da intersecção sobre a união (IoU), crucial para avaliar a precisão da deteção de objectos.

AP50-95 (B)`: Precisão média calculada sobre uma gama de limiares de IoU, oferecendo uma avaliação mais abrangente da exatidão.

recisão (B)`: Indica o rácio de observações positivas corretamente previstas, fundamental para compreender a precisão da previsão.

Chama (B)`: Importante para modelos em que a falta de uma deteção é significativa, esta métrica mede a capacidade de detetar todas as instâncias relevantes.

para saber mais sobre as diferentes métricas, lê o nosso guia sobre métricas de desempenho.

Etiquetas de ning e validação (train, val)**: Estas etiquetas apresentam métricas especificamente para os conjuntos de dados de treino e validação, permitindo uma análise comparativa do desempenho do modelo em diferentes conjuntos de dados.

Importância da monitorização dos escalares

g métricas escalares é crucial para o ajuste fino do modelo YOLOv8 . Variações nessas métricas, como picos ou padrões irregulares nos gráficos de perda, podem destacar possíveis problemas, como sobreajuste, subajuste ou configurações inadequadas da taxa de aprendizado. Ao monitorizar de perto estas escalas, podes tomar decisões informadas para otimizar o processo de formação, assegurando que o modelo aprende eficazmente e atinge o desempenho desejado.

erença entre escalares e séries temporais

s escalares e as séries temporais no TensorBoard são usados para rastrear métricas, mas têm finalidades ligeiramente diferentes. Os escalares concentram-se em traçar métricas simples, como a perda e a precisão, como valores escalares. Fornece uma visão geral de alto nível de como essas métricas mudam com cada época de treinamento. Por outro lado, a secção de séries temporais do TensorBoard oferece uma vista de linha temporal mais detalhada de várias métricas. É particularmente útil para monitorizar a progressão e as tendências das métricas ao longo do tempo, proporcionando um mergulho mais profundo nas especificidades do processo de treino.

hs

A secção hs do TensorBoard visualiza o gráfico computacional do modelo YOLOv8 , mostrando como as operações e os dados fluem dentro do modelo. É uma ferramenta poderosa para entender a estrutura do modelo, garantindo que todas as camadas estejam conectadas corretamente e para identificar possíveis gargalos no fluxo de dados. Aqui está um exemplo do que podes esperar ver.

(https://github.com/ultralytics/ultralytics/assets/25847604/039028e0-4ab3-4170-bfa8-f93ce483f615)

são particularmente úteis para depurar o modelo, especialmente em arquitecturas complexas típicas de modelos de aprendizagem profunda como YOLOv8. Ajuda a verificar as ligações das camadas e a conceção geral do modelo.

ry

de tem como objetivo ajudar-te a utilizar o TensorBoard com YOLOv8 para visualização e análise do treino de modelos de aprendizagem automática. Concentra-se em explicar como as principais funcionalidades do TensorBoard podem fornecer informações sobre as métricas de formação e o desempenho do modelo durante YOLOv8 as sessões de formação.

Para uma exploração detalhada destas funcionalidades e estratégias de utilização eficazes, podes consultar a documentação oficial do TensorBoard em TensorFlow e o seu repositório GitHub.

Sabe mais sobre as várias integrações de Ultralytics? Consulta a página do guia de integrações deUltralytics para veres que outras capacidades interessantes estão à espera de serem descobertas!

FAQ

Posso integrar o YOLOv8 com o TensorBoard para visualização em tempo real?

O YOLOv8 com o TensorBoard permite-te obter informações visuais em tempo real durante o treino do modelo. Primeiro, instala o pacote necessário:

ple "Instalação"

"CLI"

# Install the required package for YOLOv8 and Tensorboard
pip install ultralytics

Em seguida, configura o TensorBoard para registar as tuas corridas de treino e, depois, inicia o TensorBoard:

Configura o TensorBoard para Google Colab

%load_ext tensorboard
%tensorboard --logdir path/to/runs

Finalmente, durante o treino, YOLOv8 regista automaticamente métricas como a perda e a precisão no TensorBoard. Podes monitorizar estas métricas visitando http://localhost:6006/.

Para obteres um guia completo, consulta o nosso guia de formação de modelosYOLOv8 .

Que vantagens oferece a utilização do TensorBoard com YOLOv8 ?

A utilização do TensorBoard com YOLOv8 fornece várias ferramentas de visualização essenciais para um treino eficiente do modelo:

  • Acompanhamento de métricas em tempo real: Acompanha em tempo real as principais métricas, como perda, exatidão, precisão e recordação.
  • Visualização de gráficos de modelos: Compreende e depura a arquitetura do modelo através da visualização de gráficos computacionais.
  • Visualização de embedding: Projecta as incorporações em espaços de dimensão inferior para uma melhor perceção.

Estas ferramentas permitem-te fazer ajustes informados para melhorar o desempenho do teu modelo YOLOv8 . Para obter mais detalhes sobre os recursos do TensorBoard, consulta oguia do TensorFlow TensorBoard.

Como posso monitorizar as métricas de formação utilizando o TensorBoard quando treino um modelo YOLOv8 ?

Para monitorizar as métricas de formação enquanto treina um modelo YOLOv8 com o TensorBoard, segue estes passos:

  1. Instala o TensorBoard e YOLOv8: Corre pip install ultralytics que inclui o TensorBoard.
  2. Configura o registo do TensorBoard: Durante o processo de treino, YOLOv8 regista as métricas num diretório de registo especificado.
  3. Inicia o TensorBoard: Inicia o TensorBoard com o comando tensorboard --logdir path/to/your/tensorboard/logs.

O painel de controlo do TensorBoard, acessível através de http://localhost:6006/, fornece informações em tempo real sobre várias métricas de formação. Para uma análise mais aprofundada das configurações de formação, visita o nosso guia de configuraçãoYOLOv8 .

Que tipo de métricas posso visualizar com o TensorBoard quando treino modelos YOLOv8 ?

Ao treinar modelos YOLOv8 , o TensorBoard permite-te visualizar uma série de métricas importantes, incluindo:

  • Perda (treinamento e validação): Indica o desempenho do modelo durante a formação e a validação.
  • Exatidão/Precisão/Recall: Principais métricas de desempenho para avaliar a precisão da deteção.
  • Taxa de aprendizagem: Acompanha as alterações da taxa de aprendizagem para compreender o seu impacto na dinâmica da formação.
  • mAP (precisão média média): Para uma avaliação abrangente da precisão da deteção de objectos em vários limiares de IoU.

Estas visualizações são essenciais para acompanhar o desempenho do modelo e fazer as optimizações necessárias. Para mais informações sobre estas métricas, consulta o nosso guia Métricas de desempenho.

Posso utilizar o TensorBoard num ambiente Google Colab para treinar YOLOv8?

Sim, podes utilizar o TensorBoard num ambiente Google Colab para treinar modelos YOLOv8 . Aqui tens uma configuração rápida:

Configura o TensorBoard para Google Colab

%load_ext tensorboard
%tensorboard --logdir path/to/runs

Depois, executa o script de treino YOLOv8 :

from ultralytics import YOLO

# Load a pre-trained model
model = YOLO("yolov8n.pt")

# Train the model
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

O TensorBoard visualizará o progresso do treinamento no Colab, fornecendo informações em tempo real sobre métricas como perda e precisão. Para mais informações sobre a configuração do treino em YOLOv8 , consulta o nosso guia de instalação detalhado em YOLOv8 .



Criado em 2024-01-01, Atualizado em 2024-07-05
Autores: glenn-jocher (6), abirami-vina (1)

Comentários