YOLO11 vs YOLOv5#
Selecionar a arquitetura de rede neuronal certa é uma decisão crucial para qualquer iniciativa de visão computacional. À medida que o panorama da inteligência artificial evolui, também evoluem as ferramentas disponíveis para programadores e investigadores. Este guia abrangente apresenta uma comparação técnica aprofundada entre dois modelos emblemáticos do ecossistema Ultralytics: o amplamente reconhecido YOLOv5 e o avançado YOLO11.
Quer estejas a implementar modelos leves para aplicações de IA na periferia, quer estejas a processar fluxos de vídeo de alta resolução em GPUs na cloud, compreender as particularidades arquiteturais, as métricas de desempenho e os casos de utilização ideais destes modelos ajudará a garantir uma escolha orientada por dados para as tuas restrições específicas de implementação.
Linhas de evolução e detalhes técnicos dos modelos#
Ambos os modelos refletem o compromisso da Ultralytics com a colaboração de código aberto, um desempenho robusto e uma facilidade de utilização incomparável, o que os torna altamente valorizados pela comunidade global de aprendizagem automática.
Detalhes do YOLO11#
- Autores: Glenn Jocher e Jing Qiu
- Organização: Ultralytics
- Data: 2024-09-27
- GitHub: ultralytics/ultralytics
- Documentação: Documentação do YOLO11
Detalhes do YOLOv5#
- Autores: Glenn Jocher
- Organização: Ultralytics
- Data: 2020-06-26
- GitHub: ultralytics/yolov5
- Documentação: Documentação do YOLOv5
Diferenças arquiteturais#
A evolução do YOLOv5 para o YOLO11 introduz várias mudanças arquiteturais profundas, concebidas para otimizar a precisão e a eficiência dos parâmetros.
O YOLOv5 foi pioneiro no ecossistema PyTorch, introduzindo um backbone CSPNet altamente otimizado e um neck PANet. Baseava-se em deteção com âncoras, que exigia caixas de âncora predefinidas para prever os limites dos objetos. Embora fosse altamente eficaz, ajustar estas âncoras para conjuntos de dados de visão computacional personalizados podia ser trabalhoso.
Em contrapartida, o YOLO11 transita para um paradigma de deteção sem âncoras mais moderno. Isto elimina a necessidade de ajustar manualmente as caixas de âncora, simplificando o processo de treino e melhorando a generalização em diversos conjuntos de dados, como o conjunto de dados COCO. Além disso, o YOLO11 inclui uma cabeça desacoplada, o que significa que as tarefas de classificação e regressão de caixas delimitadoras são processadas em ramos separados. Esta separação melhora significativamente a velocidade de convergência e a precisão média (mAP), particularmente em cenários complexos de deteção de objetos.
Métricas de desempenho e benchmarks#
A tabela abaixo compara as principais métricas entre diferentes tamanhos de modelos. Os modelos da Ultralytics são conhecidos pelos seus requisitos de memória, consumindo normalmente menos memória CUDA durante o treino do que alternativas pesadas baseadas em Transformer, o que reduz drasticamente a barreira de hardware à entrada.
| Modelo | tamanho (píxeis) | mAPval 50-95 | Velocidade CPU ONNX (ms) | Velocidade T4 TensorRT10 (ms) | parâmetros (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
Como se pode observar, o YOLO11 alcança um equilíbrio de desempenho altamente favorável, fornecendo consistentemente pontuações mAP superiores com contagens de parâmetros comparáveis às dos seus equivalentes YOLOv5.
Metodologias de treino e facilidade de utilização#
Um princípio fundamental da filosofia da Ultralytics é a excecional facilidade de utilização, apoiada por um ecossistema bem mantido e por um amplo suporte da comunidade.
Historicamente, o YOLOv5 baseava-se em scripts robustos de interface de linha de comandos (CLI) (train.py, detect.py) para execução. Embora fossem poderosos, integrar diretamente estes scripts em aplicações Python personalizadas exigia frequentemente soluções alternativas.
O YOLO11 revolucionou este processo ao introduzir o pacote Python simplificado ultralytics. Esta API unificada trata de tudo, desde o treino até à exportação de modelos para formatos como ONNX, OpenVINO e TensorRT de forma nativa.
Para uma experiência totalmente sem código, os programadores podem utilizar a plataforma Ultralytics para anotar dados, treinar modelos na cloud e implementá-los de forma simples em dispositivos de periferia.
Comparação de código#
Treinar atualmente um modelo Ultralytics é incrivelmente eficiente. Eis como podes treinar o YOLO11 utilizando a sua API Python nativa:
from ultralytics import YOLO
# Load a pretrained YOLO11 small model
model = YOLO("yolo11s.pt")
# Train the model on custom data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Export the model to ONNX for deployment
model.export(format="onnx")Para sistemas legados que utilizam YOLOv5, o treino através da CLI é efetuado da seguinte forma:
# Clone the repository and run the training script
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt
python train.py --img 640 --batch 16 --epochs 50 --data coco128.yaml --weights yolov5s.ptCasos de utilização ideais e aplicações no mundo real#
Ambos os modelos têm pontos fortes distintos, adaptados a diferentes ambientes operacionais.
Quando utilizar o YOLOv5#
Apesar de pertencer a uma geração mais antiga, o YOLOv5 continua a ser uma solução extremamente poderosa. É altamente recomendado para:
- Integração com sistemas legados: Ambientes profundamente integrados com estruturas de tensores ou pipelines de implementação específicos do YOLOv5 que não podem ser facilmente refatorados.
- Referências académicas: Investigadores que necessitam de referências estabelecidas e consolidadas para estudos académicos reproduzíveis em análise de imagens médicas.
Quando utilizar o YOLO11#
O YOLO11 representa a escolha ideal para pipelines de produção modernos devido à sua versatilidade extraordinária:
- Ambientes multitarefa: Ao contrário do YOLOv5, que é principalmente um detetor (com adições posteriores de segmentação), o YOLO11 suporta nativamente segmentação de instâncias, classificação de imagens, estimativa de pose e deteção de caixas delimitadoras orientadas (OBB) desde o início.
- Análise de vídeo de alta densidade: Ideal para sistemas de trânsito inteligentes ou gestão de inventário no retalho, onde é fundamental extrair a máxima precisão de cenas complexas.
Olhando para o futuro: a arquitetura YOLO26#
Embora o YOLO11 seja um padrão excecional, a fronteira da visão computacional continua a avançar rapidamente. Os programadores que procuram o máximo absoluto de eficiência devem também considerar o mais recente Ultralytics YOLO26 (lançado em janeiro de 2026).
O YOLO26 representa um enorme salto em frente, concebido explicitamente tanto para a otimização na periferia como para a escala empresarial. As principais inovações incluem:
- Conceção ponta a ponta sem NMS: O YOLO26 é nativamente ponta a ponta, eliminando o pós-processamento de supressão não máxima (NMS) para uma implementação mais rápida e simples.
- Remoção de DFL: A perda focal de distribuição foi removida para simplificar a exportação de modelos e melhorar a compatibilidade com dispositivos de baixo consumo.
- Otimizador MuSGD: Uma combinação híbrida inovadora de SGD e Muon, que proporciona a estabilidade do treino de LLM à visão computacional para uma convergência mais rápida.
- Inferência em CPU até 43% mais rápida: Fortemente otimizado para implementações de IoT e dispositivos sem GPUs dedicadas.
- ProgLoss + STAL: Funções de perda muito melhoradas que proporcionam melhorias notáveis no reconhecimento de objetos pequenos, algo fundamental para imagens captadas por drones aéreos.
Resumo#
A escolha entre YOLO11 e YOLOv5 depende, em última análise, da fase do ciclo de vida do teu projeto. O legado do YOLOv5 é inegável, oferecendo estabilidade extrema e um enorme apoio da comunidade. No entanto, para qualquer projeto novo, o YOLO11 é altamente recomendado em detrimento das gerações anteriores. Combina precisão de vanguarda, uma API Python excecionalmente elegante e menores custos de memória durante o treino, consolidando a posição da Ultralytics na linha da frente da inovação em IA. Para quem pretende ultrapassar ainda mais os limites, explorar o YOLO26 de última geração na plataforma Ultralytics proporcionará resultados incomparáveis.