Ir para o conteúdo

EfficientDet vs. YOLOv8: Uma comparação técnica dos gigantes da deteção de objectos

No panorama em rápida evolução da visão por computador, a escolha da arquitetura certa é fundamental para o êxito do projeto. Esta análise compara dois modelos influentes: EfficientDet, um marco de investigação da Google centrado na eficiência dos parâmetros, e YOLOv8um modelo topo de gama da Ultralytics concebido para aplicações em tempo real e facilidade de utilização.

Enquanto o EfficientDet introduziu conceitos inovadores no escalonamento de modelos, as arquitecturas mais recentes, como o YOLOv8 e a arquitetura de ponta YOLO11 redefiniram desde então os padrões de velocidade, precisão e versatilidade de implementação.

Métricas de desempenho: Velocidade, exatidão e eficiência

Ao selecionar um modelo para produção, os programadores devem ponderar os compromissos entre a latência da inferência e a precisão da deteção. A tabela abaixo apresenta uma comparação direta das métricas de desempenho no conjunto de dadosCOCO .

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
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8

Analisar os dados

As métricas destacam uma divergência distinta na filosofia de design. O EfficientDet minimiza os FLOPs (Floating Point Operations), que historicamente se correlacionam com a eficiência teórica. No entanto, em cenários práticos de inferência em tempo real - particularmente em GPUs - o YOLOv8 demonstra uma vantagem significativa.

  • LatênciaGPU : YOLOv8n é aproximadamente 2,6x mais rápido do que o EfficientDet-d0 numa GPU T4 com TensorRTapesar de ter FLOPs ligeiramente mais altos. Isso ocorre porque a arquitetura do YOLOv8 é otimizada para paralelismo de hardware, enquanto as convoluções separáveis em profundidade do EfficientDet podem ser limitadas pela memória em aceleradores.
  • Precisão à escala: Na extremidade superior, YOLOv8x atinge uma precisão superior de mAP superior de 53,9 com uma velocidade de inferência de 14,37 ms, superando drasticamente o EfficientDet-d7, que se atrasa em 128,07 ms para uma precisão semelhante.
  • Tamanho do modelo: YOLOv8n requer menos parâmetros (3,2M) do que o EfficientDet mais pequeno (3,9M), o que o torna altamente eficiente em termos de armazenamento para aplicações móveis.

Eficiência vs. Latência

Uma contagem baixa de FLOP nem sempre é igual a uma execução rápida. O EfficientDet é altamente optimizado para o custo teórico de computação, mas YOLOv8 explora as capacidades de processamento paralelo das GPUs modernas (como NVIDIA T4/A100) de forma mais eficaz, resultando numa menor latência no mundo real.

Filosofia da arquitetura e do design

A compreensão das nuances arquitectónicas explica as diferenças de desempenho observadas acima.

EfficientDet Detalhes

O EfficientDet foi desenvolvido com base no princípio de Compound Scaling, que dimensiona uniformemente a resolução, a profundidade e a largura da rede. Utiliza um backbone EfficientNet e introduz a BiFPN (Bidirectional Feature Pyramid Network). A BiFPN permite a fusão de caraterísticas ponderadas, aprendendo quais caraterísticas são mais importantes. Embora isto produza uma elevada eficiência de parâmetros, as complexas ligações irregulares da BiFPN podem ser computacionalmente dispendiosas para executar em hardware que favorece padrões regulares de acesso à memória.

Saiba mais sobre o EfficientDet

YOLOv8 Detalhes

YOLOv8 representa uma mudança para um mecanismo de deteção sem âncoras, simplificando o processo de formação ao eliminar a necessidade de cálculo manual da caixa de âncoras. Apresenta um backbone CSPDarknet modificado com módulos C2f, que melhoram o fluxo de gradiente e a riqueza de caraterísticas em comparação com as versões anteriores. A cabeça utiliza uma estrutura desacoplada, processando tarefas de classificação e regressão de forma independente, e emprega a Atribuição Alinhada de Tarefas para atribuição dinâmica de rótulos. Esta arquitetura foi especificamente concebida para maximizar o rendimento do hardware GPU .

Saiba mais sobre o YOLOv8.

A vantagem Ultralytics

Embora o EfficientDet seja um feito académico notável, o ecossistema Ultralytics que envolve YOLOv8 e o YOLO11 oferece benefícios tangíveis para os programadores que se concentram na entrega de produtos e MLOps.

1. Facilidade de utilização e implementação

A implementação do EfficientDet requer frequentemente a navegação em ficheiros de configuração complexos e dependências no ecossistema TensorFlow . Em contrapartida, os modelos Ultralytics dão prioridade à experiência do programador. Um modelo pode ser carregado, treinado e implantado em apenas algumas linhas de Python.

from ultralytics import YOLO

# Load a pre-trained YOLOv8 model
model = YOLO("yolov8n.pt")

# Train on a custom dataset with a single command
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

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

2. Versatilidade em todas as tarefas

O EfficientDet é essencialmente uma arquitetura de deteção de objectos. Ultralytics YOLOv8 vai muito para além das simples caixas delimitadoras. Dentro da mesma estrutura, os utilizadores podem realizar:

3. Treino e eficiência da memória

O treino de transformadores modernos ou de arquitecturas complexas em várias escalas pode exigir muitos recursos. Os modelos Ultralytics YOLO são conhecidos pela sua eficiência de memória.

  • Menor uso de VRAM: Os módulos C2f eficientes e as funções de perda optimizadas permitem que YOLOv8 treine em GPUs de nível de consumidor, onde outros modelos podem enfrentar erros Out-Of-Memory (OOM).
  • Convergência rápida: Técnicas avançadas de aumento, como o Mosaic, aceleram a aprendizagem, reduzindo o número de épocas necessárias para atingir uma precisão elevada.

Ecossistema integrado

Os modelos Ultralytics integram-se perfeitamente com ferramentas como Weights & Biases, Comete ClearML para o controlo de experiências, bem como o Roboflow para a gestão de conjuntos de dados.

Aplicações no Mundo Real

A escolha entre estes modelos determina frequentemente a viabilidade da implantação em ambientes específicos.

  • Casos de uso do EfficientDet: A sua elevada eficiência de parâmetros torna-o interessante para a investigação académica sobre leis de escalonamento ou sistemas legados estritamente CPU, em que os FLOPs são a principal restrição, embora a latência possa ainda ser superior à do YOLOv8n.
  • Casos de utilização YOLOv8 :
    • Sistemas autónomos: O elevado FPS (Frames por segundo) dos dispositivos Edge AI, como o NVIDIA Jetson, torna YOLOv8 ideal para drones e robótica.
    • Fabrico: Utilizado para a deteção de defeitos em tempo real em linhas de montagem onde os milissegundos contam.
    • Retalho inteligente: Capacidades como a contagem e o seguimento de objectos permitem uma análise avançada da disposição das lojas e da gestão de filas.

Conclusão

O EfficientDet continua a ser uma contribuição significativa para o campo da Aprendizagem Profunda, provando que o escalonamento inteligente pode produzir modelos compactos. No entanto, para a grande maioria das aplicações práticas actuais, Ultralytics YOLOv8 (e o mais recente YOLO11) oferece uma solução superior.

A combinação de velocidades de inferência extremamente rápidas em hardware moderno, um SDK Python abrangente e a capacidade de lidar com várias tarefas de visão fazem dos modelos Ultralytics a escolha recomendada para os programadores. Quer esteja a construir um sistema de alarme de segurança ou a analisar imagens de satélite, o ecossistema Ultralytics fornece as ferramentas para levar o seu projeto do conceito à produção de forma eficiente.

Explore Outros Modelos

Para uma perspetiva mais ampla das opções de deteção de objectos, considere estas comparações:


Comentários