Salta para o conte√ļdo

Elevando o YOLOv8 Training: Simplifica o teu processo de registo com Comet ML

O registo dos principais detalhes de forma√ß√£o, como par√Ęmetros, m√©tricas, previs√Ķes de imagens e pontos de verifica√ß√£o do modelo, √© essencial na aprendizagem autom√°tica - mant√©m o projeto transparente, o progresso mensur√°vel e os resultados repet√≠veis.

Ultralytics YOLOv8 integra-se perfeitamente com o Comet ML, capturando e optimizando eficazmente todos os aspectos do processo de forma√ß√£o do seu modelo de dete√ß√£o de objectos YOLOv8 . Neste guia, abordaremos o processo de instala√ß√£o, a configura√ß√£o do Comet ML, as informa√ß√Ķes em tempo real, o registo personalizado e a utiliza√ß√£o offline, assegurando que a sua YOLOv8 forma√ß√£o √© documentada de forma exaustiva e aperfei√ßoada para obter resultados excelentes.

Comet ML

Comet Vis√£o geral do ML

Comet ML √© uma plataforma para acompanhar, comparar, explicar e otimizar modelos e experi√™ncias de aprendizagem autom√°tica. Permite-lhe registar m√©tricas, par√Ęmetros, meios de comunica√ß√£o e muito mais durante o treino do modelo e monitorizar as suas experi√™ncias atrav√©s de uma interface Web esteticamente agrad√°vel. Comet O ML ajuda os cientistas de dados a iterar mais rapidamente, aumenta a transpar√™ncia e a reprodutibilidade e ajuda no desenvolvimento de modelos de produ√ß√£o.

Aproveita o poder de YOLOv8 e Comet ML

Ao combinar o Ultralytics YOLOv8 com o Comet ML, desbloqueia uma s√©rie de vantagens. Estas incluem a gest√£o simplificada de experi√™ncias, informa√ß√Ķes em tempo real para ajustes r√°pidos, op√ß√Ķes de registo flex√≠veis e personalizadas e a capacidade 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 obter resultados excepcionais.

Instalação

Para instalar os pacotes necess√°rios, executa:

Instalação

# Install the required packages for YOLOv8 and Comet ML
pip install ultralytics comet_ml torch torchvision

Configuração do Comet ML

Depois de instalares os pacotes necess√°rios, ter√°s de te inscrever, obter uma chave da APIComet e configur√°-la.

Configuração do Comet ML

# Set your Comet Api Key
export COMET_API_KEY=<Your API Key>

Depois, podes inicializar o teu projeto Comet . Comet detectará automaticamente a chave da API e prosseguirá com a configuração.

import comet_ml

comet_ml.init(project_name="comet-example-yolov8-coco128")

Se estiveres a utilizar um notebook Google Colab, o código acima irá pedir-te para introduzires a tua chave de API para a inicialização.

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

from ultralytics import YOLO

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

# train the model
results = model.train(
    data="coco8.yaml",
    project="comet-example-yolov8-coco128",
    batch=32,
    save_period=1,
    save_json=True,
    epochs=3,
)

Depois de executar o código de treino, o Comet ML criará uma experiência no teu espaço de trabalho Comet para acompanhar a execução automaticamente. Ser-te-á então fornecida uma ligação para veres o registo detalhado do processo de treino do teu modeloYOLOv8 .

Comet regista automaticamente os seguintes dados sem qualquer configura√ß√£o adicional: m√©tricas como mAP e perda, hiperpar√Ęmetros, pontos de verifica√ß√£o do modelo, matriz de confus√£o interactiva e previs√Ķes da caixa delimitadora da imagem.

Compreender o desempenho do teu modelo com Comet Visualiza√ß√Ķes de ML

Vamos mergulhar no que voc√™ ver√° no Comet Painel de ML assim que seu YOLOv8 modelo come√ßa o treinamento. O painel √© onde toda a a√ß√£o acontece, apresentando uma s√©rie de informa√ß√Ķes registradas automaticamente por meio de recursos visuais e estat√≠sticas. Aqui est√° um tour r√°pido:

Painéis de experiências

A sec√ß√£o de pain√©is de experi√™ncias do painel de controlo Comet ML organiza e apresenta as diferentes execu√ß√Ķes e as suas m√©tricas, como a perda de m√°scara de segmento, a perda de classe, a precis√£o e a precis√£o m√©dia.

Comet Vis√£o geral do ML

Métricas

Na secção de métricas, também tens a opção de examinar as métricas num formato tabular, que é apresentado num painel dedicado, conforme ilustrado aqui.

Comet Vis√£o geral do ML

Matriz de confus√£o interactiva

A matriz de confus√£o, encontrada no separador Matriz de confus√£o, fornece uma forma interactiva de avaliar a precis√£o da classifica√ß√£o do modelo. Detalha as previs√Ķes correctas e incorrectas, permitindo-lhe compreender os pontos fortes e fracos do modelo.

Comet Vis√£o geral do ML

Métricas do sistema

Comet O ML regista as métricas do sistema para ajudar a identificar quaisquer estrangulamentos no processo de formação. Inclui métricas como a utilização de GPU , a utilização de memória GPU , a utilização de CPU e a utilização de RAM. Estas são essenciais para monitorizar a eficiência da utilização de recursos durante o treino do modelo.

Comet Vis√£o geral do ML

Personaliza Comet ML Logging

Comet O ML oferece a flexibilidade de personalizar o seu comportamento de registo atrav√©s da defini√ß√£o de vari√°veis de ambiente. Estas configura√ß√Ķes permitem-te adaptar o Comet ML √†s tuas necessidades e prefer√™ncias espec√≠ficas. Aqui est√£o algumas op√ß√Ķes de personaliza√ß√£o √ļteis:

Previs√Ķes de imagens de registo

Podes controlar o n√ļmero de previs√Ķes de imagens que o Comet ML regista durante as tuas experi√™ncias. Por predefini√ß√£o, o Comet ML regista 100 previs√Ķes de imagens do conjunto de valida√ß√£o. No entanto, podes alterar este n√ļmero para melhor se adequar √†s tuas necessidades. Por exemplo, para registar 200 previs√Ķes de imagens, utiliza o seguinte c√≥digo:

import os

os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"

Intervalo de registo em lote

Comet ML permite-te especificar a frequ√™ncia com que os lotes de previs√Ķes de imagens s√£o registados. O COMET_EVAL_BATCH_LOGGING_INTERVAL controla essa frequ√™ncia. A configura√ß√£o padr√£o √© 1, que registra em log as previs√Ķes de cada lote de valida√ß√£o. √Č poss√≠vel ajustar esse valor para registrar as previs√Ķes em um intervalo diferente. Por exemplo, definindo-o como 4, registrar√° as previs√Ķes de 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 opção COMET_EVAL_LOG_CONFUSION_MATRIX para "falso". A matriz de confusão só será registada uma vez, após a conclusão do treino.

import os

os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"

Registo offline

Se te encontrares numa situação em que o acesso à Internet é limitado, o Comet ML oferece uma opção de registo offline. Podes definir o COMET_MODE para "offline" para ativar esta funcionalidade. Os dados da tua experiência serão guardados localmente num diretório que poderás mais tarde carregar para Comet ML quando a ligação à Internet estiver disponível.

import os

os.environ["COMET_MODE"] = "offline"

Resumo

Este guia acompanhou-te na integra√ß√£o do Comet ML com Ultralytics' YOLOv8. Desde a instala√ß√£o √† personaliza√ß√£o, aprendeste a simplificar a gest√£o de experi√™ncias, a obter informa√ß√Ķes em tempo real e a adaptar o registo √†s necessidades do teu projeto.

Explora a documenta√ß√£o oficial doComet ML para obteres mais informa√ß√Ķes sobre a integra√ß√£o com o YOLOv8.

Al√©m disso, se pretenderes aprofundar as aplica√ß√Ķes pr√°ticas de YOLOv8, especificamente para tarefas de segmenta√ß√£o de imagens, este guia detalhado sobre o aperfei√ßoamento de YOLOv8 com Comet ML oferece informa√ß√Ķes valiosas e instru√ß√Ķes passo a passo para melhorar o desempenho do teu modelo.

Al√©m disso, para explorar outras integra√ß√Ķes interessantes com Ultralytics, consulta a p√°gina do guia de integra√ß√£o, que oferece uma grande variedade de recursos e informa√ß√Ķes.

FAQ

Como é que integro o Comet ML com o Ultralytics YOLOv8 para formação?

Para integrar o Comet ML com o Ultralytics YOLOv8 , segue estes passos:

  1. Instala os pacotes necess√°rios:

    pip install ultralytics comet_ml torch torchvision
    
  2. Configura a tua chave de API Comet :

    export COMET_API_KEY=<Your API Key>
    
  3. Inicializa o teu projeto Comet no teu código Python :

    import comet_ml
    
    comet_ml.init(project_name="comet-example-yolov8-coco128")
    
  4. Treina o teu modelo YOLOv8 e regista as métricas:

    from ultralytics import YOLO
    
    model = YOLO("yolov8n.pt")
    results = model.train(
        data="coco8.yaml", project="comet-example-yolov8-coco128", batch=32, save_period=1, save_json=True, epochs=3
    )
    

Para obter instru√ß√Ķes mais detalhadas, consulta a sec√ß√£o de configura√ß√£o doComet ML.

Quais s√£o as vantagens de utilizar Comet ML com YOLOv8?

Ao integrar Ultralytics YOLOv8 com Comet ML, podes:

  • Monitoriza as informa√ß√Ķes em tempo real: Obt√©m feedback instant√Ęneo sobre os resultados do treino, permitindo ajustes r√°pidos.
  • Regista m√©tricas extensas: Captura automaticamente m√©tricas essenciais, como mAP, perda, hiperpar√Ęmetros e pontos de verifica√ß√£o do modelo.
  • Regista experi√™ncias offline: Regista os treinos localmente quando o acesso √† Internet n√£o est√° dispon√≠vel.
  • Compara diferentes execu√ß√Ķes de treino: Utiliza o painel de controlo interativo Comet ML para analisar e comparar v√°rias experi√™ncias.

Ao tirar partido destas funcionalidades, pode otimizar os seus fluxos de trabalho de aprendizagem autom√°tica para obter um melhor desempenho e reprodutibilidade. Para obter mais informa√ß√Ķes, visita o guia de integra√ß√£oComet ML.

Como posso personalizar o comportamento de registo do Comet ML durante o treino do YOLOv8 ?

Comet O ML permite uma personalização extensiva do seu comportamento de registo utilizando 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 do lote:

    import os
    
    os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
    
  • Desactiva o registo da matriz de confus√£o:

    import os
    
    os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
    

Para mais op√ß√Ķes de personaliza√ß√£o, consulta a sec√ß√£o Personalizar Comet ML Logging.

Como √© que posso ver m√©tricas e visualiza√ß√Ķes detalhadas da minha forma√ß√£o YOLOv8 em Comet ML?

Assim que o teu modelo YOLOv8 come√ßar a ser treinado, podes aceder a uma vasta gama de m√©tricas e visualiza√ß√Ķes no painel de controlo Comet ML. Os principais recursos incluem:

  • Pain√©is de experi√™ncias: V√™ diferentes execu√ß√Ķes e as suas m√©tricas, incluindo perda de m√°scara de segmento, perda de classe e precis√£o m√©dia.
  • M√©tricas: Examina as m√©tricas em formato de tabela para uma an√°lise detalhada.
  • Matriz de confus√£o interactiva: Avalia a precis√£o da classifica√ß√£o com uma matriz de confus√£o interactiva.
  • System Metrics: Monitor GPU and CPU utilization, memory usage, and other system metrics.

Para obter uma vis√£o geral detalhada destas funcionalidades, visita a sec√ß√£o Compreender o desempenho do teu modelo com as visualiza√ß√Ķes de Comet ML.

Posso utilizar o Comet ML para registo offline quando treino modelos YOLOv8 ?

Sim, podes ativar o registo offline em Comet ML definindo o COMET_MODE para "offline":

import os

os.environ["COMET_MODE"] = "offline"

Esta funcionalidade permite-te registar os dados da tua experi√™ncia localmente, que podem mais tarde ser carregados para Comet ML quando a liga√ß√£o √† Internet estiver dispon√≠vel. Isto √© particularmente √ļtil quando trabalhas em ambientes com acesso limitado √† Internet. Para mais detalhes, consulta a sec√ß√£o Registo offline.



Criado em 2023-11-16, Atualizado em 2024-07-05
Autores: glenn-jocher (10), AyushExel (1), abirami-vina (1)

Coment√°rios