Scopri come le ResNet rivoluzionano l'apprendimento profondo risolvendo i gradienti che svaniscono e consentendo di creare reti ultra-profonde per l'analisi delle immagini, l'NLP e molto altro ancora.
Le Residual Networks, comunemente note come ResNet, rappresentano un'architettura innovativa di rete neurale convoluzionale (CNN) sviluppata da Kaiming He e colleghi di Microsoft Research. Presentata nel loro articolo del 2015,"Deep Residual Learning for Image Recognition", ResNet affronta una delle principali sfide del deep learning (DL): il problema della degradazione. Questo problema si verifica quando l'aggiunta di più livelli a una rete molto profonda porta a un aumento dell'errore di formazione, contrariamente all'aspettativa che i modelli più profondi dovrebbero avere prestazioni migliori. L'innovazione di ResNet ha permesso di addestrare con successo reti molto più profonde di quanto fosse possibile in precedenza, facendo progredire in modo significativo lo stato dell'arte in diverse attività di computer vision (CV).
L'idea alla base di ResNet è l'introduzione di "connessioni di salto" o "connessioni di scorciatoia". Nelle reti profonde tradizionali, ogni strato alimenta in sequenza quello successivo. ResNet modifica questo aspetto consentendo di aggiungere l'input di un blocco di livelli all'output di quel blocco. In questo modo si crea un "blocco residuo" in cui gli strati imparano una mappatura residua (la differenza tra l'input e l'output desiderato) piuttosto che cercare di imparare direttamente l'intera mappatura sottostante. Se la funzione ottimale è più vicina a una mappatura di identità (in cui l'uscita dovrebbe essere uguale all'ingresso), è più facile per la rete imparare a rendere il residuo nullo (portando i pesi degli strati sovrapposti verso lo zero) piuttosto che imparare la mappatura di identità stessa attraverso strati non lineari.
Queste connessioni saltate facilitano il flusso del gradiente durante la retropropagazione, attenuando il problema del gradiente che spesso affligge le reti molto profonde. Questo permette di costruire e addestrare efficacemente reti con centinaia o addirittura migliaia di strati, ottenendo notevoli miglioramenti di precisione su dataset di riferimento impegnativi come ImageNet.
Le architetture ResNet sono diventate rapidamente una struttura portante standard per molti compiti di computer vision oltre alla classificazione delle immagini, tra cui:
La sua capacità di estrarre potenti caratteristiche dalle immagini l'ha resa un'architettura estremamente versatile e ampiamente adottata.
Le architetture ResNet sono facilmente disponibili nei principali framework di deep learning come PyTorchPyTorch sito ufficiale diPyTorch ) e TensorFlowTensorFlow ). I modelli pre-addestrati, spesso addestrati su ImageNet, sono accessibili attraverso librerie come torchvision, che consentono un efficace apprendimento per trasferimento. Piattaforme come Ultralytics HUB consentono agli utenti di sfruttare varie architetture, tra cui quelle basate su ResNet, per addestrare modelli personalizzati e distribuirliUltralytics documentazione diUltralytics HUB). Puoi trovare ulteriori risorse didattiche sulle CNN presso Stanford CS231n o attraverso corsi come quelli offerti da DeepLearning.AI.