Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Reti Residuali (ResNet)

Scopri come le ResNet rivoluzionano il deep learning risolvendo il problema dei gradienti che svaniscono, consentendo reti ultradeep per l'analisi delle immagini, l'elaborazione del linguaggio naturale (NLP) e altro ancora.

Le reti residue, comunemente denominate ResNet, rappresentano un'architettura rivoluzionaria nel deep learning che ha risolto un problema fondamentale nell'addestramento di reti neurali molto profonde. Prima della loro introduzione da parte dei ricercatori Microsoft Research nel 2015, l'aggiunta di ulteriori livelli a una rete neurale (NN) comportava spesso una diminuzione della precisione a causa del problema del gradiente svanente, in cui i segnali si attenuavano mentre attraversavano livelli complessi. ResNet ha introdotto un'intelligente modifica strutturale chiamata "connessioni skip" o "connessioni shortcut", che permettono alle informazioni di bypassare determinati livelli e fluire direttamente a quelli successivi. Questa innovazione ha reso possibile l'addestramento di reti con centinaia di livelli, migliorando significativamente le capacità dei sistemi di visione artificiale (CV).

Il problema risolto da ResNet

Nei modelli tradizionali di deep learning (DL), gli strati sono impilati in sequenza. Man mano che le reti diventano più profonde per catturare caratteristiche più complesse, diventano più difficili da addestrare. Questa difficoltà deriva dal fatto che i gradienti, ovvero i segnali utilizzati per aggiornare i pesi del modello durante l'addestramento, possono diventare infinitesimali mentre si propagano attraverso molti strati, un fenomeno noto come problema del gradiente svanente.

ResNet risolve questo problema ristrutturando la rete in blocchi residui. Invece di apprendere una mappatura diretta dall' input all'output, ogni blocco apprende la differenza (o residuo) tra l'input e l'output desiderato. La connessione skip aggiunge l'input originale direttamente all'output del blocco. Questa semplice aggiunta crea un percorso diretto per il flusso dei gradienti all'indietro durante la retropropagazione, garantendo che anche le reti molto profonde possano apprendere in modo efficace senza degrado delle prestazioni. Per una comprensione teorica più approfondita , è possibile consultare il documento originale, Deep Residual Learning for Image Recognition.

Componenti chiave e architettura

Il successo di ResNet risiede nel suo design modulare, che ha influenzato molte architetture moderne.

  • Blocchi residui: il blocco fondamentale che contiene una connessione skip. In genere è costituito da due o tre livelli di rete neurale convoluzionale (CNN) , seguiti da normalizzazione batch e una funzione di attivazione ReLU.
  • Mappatura dell'identità: la connessione skip esegue una mappatura dell'identità, ovvero trasmette il segnale di ingresso senza modificarlo. Ciò garantisce che, nel peggiore dei casi, un livello possa semplicemente trasmettere le informazioni senza distorcerle, preservando le prestazioni della rete.
  • Progetto Bottleneck: nelle varianti più profonde come ResNet-50 o ResNet-101, viene utilizzato un progetto "bottleneck" per migliorare l'efficienza. Ciò comporta l'utilizzo di convoluzioni 1x1 per ridurre la dimensione prima delle costose convoluzioni 3x3 , abbassando efficacemente il costo computazionale pur mantenendo un'elevata precisione.

Applicazioni nel mondo reale

La robustezza di ResNet lo ha reso una scelta standard per varie applicazioni ad alto impatto.

  • Analisi delle immagini mediche: Nel settore sanitario, distinguere tra tessuti sani e anomalie come i tumori richiede il rilevamento di texture sottili. I modelli ResNet sono spesso utilizzati come backbone per i sistemi che analizzano le scansioni MRI o TC. Ad esempio, aiutano nel rilevamento dei tumori, dove la profondità della rete consente di apprendere intricati modelli biologici che reti meno profonde potrebbero non rilevare.
  • Veicoli autonomi: Le auto a guida autonoma si basano sul rilevamento degli oggetti in tempo reale per identificare pedoni, semafori e altri veicoli. ResNet funge spesso da backbone per i framework di rilevamento , elaborando i feed grezzi delle telecamere per estrarre ricche mappe di caratteristiche che i livelli successivi utilizzano per localizzare gli oggetti, garantendo la sicurezza dell' IA nelle applicazioni automobilistiche.

ResNet nei moderni flussi di lavoro dell'IA

Sebbene architetture più recenti come il Vision Transformer (ViT) abbiano guadagnato popolarità, ResNet rimane un punto di riferimento grazie al suo equilibrio tra velocità e precisione. È ampiamente utilizzato nel transfer learning, dove un modello pre-addestrato su un enorme set di dati come ImageNet viene ottimizzato per un compito specifico con dati limitati.

I moderni rilevatori di oggetti, compreso il sofisticato YOLO26, spesso incorporano concetti evoluti da ResNet, come le connessioni residue all'interno delle loro strutture portanti, per facilitare l'estrazione efficiente delle caratteristiche su più scale.

Esempio di implementazione

È possibile utilizzare facilmente un modello ResNet per classificazione delle immagini utilizzando il ultralytics Python . Questo esempio mostra come caricare un modello ResNet50 pre-addestrato per classify un' immagine.

from ultralytics import YOLO

# Load a pre-trained ResNet50 model
model = YOLO("resnet50.pt")

# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Print the top predicted class
print(f"Prediction: {results[0].names[results[0].probs.top1]}")

ResNet vs. VGG e reti semplici

È utile distinguere ResNet dalle altre architetture per comprenderne il contributo unico.

  • ResNet vs. Reti semplici: una rete "semplice" impila i livelli direttamente senza connessioni di salto. Man mano che queste reti diventano più profonde (ad esempio, oltre i 20 livelli), il loro errore di addestramento aumenta. ResNet risolve questo problema: un ResNet a 152 livelli ha un errore di addestramento inferiore rispetto a una rete semplice a 20 livelli.
  • ResNet vs. VGG: La rete VGG ha reso popolare l'uso di piccoli filtri di convoluzione 3x3 , ma è molto costosa dal punto di vista computazionale e pesante in termini di parametri. ResNet ottiene prestazioni migliori con meno parametri e una profondità molto maggiore, rendendola più efficiente per le applicazioni sensibili alla latenza di inferenza.

Per una visione più ampia di come questi modelli si inseriscono nel panorama della visione artificiale, puoi consultare la nostra guida sulle architetture di rilevamento degli oggetti o imparare ad addestrare i tuoi modelli su set di dati personalizzati.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora