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

YOLOv7 vs DAMO-YOLO#

Il rilevamento di oggetti in tempo reale continua a evolversi, mentre ricercatori e ingegneri cercano il miglior equilibrio tra velocità e accuratezza. Questo confronto tecnico esamina due architetture importanti del 2022: YOLOv7 e DAMO-YOLO. Entrambi i modelli hanno introdotto nuovi concetti nel campo della visione artificiale, affrontando sfide diverse nell’addestramento dei modelli, nella progettazione architetturale e nella distribuzione.

Contesto e dettagli tecnici dei modelli#

Entrambi i modelli sono stati sviluppati da importanti gruppi di ricerca e hanno introdotto nuovi metodi per migliorare il rilevamento di oggetti in tempo reale.

Dettagli su YOLOv7#

Sviluppato come continuazione della famiglia YOLO, YOLOv7 ha introdotto il concetto di "bag-of-freebies" addestrabile per migliorare notevolmente l'accuratezza senza aumentare il costo dell'inferenza.

Scopri di più su YOLOv7

Dettagli su DAMO-YOLO#

Creato dai ricercatori di Alibaba Group, DAMO-YOLO si è concentrato in particolare sulla ricerca di architetture neurali (NAS) e sulla distillazione della conoscenza per creare modelli efficienti per hardware diversi.

Scopri di più su DAMO-YOLO

Innovazioni architetturali#

YOLOv7: analisi dei percorsi del gradiente e riparametrizzazione#

YOLOv7 si basa in larga misura sulle Extended Efficient Layer Aggregation Networks (E-ELAN). Gli autori hanno progettato E-ELAN analizzando i percorsi del gradiente della rete e assicurandosi che la rete possa apprendere continuamente senza compromettere il percorso del gradiente originale. Inoltre, YOLOv7 usa la riparametrizzazione del modello in fase di inferenza, fondendo i layer per ridurre i FLOPs e accelerare l’esecuzione. Questo lo rende particolarmente adatto all’inferenza in tempo reale sulle GPU moderne.

DAMO-YOLO: ricerca dell'architettura neurale e RepGFPN#

DAMO-YOLO si distingue per l'uso intensivo della ricerca dell'architettura neurale (NAS) con vincoli di latenza. Utilizza un framework chiamato MAE-NAS per individuare backbone ottimali per hardware specifici, come dispositivi mobili o acceleratori edge specifici. Per il neck introduce un RepGFPN efficiente (rete piramidale generalizzata delle caratteristiche riparametrizzata) e impiega un design ZeroHead per ridurre al minimo il carico computazionale delle teste di predizione.

Differenze nella distillazione

Mentre YOLOv7 si basa su solide ottimizzazioni architetturali intrinseche, DAMO-YOLO dipende fortemente da un complesso processo di distillazione della conoscenza a più fasi. Per trasferire la conoscenza a un modello studente più piccolo, è necessario addestrare un modello insegnante di grandi dimensioni, un processo che può essere costoso dal punto di vista computazionale durante l'addestramento.

Confronto delle prestazioni e delle metriche#

Quando confronti questi modelli, è fondamentale considerare mAP (precisione media), velocità di inferenza e complessità del modello.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

La tabella precedente mostra che YOLOv7 si adatta bene ai contesti che richiedono alta accuratezza (YOLOv7x), mentre DAMO-YOLO offre modelli tiny altamente ottimizzati per ambienti con risorse limitate.

Efficienza dell'addestramento e requisiti di memoria#

Una differenza sostanziale tra le due architetture riguarda le metodologie di addestramento. La dipendenza di DAMO-YOLO dalla distillazione fa sì che addestrare un nuovo modello da zero o eseguire il fine-tuning su un dataset di computer vision personalizzato richieda spesso molta più VRAM e tempo di calcolo GPU.

Al contrario, i modelli supportati nativamente dall’ecosistema Ultralytics, come YOLOv8 e le versioni successive, sono ottimizzati per un basso consumo di memoria durante l’addestramento. Consentono agli sviluppatori di usare batch più grandi su hardware consumer senza incorrere in errori di memoria esaurita, semplificando il monitoraggio degli esperimenti e il processo iterativo.

I vantaggi di Ultralytics#

Sebbene YOLOv7 e DAMO-YOLO offrano entrambi funzionalità interessanti, distribuire modelli nell’ecosistema Ultralytics offre un’esperienza di sviluppo più semplice.

  • Facilità d'uso: il pacchetto Python Ultralytics offre un'API unificata e semplice. Puoi passare rapidamente da un'architettura all'altra, avviare cicli di addestramento o eseguire l'inferenza con poche righe di codice.
  • Ecosistema gestito in modo eccellente: Ultralytics fornisce aggiornamenti frequenti, garantendo la compatibilità nativa con le versioni più recenti di PyTorch e i driver CUDA. Inoltre, semplifica l'esportazione dei modelli in formati come ONNX, TensorRT e OpenVINO.
  • Versatilità: A differenza di DAMO-YOLO, che si limita al rilevamento di oggetti, l’ecosistema Ultralytics supporta nativamente diverse attività. I modelli della famiglia Ultralytics possono eseguire il rilevamento standard delle bounding box, la segmentazione delle istanze, la classificazione delle immagini, la stima della posa e le bounding box orientate (OBB); YOLO26 aggiunge la segmentazione semantica e la stima della profondità.

Esempio di codice: iniziare rapidamente#

Ecco come caricare, addestrare ed eseguire l’inferenza con i modelli Ultralytics:

from ultralytics import YOLO

# Carica un modello YOLO26 pretrained (Ultralytics non supporta i pesi YOLOv7 nativi)
model = YOLO("yolo26n.pt")

# Addestra il modello sul dataset COCO8 con gestione automatizzata degli iperparametri
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Esegui l'inferenza su un'immagine
predictions = model("https://ultralytics.com/images/bus.jpg")

# Esporta in formato ONNX per la distribuzione
model.export(format="onnx")
Esportazione dei modelli

Con Ultralytics, puoi esportare i pesi addestrati in vari formati con accelerazione hardware, come TensorRT o CoreML, usando un solo argomento nel comando di esportazione, senza script di conversione separati.

La nuova generazione: YOLO26#

YOLOv7 resta un’architettura legacy valida, ma il settore è progredito rapidamente. Per le nuove distribuzioni, Ultralytics YOLO26, rilasciato a gennaio 2026, è la scelta consigliata e migliora le generazioni precedenti sia in accuratezza sia in velocità su CPU.

  • Design end-to-end senza NMS: basandosi sull'addestramento senza NMS che YOLOv10 ha introdotto nei modelli YOLO, la head one-to-one opzionale di YOLO26 (nms=False) salta il post-processing della soppressione non massima (NMS). Questo riduce la variabilità della latenza e semplifica il deployment per la robotica e i sistemi di guida autonoma.
  • Ottimizzatore MuSGD: Ispirato alle tecniche avanzate di addestramento degli LLM, come Kimi K2 di Moonshot AI, questo ottimizzatore ibrido combina SGD e Muon per ottenere un addestramento più stabile e una convergenza più rapida.
  • Inferenza su CPU fino al 43% più veloce: Eliminando la Distribution Focal Loss (DFL), YOLO26 semplifica l’esportazione e accelera l’inferenza sui dispositivi edge e sulle CPU; YOLO26n funziona su CPU fino al 43% più velocemente di YOLO11n.
  • ProgLoss + STAL: Una loss progressiva e una strategia di assegnazione delle etichette consapevole degli oggetti piccoli migliorano il rilevamento degli oggetti di piccole dimensioni, rendendo YOLO26 particolarmente adatto alle immagini aeree e alla sorveglianza dettagliata.

Casi d'uso ideali#

Quando scegliere DAMO-YOLO#

  • Ricerca accademica sulla NAS: se la tua organizzazione è fortemente impegnata nello studio delle metodologie di ricerca dell'architettura neurale.
  • Latenza estremamente vincolata su hardware specifico: se hai le risorse per eseguire ricerche NAS esaustive e individuare un backbone personalizzato per un chip acceleratore AI su misura.

Quando scegliere YOLOv7#

  • Pipeline GPU esistenti: per i team che mantengono pipeline di produzione legacy, profondamente ottimizzate per l'architettura E-ELAN specifica di YOLOv7 su hardware NVIDIA di fascia alta.

Perché migrare ai modelli Ultralytics moderni (YOLO11 / YOLO26)#

Per la stragrande maggioranza delle applicazioni aziendali, dall’analisi del settore retail alla produzione intelligente e all’assistenza sanitaria, i moderni modelli Ultralytics sono la scelta pratica predefinita. L’integrazione con la Ultralytics Platform offre una pipeline ML completa, con un’API semplice, documentazione approfondita, una community attiva e supporto per più attività. Che tu debba monitorare l’inventario su un Raspberry Pi o eseguire analisi complesse nel cloud, modelli come YOLO26 offrono un ottimo equilibrio tra velocità e accuratezza.

Commenti