A elevar o treino do YOLO26: simplifica o teu processo de registo com o Comet#
Registar detalhes essenciais do treino, como parâmetros, métricas, previsões de imagens e checkpoints do modelo, é fundamental em aprendizagem automática — mantém o teu projeto transparente, o teu progresso mensurável e os teus resultados reproduzíveis.
Watch: How to Use Comet for Ultralytics YOLO Model Training Logs and Metrics 🚀
O Ultralytics YOLO26 integra-se perfeitamente com o Comet (anteriormente Comet ML), capturando e otimizando eficientemente todos os aspetos do processo de treino do teu modelo de deteção de objetos YOLO26. Neste guia, abordaremos o processo de instalação, a configuração do Comet, os insights em tempo real, o registo personalizado e a utilização offline, garantindo que o teu treino do YOLO26 fica completamente documentado e ajustado para obter resultados excecionais.
Comet#
O Comet é uma plataforma para acompanhar, comparar, explicar e otimizar modelos e experiências de aprendizagem automática. Permite-te registar métricas, parâmetros, multimédia e muito mais durante o treino do modelo, bem como monitorizar as tuas experiências através de uma interface Web visualmente apelativa. O Comet ajuda os cientistas de dados a iterar mais rapidamente, melhora a transparência e a reprodutibilidade e contribui para o desenvolvimento de modelos de produção.
Aproveitar o poder do YOLO26 e do Comet#
Ao combinares o Ultralytics YOLO26 com o Comet, desbloqueias uma série de benefícios. Estes incluem uma gestão simplificada de experiências, insights em tempo real para ajustes rápidos, opções de registo flexíveis e personalizadas e a possibilidade de registar experiências offline quando o acesso à Internet é limitado. Esta integração permite-te tomar decisões baseadas em dados, analisar métricas de desempenho e alcançar resultados excecionais.
Instalação#
Para instalares os pacotes necessários, executa:
# Install YOLO26 and Comet
pip install ultralytics comet_mlConfigurar o Comet#
Depois de instalares os pacotes necessários, terás de te registar, obter uma chave de API do Comet e configurá-la.
# Set your Comet API Key
export COMET_API_KEY=YOUR_API_KEYEm seguida, autentica-te com o Comet. O callback do Ultralytics cria a experiência e utiliza o argumento de treino project do YOLO como nome do projeto do Comet.
import comet_ml
comet_ml.login()Se estiveres a utilizar um notebook do Google Colab, o código acima pedir-te-á que introduzas a tua chave de API para a inicialização.
Utilização#
Antes de começares a consultar as instruções de utilização, vê a gama de modelos YOLO26 disponibilizados pela Ultralytics. Isto ajudar-te-á a escolher o modelo mais adequado aos requisitos do teu projeto.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n.pt")
# Train the model
results = model.train(
data="coco8.yaml",
project="comet-example-yolo26-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)Depois de executares o código de treino, o Comet criará automaticamente uma experiência no teu espaço de trabalho do Comet para acompanhar a execução. Em seguida, receberás um link para veres o registo detalhado do processo de treino do teu modelo YOLO26.
O Comet regista automaticamente os seguintes dados sem necessidade de configuração adicional: métricas como mAP e perda, hiperparâmetros, checkpoints do modelo, matriz de confusão interativa e previsões de caixas delimitadoras em imagens.
Compreender o desempenho do teu modelo com as visualizações do Comet#
Vamos analisar o que verás no painel do Comet assim que o teu modelo YOLO26 começar a ser treinado. É no painel que tudo acontece: apresenta uma série de informações registadas automaticamente através de elementos visuais e estatísticas. Eis uma breve visita guiada:
Painéis da experiência
A secção de painéis da experiência do painel do Comet organiza e apresenta as diferentes execuções e as respetivas métricas, como a perda da máscara de segmentação, a perda da classe, a precisão e a precisão média.
Métricas
Na secção de métricas, também podes examinar as métricas num formato tabular, apresentado num painel dedicado, conforme ilustrado aqui.
Matriz de confusão interativa
A matriz de confusão, disponível no separador Confusion Matrix, proporciona uma forma interativa de avaliar a exatidão da classificação do modelo. Apresenta em detalhe as previsões corretas e incorretas, permitindo-te compreender os pontos fortes e fracos do modelo.
Métricas do sistema
O Comet regista métricas do sistema para ajudar a identificar possíveis estrangulamentos no processo de treino. Inclui métricas como utilização da GPU, utilização da memória da GPU, utilização da CPU e utilização da RAM. Estas métricas são essenciais para monitorizar a eficiência da utilização dos recursos durante o treino do modelo.
Personalizar o registo do Comet#
O Comet oferece flexibilidade para personalizares o seu comportamento de registo através da definição de variáveis de ambiente. Estas configurações permitem-te adaptar o Comet às tuas necessidades e preferências específicas. O callback do Ultralytics lê as seguintes variáveis de ambiente (define-as antes do início do treino):
| Variável de ambiente | Predefinição | Descrição |
|---|---|---|
COMET_START_ONLINE | 1 | Executa a experiência no modo online (1) ou offline (0). |
COMET_PROJECT_NAME | args.project | Projeto do espaço de trabalho do Comet. Recorre ao argumento de treino project do YOLO quando este não está definido. |
COMET_MODEL_NAME | Ultralytics | Nome registado para o artefacto do modelo registado. |
COMET_MAX_IMAGE_PREDICTIONS | 100 | Número total de previsões de imagens de validação a registar por execução. |
COMET_EVAL_BATCH_LOGGING_INTERVAL | 1 | Regista previsões de imagens a cada N.º lote de validação. |
COMET_EVAL_LOG_IMAGE_PREDICTIONS | true | Ativa (true) ou desativa (false) o registo de previsões de imagens. |
COMET_EVAL_LOG_CONFUSION_MATRIX | false | Regista uma matriz de confusão em cada época de validação. É sempre registada uma matriz final no fim do treino. |
COMET_MAX_CONFIDENCE_SCORE | 100.0 | Multiplicador aplicado às pontuações de confiança da deteção antes do registo (a interface do Comet espera uma escala percentual). |
COMET_MODE (obsoleto) | online | Alias legado de COMET_START_ONLINE ("online" ↔ 1, "offline" ↔ 0). Emite um aviso de obsolescência. |
Para os comutadores booleanos (COMET_EVAL_LOG_IMAGE_PREDICTIONS e COMET_EVAL_LOG_CONFUSION_MATRIX), os valores 1, true, yes, on, y e t são interpretados como True (sem distinção entre maiúsculas e minúsculas). Qualquer outro valor é False.
Registar previsões de imagens#
Podes controlar o número de previsões de imagens que o Comet regista durante as tuas experiências. Por predefinição, o Comet regista 100 previsões de imagens do conjunto de validação. No entanto, podes alterar este número para o adequar melhor aos teus requisitos. Por exemplo, para registar 200 previsões de imagens, utiliza o seguinte código:
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"Para desativar completamente o registo de previsões de imagens (por exemplo, para reduzir o volume de carregamentos em ligações lentas), define COMET_EVAL_LOG_IMAGE_PREDICTIONS como "false":
import os
os.environ["COMET_EVAL_LOG_IMAGE_PREDICTIONS"] = "false"Intervalo de registo de lotes#
O Comet permite-te especificar a frequência com que os lotes de previsões de imagens são registados. A variável de ambiente COMET_EVAL_BATCH_LOGGING_INTERVAL controla esta frequência. A definição predefinida é 1, o que regista previsões de cada lote de validação. Podes ajustar este valor para registar previsões num intervalo diferente. Por exemplo, defini-lo como 4 registará previsões a cada quarto lote.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"Desativar o registo da matriz de confusão#
Em alguns casos, podes não querer registar a matriz de confusão do teu conjunto de validação após cada época. Podes desativar esta funcionalidade definindo a variável de ambiente COMET_EVAL_LOG_CONFUSION_MATRIX como "false". A matriz de confusão só será registada uma vez, depois de o treino estar concluído.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"Modo online e offline#
Por predefinição, o Comet é executado no modo online e transmite os dados da experiência para os servidores do Comet. Se precisares de treinar sem acesso à Internet, define COMET_START_ONLINE=0 antes do início do treino. Os dados da experiência são guardados localmente e podem ser carregados mais tarde com a CLI comet upload.
import os
os.environ["COMET_START_ONLINE"] = "0" # 1 (default) = online, 0 = offlineAs versões anteriores utilizavam COMET_MODE="offline" para esta finalidade. A variável continua a ser aceite por motivos de compatibilidade retroativa, mas emite um aviso de obsolescência. Utiliza COMET_START_ONLINE daqui em diante.
Nome do projeto#
Por predefinição, o callback do Comet transmite o argumento de treino project do YOLO ao Comet (ou None quando o argumento não está definido, caso em que o Comet utiliza a predefinição do teu espaço de trabalho). Substitui este comportamento por COMET_PROJECT_NAME para enviares todas as experiências para um projeto específico do espaço de trabalho do Comet, independentemente do argumento de treino do YOLO:
import os
os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments"Nome do artefacto do modelo#
COMET_MODEL_NAME define o nome que o Comet regista para o artefacto do modelo registado (por predefinição, Ultralytics). Utiliza-o para distinguir variantes do modelo num espaço de trabalho partilhado:
import os
os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"Escala da pontuação de confiança#
As pontuações de confiança da deteção são emitidas no intervalo [0, 1], mas a interface do Comet apresenta-as, por predefinição, numa escala percentual. O callback multiplica cada pontuação por COMET_MAX_CONFIDENCE_SCORE (por predefinição, 100.0) antes do registo. Ajusta este valor se preferires probabilidades brutas ou uma escala diferente:
import os
os.environ["COMET_MAX_CONFIDENCE_SCORE"] = "1.0" # log raw [0, 1] scoresResumo#
Este guia mostrou-te como integrar o Comet com o YOLO26 do Ultralytics. Desde a instalação à personalização, aprendeste a simplificar a gestão de experiências, obter insights em tempo real e adaptar o registo às necessidades do teu projeto.
Explora a documentação oficial da integração do YOLOv8 com o Comet, que também se aplica a projetos YOLO26.
Além disso, se quiseres aprofundar as aplicações práticas do YOLO26, especificamente para tarefas de segmentação de imagens, este guia detalhado sobre o ajuste fino do YOLO26 com o Comet oferece insights valiosos e instruções passo a passo para melhorares o desempenho do teu modelo.
Além disso, para explorares outras integrações interessantes com o Ultralytics, consulta a página do guia de integrações, que oferece muitos recursos e informações.
Perguntas frequentes#
Para integrares o Comet com o Ultralytics YOLO26, segue estes passos:
-
Instala os pacotes necessários:
pip install ultralytics comet_ml -
Configura a tua chave de API do Comet:
export COMET_API_KEY=YOUR_API_KEY -
Autentica-te com o Comet no teu código Python:
import comet_ml comet_ml.login() -
Treina o teu modelo YOLO26 e regista as métricas:
from ultralytics import YOLO model = YOLO("yolo26n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo26-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
Para obteres instruções mais detalhadas, consulta a secção de configuração do Comet.
-
Ao integrares o Ultralytics YOLO26 com o Comet, podes:
- Monitorizar insights em tempo real: obtém feedback instantâneo sobre os resultados do treino, permitindo ajustes rápidos.
- Registar métricas abrangentes: captura automaticamente métricas essenciais, como mAP, perda, hiperparâmetros e checkpoints do modelo.
- Acompanhar experiências offline: regista localmente as tuas execuções de treino quando o acesso à Internet não está disponível.
- Comparar diferentes execuções de treino: utiliza o painel interativo do Comet para analisar e comparar várias experiências.
Ao aproveitares estas funcionalidades, podes otimizar os teus fluxos de trabalho de aprendizagem automática para obteres melhor desempenho e reprodutibilidade. Para mais informações, visita o guia de integração do Comet.
O Comet permite uma ampla personalização do seu comportamento de registo através de variáveis de ambiente:
-
Altera o número de previsões de imagens registadas:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200" -
Ajusta o intervalo de registo de lotes:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4" -
Desativa o registo da matriz de confusão:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false" -
Define o nome do projeto do Comet:
import os os.environ["COMET_PROJECT_NAME"] = "my-yolo26-experiments" -
Define o nome do artefacto do modelo registado:
import os os.environ["COMET_MODEL_NAME"] = "yolo26n-coco128"
Consulta a secção Personalizar o registo do Comet para veres a lista completa, incluindo os comutadores de previsões de imagens, a escala das pontuações de confiança e o modo online/offline.
-
Assim que o teu modelo YOLO26 começar a ser treinado, poderás aceder a uma vasta gama de métricas e visualizações no painel do Comet. As principais funcionalidades incluem:
- Painéis da experiência: visualiza diferentes execuções e as respetivas métricas, incluindo a perda da máscara de segmentação, a perda da classe e a precisão média.
- Métricas: examina as métricas num formato tabular para uma análise detalhada.
- Matriz de confusão interativa: avalia a exatidão da classificação com uma matriz de confusão interativa.
- Métricas do sistema: monitoriza a utilização da GPU e da CPU, a utilização da memória e outras métricas do sistema.
Para obteres uma visão geral detalhada destas funcionalidades, visita a secção Compreender o desempenho do teu modelo com as visualizações do Comet.
Sim. Define
COMET_START_ONLINE=0antes do início do treino para registares os dados localmente:import os os.environ["COMET_START_ONLINE"] = "0"Os dados da experiência são guardados no disco e podem ser carregados mais tarde para o Comet com a CLI
comet uploadquando houver conectividade. A variávelCOMET_MODE="offline"anterior continua a funcionar, mas emite um aviso de obsolescência. Para mais detalhes, consulta a secção Modo online e offline.