Ir para o conteúdo

EfficientDet vs. YOLOv5: Equilibrando escalabilidade e desempenho em tempo real

Selecionar a arquitetura de detecção de objetos certa envolve ponderar as vantagens e desvantagens entre precisão, velocidade de inferência e complexidade de implementação. Este guia fornece uma comparação técnica aprofundada entre o EfficientDet, uma arquitetura escalável da Google , e o YOLOv5, o detetor em tempo real amplamente adotado da Ultralytics.

Enquanto o EfficientDet introduziu conceitos inovadores em escalonamento composto, YOLOv5 o campo ao tornar a visão computacional de alto desempenho acessível por meio de uma API simplificada e um ecossistema robusto.

Visão Geral do Modelo

Google EfficientDet

O EfficientDet baseia-se na estrutura EfficientNet, aplicando um método de dimensionamento composto que dimensiona uniformemente a resolução, a profundidade e a largura. Introduziu a Rede Piramidal de Características Bidirecionais (BiFPN) para permitir uma fusão fácil e rápida de características multiescala.

Ultralytics YOLOv5

YOLOv5 concentra-se na usabilidade e velocidade no mundo real. Emprega uma estrutura CSPDarknet e foi concebido para facilitar a formação e a implementação em diversos tipos de hardware. Continua a ser um dos modelos mais populares devido ao seu equilíbrio entre desempenho e eficiência.

Saiba mais sobre o YOLOv5

Comparação da Arquitetura Técnica

As filosofias arquitetónicas destes dois modelos divergem significativamente, influenciando a sua adequação para diferentes tarefas.

EfficientDet: Compound Scaling e BiFPN

A principal inovação da EfficientDet é a BiFPN (Rede Piramidal de Características Bidirecionais Ponderadas). Ao contrário das FPNs padrão, que somam características sem distinção, a BiFPN introduz pesos aprendíveis para compreender a importância das diferentes características de entrada. Isso permite que a rede priorize características mais informativas durante a fusão.

Além disso, o EfficientDet utiliza Compound Scaling, que aumenta simultaneamente a resolução, profundidade e largura da espinha dorsal, rede de recursos e rede de previsão. Isso permite que os utilizadores escolham entre uma família de modelos (D0 a D7) dependendo das suas restrições de recursos. No entanto, essa complexidade pode levar a uma maior latência em dispositivos de ponta que não possuem suporte especializado para essas operações.

YOLOv5: CSPDarknet e PANet

YOLOv5 uma estrutura CSPDarknet, que integra redes Cross Stage Partial. Este design reduz o número de parâmetros e FLOPS, mantendo a precisão ao dividir o mapa de características na camada base.

Para a agregação de características, YOLOv5 uma Rede de Agregação de Caminhos (PANet). Essa estrutura melhora o fluxo de informações das camadas inferiores para as superiores, aprimorando a localização de objetos — crucial para caixas delimitadoras precisas. O cabeçalho é baseado em âncoras, prevendo desvios de caixas de âncora predefinidas. Essa arquitetura é altamente otimizada para GPU , resultando em tempos de inferência mais rápidos em comparação com as complexas operações de dimensionamento do EfficientDet.

A Vantagem do Ecossistema Ultralytics

A escolha YOLOv5 acesso ao Ultralytics , garantindo integração perfeita com ferramentas para anotação de dados, acompanhamento de experiências e treinamento em nuvem através da Ultralytics . Essa estrutura de suporte geralmente está ausente em repositórios focados em pesquisa, como o EfficientDet.

Métricas de Desempenho

Ao avaliar o desempenho, é fundamental analisar tanto a precisão (mAP) e a velocidade (latência). Embora o EfficientDet alcance maior precisão com as suas variantes maiores (D7), muitas vezes sofre uma penalização significativa em termos de velocidade em comparação com YOLOv5 de tamanho comparável.

A tabela abaixo destaca as diferenças de desempenho. Observe como YOLOv5 CPU significativamente mais rápidas, tornando-o muito mais prático para implementação sem aceleradores especializados.

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
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Análise

  1. Velocidade vs. Precisão: O EfficientDet-d0 é muito eficiente em termos de FLOPs, mas, na prática, o YOLOv5n e o YOLOv5s costumam funcionar mais rapidamente em GPUs padrão devido a operações mais compatíveis com o hardware (evitando convoluções separáveis em profundidade, que podem ser lentas em alguns CUDA mais antigos).
  2. Eficiência de memória: YOLOv5 requer menos VRAM durante o treinamento, permitindo tamanhos de lote maiores em hardware de nível consumidor. As conexões complexas do EfficientDet podem aumentar a sobrecarga de memória.
  3. Otimização: O EfficientDet depende muito das pesquisas do AutoML para arquitetura, que podem ser difíceis de modificar. YOLOv5 uma personalização mais fácil dos múltiplos de profundidade e largura diretamente na configuração YAML.

Treino e Usabilidade

Eficiência do Treinamento

YOLOv5 Ultralytics YOLOv5 conhecido pela sua capacidade de «treinar fora da caixa». O repositório inclui aumento de dados Mosaic, cálculo de âncora automática e evolução de hiperparâmetros. Isto significa que os utilizadores podem obter excelentes resultados em conjuntos de dados personalizados sem ajustes extensivos. As implementações eficientes frequentemente requerem mais configuração manual de TensorFlow e um planeamento cuidadoso da taxa de aprendizagem.

Versatilidade de implementação

Embora o EfficientDet seja principalmente um modelo de deteção de objetos, YOLOv5 os seus sucessores na Ultralytics suportam uma gama mais ampla de tarefas. É possível alternar facilmente para segmentação de instâncias ou classificação de imagens usando a mesma estrutura de API.

Além disso, a implementação YOLOv5 simplificada através do modo de exportação, que suporta a conversão com um clique para ONNX, TensorRT, CoreML e TFLite.

from ultralytics import YOLO

# Load a pretrained YOLOv5 model
model = YOLO("yolov5s.pt")

# Train the model on a custom dataset
model.train(data="coco128.yaml", epochs=100)

# Export to ONNX format for deployment
model.export(format="onnx")

Preparação para o futuro: o caso do YOLO26

Embora YOLOv5 uma opção robusta, o campo avançou. Para desenvolvedores que buscam o que há de mais moderno, o YOLO26 se baseia no legado do YOLOv5 melhorias arquitetónicas significativas.

O YOLO26 apresenta um design completo NMS, eliminando a necessidade de pós-processamento de supressão não máxima. Isso reduz a latência e simplifica o pipeline de implementação, uma grande vantagem em relação ao EfficientDet e YOLOv5. Além disso, o YOLO26 utiliza o otimizador MuSGD, inspirado no treinamento LLM, garantindo uma convergência mais rápida e um treinamento estável, mesmo em conjuntos de dados difíceis.

Se o seu projeto envolve IA de ponta, o YOLO26 é especificamente otimizado para CPU , oferecendo velocidades até 43% mais rápidas do que as gerações anteriores.

Saiba mais sobre YOLO26

Casos de Uso Ideais

Quando escolher o EfficientDet

  • Limitações da investigação: Quando o objetivo principal é estudar leis de escala compostas ou reproduzir referências académicas específicas.
  • Regimes de baixo FLOP: Em cenários teóricos em que a contagem de FLOP é a única métrica relevante, ignorando os custos de acesso à memória ou a latência real do hardware.

Quando escolher Ultralytics YOLOv5 ou YOLO26)

  • Aplicações em tempo real: condução autónoma, análise de vídeo e robótica, onde a baixa latência é imprescindível.
  • Implementação de ponta: Executado em Raspberry Pi, NVIDIA ou dispositivos móveis onde a eficiência da memória eTensorRT são essenciais.
  • Desenvolvimento rápido: projetos que exigem ciclos de iteração rápidos, fácil gestão de conjuntos de dados e pesos pré-treinados confiáveis.
  • Tarefas diversas: se o seu projeto puder ser expandido para incluir estimativa de pose ou deteção de objetos orientados (OBB), a Ultralytics oferece suporte nativo para essas tarefas.

Resumo

Tanto o EfficientDet quanto YOLOv5 significativamente para a visão computacional. O EfficientDet demonstrou o poder do dimensionamento sistemático, enquanto YOLOv5 a detecção de alto desempenho. Para a maioria das aplicações práticas atuais, o Ultralytics — representado pelo YOLOv5 pelo avançado YOLO26— oferece um equilíbrio superior entre velocidade, precisão e facilidade de uso, apoiado por uma base de código continuamente atualizada e uma comunidade próspera.

Para mais informações sobre comparações de modelos, explore como YOLO se comparam a outros, como YOLOv8 EfficientDet ou o modelo baseado em transformador RT-DETR.


Comentários