Ir para o conteúdo

YOLOv9 . EfficientDet: uma comparação técnica de arquitetura e desempenho

No cenário em evolução da visão computacional, selecionar a arquitetura certa para detecção de objetos é uma decisão crítica que afeta a latência, a precisão e a complexidade de implementação do sistema. Este guia fornece uma comparação técnica detalhada entre YOLOv9, um modelo de última geração introduzido no início de 2024, e o EfficientDet, uma arquitetura altamente influente do Google pela sua escalabilidade eficiente. Analisamos as suas diferenças estruturais, métricas de desempenho e adequação para aplicações do mundo real.

Análise de Métricas de Desempenho

A tabela a seguir compara o desempenho de várias escalas de modelos. YOLOv9 demonstra, em geral, relações precisão-parâmetro superiores e velocidades de inferência mais rápidas em hardware moderno, em comparação com a arquitetura EfficientDet mais antiga.

Modelotamanho
(pixels)
mAPval
50-95
Velocidade
CPU ONNX
(ms)
Velocidade
T4 TensorRT10
(ms)
parâmetros
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
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

Visões Gerais do Modelo

YOLOv9

Autores: Chien-Yao Wang, Hong-Yuan Mark Liao
Organização: Instituto de Ciência da Informação, Academia Sinica, Taiwan
Data: 21/02/2024
Links:Arxiv | GitHub | Docs

YOLOv9 inovações arquitetónicas significativas para resolver o problema do «gargalo de informação» em redes profundas. A principal contribuição é a Informação de Gradiente Programável (PGI), que gera gradientes fiáveis através de um ramo de supervisão auxiliar para garantir que as camadas profundas retenham informações críticas. Além disso, utiliza a Rede de Agregação de Camadas Eficiente Generalizada (GELAN), uma arquitetura leve que maximiza a eficiência dos parâmetros.

Saiba mais sobre o YOLOv9

EfficientDet

Autores: Mingxing Tan, Ruoming Pang, Quoc V. Le
Organização:Google
Data: 20/11/2019
Links:Arxiv | GitHub

O EfficientDet foi um trabalho pioneiro em AutoML que introduziu a Rede Piramidal de Características Bidirecionais (BiFPN). Ao contrário das FPNs tradicionais, a BiFPN permite uma fácil fusão de características em múltiplas escalas através da introdução de pesos aprendíveis. O modelo também emprega o Compound Scaling, um método que escala uniformemente a resolução, profundidade e largura, permitindo-lhe alcançar um excelente desempenho em um amplo espectro de restrições de recursos (de D0 a D7).

Análise Arquitetural Detalhada

Fusão de recursos: GELAN vs. BiFPN

O principal diferencial reside na forma como esses modelos agregam recursos. O EfficientDet depende da complexa estrutura BiFPN, que, embora seja teoricamente eficiente em FLOPs, pode consumir muita memória e ser mais difícil de otimizar para aceleradores de hardware específicos, como o TensorRT.

Em contrapartida, a arquitetura GELAN YOLOv9 combina os melhores aspectos do CSPNet e do ELAN. Ela prioriza o planeamento do caminho do gradiente em detrimento de conexões de fusão complexas. Isso resulta numa rede que não só é mais leve em termos de parâmetros, mas também mais «amigável ao hardware», levando a GPU maior GPU durante o treino e a inferência.

Fluxo de gradiente e perda de informação

O EfficientDet depende da retropropagação padrão através de uma estrutura EfficientNet muito profunda. YOLOv9 o problema em que as redes profundas «esquecem» os detalhes dos dados de entrada. Através do PGI, YOLOv9 um ramo reversível auxiliar que orienta o processo de aprendizagem, garantindo que o ramo principal capte características semânticas robustas sem o custo computacional de manter esses ramos auxiliares durante a inferência.

Advertência: Benefício PGI

A Informação de Gradiente Programável (PGI) permite YOLOv9 alcance uma melhor convergência com menos dados, tornando-o particularmente eficaz para conjuntos de dados personalizados, onde os exemplos anotados podem ser escassos.

Ecossistema e Facilidade de Uso

Uma das diferenças mais profundas para os programadores é o ecossistema que envolve esses modelos.

O EfficientDet está principalmente enraizado no TensorFlow . Embora seja poderoso, a sua utilização requer frequentemente a navegação por cadeias de dependências complexas ou repositórios mais antigos que podem não ter atualizações frequentes.

YOLOv9, integrado ao Ultralytics , oferece uma experiência simplificada. Os programadores podem aceder ao modelo através de uma Python simples, permitindo o treino, a validação e a implementação em minutos. A Ultralytics lida com o aumento de dados, o registo (por exemplo, para MLflow ou Comet) e exportação automaticamente.

from ultralytics import YOLO

# Load a pretrained YOLOv9c model
model = YOLO("yolov9c.pt")

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

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

Este trecho demonstra a facilidade de uso inerente aos Ultralytics . A estrutura também suporta precisão mista automática (AMP) eGPU pronto para uso, garantindo eficiência no treinamento.

Versatilidade e implementação

Suporte a Tarefas

O EfficientDet foi concebido fundamentalmente para a deteção de objetos. Adaptá-lo para tarefas como segmentação ou estimativa de pose requer modificações arquitetónicas significativas e código personalizado.

Ultralytics , incluindo YOLOv9 seus sucessores, são construídos em uma base de código versátil que suporta nativamente:

Compatibilidade com bordas e memória

Embora o EfficientDet-D0 seja pequeno, a expansão para D7 acarreta custos de memória elevados devido à expansão da resolução (até 1536x1536). YOLOv9 uma entrada padrão de 640x640 para a maioria dos benchmarks, ao mesmo tempo que alcança uma precisão superior. Esta resolução de entrada mais baixa reduz significativamente os requisitos de memória para VRAM, permitindo tamanhos de lote maiores e experiências mais rápidas em GPUs de consumo.

Além disso, Ultralytics suportam exportação com um clique para formatos como TFLite para dispositivos móveis, OpenVINO para Intel e CoreML dispositivos Apple, garantindo ampla compatibilidade com dispositivos móveis.

Casos de Uso no Mundo Real

A escolha do modelo muitas vezes determina o sucesso de uma aplicação específica:

  • Análise de retalho: para contar produtos nas prateleiras, YOLOv9 é superior devido à sua alta precisão (mAP) em objetos pequenos, impulsionado pela capacidade do PGI de reter detalhes finos.
  • Drones autónomos: Em cenários que exigem inferência em tempo real em hardware incorporado (por exemplo, Jetson Orin), a arquitetura GELAN eficiente YOLOv9 fornece o FPS necessário que as camadas BiFPN complexas do EfficientDet muitas vezes têm dificuldade em igualar.
  • Sistemas legados:O EfficientDet continua a ser relevante em comparações de investigação ou TPU legadas Google TPU , onde a arquitetura específica do modelo está codificada no pipeline de hardware.

O Futuro: YOLO26

Embora YOLOv9 um desempenho excepcional, o campo da IA evolui rapidamente. Ultralytics a inovar com o YOLO26, a escolha recomendada para novos projetos.

O YOLO26 aproveita os pontos fortes YOLO anteriores YOLO , mas introduz um design nativo de ponta a ponta NMS, eliminando a latência e a complexidade do pós-processamento de supressão não máxima. Ele apresenta o MuSGD Optimizer, um híbrido de SGD Muon, e remove a Distribution Focal Loss (DFL) para uma exportação mais simples. Essas alterações resultam em CPU até 43% mais rápida e maior estabilidade de treinamento.

Saiba mais sobre YOLO26

Além disso, o YOLO26 incorpora ProgLoss + STAL (Soft-Target Anchor Loss), oferecendo melhorias notáveis no reconhecimento de pequenos objetos, o que é fundamental para robótica e imagens aéreas. Para desenvolvedores que buscam o equilíbrio perfeito entre velocidade, precisão e facilidade de implementação, o YOLO26 representa o novo padrão.

Conclusão

Ambas as arquiteturas conquistaram o seu lugar na história da visão computacional. O EfficientDet demonstrou o poder do dimensionamento composto, enquanto o YOLOv9 mostrou como os gradientes programáveis podem recuperar informações em redes profundas. No entanto, para ambientes de produção modernos, o Ultralytics — que suporta tanto YOLOv9 o mais recente YOLO26 — oferece uma vantagem distinta em termos de manutenção, velocidade de treinamento e flexibilidade de implementação.

Veja Também


Comentários