YOLOv9 vs DAMO-YOLO#
La rapida evoluzione della visione artificiale ha prodotto una serie di architetture potenti, pensate per diversi vincoli di distribuzione e requisiti di accuratezza. Due modelli di rilievo in questo ambito sono YOLOv9, noto per la sua efficace gestione dei colli di bottiglia informativi, e DAMO-YOLO, fortemente incentrato sulla ricerca di architetture neurali (NAS) e sulle piramidi di caratteristiche efficienti.
Questa guida propone un confronto tecnico approfondito tra YOLOv9 e DAMO-YOLO, mettendone in evidenza le differenze architetturali, le metodologie di addestramento e gli scenari di distribuzione ideali. Vedremo anche come l'ecosistema Ultralytics offra un percorso fluido dallo sviluppo alla produzione e perché modelli moderni come YOLO26 siano diventati lo standard consigliato per i nuovi progetti.
Approfondimento sull’architettura#
Comprendere i meccanismi fondamentali alla base di ciascun modello aiuta a spiegare le differenze di prestazioni nelle varie metriche.
YOLOv9: informazioni di gradiente programmabili#
YOLOv9 è stato progettato per affrontare direttamente la perdita di informazioni che si verifica quando i dati attraversano reti neurali profonde.
- Autori: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organizzazione: Institute of Information Science, Academia Sinica, Taiwan
- Data: 21 febbraio 2024
- Link: Arxiv, GitHub, Documentazione
YOLOv9 introduce le Informazioni programmabili sul gradiente (PGI) e la Rete di aggregazione dei livelli efficiente generalizzata (GELAN). PGI garantisce che le informazioni spaziali e semantiche essenziali vengano conservate durante il processo feed-forward, impedendo il deterioramento dei gradienti utilizzati per aggiornare i pesi. GELAN completa questo approccio massimizzando l'efficienza dei parametri, consentendo al modello di raggiungere risultati all'avanguardia nella precisione media (mAP) con meno FLOPs rispetto a molte CNN convenzionali.
DAMO-YOLO: efficienza basata sulla NAS#
Sviluppato da Alibaba Group, DAMO-YOLO adotta un approccio diverso e sfrutta la ricerca automatizzata delle architetture per trovare il bilanciamento ottimale tra velocità e accuratezza.
- Autori: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang e Xiuyu Sun
- Organizzazione: Alibaba Group
- Data: 23 novembre 2022
- Link: Arxiv, GitHub
DAMO-YOLO si basa su un backbone MAE-NAS (Maximum Entropy Neural Architecture Search) per generare automaticamente strutture di rete efficienti. Utilizza una RepGFPN (Reparameterized Generalized Feature Pyramid Network) per una fusione robusta delle caratteristiche e una progettazione "ZeroHead" per ridurre al minimo il carico computazionale della testa di rilevamento. Inoltre, integra AlignedOTA per l'assegnazione delle etichette e la distillazione della conoscenza, migliorando le prestazioni delle varianti più piccole.
La ricerca di architetture neurali (NAS) automatizza la progettazione delle reti neurali artificiali. Può produrre modelli altamente efficienti come DAMO-YOLO, ma spesso richiede enormi risorse computazionali per esplorare lo spazio delle architetture, a differenza della filosofia progettuale più deterministica di modelli come YOLOv9.
Confronto delle prestazioni e delle metriche#
Quando selezioni un modello di rilevamento degli oggetti, è fondamentale bilanciare accuratezza, velocità e ingombro computazionale.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
Analisi#
- Accuratezza e parametri: YOLOv9 offre in genere un rapporto parametri-accuratezza superiore. Per esempio, YOLOv9c raggiunge un mAP del 53.0% con 25.5M di parametri, mentre DAMO-YOLOl raggiunge un mAP del 50.8%, ma richiede molti più parametri (42.1M).
- Velocità di inferenza: l'architettura di DAMO-YOLO offre velocità di inferenza TensorRT competitive sulle GPU T4, superando di poco YOLOv9 nelle fasce intermedie. Tuttavia, l'efficienza di YOLOv9 in termini di FLOPs e numero di parametri si traduce in un'eccellente efficienza della memoria GPU.
- Requisiti di memoria: i modelli YOLO di Ultralytics, incluso YOLOv9, presentano in genere un consumo di memoria inferiore durante l'addestramento e l'inferenza rispetto ai complessi modelli generati tramite NAS o alle architetture Transformer più pesanti, risultando quindi molto accessibili per la distribuzione su hardware edge con risorse limitate.
I vantaggi dell’ecosistema Ultralytics#
Le metriche teoriche sono importanti, ma il successo di un progetto dipende in larga misura dalla sua implementazione pratica. È qui che la Piattaforma Ultralytics e il suo ecosistema software completo si distinguono da repository autonomi come DAMO-YOLO.
Facilità d'uso ed efficienza dell'addestramento#
Addestrare un modello YOLOv9 personalizzato richiede pochissimo codice boilerplate. La API Python di Ultralytics astrae processi complessi come l'aumento dei dati, l'addestramento distribuito e l'ottimizzazione hardware.
from ultralytics import YOLO
# Carica un modello YOLOv9 preaddestrato
model = YOLO("yolov9c.pt")
# Addestra il modello sul tuo dataset personalizzato
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Convalida le prestazioni del modello
metrics = model.val()
# Esporta il modello per la distribuzione in produzione
model.export(format="onnx")Al contrario, utilizzare DAMO-YOLO spesso richiede di destreggiarsi tra file di configurazione rigidi e catene di dipendenze complesse, specifiche della sua particolare pipeline di addestramento, con una conseguente curva di apprendimento più ripida.
Versatilità in diverse attività#
Una caratteristica distintiva dei modelli Ultralytics è la loro versatilità intrinseca. Oltre al rilevamento standard delle caselle delimitatrici, il framework Ultralytics supporta senza problemi attività come la segmentazione di istanze, la stima della posa, la classificazione delle immagini e il rilevamento di caselle delimitatrici orientate (OBB). DAMO-YOLO è ottimizzato esclusivamente per il rilevamento di oggetti 2D e richiede una notevole riprogettazione per adattarsi ad altri paradigmi visivi.
Ultralytics semplifica la pipeline di distribuzione offrendo l'esportazione del modello con un clic in formati come TensorRT, OpenVINO e CoreML, garantendo prestazioni massime indipendentemente dall'hardware di destinazione.
Casi d'uso e consigli#
La scelta tra YOLOv9 e DAMO-YOLO dipende dai requisiti specifici del tuo progetto, dai vincoli di distribuzione e dalle tue preferenze in fatto di ecosistemi.
Quando scegliere YOLOv9#
YOLOv9 è una scelta valida per:
- Ricerca sui colli di bottiglia informativi: progetti accademici che studiano le informazioni di gradiente programmabili (PGI) e le architetture di rete di aggregazione efficiente generalizzata dei livelli (GELAN).
- Studi sull'ottimizzazione del flusso del gradiente: ricerche incentrate sulla comprensione e sulla riduzione della perdita di informazioni nei livelli delle reti profonde durante l'addestramento.
- Benchmark di rilevamento ad alta precisione: scenari in cui le prestazioni di YOLOv9 nei benchmark COCO servono come riferimento per confrontare le architetture.
Quando scegliere DAMO-YOLO#
DAMO-YOLO è consigliato per:
- Analisi video ad alto throughput: elaborazione di flussi video ad alto FPS su infrastrutture GPU NVIDIA fisse, dove il throughput con batch di dimensione 1 è la metrica principale.
- Linee di produzione industriale: scenari con rigidi vincoli di latenza GPU su hardware dedicato, come l'ispezione della qualità in tempo reale sulle linee di assemblaggio.
- Ricerca sulla ricerca di architetture neurali: studio degli effetti della ricerca automatizzata delle architetture (MAE-NAS) e dei backbone efficienti riparametrizzati sulle prestazioni di rilevamento.
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.
Il futuro: passare a YOLO26#
Sebbene YOLOv9 e DAMO-YOLO rappresentino importanti traguardi storici, la visione artificiale moderna si è orientata verso architetture end-to-end native. Per ogni nuovo sviluppo, YOLO26 è lo standard consigliato.
Rilasciato nel 2026, YOLO26 si basa sui successi dei suoi predecessori e offre un salto in avanti sia in termini di accuratezza sia di semplicità di distribuzione.
Principali innovazioni di YOLO26#
- Design end-to-end senza NMS: la testa one-to-one opzionale di YOLO26 (
nms=False) elimina completamente la fase di post-elaborazione con soppressione non massima (NMS). Ne risulta una pipeline di distribuzione semplificata, nativamente end-to-end: un'innovazione introdotta per la prima volta in YOLOv10. - Rimozione di DFL: la Distribution Focal Loss è stata rimossa per semplificare l'esportazione e migliorare la compatibilità con i dispositivi edge e a basso consumo.
- Inferenza su CPU fino al 43% più veloce: rimuovendo DFL e ottimizzando le convoluzioni principali, YOLO26 è particolarmente adatto agli scenari di edge computing privi di GPU dedicate.
- Ottimizzatore MuSGD: ispirandosi alle innovazioni nell'addestramento degli LLM, YOLO26 utilizza una combinazione di SGD e Muon (MuSGD) per garantire sessioni di addestramento più stabili e tempi di convergenza sensibilmente più rapidi.
- ProgLoss + STAL: queste funzioni di perdita avanzate migliorano notevolmente il riconoscimento degli oggetti piccoli, rendendo YOLO26 ideale per immagini aeree ad alta quota e dispositivi IoT.
Se stai valutando YOLO11 o YOLOv8 per il tuo prossimo progetto, passare a YOLO26 ti assicura di utilizzare oggi il framework di IA visiva più ottimizzato e all'avanguardia disponibile.
Riepilogo#
La scelta del modello giusto dipende dai tuoi specifici vincoli operativi:
- DAMO-YOLO offre uno sguardo interessante sull'ottimizzazione basata su NAS e garantisce velocità competitive per profili hardware molto specifici, sui quali la sua architettura RepGFPN dà il meglio.
- YOLOv9 è un'ottima scelta per chi fa ricerca e vuole preservare i dettagli visivi più fini, grazie alla sua architettura PGI, che previene la perdita di informazioni nelle reti profonde.
- Ultralytics YOLO26 è la scelta definitiva per le moderne applicazioni aziendali e di ricerca. La sua eccezionale semplicità d'uso, l'architettura senza NMS e le ottimizzazioni all'avanguardia per l'addestramento con MuSGD lo rendono il modello più affidabile, accurato e facile da distribuire nel panorama della visione artificiale.