RTDETRv2 vs EfficientDet#
Scegliere l'architettura di rete neurale ottimale è una decisione fondamentale per ogni progetto di computer vision. Questo confronto tecnico completo analizza due influenti modelli di rilevamento degli oggetti: RTDETRv2, un rilevatore basato su Transformer all'avanguardia, ed EfficientDet, una rete neurale convoluzionale altamente scalabile. Valuteremo le rispettive architetture, le metriche di prestazione, le metodologie di addestramento e gli scenari di distribuzione ideali per aiutarti a prendere decisioni basate sui dati per le tue pipeline AI.
RTDETRv2: il Transformer per il rilevamento in tempo reale#
Sulla scia del successo dell'RT-DETR originale, RTDETRv2 perfeziona il paradigma del rilevamento degli oggetti basato su Transformer. Ottimizzando le strutture dell'encoder e del decoder, offre un'elevata precisione mantenendo velocità di inferenza in tempo reale e colmando efficacemente il divario tra le CNN tradizionali e i Transformer per la visione.
Dettagli del modello
- Autori: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang e Yi Liu
- Organizzazione: Baidu
- Data: 2024-07-24
- Link: Arxiv, GitHub, Documentazione
Architettura e punti di forza principali#
RTDETRv2 utilizza un'architettura ibrida che abbina un potente backbone CNN (spesso ResNet o HGNet) a un decoder Transformer efficiente. La caratteristica più distintiva di RTDETRv2 è la capacità nativa di evitare la soppressione dei non massimi (NMS). I rilevatori tradizionali richiedono la NMS per eliminare le bounding box duplicate, aggiungendo una latenza di inferenza variabile durante la post-elaborazione. RTDETRv2 formula il rilevamento come un problema di predizione diretta di insiemi e usa l'abbinamento bipartito per generare predizioni univoche.
Questo modello eccelle nelle distribuzioni lato server, dove la memoria GPU è abbondante. Il suo meccanismo di attenzione globale offre un'eccezionale comprensione del contesto, rendendolo particolarmente efficace nel separare oggetti sovrapposti in ambienti densi e affollati, come i sistemi automatizzati di allarme di sicurezza o il monitoraggio di folle numerose.
Limitazioni#
Pur essendo potenti, le architetture Transformer richiedono intrinsecamente più memoria CUDA durante l'addestramento rispetto alle CNN standard. Inoltre, l'affinamento di RTDETRv2 può richiedere tempi di convergenza prolungati dei dati di addestramento, rendendo la prototipazione rapida leggermente più onerosa in termini di risorse.
EfficientDet: CNN scalabili ed efficienti#
EfficientDet ha introdotto una famiglia di modelli di rilevamento degli oggetti ottimizzati per garantire precisione ed efficienza con un'ampia gamma di vincoli sulle risorse. Resta un esempio classico di design scalabile per la visione artificiale.
Dettagli del modello
- Autori: Mingxing Tan, Ruoming Pang e Quoc V. Le
- Organizzazione: Google
- Data: 2019-11-20
- Link: Arxiv, GitHub, Documentazione
Architettura e punti di forza principali#
L'innovazione alla base di EfficientDet si concentra su due aspetti: la rete piramidale bidirezionale delle feature (BiFPN) e un metodo di scalatura composta. BiFPN consente un'estrazione di feature multiscala semplice e rapida, introducendo pesi apprendibili per determinare l'importanza delle diverse feature di input e applicando ripetutamente la fusione multiscala dall'alto verso il basso e viceversa. Il metodo di scalatura composta ridimensiona simultaneamente e in modo uniforme risoluzione, profondità e larghezza della rete.
I modelli EfficientDet spaziano dall'ultraleggero D0 al massiccio D7. Questo li rende molto versatili per le distribuzioni di edge AI, in cui gli sviluppatori devono bilanciare budget computazionali limitati e requisiti di precisione, ad esempio nelle prime applicazioni di realtà aumentata su dispositivi mobili.
Limitazioni#
EfficientDet è un'architettura meno recente che si basa molto sulle anchor box e sulla pipeline di post-elaborazione NMS tradizionale. La generazione delle anchor richiede un'attenta ottimizzazione degli iperparametri e la fase NMS può diventare un collo di bottiglia nelle distribuzioni su hardware embedded come Raspberry Pi. Inoltre, non supporta nativamente attività moderne come la stima della posa o le bounding box orientate (OBB).
Confronto delle prestazioni e delle metriche#
Per comprendere gli esatti compromessi tra questi modelli, è necessario analizzarne il throughput e l'efficienza in termini di parametri. La tabella seguente illustra il confronto tra la moderna serie RTDETRv2 e la famiglia EfficientDet scalabile.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
Come si vede sopra, RTDETRv2 eguaglia o supera la precisione media media (mAP) dei modelli EfficientDet di dimensioni simili, risultando al contempo molto più veloce su GPU (ad esempio, 53,4 mAP in 9,76 ms per RTDETRv2-l contro 52,6 mAP in 89,29 ms per EfficientDet-d6). Sfrutta ampiamente la propria architettura Transformer per aumentare la precisione.
Casi d'uso e consigli#
La scelta tra RT-DETR ed EfficientDet dipende dai requisiti specifici del progetto, dai vincoli di distribuzione e dalle preferenze relative all'ecosistema.
Quando scegliere RT-DETR#
RT-DETR è un'ottima scelta per:
- Ricerca sul rilevamento basato sui Transformer: progetti che esplorano meccanismi di attenzione e architetture Transformer per il rilevamento di oggetti end-to-end senza NMS.
- Scenari ad alta accuratezza e latenza flessibile: applicazioni in cui l'accuratezza del rilevamento è la priorità assoluta e si può accettare una latenza di inferenza leggermente più alta.
- Rilevamento di oggetti grandi: scene in cui sono presenti principalmente oggetti medio-grandi e il meccanismo di attenzione globale dei Transformer offre un vantaggio naturale.
Quando scegliere EfficientDet#
EfficientDet è consigliato per:
- Pipeline Google Cloud e TPU: Sistemi strettamente integrati con le API Google Cloud Vision o con infrastrutture TPU, per le quali EfficientDet dispone di un'ottimizzazione nativa.
- Ricerca sullo scaling composto: Benchmark accademici incentrati sugli effetti di uno scaling bilanciato di profondità, larghezza e risoluzione della rete.
- Implementazione mobile con LiteRT: Progetti che richiedono specificamente l'esportazione in LiteRT (in precedenza TensorFlow Lite) per Android o dispositivi Linux embedded.
Quando scegliere Ultralytics (YOLO26)#
Per la maggior parte dei nuovi progetti, Ultralytics YOLO26 offre la combinazione migliore di prestazioni ed esperienza per gli sviluppatori:
- Distribuzione edge senza NMS: applicazioni che richiedono inferenza costante a bassa latenza senza la complessità della post-elaborazione con soppressione non massima.
- Ambienti con sola CPU: dispositivi senza accelerazione GPU dedicata, sui quali l'inferenza su CPU di YOLO26, fino al 43% più veloce, offre un vantaggio decisivo.
- Rilevamento di oggetti di piccole dimensioni: scenari complessi come le immagini aeree acquisite da droni o l'analisi dei sensori IoT, in cui ProgLoss e STAL migliorano notevolmente la precisione sugli oggetti molto piccoli.
L'alternativa Ultralytics: far progredire lo stato dell'arte#
Sebbene RTDETRv2 ed EfficientDet abbiano entrambi punti di forza notevoli, lo sviluppo moderno dell'IA richiede framework che offrano una developer experience fluida insieme a prestazioni all'avanguardia. L'ecosistema Ultralytics offre un approccio decisamente più snello alle attività di visione artificiale.
Se stai esplorando le tecnologie di rilevamento più avanzate, il nuovo Ultralytics YOLO26 combina i migliori aspetti delle CNN e dei Transformer.
YOLO26 implementa un design end-to-end senza NMS facoltativo (nms=False), portando la semplicità di distribuzione di RTDETRv2 nell'architettura YOLO ultraefficiente. Inoltre, introduce l'ottimizzatore MuSGD, ispirato alle innovazioni nell'addestramento degli LLM, per una maggiore stabilità dell'addestramento. Grazie alla rimozione di DFL (Distribution Focal Loss rimossa per semplificare l'esportazione e migliorare la compatibilità con i dispositivi edge e a basso consumo), YOLO26 offre un'inferenza su CPU fino al 43% più veloce rispetto alle generazioni precedenti, rivelandosi un'ottima scelta per l'edge computing rispetto ai modelli più pesanti. Inoltre, ProgLoss + STAL introduce funzioni di perdita migliorate che aumentano notevolmente il riconoscimento degli oggetti di piccole dimensioni, aspetto cruciale per IoT, robotica e immagini aeree.
La facilità d'uso offerta dal pacchetto Python di Ultralytics è senza pari. Gli sviluppatori possono addestrare, convalidare ed esportare modelli tramite un'API intuitiva che astrae il codice boilerplate solitamente richiesto dai repository di ricerca.
from ultralytics import RTDETR
# Carica un modello RT-DETR preaddestrato dall'ecosistema Ultralytics
model = RTDETR("rtdetr-l.pt")
# Addestra il modello sul dataset COCO8
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Esporta per un'inferenza ottimizzata su TensorRT
model.export(format="engine")I modelli Ultralytics supportano nativamente diverse attività, tra cui la segmentazione di istanze e la classificazione di immagini, offrendo un toolkit versatile per le diverse esigenze del settore. Inoltre, la rimozione di Distribution Focal Loss (DFL) dai moderni modelli Ultralytics semplifica il grafo computazionale e garantisce un'esportazione più fluida su NPU e TPU integrate.
Per semplificare l'annotazione dei dati e la gestione dei modelli, la piattaforma Ultralytics offre un ambiente cloud completo per gestire l'intero ciclo di vita del machine learning, affermandosi come la scelta migliore per distribuire in produzione soluzioni robuste di visione artificiale.