Controllo verde
Link copiato negli appunti

Cos'è ResNet-50 e qual è la sua importanza nella computer vision?

Scopri come l'architettura di ResNet-50 consente la classificazione delle immagini in applicazioni reali nei settori della sanità, della produzione e dei sistemi autonomi.

L'analisi automatizzata delle immagini sta diventando sempre più comune in applicazioni come il rilevamento di auto in corsa o l'analisi di immagini mediche. La tecnologia che guida queste innovazioni è la computer vision o Vision AI. Si tratta di una branca dell'intelligenza artificiale (AI) che consente alle macchine di interpretare e comprendere immagini e video, proprio come fanno gli esseri umani. 

Per realizzare queste soluzioni di computer vision, gli sviluppatori si affidano a modelli di Vision AI in grado di apprendere da grandi quantità di dati visivi. Nel corso degli anni, i ricercatori hanno sviluppato modelli sempre più avanzati con prestazioni impressionanti in compiti di Vision AI come la classificazione delle immagini (assegnazione di etichette alle immagini), il rilevamento di oggetti (localizzazione e identificazione di oggetti all'interno delle immagini) e la segmentazione di istanze (rilevamento di oggetti e delineazione della loro forma esatta).

Tuttavia, guardare al passato e comprendere i modelli precedenti può aiutare a capire come funzionano i sistemi di computer vision di oggi. Ad esempio, un esempio chiave è ResNet-50, un modello influente che ha introdotto l'idea delle connessioni di scorciatoia - semplici percorsi che aiutano il modello ad apprendere più velocemente e con maggiore precisione.

Questa innovazione ha reso possibile l'addestramento efficace di reti neurali molto più profonde, portando a miglioramenti significativi nella classificazione delle immagini e dando forma alla progettazione di molti modelli successivi. In questo articolo esploreremo ResNet-50, il suo funzionamento e la sua importanza nell'evoluzione della computer vision. Iniziamo!

Che cos'è ResNet-50? 

ResNet-50 è un modello di computer vision basato su un tipo di rete neurale chiamata rete neurale convoluzionale (CNN). Le CNN sono progettate per aiutare i computer a comprendere le informazioni visive apprendendo gli schemi presenti nelle immagini, come bordi, colori o forme, e utilizzando questi schemi per riconoscere e classificare gli oggetti. 

Introdotto nel 2015 dai ricercatori di Microsoft Research, ResNet-50 è diventato rapidamente uno dei modelli di maggior impatto nel settore grazie alla sua accuratezza ed efficienza in compiti di riconoscimento di immagini su larga scala.

Una caratteristica fondamentale di ResNet-50 è l'uso di connessioni residue, note anche come connessioni scorciatoia. Si tratta di semplici percorsi che permettono al modello di saltare alcune fasi del processo di apprendimento. In altre parole, invece di costringere il modello a passare le informazioni attraverso ogni singolo strato, queste scorciatoie gli permettono di portare avanti i dettagli importanti in modo più diretto. Questo rende l'apprendimento più veloce e affidabile.

Figura 1. Uno sguardo alle connessioni residue nell'architettura ResNet.

Questo design aiuta a risolvere un problema comune nell'apprendimento profondo chiamato problema del gradiente che svanisce. Nei modelli molto profondi, le informazioni importanti possono andare perse durante il passaggio attraverso i vari livelli, rendendo difficile l'apprendimento del modello. 

Le connessioni residue aiutano a prevenire tutto questo, mantenendo un flusso di informazioni chiaro dall'inizio alla fine. Per questo motivo il modello si chiama ResNet-50: ResNet sta per Residual Network (rete residua) e il "50" si riferisce al numero di livelli che utilizza per elaborare un'immagine. 

Una panoramica sul funzionamento di ResNet-50

ResNet-50 ha una struttura ben organizzata che permette al modello di andare in profondità senza perdere informazioni importanti. Segue un modello semplice e ripetibile che mantiene l'efficienza pur consentendo prestazioni elevate. 

Ecco un approfondimento su come funziona l'architettura ResNet-50:

  • Base estrazione di caratteristiche: Il modello inizia applicando un'operazione matematica chiamata convoluzione. Si tratta di far scorrere piccoli filtri (chiamati kernel) sull'immagine per produrre mappe di caratteristiche, ovvero nuove versioni dell'immagine che evidenziano modelli di base come bordi o texture. In questo modo il modello inizia a rilevare le informazioni visive utili.
  • Apprendimento di caratteristiche complesse: Man mano che i dati si muovono nella rete, le dimensioni delle mappe di caratteristiche si riducono. Questo avviene grazie a tecniche come il pooling o l'utilizzo di filtri con passi più grandi (chiamati strides). Allo stesso tempo, la rete crea un maggior numero di mappe di caratteristiche che le permettono di catturare modelli sempre più complessi, come forme, parti di oggetti o texture.
  • Comprimere ed espandere i dati: Ogni fase comprime i dati, li elabora e poi li espande nuovamente. Questo aiuta il modello a imparare risparmiando memoria.
  • Collegamenti di scorciatoia: Si tratta di percorsi semplici che permettono alle informazioni di saltare invece di passare attraverso tutti i livelli. Rendono l'apprendimento più stabile ed efficiente.
  • Fare una predizione: Alla fine della rete, tutte le informazioni apprese vengono combinate e passate attraverso una funzione softmax. Questa funzione produce una distribuzione di probabilità sulle possibili classi, indicando la fiducia del modello in ogni previsione: ad esempio, 90% gatto, 9% cane, 1% auto.
Figura 2. L'architettura di ResNet-50.

Caratteristiche principali di ResNet-50

Anche se ResNet-50 è stato originariamente progettato per la classificazione delle immagini, il suo design flessibile lo ha reso utile in molte aree della computer vision. Diamo un'occhiata ad alcune delle caratteristiche che contraddistinguono ResNet-50.

Utilizzo di ResNet-50 per la classificazione delle immagini

ResNet-50 è utilizzato principalmente per la classificazione delle immagini, dove l'obiettivo è assegnare un'etichetta a un'immagine. Ad esempio, data una foto, il modello può etichettarla come cane, gatto o aereo in base all'oggetto principale che vede. 

Il suo design affidabile e la sua disponibilità nelle librerie di deep learning più diffuse, come PyTorch e TensorFlow , hanno reso ResNet-50 una prima scelta popolare per l'addestramento su grandi dataset di immagini. Uno degli esempi più noti è ImageNet, un'enorme raccolta di immagini etichettate utilizzata per valutare e confrontare i modelli di computer vision.

Mentre i modelli più recenti, come Ultralytics YOLO11, lo superano, ResNet-50 è ancora comunemente utilizzato come benchmark grazie al suo solido equilibrio tra accuratezza, velocità e semplicità.

Figura 3. Un esempio di utilizzo di ResNet-50 per classificare un cane.

Rilevamento di oggetti abilitato dalle dorsali ResNet-50

Mentre la classificazione delle immagini consiste nell'identificare l'oggetto principale in un'immagine, il rilevamento degli oggetti fa un passo avanti trovando ed etichettando più oggetti nella stessa immagine. Ad esempio, in un'immagine di una strada trafficata, un modello potrebbe dover individuare auto, autobus e persone e capire dove si trova ciascuno di essi.

ResNet-50 è utilizzato come struttura portante in alcuni di questi modelli. Ciò significa che si occupa della prima parte del lavoro: analizzare l'immagine ed estrarre i dettagli importanti che descrivono cosa c'è e dove. Questi dettagli vengono poi passati alla parte successiva del modello, chiamata detection head, che prende le decisioni finali su quali oggetti sono presenti nell'immagine e dove si trovano.

I modelli di rilevamento più diffusi, come Faster R-CNN e DETR, utilizzano ResNet-50 per questa fase di estrazione delle caratteristiche. Poiché è in grado di catturare sia i dettagli più fini che la struttura generale di un'immagine, aiuta questi modelli a fare previsioni accurate, anche in scene complesse.

Apprendimento di trasferimento con ResNet-50

Un altro aspetto interessante del modello ResNet-50 è la sua capacità di supportare l 'apprendimento per trasferimento. Ciò significa che il modello, originariamente addestrato su un grande set di dati come ImageNet per la classificazione delle immagini, può essere adattato a nuovi compiti con un numero di dati molto inferiore.

Invece di ripartire da zero, la maggior parte degli strati del modello viene riutilizzata e solo lo strato di classificazione finale viene sostituito e riaddestrato per il nuovo compito. Questo permette di risparmiare tempo ed è particolarmente utile quando i dati etichettati sono limitati.

Applicazioni di visione artificiale di ResNet-50

L'architettura di ResNet-50 lo ha reso utile per un'ampia gamma di applicazioni di computer vision. È stata particolarmente importante agli albori del deep learning, aiutando a far passare la tecnologia Vision AI dalla ricerca all'utilizzo nel mondo reale. Risolvendo le sfide principali, ha contribuito a spianare la strada ai modelli più avanzati che vediamo nelle applicazioni di oggi.

Imaging medico guidato da ResNet-50

ResNet-50 è stato uno dei primi modelli utilizzati nell'imaging medico basato sul deep learning. I ricercatori l'hanno sfruttato per identificare i modelli di malattia nelle radiografie, nelle risonanze magnetiche e in altre scansioni diagnostiche. Ad esempio, ha aiutato a rilevare i tumori e a classificare le immagini della retina diabetica per supportare la diagnosi in oftalmologia.

Mentre i modelli più avanzati sono ora utilizzati negli strumenti clinici, ResNet-50 ha svolto un ruolo fondamentale nelle prime ricerche sull'IA medica. La sua facilità d'uso e il suo design modulare lo hanno reso adatto alla creazione di prototipi di sistemi diagnostici.

Figura 4. Rilevamento del tumore cerebrale basato su ResNet-50.

L'automazione industriale alimentata da ResNet-50

Allo stesso modo, ResNet-50 è stato applicato anche in ambito industriale. Ad esempio, nel settore manifatturiero è stato utilizzato in sistemi di ricerca e pilota per rilevare difetti superficiali su materiali come acciaio, cemento e parti verniciate.

È stato anche testato in configurazioni per identificare buchi, crepe o depositi che si formano durante la fusione o l'assemblaggio. ResNet-50 è adatto a questi compiti perché è in grado di individuare sottili differenze nella struttura della superficie, un'abilità importante per l'ispezione della qualità.

Mentre modelli più avanzati come YOLO11 sono ormai comunemente utilizzati nei sistemi di produzione, ResNet-50 svolge ancora un ruolo importante nella ricerca accademica e nel benchmarking, in particolare per i compiti di classificazione delle immagini.

Figura 6. Ispezione della superficie con Resnet-50.

Vantaggi e limiti di ResNet-50

Ecco alcuni dei vantaggi di ResNet-50:

  • Prestazioni di base solide: ResNet-50 offre una solida precisione in un'ampia gamma di compiti, rendendola un punto di riferimento affidabile sia nella ricerca che nei progetti applicati.
  • Ben documentata e ampiamente studiata: La sua architettura è ben compresa e documentata, il che facilita la risoluzione dei problemi e l'apprendimento da parte di sviluppatori e ricercatori.
  • Versatile in tutti i settori: Dall'imaging medico all'industria manifatturiera, ResNet-50 è stato applicato con successo a una varietà di problemi del mondo reale, dimostrando la sua flessibilità.

Nel frattempo, ecco una panoramica dei limiti di ResNet-50:

  • Utilizzo elevato di risorse: ResNet-50 richiede più memoria e potenza di calcolo rispetto ai modelli leggeri, il che può renderlo meno adatto ai dispositivi mobili o alle applicazioni in tempo reale.

  • Overfitting su piccoli insiemi di dati: A causa della sua profondità e complessità, ResNet-50 può andare in overfit quando viene addestrata su dati limitati senza adeguate tecniche di regolarizzazione.
  • Dimensione fissa dell'input: ResNet-50 di solito si aspetta che le immagini abbiano una dimensione specifica, come 224×224 pixel, quindi spesso le immagini devono essere ridimensionate o ritagliate, il che a volte può eliminare dettagli importanti.

Punti di forza

ResNet-50 ha dimostrato che le reti molto profonde possono essere addestrate in modo efficace, garantendo al contempo ottime prestazioni nei compiti visivi. La sua architettura ha offerto un quadro chiaro e pratico per costruire modelli più profondi che funzionino in modo affidabile. 

Dopo il suo rilascio, i ricercatori hanno ampliato il progetto, creando versioni più profonde come ResNet-101 e ResNet-152. Nel complesso, ResNet-50 è un modello chiave che ha contribuito a plasmare il modo in cui l'apprendimento profondo viene utilizzato oggi nella computer vision.

Unisciti alla nostra comunità in crescita! Esplora il nostro repository GitHub per saperne di più sull'intelligenza artificiale. Sei pronto ad avviare i tuoi progetti di computer vision? Scopri le nostre opzioni di licenza. Scopri l'IA nell'agricoltura e l'IA di visione nella sanità visitando le nostre pagine dedicate alle soluzioni! 

Logo di LinkedInLogo di TwitterLogo di FacebookSimbolo di copia-link

Leggi tutto in questa categoria

Costruiamo insieme il futuro
di AI!

Inizia il tuo viaggio nel futuro dell'apprendimento automatico