Ir para o conteúdo

EfficientDet vs. PP-YOLOE+: Uma Comparação Técnica

Na evolução da visão computacional, poucas comparações destacam a mudança na filosofia de design tão claramente como o contraste entre o EfficientDet da Google e o PP-YOLOE+ da Baidu. Enquanto o EfficientDet marcou um marco na eficiência de parâmetros através de escalonamento composto, o PP-YOLOE+ representa a era moderna da deteção de alta velocidade e sem âncoras optimizada para inferência GPU .

Esta análise analisa as suas arquitecturas, métricas de desempenho e aplicações práticas para ajudar os programadores a escolher a ferramenta certa para as suas necessidades específicas de deteção de objectos.

Análise de Desempenho Direta

O panorama do desempenho mudou significativamente entre o lançamento destes dois modelos. O EfficientDet centra-se na minimização de FLOPs (operações de vírgula flutuante) e na contagem de parâmetros, tornando-o teoricamente eficiente. No entanto, o PP-YOLOE+ foi concebido para obter uma velocidade de inferência prática em aceleradores de hardware como GPUs, tirando partido das optimizações TensorRT .

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Os dados revelam uma visão crítica: enquanto o EfficientDet-d0 é leve, as variantes maiores (d5-d7) sofrem de uma latência significativa. Por outro lado, o PP-YOLOE+l alcança uma precisão média (mAP) comparável ao EfficientDet-d6 (52,9 vs 52,6), mas é executado 10 vezes mais rápido numa GPU T4 (8,36ms vs 89,29ms).

EfficientDet: Eficiência escalável

O EfficientDet foi introduzido pela equipa Google Brain AutoML com o objetivo de quebrar as restrições de eficiência dos detectores anteriores. Foi criado com base na espinha dorsal do EfficientNet, aplicando um método de dimensionamento composto que dimensiona uniformemente a resolução, a profundidade e a largura.

Autores: Mingxing Tan, Ruoming Pang, e Quoc V. Le
Organização:Google
Data: 2019-11-20
Arxiv:1911.09070
GitHub:google
Docs:README

Principais caraterísticas arquitectónicas

  1. BiFPN (Bidirectional Feature Pyramid Network): Ao contrário das FPNs tradicionais, a BiFPN permite uma fácil fusão de caraterísticas multi-escala. Introduz pesos aprendíveis para aprender a importância de diferentes caraterísticas de entrada, aplicando repetidamente a fusão de caraterísticas multi-escala de cima para baixo e de baixo para cima.
  2. Escalonamento composto: Um único coeficiente composto $\phi$ controla a largura, a profundidade e a resolução da rede, permitindo uma família de modelos (D0 a D7) que visam diferentes restrições de recursos.

Forças e Fraquezas

  • Pontos fortes: Excelente eficiência de parâmetros; eficaz para CPUs de baixo consumo onde os FLOPs são o principal estrangulamento; abordagem de escalonamento altamente estruturada.
  • Pontos fracos: As conexões complexas em BiFPN e as convoluções separáveis em profundidade são frequentemente limitadas pela memória em GPUs, levando a uma latência de inferência mais lenta no mundo real, apesar das baixas contagens de FLOP.

Sabia que?

O uso intensivo de convoluções separáveis em profundidade pelo EfficientDet reduz significativamente o número de parâmetros, mas pode levar a uma menor utilização GPU em comparação com as convoluções padrão usadas em modelos como o YOLO.

Saiba mais sobre o EfficientDet

PP-YOLOE+: O desafiador sem âncora

Lançado pela Baidu como parte do ecossistema PaddlePaddle , o PP-YOLOE+ é uma evolução do PP-YOLOv2. Tem como objetivo superar o desempenho da YOLOv5 e da YOLOX, adoptando um mecanismo totalmente livre de âncoras e estratégias de treino avançadas.

Autores: PaddlePaddle Authors
Organização:Baidu
Data: 2022-04-02
Arxiv:2203.16250
GitHub:PaddlePaddle
Docs:PP-YOLOE+ Configs

Principais caraterísticas arquitectónicas

  1. Design sem âncoras: Ao eliminar as caixas de ancoragem predefinidas, o PP-YOLOE+ simplifica a cabeça de deteção e reduz a carga de afinação dos hiperparâmetros.
  2. CSPRepResNet: A espinha dorsal utiliza o RepResBlock, que combina os benefícios das conexões residuais durante o treinamento e os re-parametriza em uma estrutura simplificada para inferência.
  3. TAL (Task Alignment Learning): Uma estratégia avançada de atribuição de etiquetas que alinha dinamicamente a pontuação da classificação e a qualidade da localização.

Forças e Fraquezas

  • Pontos fortes: Precisão topo de gama no conjunto de dadosCOCO ; extremamente rápido em hardware TensorRT; design inovador da cabeça.
  • Pontos fracos: Fortemente ligado à estrutura PaddlePaddle , o que pode colocar desafios de integração para equipas padronizadas em PyTorch; contagem de parâmetros ligeiramente superior para modelos pequenos em comparação com EfficientDet-d0.

A vantagem Ultralytics : Uma solução unificada

Embora o EfficientDet ofereça uma eficiência teórica e o PP-YOLOE+ forneça uma velocidade bruta, os programadores necessitam frequentemente de uma solução que equilibre o desempenho com a facilidade de utilização e o suporte do ecossistema. É aqui que entra o Ultralytics YOLO11 se destaca.

Ao contrário da natureza especializada dos modelos de comparação, os modelos Ultralytics são concebidos para o fluxo de trabalho moderno de MLOps, oferecendo uma experiência PyTorch nativa que é fácil de treinar e implementar.

Por que escolher o Ultralytics YOLO11?

  • Facilidade de uso: Com foco na experiência do programador, Ultralytics permite-lhe passar da instalação à inferência em três linhas de código Python . Não há necessidade de compilar manualmente bibliotecas de operadores complexos ou converter formatos proprietários.
  • Versatilidade: Uma única estrutura suporta a deteção de objectos, a segmentação de instâncias, a estimativa de pose, a classificação e as caixas delimitadoras orientadas (OBB).
  • Equilíbrio de desempenho: YOLO11 optimiza o equilíbrio entre velocidade e precisão, fornecendo capacidades de inferência em tempo real em dispositivos Edge (como o Jetson) e GPUs na nuvem.
  • Requisitos de memória: Os modelosYOLO Ultralytics empregam arquiteturas otimizadas que normalmente requerem menos memória CUDA durante o treinamento, em comparação com alternativas baseadas em transformadores ou redes de recursos de várias escalas mais antigas.
  • Ecossistema bem mantido: Apoiado por uma vibrante comunidade de código aberto, o repositório recebe actualizações frequentes, garantindo a compatibilidade com as versões mais recentes do PyTorch, CUDA e Python.
  • Eficiência de treinamento: Os utilizadores podem aproveitar os pesos pré-treinados prontamente disponíveis para afinar rapidamente os modelos em conjuntos de dados personalizados, reduzindo significativamente os requisitos de dados de treino e os custos de computação.

Exemplo de código: Introdução ao YOLO11

A execução de um modelo topo de gama não deve ser complicada. Eis como é fácil implementar a deteção de objectos utilizando Ultralytics:

from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

# Run inference on an image
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

Saiba mais sobre o YOLO11.

Conclusão

A escolha entre o EfficientDet e o PP-YOLOE+ depende em grande medida das suas restrições de hardware e dos requisitos herdados.

  • O EfficientDet continua a ser uma referência válida para a investigação sobre o escalonamento eficiente de parâmetros e é adequado para cenários específicos CPU em que a largura de banda da memória é reduzida.
  • O PP-YOLOE+ é uma escolha superior para a implementação de GPU de elevado desempenho, oferecendo compensações de latência-precisão significativamente melhores se se sentir confortável a navegar no ecossistema PaddlePaddle .

No entanto, para a grande maioria das aplicações do mundo real - que vão desde a análise de cidades inteligentes à monitorização agrícola - aUltralytics YOLO11 destaca-se como a escolha mais pragmática. Combina as inovações arquitectónicas dos detectores modernos sem âncora com uma experiência de utilizador inigualável, permitindo-lhe concentrar-se na resolução de problemas empresariais em vez de depurar as complexidades da estrutura.

Descubra outros modelos

Para aprofundar a questão, considere a possibilidade de rever estas comparações relacionadas:


Comentários