Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Get Started

YOLOv10 vs EfficientDet#

La scelta della rete neurale ottimale per il rilevamento di oggetti è una decisione fondamentale per i moderni sistemi di visione artificiale. Due architetture che hanno influenzato il settore sono YOLOv10 ed EfficientDet. Entrambe mirano a massimizzare la precisione riducendo al minimo il carico computazionale, ma adottano approcci architetturali molto diversi.

Questa guida illustra i design, le metodologie di addestramento e le caratteristiche di distribuzione, aiutando sviluppatori e ingegneri ML a prendere decisioni basate sui dati per le applicazioni di IA visiva. Esamina anche le prestazioni su hardware che va dai dispositivi edge AI integrati alle potenti GPU cloud.

YOLOv10: rilevamento in tempo reale senza NMS#

Sviluppato per ridurre la latenza in tempo reale, YOLOv10 ha affrontato uno dei colli di bottiglia più persistenti della famiglia YOLO: la soppressione non massima (NMS). Eliminando questa fase di post-elaborazione, il modello raggiunge una latenza prevedibile, fondamentale per i veicoli autonomi e la robotica ad alta velocità.

Innovazioni architetturali#

YOLOv10 introduce assegnazioni doppie coerenti per l'addestramento senza NMS. Durante l'addestramento utilizza assegnazioni delle etichette sia uno-a-molti sia uno-a-uno, consentendo alla rete di apprendere rappresentazioni ricche e di produrre una singola box di delimitazione per oggetto durante l'inferenza. L'architettura integra inoltre un design olistico orientato all'efficienza e alla precisione, semplificando la testa di classificazione e riducendo la ridondanza computazionale delle versioni precedenti.

Dettagli del modello#

Distribuzione semplificata

Poiché YOLOv10 elimina il passaggio NMS, è intrinsecamente più facile esportarlo in formati come il formato ONNX e NVIDIA TensorRT, senza dover ricorrere a plug-in runtime personalizzati per filtrare le bounding box.

Punti di forza:

  • Inferenza prevedibile: eliminare NMS garantisce tempi di inferenza costanti, indipendentemente dal numero di oggetti nella scena.
  • Minore utilizzo di memoria: rispetto ai modelli basati su Transformer come RT-DETR, YOLOv10 richiede meno memoria sia durante l'addestramento sia durante l'inferenza.
  • Eccellente compromesso tra velocità e accuratezza: ottimizzato specificamente per gli scenari a bassa latenza senza sacrificare le metriche di prestazione.

Punti deboli:

Scopri di più su YOLOv10

EfficientDet: scalabile e bilanciato#

Introdotto da Google Brain, EfficientDet affronta il rilevamento di oggetti attraverso un approccio sistematico alla scalabilità delle reti. Si basa sul backbone EfficientNet per la classificazione delle immagini e introduce un nuovo meccanismo di fusione delle caratteristiche.

Innovazioni architetturali#

Il fulcro di EfficientDet è la rete piramidale bidirezionale delle caratteristiche (BiFPN), che consente una fusione semplice e rapida delle caratteristiche su più scale. A differenza delle FPN tradizionali, che sommano le caratteristiche solo dall'alto verso il basso, BiFPN introduce connessioni bidirezionali tra le scale e pesi addestrabili per apprendere l'importanza delle diverse caratteristiche di input. Inoltre, EfficientDet usa un metodo di scaling composto che ridimensiona uniformemente risoluzione, profondità e larghezza di tutte le reti backbone, delle caratteristiche e di predizione di box e classi.

Dettagli del modello#

Punti di forza:

  • Elevata efficienza: ottimo rapporto tra numero di parametri e accuratezza, che rende molto leggere le varianti più piccole, da -d0 a -d2.
  • Scalabilità rigorosa: lo scaling composto permette di scegliere facilmente una dimensione del modello adatta al proprio budget computazionale.

Punti deboli:

  • Integrazione con framework legacy: l'implementazione originale si basa su versioni più datate di TensorFlow, che possono complicare le pipeline di distribuzione moderne.
  • Addestramento più lento: addestrare EfficientDet da zero è lento e richiede un'attenta regolazione degli iperparametri rispetto alla rapida convergenza delle architetture YOLO.
  • Velocità di inferenza: nonostante l’efficienza in termini di parametri, le operazioni BiFPN complesse spesso comportano velocità di inferenza reali più basse sull’hardware standard rispetto ai modelli YOLO altamente ottimizzati.

Scopri di più su EfficientDet

Prestazioni e benchmark#

La prova concreta di questi modelli è la loro prestazione empirica su benchmark standard come il dataset COCO. La tabella seguente illustra le differenze principali nel numero di parametri, nelle operazioni in virgola mobile (FLOP) e nella latenza di inferenza sulle GPU NVIDIA T4.

Modellodimensione
(pixel)
mAPval50-95Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv10n64038.5-1.842.36.7
YOLOv10s64046.3-2.497.221.6
YOLOv10m64051.1-4.7415.459.1
YOLOv10b64052.5-5.7419.192.0
YOLOv10l64053.2-7.2824.4120.3
YOLOv10x64054.4-10.7029.5160.4
EfficientDet-d051234.6-3.923.92.54
EfficientDet-d164040.5-7.316.66.1
EfficientDet-d276843.0-10.928.111.0
EfficientDet-d389647.5-19.5912.024.9
EfficientDet-d4102449.7-33.5520.755.2
EfficientDet-d5128051.5-67.8633.7130.0
EfficientDet-d6128052.6-89.2951.9226.0
EfficientDet-d7153653.7-128.0751.9325.0

YOLOv10 ha un netto vantaggio nella velocità di inferenza su GPU. Per esempio, YOLOv10s raggiunge 46.3 mAP con una latenza TensorRT di 2.49 ms, mentre EfficientDet-d3 raggiunge un risultato simile, 47.5 mAP, ma impiega 19.59 ms. Nella fascia alta, YOLOv10m (51.1 mAP, 4.74 ms) si avvicina a EfficientDet-d5 (51.5 mAP, 67.86 ms). Questo rende YOLOv10 molto più adatto allo streaming video in tempo reale e alle linee di produzione ad alta velocità. EfficientDet-d0 ha il numero più basso di FLOP nella tabella (2.54B).

Casi d'uso e consigli#

La scelta tra YOLOv10 ed EfficientDet dipende dai requisiti specifici del progetto, dai vincoli di distribuzione e dalle preferenze per l’ecosistema.

Quando scegliere YOLOv10#

YOLOv10 è una scelta valida per:

  • Rilevamento in tempo reale senza NMS: applicazioni che traggono vantaggio dal rilevamento end-to-end senza soppressione non massima, riducendo la complessità della distribuzione.
  • Compromesso equilibrato tra velocità e precisione: progetti che richiedono un buon equilibrio tra velocità di inferenza e precisione di rilevamento con modelli di diverse dimensioni.
  • Applicazioni con latenza costante: scenari di distribuzione in cui i tempi di inferenza prevedibili sono fondamentali, ad esempio nella robotica o nei sistemi autonomi.

Quando scegliere EfficientDet#

EfficientDet è consigliato per:

  • Google Cloud e pipeline TPU: sistemi basati su TensorFlow nell’infrastruttura Google Cloud TPU, dove l’implementazione di riferimento di EfficientDet supporta l’addestramento su TPU.
  • 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 senza GPU: Dispositivi privi di accelerazione GPU dedicata, sui quali l’inferenza CPU di YOLO26n, fino al 43% più veloce di YOLO11n, offre un vantaggio decisivo.
  • Rilevamento di oggetti piccoli: Scenari complessi come le immagini aeree riprese da droni o l’analisi dei sensori IoT, in cui ProgLoss e STAL migliorano la precisione sugli oggetti piccoli.

Il nuovo standard: arriva Ultralytics YOLO26#

YOLOv10 ha introdotto il rilevamento YOLO senza NMS ed EfficientDet ha mostrato il valore di uno scaling rigoroso, ma la visione artificiale ha continuato a evolversi. Per gli sviluppatori che avviano nuovi progetti oggi, il modello consigliato è Ultralytics YOLO26. Rilasciato a gennaio 2026, combina queste idee in un pacchetto pronto per la produzione, supportato dalla Piattaforma Ultralytics.

Perché YOLO26 supera la concorrenza#

  1. Design end-to-end senza NMS: YOLO26 offre il design end-to-end senza NMS di YOLOv10 come testa one-to-one opzionale (nms=False), snellendo la distribuzione e accelerando l'inferenza.
  2. Inferenza CPU fino al 43% più veloce: per i dispositivi edge senza acceleratori dedicati, YOLO26n è fino al 43% più veloce di YOLO11n sulle CPU standard.
  3. Ottimizzatore MuSGD avanzato: ispirato ai metodi di addestramento dei modelli linguistici di grandi dimensioni (LLM), YOLO26 usa un approccio ibrido tra SGD e Muon per un addestramento stabile e una convergenza rapida, migliorando l'efficienza dell'addestramento rispetto a EfficientDet.
  4. ProgLoss + STAL: Progressive Loss e Small-Target-Aware Label Assignment (STAL) migliorano il riconoscimento degli oggetti piccoli, un ambito in cui i rilevatori precedenti spesso hanno difficoltà.
  5. Rimozione di DFL: l'eliminazione di Distribution Focal Loss semplifica l'esportazione verso numerosi formati hardware, tra cui OpenVINO e CoreML.

YOLO26 offre anche maggiore versatilità. Mentre EfficientDet e YOLOv10 sono modelli per il rilevamento, YOLO26 gestisce anche la segmentazione di istanze, la segmentazione semantica, la stima della profondità, la classificazione delle immagini, la stima della posa e le box di delimitazione orientate usando lo stesso pacchetto Python Ultralytics.

Un ecosistema mantenuto attivamente

Sia YOLO11 sia YOLOv8 continuano a essere pienamente supportati nell’ecosistema Ultralytics. Per ottenere la migliore combinazione di prestazioni, stabilità e supporto a lungo termine, ti consigliamo di usare modelli Ultralytics mantenuti ufficialmente.

Facilità d’uso con Ultralytics#

L'ecosistema Ultralytics, ben mantenuto, garantisce un'esperienza di sviluppo fluida. Per addestrare un modello, convalidarlo ed esportarlo in TensorRT bastano poche righe di codice.

from ultralytics import YOLO

# Carica un modello YOLOv10 preaddestrato (oppure passa a YOLO26 in modo nativo)
model = YOLO("yolov10n.pt")

# Addestra il modello in modo efficiente su un dataset personalizzato
model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Esegui l'inferenza e visualizza subito i risultati
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()

# Esporta per una distribuzione rapida
model.export(format="engine", quantize=16)

Conclusione#

Nel confronto tra YOLOv10 ed EfficientDet, la scelta dipende dalle preferenze per i framework e dai vincoli di velocità. EfficientDet offre un approccio strutturato alla scalabilità dei modelli nell'ecosistema TensorFlow. YOLOv10, tuttavia, garantisce prestazioni in tempo reale più rapide, un minore utilizzo di memoria e un percorso di distribuzione più semplice grazie alla sua architettura senza NMS.

Per il miglior equilibrio tra prestazioni, semplicità d'uso e versatilità multi-task, consigliamo YOLO26 sulla Piattaforma Ultralytics. Adotta l'approccio senza NMS di YOLOv10, aggiunge tecniche di addestramento più recenti come l'ottimizzatore MuSGD ed è disponibile in un framework open source supportato da un'ampia comunità globale.

Commenti