DAMO-YOLO contro YOLO11: Un confronto tecnico
Nel panorama in rapida evoluzione della computer vision, la scelta del giusto modello di rilevamento degli oggetti è fondamentale per il successo delle applicazioni. Questo confronto completo analizza due architetture significative: YOLO, sviluppata da Alibaba Group, e Ultralytics YOLO11, l'ultimo modello all'avanguardia di Ultralytics. Sebbene entrambi i modelli mirino a ottimizzare il compromesso tra velocità e accuratezza, hanno scopi primari diversi e offrono vantaggi distinti a seconda dello scenario di implementazione.
Questa guida offre uno sguardo approfondito alle loro architetture, alle metriche delle prestazioni e ai casi d'uso ideali per aiutare sviluppatori e ricercatori a prendere decisioni informate.
DAMO-YOLO
Autori: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, and Xiuyu Sun
Organization:Alibaba Group
Date: 2022-11-23
Arxiv:https://arxiv.org/abs/2211.15444v2
GitHubYOLO
DocsYOLO
YOLO è un framework per il rilevamento di oggetti che integra diverse tecnologie all'avanguardia per ottenere prestazioni elevate. Si concentra sulla riduzione della latenza, pur mantenendo una precisione competitiva, grazie a una serie di innovazioni architettoniche frutto della ricerca di Alibaba.
Architettura e innovazione
YOLO introduce un approccio "Distill-and-Select" e incorpora i seguenti componenti chiave:
- Backbone MAE-NAS: Utilizzando la ricerca dell'architettura neurale (NAS), il backbone viene ottimizzato in base a vincoli specifici per garantire un'estrazione efficiente delle caratteristiche.
- RepGFPN efficiente: Una rete piramidale generalizzata di caratteristiche (GFPN) utilizza pesantemente i meccanismi di ri-parametrizzazione per migliorare la fusione delle caratteristiche su diverse scale senza incorrere in pesanti costi computazionali durante l'inferenza.
- ZeroHead: questa testa di rilevamento leggera disaccoppia i compiti di classificazione e regressione, con l'obiettivo di massimizzare la velocità di inferenza.
- AlignedOTA: una strategia di assegnazione delle etichette che risolve il disallineamento tra gli obiettivi di classificazione e regressione, migliorando la convergenza durante l'addestramento.
Pur presentando notevoli progressi teorici, YOLO è principalmente un framework orientato alla ricerca e incentrato sul rilevamento degli oggetti. In genere manca il supporto multi-task nativo che si trova in ecosistemi più completi.
Ultralytics YOLO11
Autori: Glenn Jocher, Jing Qiu
Organizzazione:Ultralytics
Data: 2024-09-27
GitHubultralytics
Docsyolo11
Ultralytics YOLO11 rappresenta l'apice della computer vision in tempo reale, perfezionando l'eredità della serie YOLO con significativi miglioramenti in termini di architettura, efficienza e facilità d'uso. È stato progettato non solo come modello, ma come strumento versatile per l'impiego pratico e reale in diversi ambienti hardware.
Architettura ed ecosistema
YOLO11 si basa sui successi precedenti con una raffinata architettura priva di ancoraggi. Presenta una spina dorsale migliorata per un'estrazione superiore delle caratteristiche e un design del collo modificato che migliora il flusso di informazioni a varie scale.
I principali vantaggi del framework Ultralytics YOLO11 includono:
- Versatilità: A differenza di molti concorrenti, YOLO11 supporta in modo nativo un'ampia gamma di attività, tra cui il rilevamento di oggetti, la segmentazione di istanze, la stima della posa, la classificazione di immagini e le bounding box orientate (OBB).
- Facilità d'uso: il modello è racchiuso in un'APIPython di facile utilizzo e in una CLIche lo rendono accessibile sia ai principianti che agli esperti.
- Efficienza di addestramento: Ottimizzato per una convergenza più rapida, YOLO11 utilizza funzioni efficienti di incremento dei dati e di perdita, consentendo agli utenti di addestrare modelli personalizzati su set di dati come COCO con un minore dispendio di risorse.
- Ecosistema ben curato: Sostenuto dalla Ultralytics gli utenti beneficiano di aggiornamenti frequenti, di un'ampia documentazione e di una perfetta integrazione con strumenti MLOps come Ultralytics HUB.
Lo sapevate?
YOLO11 è progettato per essere altamente efficiente sui dispositivi Edge AI. La sua architettura ottimizzata garantisce un basso utilizzo della memoria e un'elevata velocità di inferenza su hardware come NVIDIA Jetson e Raspberry Pi, rendendolo una scelta superiore per le applicazioni embedded rispetto ai modelli più pesanti basati su trasformatori.
Confronto delle prestazioni
Il grafico e la tabella seguenti illustrano le differenze di prestazioni tra YOLO e YOLO11. Ultralytics YOLO11 dimostra costantemente un'accuratezza superioremAP) e una velocità di inferenza favorevole, in particolare su hardware CPU dove YOLO non dispone di benchmark ufficiali.
| Modello | dimensione (pixel) | mAPval 50-95 | Velocità CPU ONNX (ms) | Velocità T4 TensorRT10 (ms) | parametri (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Analisi dei risultati
- Accuratezza: YOLO11 supera in modo significativo i modelli YOLO comparabili. Ad esempio, YOLO11m raggiunge una mAP 51,5, nettamente superiore a quella di DAMO-YOLOm di 49,2 mAP, nonostante abbia meno parametri (20,1M contro 28,2M).
- Velocità di inferenza: Su GPU (T4 TensorRT), YOLO11 offre una latenza altamente competitiva. YOLO11n è incredibilmente veloce, con una velocità di 1,5 ms, il che lo rende adatto alle applicazioni a bassissima latenza.
- PrestazioniCPU : Uno dei principali vantaggi dei modelli Ultralytics è la trasparenza delle prestazioni CPU . YOLO11 è ottimizzato per l'inferenza CPU tramite ONNX e OpenVINO, mentre YOLO si concentra fortemente sulla GPU, lasciando spesso indefinite le prestazioni di distribuzione della CPU .
- Efficienza del modello: YOLO11 dimostra un migliore equilibrio tra parametri e prestazioni. L'efficienza architettonica consente file di modello più piccoli, che si traducono in download più rapidi e in minori requisiti di archiviazione sui dispositivi edge.
Principali elementi di differenziazione e casi d'uso
Punti di forza di Ultralytics YOLO11
Sviluppatori che utilizzano Ultralytics YOLO11 hanno accesso a un robusto ambiente di produzione.
- Equilibrio delle prestazioni: L'architettura del modello è stata meticolosamente messa a punto per offrire il miglior compromesso tra velocità di inferenza e precisione, fondamentale per l'analisi video in tempo reale.
- Capacità multi-task: Se l'ambito del progetto si espande dal rilevamento al tracciamento o alla segmentazione, YOLO11 lo gestisce senza problemi all'interno della stessa base di codice.
- Facilità d'uso: Il
ultralyticssemplifica l'intera pipeline. Il caricamento di un modello, l'esecuzione delle previsioni e l'esportazione in formati come CoreML, TFLite o TensorRT possono essere effettuati con poche righe di codice. - Requisiti di memoria ridotti: Rispetto ai rilevatori basati su trasformatori o alle architetture non ottimizzate, YOLO11 richiede in genere meno memoria CUDA durante l'addestramento, consentendo ai ricercatori di effettuare l'addestramento su GPU di fascia consumer.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Train on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Punti di forza di YOLO
YOLO è un forte concorrente nei circoli di ricerca accademici.
- Innovazione nella ricerca: Funzioni come MAE-NAS e ZeroHead offrono spunti interessanti per la ricerca di architetture neurali e il disaccoppiamento delle teste.
- ThroughputGPU : Per applicazioni industriali specifiche eseguite esclusivamente sulle GPU supportate, YOLO offre un throughput elevato, anche se spesso è in ritardo rispetto a YOLO11 per quanto riguarda l'efficienza dell'accuratezza pura per parametro.
Conclusione
Mentre YOLO introduce i nuovi concetti del team di ricerca di Alibaba, Ultralytics YOLO11 si distingue come la scelta migliore per la stragrande maggioranza degli sviluppatori e delle aziende. La sua posizione dominante è definita non solo dalla maggiore mAP e dalla maggiore velocità di inferenza, ma anche dall'ecosistema completo che lo supporta.
Grazie alla facilità d'uso e alla versatilità, a una base di codice ben curata e al supporto attivo della comunità, YOLO11 abbassa la barriera d'ingresso per la creazione di soluzioni AI avanzate. Sia che si tratti di implementazione su server cloud o su dispositivi edge con risorse limitate, YOLO11 offre l'affidabilità e le prestazioni necessarie per le moderne applicazioni di computer vision.
Esplora altri confronti tra modelli
Per capire meglio come i modelli Ultralytics si confrontano con altre architetture, esplorate le nostre pagine di confronto dettagliate: