Como fazer o benchmarking de modelos Ultralytics YOLO como o YOLO11
Aprenda a fazer benchmarking do Ultralytics YOLO11, comparar o desempenho entre dispositivos e 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 obter resultados precisos e confiáveis. Cada modelo varia em velocidade, precisão e desempenho geral. Então, como podemos determinar qual modelo é o mais adequado para uma determinada tarefa? Isso é especialmente importante para sistemas de tempo real, como veículos autônomos, soluções de segurança e robótica, onde uma tomada de decisão rápida e confiável é crítica.
A avaliação (benchmarking) ajuda a responder a essa pergunta ao testar um modelo sob diferentes condições. Ela fornece insights sobre o desempenho do modelo em várias configurações e hardwares, permitindo uma tomada de decisão mais informada.
Por exemplo, o Ultralytics YOLO11 é um modelo de computer vision que suporta várias tarefas de análise de dados visuais, como deteção de objetos e segmentação de instâncias. Para compreender totalmente as suas capacidades, podes avaliar o seu desempenho em diferentes configurações para ver como lida com cenários do mundo real.
Neste artigo, vamos explorar como avaliar os Ultralytics YOLO models como o YOLO11, comparar o seu desempenho em vários hardwares e ver como diferentes formatos de exportação impactam a sua velocidade e eficiência. Vamos começar!
O que é avaliação de modelos?#
Quando se trata de usar um modelo de visão computacional em uma aplicação real, como saber se ele será rápido, preciso e confiável o suficiente? Avaliar o modelo pode fornecer insights para responder a isso. A avaliação de modelos é o processo de testar e comparar diferentes modelos de IA para ver qual deles apresenta 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 a tua AI solution específica. Em particular, um benchmark dataset é frequentemente utilizado para fornecer comparações justas e avaliar o desempenho de um modelo em diferentes cenários do mundo real.

Fig 1. Por que avaliar modelos de visão computacional? Imagem do autor.
Um exemplo claro de por que a avaliação é vital está em aplicações de tempo real, como vigilância ou robótica, onde até pequenos atrasos podem impactar a tomada de decisão. A avaliação ajuda a determinar se um modelo consegue processar imagens rapidamente enquanto ainda entrega previsões confiáveis.
Também desempenha um papel fundamental na identificação de gargalos de desempenho. Se um modelo executa lentamente ou usa recursos excessivos, a avaliação pode revelar se o problema decorre de limitações de hardware, configurações do modelo ou formatos de exportação. Esses insights são cruciais para selecionar a configuração mais eficaz.
Avaliação de modelos comparada à avaliação de desempenho e testes#
A avaliação, o teste e a testagem de modelos de IA são termos populares que são usados em conjunto. Embora semelhantes, não são a mesma coisa e têm funções diferentes. O Model testing verifica o desempenho de um único modelo executando-o num conjunto de dados de teste e medindo fatores como precisão e velocidade. Enquanto isso, a avaliação de modelos vai um passo mais além, analisando os resultados para compreender os pontos fortes e fracos do modelo e quão bem ele funciona em situações do mundo real. Ambos concentram-se apenas num modelo de cada vez.
A avaliação de modelos (benchmarking), no entanto, compara vários modelos lado a lado usando os mesmos testes e conjuntos de dados. Ela 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 os testes e a avaliação de desempenho focam em um único modelo, a avaliação comparativa ajuda a escolher o modelo certo (ou o melhor) comparando diferentes opções de forma justa.

Fig 2. Como a avaliação de modelos é diferente da avaliação de desempenho e dos testes. Imagem do autor.
Uma visão geral do Ultralytics YOLO11#
O Ultralytics YOLO11 é um modelo de IA de visão fiável que foi concebido para executar várias computer vision tasks com precisão. Melhora as versões anteriores dos modelos YOLO e está repleto de funcionalidades que podem ajudar a resolver problemas do mundo real. Por exemplo, pode ser utilizado para detetar objetos, classificar imagens, segmentar regiões, rastrear movimentos e muito mais. Também pode ser utilizado em aplicações em muitas indústrias, desde a segurança até à automação e análise.

Fig 3. Um exemplo de uso do Ultralytics YOLO11 para segmentar pessoas em uma imagem.
Um dos principais benefícios relacionados ao Ultralytics YOLO11 é a sua facilidade de uso. Com apenas algumas linhas de código, qualquer pessoa pode integrá-lo aos seus projetos de IA sem lidar com configurações complicadas ou experiência técnica avançada.
Ele também funciona perfeitamente em diferentes hardwares, executando com eficiência em CPUs (Central Processing Units), GPUs (Graphics Processing Units) e outros aceleradores de IA especializados. Seja implantado em dispositivos de borda (edge devices) ou servidores em nuvem, ele oferece um desempenho robusto.
O Ultralytics YOLO11 está disponível em vários tamanhos de modelo, cada um otimizado para tarefas diferentes. O benchmarking ajuda a determinar qual versão se adapta melhor às tuas necessidades específicas. Por exemplo, um insight fundamental que o benchmarking pode revelar é que modelos menores, como nano ou small, tendem a executar mais rápido, mas podem sacrificar alguma precisão.
Como fazer o benchmark de modelos YOLO como o Ultralytics YOLO11#
Agora que entendemos o que é o benchmarking e a sua importância, vamos ver como podes fazer o benchmark de modelos YOLO como o Ultralytics YOLO11 e avaliar a sua eficiência para recolher insights valiosos.
Para começar, podes instalar o Ultralytics Python package executando o seguinte comando no teu terminal ou linha de comandos: “pip install ultralytics”. Se tiveres algum problema durante a instalação, consulta o nosso Common Issues Guide para obteres dicas de resolução de problemas.
Assim que o pacote estiver instalado, podes facilmente benchmark Ultralytics 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, ele calcula a rapidez 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 refere-se a um ficheiro de configuração de conjuntos de dados baseado no conjunto de dados COCO8 (Common Objects in Context) - uma versão de amostra pequena do conjunto de dados COCO completo, frequentemente utilizada para testes e experimentação.
Se estás a testar o Ultralytics YOLO11 para uma aplicação específica, como monitorização de tráfego ou imagem médica, usar um conjunto de dados relevante (por exemplo, um conjunto de dados de tráfego ou médico) fornecerá insights mais precisos. O benchmarking com COCO oferece uma ideia geral de desempenho, mas para obteres os melhores resultados, podes escolher um conjunto de dados que reflita o teu caso de uso real.
Compreendendo os resultados de benchmark do Ultralytics YOLO11#
Assim que o Ultralytics YOLO11 for submetido a benchmark, o próximo passo é interpretar os resultados. Após executar o benchmark, verás 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 de benchmarking notáveis do Ultralytics YOLO11 a ter em conta:
- mAP50-95: 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. Mostra com que frequência o rótulo correto aparece nas cinco principais previsões.
- Inference time: O tempo necessário para processar uma única imagem, medido em milissegundos. Valores mais baixos significam um processamento mais rápido.

Fig 4. Um gráfico que mostra o desempenho de referência do YOLO11.
Outros fatores a considerar ao fazer o benchmark do Ultralytics YOLO11#
Olhar apenas para os resultados da avaliação 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 observar:
- GPU vs. CPU: GPUs podem processar imagens muito mais rápido que CPUs. A avaliação ajuda a ver se uma CPU é rápida o suficiente para as tuas necessidades ou se te beneficiarás do uso de uma GPU.
- Configurações de precisão (FP32, FP16, INT8): Estas controlam como o modelo lida com números. Menor precisão (como FP16 ou INT8) faz o modelo rodar mais rápido e usar menos memória, mas pode reduzir levemente a precisão.
- Export formats: Converter o modelo para um formato como TensorRT pode fazê-lo funcionar muito mais rápido em determinados hardwares. Isto é útil se estiveres a otimizar para velocidade em dispositivos específicos.
Como fazer o benchmark do Ultralytics YOLO11 em diferentes hardwares#
O pacote Ultralytics Python permite converter modelos YOLO11 em diferentes formatos que rodam com mais eficiência em hardwares específicos, melhorando tanto a velocidade quanto o uso de memória. Cada formato de exportação é otimizado para dispositivos diferentes.
Por um lado, o ONNX format pode acelerar o desempenho em vários ambientes. Por outro lado, o OpenVINO melhora a eficiência em 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 podes fazer o benchmark do Ultralytics YOLO11 num formato específico. O código abaixo faz o benchmark do YOLO11 no formato ONNX, que é amplamente utilizado para executar modelos de IA tanto em CPUs quanto em 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 de benchmarking, a escolha do formato correto depende das especificações do teu sistema e das necessidades de implementação. Por exemplo, self-driving cars precisam de deteção rápida de objetos. Se planeias usar GPUs NVIDIA para acelerar o desempenho, o formato TensorRT é a escolha ideal para executar o Ultralytics YOLO11 numa GPU NVIDIA.

Fig 5. Utilização do YOLO11 para deteção de objetos em carros autónomos.
Principais pontos#
O pacote Ultralytics Python torna a avaliação do YOLO11 fácil ao fornecer comandos simples que podem realizar testes de desempenho para ti. Com apenas alguns passos, podes ver como diferentes configurações afetam a velocidade e a precisão dos modelos, ajudando-te a fazer escolhas informadas sem precisar de profunda experiência técnica.
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 o Ultralytics YOLO11 para obteres o melhor desempenho, quer o estejas a executar numa GPU de alto desempenho quer localmente num dispositivo de edge.
Conecta-te com our community e explora projetos de IA de ponta no our GitHub repository. Sabe mais sobre o impacto da AI in agriculture e o papel da computer vision in manufacturing através das nossas páginas de soluções. Explora our licensing plans e começa a tua jornada de IA agora!






