Ultralytics YOLO27:
Get Started

YOLOv7 vs DAMO-YOLO#

Il panorama del rilevamento di oggetti in tempo reale è in continua evoluzione, mentre ricercatori e ingegneri cercano il giusto equilibrio tra velocità e accuratezza. In questo confronto tecnico analizzeremo in dettaglio due architetture degne di nota del 2022: YOLOv7 e DAMO-YOLO. Entrambi i modelli hanno introdotto concetti innovativi nel campo della computer vision, affrontando sfide diverse nell'addestramento dei modelli, nella progettazione delle architetture e nella distribuzione.

Contesto e dettagli tecnici dei modelli#

Prima di esaminare le rispettive architetture, è essenziale comprendere le origini di questi due modelli. Entrambi sono stati sviluppati da gruppi di ricerca di primo piano e hanno introdotto metodologie avanzate per superare i limiti del 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 da ricercatori di Alibaba Group, DAMO-YOLO si è concentrato soprattutto sulla ricerca dell'architettura neurale (NAS) e sulla distillazione avanzata della conoscenza, per realizzare modelli altamente efficienti su hardware diversi.

Scopri di più su DAMO-YOLO

Innovazioni architetturali#

YOLOv7: analisi dei percorsi del gradiente e riparametrizzazione#

YOLOv7 si concentra in particolare sulle reti di aggregazione dei layer efficienti estese (E-ELAN). Gli autori hanno progettato E-ELAN analizzando i percorsi del gradiente della rete, assicurandosi che la rete possa continuare ad apprendere senza alterare il percorso del gradiente originale. Inoltre, YOLOv7 utilizza efficacemente la riparametrizzazione del modello durante l'inferenza, fondendo i layer senza interruzioni per ridurre i FLOPs e accelerare i tempi di 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 fortemente ottimizzati per il consumo di memoria. Consentono agli sviluppatori di usare batch size più grandi su hardware consumer senza incorrere in errori di memoria esaurita, semplificando il tracciamento degli esperimenti e il processo iterativo.

I vantaggi di Ultralytics#

Sebbene YOLOv7 e DAMO-YOLO offrano entrambi funzionalità interessanti, distribuire modelli nell'ecosistema Ultralytics garantisce un'esperienza di sviluppo senza pari.

  • 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 è esclusivamente un rilevatore di oggetti, l'ecosistema Ultralytics supporta nativamente diverse attività. I modelli della famiglia Ultralytics possono eseguire il rilevamento standard con bounding box, la stima della posa, la segmentazione di istanze e le bounding box orientate (OBB).

Esempio di codice: iniziare rapidamente#

Ecco quanto è semplice 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, esportare i pesi addestrati in vari formati con accelerazione hardware (come TensorRT o CoreML) richiede un solo argomento nel comando di esportazione, risparmiando ore di complesse configurazioni degli script.

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) è lo standard consigliato e supera le generazioni precedenti in quasi tutte le metriche.

  • Design end-to-end senza NMS: introdotta per la prima volta in YOLOv10, la testa one-to-one opzionale di YOLO26 (nms=False) elimina la post-elaborazione con soppressione dei massimi locali (NMS). Questo garantisce un'inferenza deterministica e a latenza bassissima, fondamentale per la robotica e le tecnologie di guida autonoma.
  • Ottimizzatore MuSGD: ispirato a tecniche avanzate di addestramento degli LLM, come Kimi K2 di Moonshot AI, questo ottimizzatore ibrido combina SGD e Muon per garantire un addestramento altamente stabile e una convergenza più rapida su diversi dataset.
  • Inferenza CPU fino al 43% più veloce: eliminando strategicamente Distribution Focal Loss (DFL), YOLO26 migliora notevolmente le prestazioni sulle piattaforme di edge computing e sulle CPU.
  • ProgLoss + STAL: queste funzioni di perdita avanzate migliorano notevolmente il rilevamento degli oggetti piccoli, 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 maggior parte delle applicazioni aziendali, dall'analisi del commercio al dettaglio alla produzione intelligente fino all'assistenza sanitaria, i modelli Ultralytics moderni non hanno rivali. L'integrazione con la Ultralytics Platform offre una pipeline ML completa, con facilità d'uso, documentazione superiore, solido supporto della community e versatilità multi-task. Che tu debba tracciare l'inventario su un Raspberry Pi o eseguire analisi complesse nel cloud, modelli come YOLO26 offrono il compromesso prestazionale ideale per il futuro della computer vision.

Commenti