Ir para o conteúdo

YOLOX vs. YOLOv7: Uma Comparação Técnica

Escolher o modelo de detecção de objetos certo é uma decisão crítica para qualquer projeto de visão computacional, impactando diretamente o desempenho, a velocidade e a viabilidade de implementação. Esta página oferece uma comparação técnica detalhada entre dois modelos influentes da família YOLO: YOLOX e YOLOv7. Exploraremos suas diferenças arquitetônicas, benchmarks de desempenho e casos de uso ideais para ajudá-lo a fazer uma escolha informada.

YOLOX: Excelência sem Âncoras

O YOLOX foi introduzido como um detector sem âncoras de alto desempenho, com o objetivo de simplificar o pipeline de detecção e, ao mesmo tempo, melhorar o desempenho em relação às versões YOLO anteriores. Sua filosofia de design preenche a lacuna entre a pesquisa acadêmica e a aplicação industrial, simplificando o processo de treinamento.

Autores: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li e Jian Sun
Organização: Megvii
Data: 2021-07-18
Arxiv: https://arxiv.org/abs/2107.08430
GitHub: https://github.com/Megvii-BaseDetection/YOLOX
Documentação: https://yolox.readthedocs.io/en/latest/

Arquitetura e Principais Características

O YOLOX se destaca com várias inovações arquitetônicas importantes que o diferenciam de seus predecessores:

  • Design Sem Âncora: Ao eliminar as anchor boxes predefinidas, o YOLOX reduz o número de parâmetros de design e a complexidade associada ao ajuste das anchors. Isso torna o modelo mais flexível e melhor na generalização para objetos com diversas formas e tamanhos, particularmente em conjuntos de dados como o COCO.
  • Decoupled Head: Ao contrário dos heads acoplados que realizam classificação e localização simultaneamente, o YOLOX usa um head desacoplado. Essa separação demonstrou resolver um conflito entre as duas tarefas, levando a uma convergência mais rápida durante o treinamento e maior precisão.
  • Aumento de Dados Avançado: O modelo aproveita técnicas fortes de aumento de dados, incluindo MixUp e Mosaic, para aumentar sua robustez e evitar overfitting. Você pode aprender mais sobre essas técnicas em nosso guia sobre aumento de dados.
  • Atribuição de Rótulos SimOTA: O YOLOX introduz uma estratégia avançada de atribuição de rótulos chamada SimOTA (Simplified Optimal Transport Assignment). Ele atribui dinamicamente amostras positivas para treinamento, o que melhora a eficiência do treinamento e ajuda o modelo a aprender melhores características.

Forças e Fraquezas

Forças:

  • Pipeline Simplificado: A abordagem sem âncoras simplifica o processo de treinamento e implementação, eliminando a necessidade de agrupamento e ajuste de âncoras.
  • Forte Generalização: A combinação de um design sem âncoras e um poderoso aumento de dados ajuda o modelo a se generalizar bem para novos domínios e conjuntos de dados.
  • Bom Equilíbrio de Desempenho: O YOLOX oferece um equilíbrio sólido entre velocidade e precisão em suas diferentes escalas de modelo.

Fraquezas:

  • Superado por Modelos Mais Recentes: Embora eficiente, o YOLOX foi superado em velocidade e precisão por arquiteturas mais recentes, como o YOLOv7 e os modelos Ultralytics subsequentes.
  • Limitações do Ecossistema: O YOLOX não faz parte de um ecossistema integrado como o Ultralytics, o que pode tornar a implantação e o MLOps mais desafiadores. Ele carece de integração perfeita com ferramentas como o Ultralytics HUB.

Saiba mais sobre o YOLOX.

YOLOv7: O Auge da Velocidade e Precisão

Após o seu lançamento, o YOLOv7 estabeleceu um novo estado da arte para detetores de objetos em tempo real, demonstrando melhorias notáveis tanto em velocidade quanto em precisão. Conseguiu isso introduzindo várias otimizações arquitetónicas e estratégias de treino.

Autores: Chien-Yao Wang, Alexey Bochkovskiy e Hong-Yuan Mark Liao
Organização: Instituto de Ciência da Informação, Academia Sinica, Taiwan
Data: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Docs: https://docs.ultralytics.com/models/yolov7/

Arquitetura e Principais Características

O desempenho superior do YOLOv7 está enraizado em seus componentes arquitetônicos avançados e refinamentos de treinamento:

  • E-ELAN (Extended Efficient Layer Aggregation Network): Este módulo chave no backbone permite que a rede aprenda recursos mais diversos, controlando os caminhos de gradiente, aprimorando o aprendizado sem interromper o fluxo de gradiente.
  • Bag-of-Freebies Treinável: YOLOv7 introduz um conjunto de métodos de treinamento que aumentam a precisão sem aumentar o custo de inferência. Isso inclui técnicas como treinamento guiado do grosseiro ao fino e cabeças auxiliares que guiam o processo de aprendizado.
  • Escalonamento de Modelo: O modelo introduz métodos de escalonamento composto para profundidade e largura que são otimizados para arquiteturas baseadas em concatenação, garantindo um desempenho eficiente em diferentes tamanhos de modelo.
  • Convolução Re-parametrizada: O YOLOv7 utiliza a re-parametrização de modelos para melhorar o desempenho, uma técnica que se tornou popular no design de redes moderno.

Forças e Fraquezas

Forças:

  • Relação Excepcional entre Velocidade e Precisão: YOLOv7 oferece um equilíbrio notável entre mAP alto e velocidades de inferência rápidas, tornando-o ideal para aplicações em tempo real.
  • Eficiência no Treinamento: A abordagem "bag-of-freebies" permite alcançar alta precisão com treinamento eficiente.
  • Desempenho Comprovado: Estabeleceu um novo benchmark para detectores de objetos em tempo real em conjuntos de dados padrão.

Fraquezas:

  • Complexidade Arquitetural: A combinação de E-ELAN, cabeças auxiliares e outros recursos torna a arquitetura mais complexa do que modelos mais simples.
  • Treinamento com Uso Intenso de Recursos: O treinamento dos modelos YOLOv7 maiores pode exigir recursos computacionais significativos e memória GPU.
  • Versatilidade Limitada: Embora o repositório oficial tenha extensões impulsionadas pela comunidade para tarefas como estimativa de pose, não é uma estrutura inerentemente multi-tarefa como os modelos Ultralytics mais recentes.

Saiba mais sobre o YOLOv7.

Comparativo de Desempenho: YOLOX vs. YOLOv7

Ao comparar o desempenho, ambos os modelos oferecem uma variedade de tamanhos para se adequar a diferentes orçamentos computacionais. O YOLOX fornece uma família escalável de Nano a X, enquanto o YOLOv7 se concentra em fornecer desempenho de alto nível com suas variantes maiores.

Modelo tamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOXnano 416 25.8 - - 0.91 1.08
YOLOXtiny 416 32.8 - - 5.06 6.45
YOLOXs 640 40.5 - 2.56 9.0 26.8
YOLOXm 640 46.9 - 5.43 25.3 73.8
YOLOXl 640 49.7 - 9.04 54.2 155.6
YOLOXx 640 51.1 - 16.1 99.1 281.9
YOLOv7l 640 51.4 - 6.84 36.9 104.7
YOLOv7x 640 53.1 - 11.57 71.3 189.9

Pela tabela, é evidente que os modelos YOLOv7 geralmente alcançam pontuações de mAP mais altas. Por exemplo, o YOLOv7l supera o YOLOXx em precisão (51,4% vs. 51,1%) com significativamente menos parâmetros (36,9M vs. 99,1M) e FLOPs (104,7B vs. 281,9B), e é muito mais rápido em uma GPU T4. Isso destaca a eficiência arquitetural superior do YOLOv7.

Por que os modelos Ultralytics YOLO são a escolha preferida

Embora o YOLOX e o YOLOv7 tenham sido avanços significativos, os modelos Ultralytics YOLO mais recentes, como o YOLOv8 e o YOLO11, oferecem uma experiência mais moderna, versátil e fácil de usar.

  • Facilidade de Uso: Os modelos Ultralytics são projetados com o desenvolvedor em mente, apresentando uma API Python otimizada, documentação extensa e comandos CLI simples que tornam o treinamento, a validação e a implementação diretos.
  • Ecosistema Bem Mantido: Beneficie de um ecossistema robusto com desenvolvimento ativo, uma grande comunidade de código aberto, atualizações frequentes e integração perfeita com ferramentas como o Ultralytics HUB para MLOps de ponta a ponta.
  • Versatilidade: Modelos como YOLOv8 e YOLO11 são verdadeiros frameworks multi-tarefa, suportando detecção de objetos, segmentação, classificação, estimativa de pose e detecção de objetos orientados (OBB) de forma imediata.
  • Desempenho e Eficiência: Os modelos Ultralytics proporcionam um excelente equilíbrio entre velocidade e precisão, são otimizados para uso eficiente da memória e são adequados para uma ampla gama de hardware, desde dispositivos de borda até servidores em nuvem.

Conclusão

Tanto o YOLOX quanto o YOLOv7 são modelos poderosos de detecção de objetos que ultrapassaram os limites do que é possível em visão computacional. O YOLOX é elogiável por seu design inovador sem âncoras, que simplifica o pipeline de detecção. O YOLOv7 se destaca por sua excepcional velocidade e precisão, tornando-o uma escolha forte para aplicações exigentes em tempo real.

No entanto, para desenvolvedores e pesquisadores hoje, os modelos Ultralytics como YOLOv8 e YOLO11 representam o próximo passo. Eles oferecem desempenho superior, maior versatilidade e um ecossistema mais abrangente e amigável, tornando-os a escolha recomendada para construir soluções de IA de visão modernas e de alto desempenho.

Outras Comparações de Modelos

Para obter mais informações, explore outras comparações de modelos:



📅 Criado há 1 ano ✏️ Atualizado há 1 mês

Comentários