Verificação verde
Link copiado para a área de transferência

Regista Ultralytics YOLO experiências utilizando a integração do MLflow

Explora como a integração e o registo do MLflow podem elevar as tuas experiências Ultralytics YOLO , permitindo um rastreio superior para aplicações de visão por computador.

Podes pensar num projeto de visão computacional como um puzzle. Essencialmente, ensinas as máquinas a compreender os dados visuais juntando as peças do puzzle, como a recolha de um conjunto de dados, o treino de um modelo e a sua implementação. Quando tudo se encaixa, obténs um sistema que pode analisar e dar sentido a imagens e vídeos de forma eficaz.

Mas, tal como um verdadeiro puzzle, nem todas as partes de um projeto de visão por computador são simples. Tarefas como o acompanhamento de experiências (manter um registo das tuas definições, configurações e dados) e o registo (capturar resultados e métricas de desempenho) podem exigir muito tempo e esforço. Embora essas etapas sejam fundamentais para melhorar e refinar os modelos de visão computacional, elas podem, às vezes, parecer um gargalo.

É aqui que entram em jogo os modelos Ultralytics YOLO e a sua integração com o MLflow. Modelos como Ultralytics YOLO11 suportam uma vasta gama de tarefas de visão computacional, incluindo deteção de objectos, segmentação de instâncias e classificação de imagens. Estas capacidades permitem a criação de aplicações de visão computacional interessantes. Ter a opção de confiar em integrações como a integração com o MLflow permite que os engenheiros de visão se concentrem no modelo em si, em vez de se perderem nos pormenores. 

Em particular, a integração do MLflow simplifica o processo, registando várias métricas, parâmetros e artefactos ao longo do processo de formação. Neste artigo, vamos explorar como funciona a integração do MLflow, as suas vantagens e como a podes utilizar para simplificar os teus fluxos de trabalho Ultralytics YOLO .

O que é o MLflow?

O MLflow é uma plataforma de código aberto (desenvolvida pela Databricks) concebida para simplificar e gerir todo o ciclo de vida da aprendizagem automática. Abrange o processo de desenvolvimento, implementação e manutenção de modelos de aprendizagem automática. 

O MLflow inclui os seguintes componentes principais:

  • Acompanhamento de experiências: Este componente centra-se no registo de detalhes importantes, como definições de modelos, resultados e ficheiros para cada execução de treino de modelos. Ajuda-te a comparar modelos, a ver como as alterações afectam o desempenho e a encontrar o melhor.
  • Registo de modelos: É como um sistema de armazenamento para os teus modelos, onde podes manter um registo das diferentes versões e organizá-las por fases como teste, preparação e produção.
  • Empacotamento de projectos: O MLflow facilita o agrupamento dos seus projectos de aprendizagem automática, incluindo o código, as definições e as ferramentas necessárias, para que possam ser partilhados e utilizados de forma consistente entre equipas e ambientes.
  • Implantação de modelos: O MLflow fornece ferramentas para implementar rapidamente os teus modelos treinados em locais como estações de trabalho ou plataformas de nuvem, como AWS e Azure, tornando-os prontos para utilização no mundo real.
Fig. 1. Componentes do MLflow.

Os componentes do MLflow tornam o processo de aprendizagem automática mais fácil e mais eficiente de gerir. Através desta integração, Ultralytics torna possível utilizar a funcionalidade de acompanhamento de experiências do MLflow para registar parâmetros, métricas e artefactos durante o treino de modelos YOLO . Simplifica o acompanhamento e a comparação de diferentes versões do modelo YOLO .

A integração do MLflow simplifica a formação

Agora que já falámos sobre o que é o MLflow, vamos analisar os pormenores da integração do MLflow e as funcionalidades que oferece. 

A integração do MLflow foi criada para tornar o processo de formação mais eficiente e organizado, acompanhando e registando automaticamente aspectos importantes das tuas experiências de visão computacional. Facilita três tipos principais de registo: métricas, parâmetros e artefactos.

Vê mais detalhadamente cada tipo de registo:

  • Registo de métricas: As métricas são valores quantitativos que medem o desempenho do teu modelo durante o treino. Por exemplo, métricas como exatidão, precisão, recuperação ou perda são controladas no final de cada época (uma passagem completa pelo seu conjunto de dados). 
  • Registo de parâmetros: Os parâmetros são as configurações que define antes do início do treino do modelo, tais como a taxa de aprendizagem, o tamanho do lote (o número de amostras processadas num passo de treino) e o número de épocas. Estes parâmetros afectam significativamente o comportamento e o desempenho do teu modelo.
  • Registo de artefactos: Os artefactos são os resultados ou ficheiros gerados durante o treino. Isto inclui ficheiros essenciais como os pesos do modelo (os valores numéricos que o teu modelo aprende durante o treino), ficheiros de configuração (que armazenam as definições de treino) e outros dados relevantes. 
Figura 2. Principais caraterísticas de registo da integração do MLflow. Imagem do autor.

Como funciona a integração do MLflow

Podes explorar a documentação Ultralytics para obteres instruções passo a passo sobre como ativar a integração do MLflow. Uma vez configurada, a integração rastreia e regista automaticamente os principais detalhes das suas experiências de treino, conforme referido anteriormente. Isso elimina a necessidade de rastreamento manual e ajuda a manter o foco no refinamento dos modelos.

Com a integração do MLflow, todas as suas execuções de treino são armazenadas num único local, facilitando a comparação de resultados e a avaliação de diferentes configurações. Ao comparar os resultados registados, pode identificar as configurações com melhor desempenho e utilizar essas informações para melhorar os seus modelos. Isto garante que o teu fluxo de trabalho é mais eficiente, bem documentado e reproduzível.

Especificamente, cada sessão de treino é organizada numa experiência, que funciona como um contentor para várias execuções. Dentro de uma experiência, podes ver todas as execuções associadas, comparar o seu desempenho lado a lado e analisar tendências em diferentes configurações. 

Por exemplo, se estiveres a testar várias taxas de aprendizagem ou tamanhos de lote com Ultralytics YOLOv8 , todas as execuções relacionadas são agrupadas na mesma experiência para facilitar a comparação e a análise, como mostrado abaixo.

Figura 3. Podes ver as experiências utilizando a integração do MLflow.

Entretanto, ao nível da execução individual, o MLflow fornece informações detalhadas sobre a sessão de treino específica. Pode visualizar métricas como a exatidão, a perda e a precisão ao longo das épocas, verificar os parâmetros de treino utilizados (por exemplo, tamanho do lote e taxa de aprendizagem) e aceder a artefactos gerados, como pesos de modelos e ficheiros de configuração. Esses detalhes são armazenados em um formato organizado, facilitando a revisão ou a reprodução de qualquer execução.

Escolher a integração do MLflow: porque se destaca

À medida que percorre a documentaçãoUltralytics e explora as integrações disponíveis, pode dar por si a perguntar: O que distingue a integração do MLflow e porque é que a devo escolher para o meu fluxo de trabalho?

Com integrações como o TensorBoard, que também fornecem ferramentas para acompanhar métricas e visualizar resultados, é importante compreender as qualidades únicas que fazem com que a integração do MLflow se destaque. 

Eis por que razão o MLflow pode ser a escolha ideal para os teus projectosYOLO :

  • Interface de fácil utilização: O painel de controlo do MLflow facilita a visualização de experiências, a comparação de execuções e a análise de resultados, ajudando-o a identificar rapidamente as configurações com melhor desempenho.
  • Registo de métricas personalizadas: Os engenheiros de visão podem registar métricas personalizadas para além das métricas padrão, permitindo uma análise mais aprofundada específica para as necessidades do seu projeto.
  • Suporta fluxos de trabalho em várias línguas: O MLflow é compatível com várias linguagens de programação, incluindo Python, R e Java, facilitando a integração em diversos pipelines de aprendizagem automática.

Aplicações práticas de YOLO11 e a integração do MLflow

Para compreender melhor quando pode utilizar a integração do MLflow, consideremos uma aplicação de IA na área dos cuidados de saúde em que é necessário treinar YOLO11 para detetar tumores em imagens de raios X ou de tomografia computorizada. 

Neste cenário, o conjunto de dados consistiria em imagens médicas anotadas. Teria de experimentar várias configurações, como ajustar as taxas de aprendizagem, o tamanho dos lotes e as técnicas de pré-processamento de imagens, para obter uma precisão óptima. Uma vez que os riscos são elevados nos cuidados de saúde e a precisão e fiabilidade são críticas, o acompanhamento manual de cada experiência pode rapidamente tornar-se incontrolável.

Fig. 4. Deteção de tumores utilizando Ultralytics YOLO11 .

A integração do MLflow resolve este desafio registando automaticamente os parâmetros, métricas e artefactos de cada experiência. Por exemplo, se modificar a taxa de aprendizagem ou aplicar uma nova estratégia de aumento, o MLflow regista estas alterações juntamente com as métricas de desempenho. Além disso, o MLflow guarda os pesos e as configurações dos modelos treinados, garantindo que os modelos bem sucedidos podem ser facilmente reproduzidos e implementados. 

Este é apenas um exemplo de como a integração do MLflow melhora a gestão de experiências em aplicações de visão de IA. As mesmas funcionalidades aplicam-se a outras aplicações de visão por computador, incluindo:

  • Condução autónoma: YOLO11 pode ser utilizado para detetar e classificar peões, veículos e sinais de trânsito em tempo real para melhorar a segurança e a eficiência dos sistemas de condução autónoma.
  • Análise de retalho: Os modelos de deteção de objectos podem monitorizar o comportamento dos clientes, seguir a colocação de produtos e otimizar o inventário, analisando a atividade na loja através de feeds de vídeo.
  • Segurança e vigilância: Os modelos podem ser treinados para detetar anomalias ou monitorizar a atividade em tempo real em áreas sensíveis para aumentar a segurança.

Vantagens da integração do MLflow

A integração do MLflow com os modelosYOLO torna a gestão das experiências de aprendizagem automática mais fácil e mais eficiente. Ao automatizar as principais tarefas e manter tudo organizado, permite-lhe concentrar-se na criação e melhoria dos seus modelos. Vê aqui as principais vantagens:

  • Escala para grandes projectos: A plataforma lida com várias experiências e modelos de forma eficiente, tornando-a adequada para equipas maiores e fluxos de trabalho complexos.
  • Histórico detalhado das experiências: A plataforma mantém um histórico completo das experiências, permitindo-te revisitar execuções anteriores, analisar configurações anteriores e aprender com resultados anteriores.
  • Desativação e reposição de opções: O registo do MLflow pode ser facilmente desativado quando não é necessário e as definições podem ser repostas para os valores predefinidos, oferecendo flexibilidade para se adaptar a diferentes requisitos de fluxo de trabalho.

Principais conclusões

A integração do MLflow torna a gestão e otimização das experiências Ultralytics YOLO mais fácil e eficiente. Ao seguir automaticamente detalhes importantes como parâmetros, métricas e artefactos, simplifica o processo e elimina o incómodo da gestão manual de experiências. 

Quer esteja a trabalhar em soluções de cuidados de saúde como a deteção de tumores, a melhorar os sistemas de condução autónoma ou a melhorar a análise de retalho, esta integração ajuda a manter tudo organizado e reproduzível. Com a sua interface intuitiva e flexibilidade, o MLflow permite que os programadores se concentrem na criação de melhores modelos e na promoção da inovação em aplicações de IA de visão.

Junta-te à nossa comunidade e consulta o nosso repositório GitHub para aprenderes mais sobre IA. Também podes explorar mais aplicações da visão computacional no fabrico ou da IA em carros autónomos nas nossas páginas de soluções.

Logótipo do FacebookLogótipo do TwitterLogótipo do LinkedInSímbolo de ligação de cópia

Ler mais nesta categoria

Vamos construir juntos o futuro
da IA!

Começa a tua viagem com o futuro da aprendizagem automática