Vai al contenuto

YOLO . YOLOv9: progressi nel rilevamento di oggetti in tempo reale

Il panorama del rilevamento degli oggetti è in continua evoluzione, con i ricercatori che spingono costantemente i limiti di accuratezza, latenza ed efficienza. Due architetture degne di nota che hanno avuto un impatto significativo nella comunità della visione artificiale sono YOLO, sviluppata da Alibaba Group, e YOLOv9, creata dai ricercatori dell'Accademia Sinica.

Sebbene entrambi i modelli mirino a risolvere la sfida del rilevamento in tempo reale, affrontano il problema con filosofie architetturali distinte.YOLO la ricerca dell'architettura neurale (NAS) e una pesante riparametrizzazione per ottimizzare la bassa latenza, mentre YOLOv9 concetti come le informazioni sul gradiente programmabile (PGI) per massimizzare la conservazione delle informazioni durante il processo di deep learning.

YOLO (Distillation-Enhanced Neural Architecture Search for You Only Look Once) è stato introdotto alla fine del 2022, concentrandosi sul rigoroso bilanciamento tra prestazioni e velocità per le applicazioni industriali.

Caratteristiche architettoniche chiave

YOLO basa su tre tecnologie fondamentali progettate per ottenere le massime prestazioni da risorse hardware limitate:

  1. Backbone MAE-NAS: a differenza dei backbone progettati manualmente,YOLO una ricerca dell'architettura neurale basata su un autoencoder mascherato (MAE) per trovare la struttura di rete ottimale. Il risultato è una struttura matematicamente adattata a specifici vincoli computazionali.
  2. RepGFPN efficiente: utilizza una rete piramidale generalizzata delle caratteristiche (GFPN) potenziata con meccanismi di riparametrizzazione. Ciò consente al modello di godere dei vantaggi della fusione complessa delle caratteristiche multiscala durante l'addestramento, mentre durante l'inferenza si riduce a una struttura più semplice e veloce.
  3. ZeroHead & AlignedOTA: La testa di rilevamento, denominata "ZeroHead", è estremamente leggera per ridurre il carico computazionale degli strati finali di output. Inoltre, la strategia di assegnazione delle etichette, AlignedOTA, risolve i problemi di disallineamento tra le attività di classificazione e regressione durante l'addestramento.

Punti di forza e debolezze

Il punto di forza principale diYOLO il rapporto tra latenza e precisione. Per hardware industriali specifici, la dorsale derivata dal NAS può offrire un throughput superiore. Tuttavia, la dipendenza del modello da una complessa pipeline di addestramento di distillazione, in cui è necessario addestrare prima un modello "insegnante" più grande per guidare il modello più piccolo, può rendere il processo di addestramento macchinoso per gli sviluppatori che necessitano di iterazioni rapide. Inoltre, l'ecosistema intorno aYOLO meno attivo rispetto alla più ampia YOLO , limitando potenzialmente il supporto per i nuovi obiettivi di implementazione.

YOLOv9: Apprendimento con gradienti programmabili

YOLOv9, rilasciato all'inizio del 2024, affronta il problema della perdita di informazioni nelle reti profonde. Man mano che le reti neurali convoluzionali diventano più profonde, i dati essenziali necessari per mappare l'input all'output vengono spesso persi, un fenomeno noto come collo di bottiglia informativo.

Caratteristiche architettoniche chiave

YOLOv9 due concetti innovativi per mitigare la perdita di informazioni:

  1. Informazioni sul gradiente programmabile (PGI): PGI è un framework di supervisione ausiliario che genera gradienti affidabili per l'aggiornamento dei pesi della rete, garantendo che gli strati profondi conservino le informazioni semantiche critiche. Include un ramo ausiliario reversibile che viene utilizzato solo durante l'addestramento e rimosso per l'inferenza, senza comportare costi aggiuntivi durante l'implementazione.
  2. GELAN (Generalized Efficient Layer Aggregation Network): questa architettura combina le migliori caratteristiche di CSPNet ed ELAN. GELAN è progettato per essere leggero e veloce, supportando al contempo blocchi computazionali variabili e consentendo un numero di parametri rigorosamente controllato senza sacrificare il campo recettivo.

Punti di forza e debolezze

YOLOv9 in termini di precisione, stabilendo nuovi standard di riferimento sul COCO . La sua capacità di conservare le informazioni lo rende eccezionale per rilevare oggetti difficili che altri modelli potrebbero non individuare. Tuttavia, la complessità architettonica introdotta dai rami ausiliari può rendere il codice più difficile da modificare per attività personalizzate rispetto a progetti più semplici e modulari. Sebbene altamente efficaci sulle GPU, le aggregazioni di livelli specifici potrebbero non essere completamente ottimizzate per tutti i dispositivi edge CPU rispetto ai modelli progettati specificamente per tali obiettivi.

Scopri di più su YOLOv9

Confronto delle prestazioni

La tabella seguente evidenzia le metriche di prestazione diYOLO YOLOv9. Si noti il compromesso tra numero di parametri, carico computazionale (FLOP) e accuratezza (mAP).

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOPs
(B)
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
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0

Mentre YOLOv9 raggiunge generalmente una precisione massima più elevata (fino al 55,6% mAP), YOLO offre prestazioni competitive nel regime dei modelli di piccole dimensioni, sebbene a costo di un numero maggiore di parametri per la variante "tiny". YOLOv9t è significativamente più leggero in termini di FLOP (7,7G contro 18,1G), rendendolo potenzialmente migliore per dispositivi con risorse estremamente limitate, nonostante il mAP inferiore.

Il Vantaggio Ultralytics: Entra in YOLO26

SebbeneYOLO YOLOv9 risultati accademici significativi, gli sviluppatori che si concentrano sulla produzione nel mondo reale spesso richiedono una combinazione di prestazioni all'avanguardia, facilità d'uso e flessibilità di implementazione. È qui che Ultralytics si distingue come la scelta migliore per le moderne applicazioni di IA.

Perché YOLO26?

Rilasciato nel gennaio 2026, YOLO26 si basa sull'eredità delle generazioni precedenti, ma introduce cambiamenti fondamentali nell'architettura e nella stabilità dell'addestramento.

  1. Progettazione end-to-end NMS: a differenza di YOLOv9 YOLO, che in genere richiedono la soppressione non massima (NMS) per filtrare i riquadri di delimitazione duplicati, YOLO26 è nativamente end-to-end. Ciò elimina completamente la fase NMS , riducendo la latenza e la varianza dell'inferenza e semplificando notevolmente le pipeline di implementazione.
  2. Ottimizzatore MuSGD: ispirato alle innovazioni nella formazione dei modelli linguistici di grandi dimensioni (LLM), YOLO26 utilizza l'ottimizzatore MuSGD. Questo ibrido di SGD Muon (da Kimi K2 di Moonshot AI) offre una stabilità senza precedenti alla formazione, garantendo una convergenza più rapida e riducendo la necessità di un'ampia regolazione degli iperparametri.
  3. Efficienza edge-first: eliminando la perdita focale di distribuzione (DFL) e ottimizzando l'architettura per CPU , YOLO26 raggiunge velocità CPU fino al 43% più veloci. Questo lo rende il candidato ideale per l'edge computing su dispositivi come Raspberry Pi o telefoni cellulari dove non sono presenti GPU.
  4. Rilevamento avanzato di oggetti di piccole dimensioni: con l'introduzione di ProgLoss + STAL (Self-Taught Anchor Learning), YOLO26 registra notevoli miglioramenti nel riconoscimento di oggetti di piccole dimensioni, un requisito fondamentale per le immagini dei droni e i sensori IoT.

Flusso di lavoro semplificato con Ultralytics

Dimenticate le complesse pipeline di distillazione o le configurazioni manuali dell'ambiente. Con la Ultralytics potete gestire i vostri set di dati, addestrare modelli YOLO26 nel cloud e distribuirli in qualsiasi formato (ONNX, TensorRT, CoreML) con un solo clic.

Versatilità senza pari

SebbeneYOLO principalmente un modello di rilevamento, Ultralytics garantisce che YOLO26 supporti una gamma completa di attività fin da subito. Che si tratti di segmentazione di istanze, stima della posa con Residual Log-Likelihood Estimation (RLE) o rilevamento Oriented Bounding Box (OBB) per rilevamenti aerei, l'API rimane coerente e semplice.

Scopri di più su YOLO26

Esempio di codice: Formazione con Ultralytics

Python Ultralytics semplifica la complessità dell'addestramento di modelli avanzati. È possibile passare da YOLOv9 YOLO26 YOLOv9 senza alcuna difficoltà.

from ultralytics import YOLO

# Load the state-of-the-art YOLO26 model
# Pre-trained on COCO for instant transfer learning
model = YOLO("yolo26n.pt")

# Train the model on your custom dataset
# No complex configuration files or distillation steps required
results = model.train(
    data="coco8.yaml",
    epochs=100,
    imgsz=640,
    device=0,  # Use GPU 0
)

# Run inference with NMS-free speed
# Results are ready immediately without post-processing tuning
results = model("https://ultralytics.com/images/bus.jpg")

Conclusione

La scelta del modello giusto dipende dai vostri vincoli specifici. YOLO è un valido concorrente se state studiando architetture NAS o disponete di hardware che trae particolare vantaggio dalla sua struttura RepGFPN. YOLOv9 è una scelta eccellente per scenari che richiedono la massima precisione possibile su benchmark accademici come COCO.

Tuttavia, per gli sviluppatori e le aziende alla ricerca di una soluzione pronta per la produzione, Ultralytics offre il pacchetto più interessante. Il suo designNMS, CPU e l'integrazione con la Ultralytics riducono significativamente il time-to-market. Combinando i punti di forza teorici dei modelli precedenti con innovazioni pratiche come l'ottimizzatore MuSGD, YOLO26 garantisce non solo un modello, ma una soluzione di visione completa e a prova di futuro.


Commenti