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

Como comparar modelosYOLO Ultralytics como o YOLO11

Aprende a avaliar Ultralytics YOLO11, a comparar o desempenho entre dispositivos e a explorar diferentes formatos de exportação para otimizar a velocidade, a precisão e a eficiência.

Com o número crescente de modelos de IA disponíveis atualmente, selecionar o mais adequado para a tua aplicação de IA específica é essencial para obteres resultados precisos e fiáveis. Cada modelo varia em termos de velocidade, precisão e desempenho geral. Então, como podemos determinar qual o modelo mais adequado para uma determinada tarefa? Isto é especialmente importante para sistemas em tempo real, como veículos autónomos, soluções de segurança e robótica, onde a tomada de decisões rápida e fiável é fundamental.

A avaliação comparativa ajuda a responder a esta questão, avaliando um modelo em diferentes condições. Fornece informações sobre o desempenho do modelo em várias definições e configurações de hardware, permitindo uma tomada de decisões mais informada.

Por exemplo, Ultralytics YOLO11 é um modelo de visão por computador que suporta várias tarefas de análise de dados visuais, como a deteção de objectos e a segmentação de instâncias. Para compreender totalmente as suas capacidades, pode comparar o seu desempenho em diferentes configurações para ver como irá lidar com cenários do mundo real.

Neste artigo, vamos explorar a forma de comparar modelosUltralytics YOLO como o YOLO11, comparar o seu desempenho em vários hardwares e ver como diferentes formatos de exportação afectam a sua velocidade e eficiência. Toca a começar!

O que é a avaliação comparativa de modelos?

Quando se trata de utilizar um modelo de IA de visão numa aplicação do mundo real, como podes saber se será suficientemente rápido, preciso e fiável? A avaliação comparativa do modelo pode fornecer informações para responder a esta questão. O benchmarking de modelos é o processo de testar e comparar diferentes modelos de IA para ver qual deles tem o melhor desempenho. 

Envolve a definição de uma linha de base para comparação, a escolha das medidas de desempenho corretas (como precisão ou velocidade) e o teste de todos os modelos sob as mesmas condições. Os resultados ajudam a identificar os pontos fortes e fracos de cada modelo, tornando mais fácil decidir qual é o mais adequado para a tua solução de IA específica. Em particular, um conjunto de dados de referência é frequentemente utilizado para fornecer comparações justas e avaliar o desempenho de um modelo em diferentes cenários do mundo real.

Figura 1. Porquê avaliar modelos de visão por computador? Imagem do autor.

Um exemplo claro da importância da avaliação comparativa é o das aplicações em tempo real, como a vigilância ou a robótica, em que mesmo pequenos atrasos podem afetar a tomada de decisões. O benchmarking ajuda a avaliar se um modelo pode processar imagens rapidamente e, ao mesmo tempo, fornecer previsões fiáveis. 

Também desempenha um papel fundamental na identificação de estrangulamentos de desempenho. Se um modelo for executado lentamente ou utilizar recursos excessivos, o benchmarking pode revelar se o problema tem origem em limitações de hardware, configurações de modelo ou formatos de exportação. Estas informações são cruciais para selecionar a configuração mais eficaz.

Aferição de modelos comparada com avaliação e teste de modelos

A aferição, a avaliação e o teste de modelos são termos populares da IA que são utilizados em conjunto. Embora semelhantes, não são a mesma coisa e têm funções diferentes. O teste de modelos verifica o desempenho de um único modelo, executando-o num conjunto de dados de teste e medindo factores como a precisão e a velocidade. Entretanto, a avaliação de modelos vai mais longe, analisando os resultados para compreender os pontos fortes e fracos do modelo e o seu funcionamento em situações reais. Ambos se concentram em apenas um modelo de cada vez.

No entanto, a avaliação comparativa de modelos compara vários modelos lado a lado, utilizando os mesmos testes e conjuntos de dados. Ajuda a descobrir qual o modelo que funciona melhor para uma tarefa específica, destacando as diferenças de precisão, velocidade e eficiência entre eles. Enquanto os testes e a avaliação se concentram num único modelo, a avaliação comparativa ajuda a escolher o modelo certo (ou o melhor), comparando as diferentes opções de forma justa.

Figura 2. Como o benchmarking de modelos é diferente da avaliação e do teste. Imagem do autor.

Uma visão geral do Ultralytics YOLO11

Ultralytics YOLO11 é um modelo fiável de IA de visão concebido para executar várias tarefas de visão por computador com precisão. Melhora as versões anteriores do modelo YOLO e está repleto de funcionalidades que podem ajudar a resolver problemas do mundo real. Por exemplo, pode ser utilizado para detetar objectos, classificar imagens, segmentar regiões, seguir movimentos e muito mais. Também pode ser utilizado em aplicações em muitos sectores, desde a segurança à automação e análise.

Fig. 3. Um exemplo de utilização do YOLO11 para segmentar pessoas numa imagem.

Uma das principais vantagens do Ultralytics YOLO11 é a sua facilidade de utilização. Com apenas algumas linhas de código, qualquer pessoa pode integrá-lo nos seus projectos de IA sem ter de lidar com configurações complicadas ou conhecimentos técnicos avançados. 

Também funciona sem problemas em diferentes tipos de hardware, funcionando de forma eficiente em CPUs (Unidades de Processamento Central), GPUs (Unidades de Processamento Gráfico) e outros aceleradores de IA especializados. Quer seja implementado em dispositivos periféricos ou em servidores na nuvem, proporciona um forte desempenho. 

YOLO11 está disponível em vários tamanhos de modelos, cada um optimizado para diferentes tarefas. A avaliação comparativa ajuda a determinar qual a versão que melhor se adapta às tuas necessidades específicas. Por exemplo, uma das principais informações que a avaliação comparativa pode revelar é que os modelos mais pequenos, como o nano ou o small, tendem a funcionar mais rapidamente, mas podem perder alguma precisão.

Como comparar modelos YOLO como o YOLO11

Agora que já percebeste o que é o benchmarking e a sua importância. Vamos ver como podes comparar modelos YOLO como o YOLO11 e avaliar a sua eficiência para obteres informações valiosas.

Para começar, podes instalar o pacoteUltralytics Python executando o seguinte comando no teu terminal ou na prompt de comando: "pip install ultralytics". Se tiveres algum problema durante a instalação, consulta o nosso Guia de Problemas Comuns para obteres dicas de resolução de problemas.

Assim que o pacote estiver instalado, podes facilmente comparar YOLO11 com apenas algumas linhas de código Python :

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)

Quando executas o código mostrado acima, calcula a rapidez com que o modelo processa as imagens, quantos fotogramas consegue processar num segundo e a precisão com que detecta objectos. 

A menção de "coco8.yaml" no código refere-se a um ficheiro de configuração do conjunto de dados baseado no conjunto de dados COCO8 (Common Objects in Context) - uma pequena versão de amostra do conjunto de dados COCO completo, frequentemente utilizado para testes e experimentação.

Se estiveres a testar YOLO11 para uma aplicação específica, como a monitorização de tráfego ou imagens médicas, a utilização de um conjunto de dados relevante (por exemplo, um conjunto de dados de tráfego ou um conjunto de dados médicos) fornecerá informações mais precisas. O benchmarking com COCO fornece uma ideia geral do desempenho, mas para obter melhores resultados, podes escolher um conjunto de dados que reflicta o teu caso de utilização real.

Compreender os resultados da avaliação comparativa YOLO11

Uma vez que YOLO11 tenha sido avaliado, o próximo passo é interpretar os resultados. Depois de executares o teste de referência, verás vários números nos resultados. Estas métricas ajudam-te a avaliar o desempenho YOLO11 em termos de precisão e velocidade. 

Aqui estão algumas métricas de benchmarking notáveis YOLO11 a que deves estar atento:

  • mAP50-95: Mede a precisão da deteção de objectos. Um valor mais elevado significa que o modelo é melhor no reconhecimento de objectos.
  • accuracy_top5: É normalmente utilizado para tarefas de classificação. Mostra a frequência com que o rótulo correto aparece nas cinco principais previsões.
  • Tempo de inferência: O tempo necessário para processar uma única imagem, medido em milissegundos. Valores mais baixos significam um processamento mais rápido.
Figura 4. Um gráfico que mostra o desempenho de referência do YOLO11.

Outros factores a considerar na avaliação comparativa da YOLO11 

Se olhares para os resultados dos testes de referência por si só, só contas uma parte da história. Para compreender melhor o desempenho, é útil comparar diferentes definições e opções de hardware. Aqui estão alguns aspectos importantes a ter em conta:

  • GPU vs. CPU: As GPUs podem processar imagens muito mais rapidamente do que as CPUs. O benchmarking ajuda-te a ver se uma CPU é suficientemente rápida para as tuas necessidades ou se vais beneficiar da utilização de uma GPU.
  • Definições de precisão (FP32, FP16, INT8): Controla a forma como o modelo lida com os números. Uma precisão mais baixa (como FP16 ou INT8) faz com que o modelo funcione mais rapidamente e utilize menos memória, mas pode reduzir ligeiramente a precisão.
  • Formatos de exportação: Converter o modelo para um formato como o TensorRT pode fazer com que ele seja executado muito mais rapidamente em determinados hardwares. Isto é útil se estiveres a otimizar a velocidade em dispositivos específicos.

Como comparar YOLO11 com hardware diferente

O pacote Ultralytics Python permite-te converter os modelos YOLO11 em diferentes formatos que funcionam de forma mais eficiente em hardware específico, melhorando a velocidade e a utilização da memória. Cada formato de exportação é optimizado para diferentes dispositivos. 

Por um lado, o formatoONNX pode acelerar o desempenho em vários ambientes. Por outro lado, OpenVINO melhora a eficiência no hardware Intel , e formatos como CoreML ou TF SavedModel são ideais para dispositivos Apple e aplicações móveis. 

Vamos ver como podes comparar YOLO11 num formato específico. O código abaixo compara YOLO11 no formato ONNX , que é amplamente usado para executar modelos de IA em CPUs e GPUs.

from ultralytics.utils.benchmarks import benchmark  

# Benchmark a specific export format (e.g., ONNX)  
benchmark(model="yolo11n.pt", data="coco8.yaml", imgsz=640, format="onnx")  

Para além dos resultados da avaliação comparativa, a escolha do formato correto depende das especificações do teu sistema e das necessidades de implementação. Por exemplo, os carros autónomos precisam de uma deteção rápida de objectos. Se planeias utilizar GPUs NVIDIA para acelerar o desempenho, o formato TensorRT é a escolha ideal para executar YOLO11 numaGPU NVIDIA .

Fig. 5. Utilização do YOLO11 para a deteção de objectos em automóveis autónomos.

Principais conclusões

O pacote Ultralytics Python facilita a avaliação comparativa YOLO11 , fornecendo comandos simples que podem tratar dos testes de desempenho por ti. Com apenas alguns passos, podes ver como diferentes configurações afectam a velocidade e a precisão dos modelos, ajudando-te a fazer escolhas informadas sem necessitares de conhecimentos técnicos profundos.

O hardware e as definições corretas também podem fazer uma enorme diferença. Ajustar parâmetros como o tamanho do modelo e o conjunto de dados permite-te afinar YOLO11 para obteres o melhor desempenho, quer o estejas a executar numa GPU topo de gama ou localmente num dispositivo de ponta.

Liga-te à nossa comunidade e explora projectos de IA de ponta no nosso repositório GitHub. Aprende sobre o impacto da IA na agricultura e o papel da visão computacional no fabrico através das nossas páginas de soluções. Explora os nossos planos de licenciamento e começa já a tua viagem pela IA!

Logótipo do LinkedInLogótipo do TwitterLogótipo do FacebookSí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