YOLO11 vs YOLOv5: un confronto tecnico completo delle architetture Ultralytics

Selezionare la giusta architettura di rete neurale è una decisione fondamentale per qualsiasi iniziativa di computer vision. Man mano che il panorama dell'intelligenza artificiale si evolve, si evolvono anche gli strumenti a disposizione di sviluppatori e ricercatori. Questa guida completa fornisce un approfondimento tecnico comparativo tra due modelli storici dell'ecosistema Ultralytics: il celebre YOLOv5 e l'avanzato YOLO11.

Che tu stia distribuendo modelli leggeri per applicazioni di edge AI o elaborando flussi video ad alta risoluzione su GPU cloud, comprendere le sfumature architetturali, le metriche di performance e i casi d'uso ideali di questi modelli ti assicurerà di fare una scelta basata sui dati per i tuoi specifici vincoli di distribuzione.

Origine del modello e dettagli tecnici

Entrambi i modelli riflettono l'impegno di Ultralytics verso la collaborazione open source, prestazioni robuste e una facilità d'uso senza pari, rendendoli molto apprezzati dalla community globale di machine learning.

Dettagli YOLO11

Scopri di più su YOLO11

Dettagli YOLOv5

Scopri di più su YOLOv5

Differenze architetturali

L'evoluzione da YOLOv5 a YOLO11 introduce diversi profondi cambiamenti architetturali progettati per ottimizzare la precisione e l'efficienza dei parametri.

YOLOv5 è stato un pioniere nell'ecosistema PyTorch, introducendo un backbone CSPNet (Cross Stage Partial Network) altamente ottimizzato e un neck PANet (Path Aggregation Network). Si basava su una rilevazione anchor-based, che richiedeva anchor boxes predefinite per prevedere i confini degli oggetti. Sebbene molto efficace, la regolazione di queste anchor per dataset di computer vision personalizzati poteva risultare macchinosa.

Al contrario, YOLO11 passa a un moderno paradigma di rilevazione senza anchor. Ciò elimina la necessità di una regolazione manuale delle anchor box, snellendo il processo di addestramento e migliorando la generalizzazione su diversi dataset come il COCO dataset. Inoltre, YOLO11 presenta una head disaccoppiata, il che significa che le attività di classificazione e regressione dei bounding box vengono elaborate in rami separati. Questa separazione migliora significativamente la velocità di convergenza e la mean Average Precision (mAP), in particolare per scenari complessi di object detection.

Metriche di prestazione e benchmark

La tabella sottostante confronta le metriche chiave tra diverse dimensioni del modello. I modelli Ultralytics sono rinomati per i loro requisiti di memoria, consumando tipicamente meno memoria CUDA durante l'addestramento rispetto alle pesanti alternative basate su Transformer, il che riduce drasticamente la barriera all'ingresso hardware.

Modellodimensione
(pixel)
mAPval
50-95
Velocità
CPU ONNX
(ms)
Velocità
T4 TensorRT10
(ms)
parametri
(M)
FLOP
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

Come si può osservare, YOLO11 raggiunge un equilibrio prestazionale molto favorevole, offrendo costantemente punteggi mAP più elevati a parità di numero di parametri rispetto alle controparti YOLOv5.

Metodologie di addestramento e usabilità

Un principio fondamentale della filosofia Ultralytics è l'eccezionale facilità d'uso, supportata da un ecosistema ben mantenuto e da un ampio supporto della community.

YOLOv5 si affidava storicamente a robusti script di interfaccia a riga di comando (CLI) (train.py, detect.py) per l'esecuzione. Sebbene potenti, integrare questi script direttamente in applicazioni Python personalizzate richiedeva spesso soluzioni alternative.

YOLO11 ha rivoluzionato questo aspetto introducendo il pacchetto Python ultralytics semplificato. Questa API unificata gestisce nativamente tutto, dall'addestramento all'esportazione dei modelli in formati come ONNX, OpenVINO e TensorRT.

Distribuzione semplificata con la piattaforma Ultralytics

Per un'esperienza completamente senza codice, gli sviluppatori possono utilizzare la piattaforma Ultralytics per annotare dati, addestrare modelli nel cloud e distribuirli su dispositivi edge in modo fluido.

Confronto del codice

Addestrare un modello Ultralytics oggi è incredibilmente efficiente. Ecco come puoi addestrare YOLO11 usando la sua API Python nativa:

from ultralytics import YOLO

# Load a pretrained YOLO11 small model
model = YOLO("yolo11s.pt")

# Train the model on custom data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)

# Export the model to ONNX for deployment
model.export(format="onnx")

Per i sistemi legacy che utilizzano YOLOv5, l'addestramento tramite CLI appare così:

# Clone the repository and run the training script
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt

python train.py --img 640 --batch 16 --epochs 50 --data coco128.yaml --weights yolov5s.pt

Casi d'uso ideali e applicazioni nel mondo reale

Entrambi i modelli possiedono punti di forza distinti su misura per diversi ambienti operativi.

Quando utilizzare YOLOv5

Nonostante la generazione più recente, YOLOv5 rimane una potenza. È altamente raccomandato per:

  • Integrazione di sistemi legacy: Ambienti profondamente integrati con le specifiche strutture tensoriali o pipeline di distribuzione di YOLOv5 che non possono essere facilmente riprogettate.
  • Baseline accademiche: Ricercatori che necessitano di baseline consolidate e di lunga data per studi accademici riproducibili nell'analisi di immagini mediche.

Quando utilizzare YOLO11

YOLO11 rappresenta la scelta ideale per le moderne pipeline di produzione grazie alla sua incredibile versatilità:

Guardando al futuro: l'architettura YOLO26

Mentre YOLO11 si pone come uno standard eccezionale, la frontiera della computer vision continua ad avanzare rapidamente. Gli sviluppatori che cercano l'apice assoluto dell'efficienza dovrebbero considerare anche l'ultimo Ultralytics YOLO26 (rilasciato a gennaio 2026).

YOLO26 rappresenta un enorme salto in avanti, progettato esplicitamente sia per l'ottimizzazione edge che per la scala aziendale. Le innovazioni chiave includono:

  • Design end-to-end senza NMS: YOLO26 è nativamente end-to-end, eliminando il post-processing di Non-Maximum Suppression (NMS) per una distribuzione più rapida e semplice.
  • Rimozione DFL: La Distribution Focal Loss è stata rimossa per un'esportazione del modello semplificata e una migliore compatibilità con i dispositivi a basso consumo energetico.
  • Ottimizzatore MuSGD: Un rivoluzionario ibrido tra SGD e Muon, che porta la stabilità dell'addestramento LLM alla computer vision per una convergenza più rapida.
  • Fino al 43% più veloce nell'inferenza CPU: Fortemente ottimizzato per distribuzioni IoT e dispositivi privi di GPU dedicate.
  • ProgLoss + STAL: Funzioni di perdita drasticamente migliorate che producono notevoli miglioramenti nel riconoscimento di piccoli oggetti, fondamentale per le immagini catturate da droni.

Scopri di più su YOLO26

Scegliere tra YOLO11 e YOLOv5 dipende in ultima analisi dalla fase del ciclo di vita del tuo progetto. L'eredità di YOLOv5 è innegabile, offrendo estrema stabilità e un massiccio supporto della community. Tuttavia, per qualsiasi nuovo progetto, YOLO11 è caldamente raccomandato rispetto alle vecchie generazioni. Combina una precisione all'avanguardia, un'API Python eccezionalmente elegante e un minore sovraccarico di memoria durante l'addestramento, cementando la posizione di Ultralytics all'avanguardia dell'innovazione AI. Per coloro che spingono ancora più in là i confini, esplorare lo stato dell'arte YOLO26 sulla piattaforma Ultralytics produrrà risultati senza eguali.

Commenti