Sintonize na YOLO Vision 2025!
25 de setembro de 2025
10:00 — 18:00 BST
Evento híbrido
Yolo Vision 2024

Como fazer benchmark de modelos Ultralytics YOLO como o YOLO11

Abirami Vina

Leitura de 5 minutos

28 de abril de 2025

Aprenda como realizar o benchmark do YOLO11 da Ultralytics, comparar o desempenho entre dispositivos e explorar diferentes formatos de exportação para otimizar a velocidade, precisão e eficiência.

Com o crescente número de modelos de IA disponíveis hoje, selecionar o mais adequado para sua aplicação específica de IA é essencial para alcançar resultados precisos e confiáveis. Cada modelo varia em velocidade, precisão e desempenho geral. Então, como podemos determinar qual modelo é mais adequado para uma determinada tarefa? Isso é 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ão rápida e confiável é crítica.

O benchmarking ajuda a responder a essa pergunta, avaliando um modelo sob diferentes condições. Ele fornece insights sobre o desempenho do modelo em várias configurações e configurações de hardware, permitindo uma tomada de decisão mais informada.

Por exemplo, o YOLO11 da Ultralytics é um modelo de visão computacional que suporta várias tarefas de análise de dados visuais, como detecção de objetos e segmentação de instâncias. Para entender completamente suas capacidades, você pode comparar seu desempenho em diferentes configurações para ver como ele lidará com cenários do mundo real.

Neste artigo, exploraremos como realizar o benchmark de modelos YOLO da Ultralytics como o YOLO11, comparar seu desempenho em vários hardwares e ver como diferentes formatos de exportação impactam sua velocidade e eficiência. Vamos começar!

O que é benchmarking de modelos?

Quando se trata de usar um modelo de Visão de IA em uma aplicação do mundo real, como você pode saber se ele será rápido, preciso e confiável o suficiente? O benchmarking do modelo pode fornecer insights para responder a isso. O benchmarking de modelos é o processo de testar e comparar diferentes modelos de IA para ver qual tem o melhor desempenho. 

Envolve definir uma linha de base para comparação, escolher as medidas de desempenho certas (como precisão ou velocidade) e testar todos os modelos nas 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 sua solução de IA específica. Em particular, um conjunto de dados de benchmark é frequentemente usado para fornecer comparações justas e avaliar o desempenho de um modelo em diferentes cenários do mundo real.

Fig 1. Por que realizar o benchmark de modelos de visão computacional? Imagem do autor.

Um exemplo claro de por que o benchmarking é vital é em aplicações em tempo real, como vigilância ou robótica, onde até mesmo pequenos atrasos podem impactar a tomada de decisões. O benchmarking ajuda a avaliar se um modelo pode processar imagens rapidamente, ao mesmo tempo em que fornece previsões confiáveis. 

Ele também desempenha um papel fundamental na identificação de gargalos de desempenho. Se um modelo for executado lentamente ou usar recursos excessivos, o benchmarking pode revelar se o problema decorre de limitações de hardware, configurações do modelo ou formatos de exportação. Essas informações são cruciais para selecionar a configuração mais eficaz.

Benchmarking de modelos comparado à avaliação e teste de modelos

Benchmarking, avaliação e teste de modelos são termos populares de IA que são usados em conjunto. Embora semelhantes, eles não são iguais e têm funções diferentes. O teste de modelo verifica o desempenho de um único modelo, executando-o em um conjunto de dados de teste e medindo fatores como precisão e velocidade. Enquanto isso, a avaliação do modelo vai um passo além, analisando os resultados para entender os pontos fortes e fracos do modelo e como ele funciona em situações do mundo real. Ambos se concentram em apenas um modelo por vez.

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

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

Uma visão geral do Ultralytics YOLO11

O Ultralytics YOLO11 é um modelo de Visão de IA confiável, projetado para executar várias tarefas de visão computacional com precisão. Ele aprimora as versões anteriores do modelo YOLO e está repleto de recursos que podem ajudar a resolver problemas do mundo real. Por exemplo, ele pode ser usado para detectar objetos, classificar imagens, segmentar regiões, rastrear movimentos e muito mais. Ele também pode ser usado em aplicações em diversos setores, desde segurança até automação e análise.

Fig 3. Um exemplo de uso do YOLO11 para segmentar pessoas em uma imagem.

Um dos principais benefícios relacionados ao Ultralytics YOLO11 é a facilidade de uso. Com apenas algumas linhas de código, qualquer pessoa pode integrá-lo em seus projetos de IA sem lidar com configurações complicadas ou conhecimento técnico avançado. 

Ele também funciona perfeitamente em diferentes hardwares, sendo executado de forma eficiente em CPUs (Unidades Centrais de Processamento), GPUs (Unidades de Processamento Gráfico) e outros aceleradores de IA especializados. Seja implantado em dispositivos de borda ou servidores em nuvem, ele oferece um desempenho forte. 

O YOLO11 está disponível em vários tamanhos de modelo, cada um otimizado para diferentes tarefas. O benchmarking ajuda a determinar qual versão melhor se adapta às suas necessidades específicas. Por exemplo, uma informação importante que o benchmarking pode revelar é que modelos menores, como nano ou small, tendem a ser executados mais rapidamente, mas podem comprometer um pouco a precisão.

Como fazer o benchmark de modelos YOLO como o YOLO11

Agora que entendemos o que é benchmarking e sua importância, vamos explicar como você pode fazer o benchmark de modelos YOLO como o YOLO11 e avaliar sua eficiência para coletar informações valiosas.

Para começar, você pode instalar o pacote Ultralytics Python executando o seguinte comando em seu terminal ou prompt de comando: “pip install ultralytics”. Se você tiver algum problema durante a instalação, consulte nosso Guia de Problemas Comuns para obter dicas de solução de problemas.

Depois que o pacote for instalado, você pode facilmente fazer o benchmark do 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 você executa o código mostrado acima, ele calcula a velocidade com que o modelo processa imagens, quantos frames ele pode lidar em um segundo e com que precisão ele detecta objetos. 

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

Se você estiver testando o YOLO11 para uma aplicação específica, como monitoramento de tráfego ou imagem médica, usar 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, você pode escolher um conjunto de dados que reflita seu caso de uso real.

Entendendo as saídas do benchmarking do YOLO11

Depois que o YOLO11 é avaliado, a próxima etapa é interpretar os resultados. Após executar o benchmark, você verá vários números nos resultados. Essas métricas ajudam a avaliar o desempenho do YOLO11 em termos de precisão e velocidade. 

Aqui estão algumas métricas notáveis de benchmarking do YOLO11 para ficar de olho:

  • mAP50-95: Ele mede a precisão da detecção de objetos. Um valor mais alto significa que o modelo é melhor em reconhecer objetos.
  • accuracy_top5: É comumente usado para tarefas de classificação. Ele mostra com que frequência 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 processamento mais rápido.
Fig. 4. Um gráfico mostrando o desempenho de benchmark do YOLO11.

Outros fatores a considerar ao realizar o benchmark do YOLO11 

Analisar apenas os resultados do benchmark conta apenas parte da história. Para obter uma melhor compreensão do desempenho, é útil comparar diferentes configurações e opções de hardware. Aqui estão alguns pontos importantes a serem observados:

  • GPU vs. CPU: As GPUs podem processar imagens muito mais rápido do que as CPUs. O benchmarking ajuda você a verificar se uma CPU é rápida o suficiente para suas necessidades ou se você se beneficiará com o uso de uma GPU.
  • Configurações de precisão (FP32, FP16, INT8): Elas controlam como o modelo lida com os números. Uma precisão menor (como FP16 ou INT8) faz com que o modelo seja executado mais rápido e use menos memória, mas pode reduzir ligeiramente a precisão.
  • Formatos de exportação: Converter o modelo para um formato como o TensorRT pode fazê-lo rodar muito mais rápido em determinado hardware. Isso é útil se você estiver otimizando a velocidade em dispositivos específicos.

Como realizar o benchmark do YOLO11 em diferentes hardwares

O pacote Ultralytics Python permite que você converta modelos YOLO11 em diferentes formatos que são executados de forma mais eficiente em hardware específico, melhorando a velocidade e o uso de memória. Cada formato de exportação é otimizado para diferentes dispositivos. 

Por um lado, o formato ONNX pode acelerar o desempenho em vários ambientes. Por outro lado, o 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 dar uma olhada em como você pode realizar o benchmark do YOLO11 em um formato específico. O código abaixo realiza o benchmark do YOLO11 no formato ONNX, que é amplamente utilizado 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")

Além dos resultados do benchmark, a escolha do formato certo depende das especificações do seu sistema e das necessidades de implementação. Por exemplo, carros autônomos precisam de detecção de objetos rápida. Se você planeja usar GPUs NVIDIA para acelerar o desempenho, o formato TensorRT é a escolha ideal para executar o YOLO11 em uma GPU NVIDIA.

Fig. 5. Usando o YOLO11 para detecção de objetos em carros autônomos.

Principais conclusões

O pacote Ultralytics Python facilita o benchmarking do YOLO11, fornecendo comandos simples que podem lidar com testes de desempenho para você. Com apenas alguns passos, você pode ver como diferentes configurações afetam a velocidade e a precisão dos modelos, ajudando você a fazer escolhas informadas sem precisar de profundo conhecimento técnico.

O hardware e as configurações corretas também podem fazer uma grande diferença. Ajustar parâmetros como o tamanho do modelo e o conjunto de dados permite que você ajuste o YOLO11 para obter o melhor desempenho, quer você o esteja executando em uma GPU de ponta ou localmente em um dispositivo de borda.

Conecte-se com nossa comunidade e explore projetos de IA de ponta em nosso repositório GitHub. Saiba mais sobre o impacto da IA na agricultura e o papel da visão computacional na manufatura através de nossas páginas de soluções. Explore nossos planos de licenciamento e comece sua jornada de IA agora!

Vamos construir o futuro
da IA juntos!

Comece sua jornada com o futuro do aprendizado de máquina

Comece gratuitamente
Link copiado para a área de transferência