PyTorch
-
Impara PyTorch con Cinque Progetti
L’apprendimento profondo ha rivoluzionato il modo in cui affrontiamo problemi complessi come il riconoscimento delle immagini, l’elaborazione del linguaggio naturale e persino l’analisi audio. Al centro di molte applicazioni di apprendimento profondo c’è PyTorch, un framework potente e flessibile che consente agli sviluppatori e ai ricercatori di costruire e addestrare reti neurali in modo efficiente. Se stai cercando di acquisire esperienza pratica con PyTorch e capire la sua sintassi nelle applicazioni del mondo reale, abbiamo il corso perfetto per te.…
-
Introduzione alle tecniche di sintesi estratta e abstractiva
Introduzione Nell’informatica e soprattutto nella Processamento del Linguaggio Naturale, la sintesi è sempre stato un argomento di interesse intenso. Sebbene metodi di sintesi testuale siano stati disponibili da tempo, gli ultimi anni hanno visto sviluppi significativi nel Processamento del Linguaggio Naturale e nell’apprendimento profondo. Vi è una serie di pubblicazioni sul tema da parte di giganti internet, come il recente ChatGPT. Mentre viene svolto molto lavoro su questo argomento di studio, vi è molto poco scritto sulle implementazioni pratiche di…
-
PyTorch 101: approfondimento con PyTorch
Introduzione Ciao lettori, questo è un altro post di una serie dedicata a PyTorch. Questo post è rivolto agli utenti di PyTorch che sono già familiarizzati con i fondamenti del framework e che desiderano approfondire a un livello intermedio. benché abbiamo spiegato come implementare un semplice classificatore in un precedente post, in questo articolo discuteremo come implementare funzionalità di apprendimento profondo più complicate utilizzando PyTorch. Alcuni degli obiettivi di questo post sono quelli di aiutarti a comprendere: La differenza tra…
-
Padding nelle reti neurali convoluzionali
Il padding è un processo essenziale nelle reti neurali convoluzionali. Non è obbligatorio, ma è un processo spesso utilizzato in molte architetture di punta di CNN. In questo articolo, esploreremo perché e come viene fatto. Il meccanismo della convoluzione La convoluzione, nel contesto dell’elaborazione delle immagini o della visione computazionale, è un processo attraverso cui una immagine viene “scansionata” da un filtro per processarla in un qualche modo. Facciamo un po’ di calcoli tecnici nei dettagli. Per un computer, una…
-
Interpretabilità e comprensione del modello per PyTorch usando Captum
Introduzione I metodi di interpretabilità del modello hanno guadagnato sempre maggiore rilevanza negli ultimi anni come conseguenza diretta dell’aumento della complessità del modello e della correlata mancanza di trasparenza. L’interpretazione del modello è un argomento di ricerca caldo e un punto nevralgico per le applicazioni pratiche che utilizzano il machine learning in diversi settori. Captum fornisce agli studiosi e sviluppatori tecniche all’avanguardia, come gli Integrated Gradients, che rendono facile identificare gli elementi che contribuiscono all’output del modello. Captum rende più…
-
Scrivere VGG a Mano in PyTorch
Continuando la mia serie su come costruire reti neurali convoluzionali classiche che hanno rivoluzionato il campo della visione computazionale negli ultimi 1-2 decenni, prossimamente costruiremo VGG, una rete convoluzionale molto profonda, da zero utilizzando PyTorch. Puoi vedere gli articoli precedenti della serie nel mio profilo, principalmente LeNet5 e AlexNet. Come prima, esaminerò l’architettura e l’intuito dietro VGG e come i risultati erano all’epoca. Poi esploreremo il nostro dataset, CIFAR100, e lo caricherò nel nostro programma utilizzando del codice efficiente in…
-
Scrivere LeNet5 da zero in PyTorch
Introduzione In questo articolo, creeriamo una delle prime reti neurali convoluzionali mai introdotte, la LeNet5. Costruiamo questa CNN da zero in PyTorch e vedremo come funziona su un dataset reale. Inizieremo esplorando l’architettura di LeNet5. Poi caricheremo e analizzeremo il nostro dataset, MNIST, utilizzando la classe fornita da torchvision. Utilizzando PyTorch, costruiremo la nostra LeNet5 da zero e la addestreremo sul nostro dataset. Infine, vedremo come il modello si comporta sui dati di test non visti. Prerequisiti La conoscenza delle…
-
Scrivere AlexNet da zero in PyTorch
Introduzione Questo articolo è la prosecuzione della serie dedicata alla costruzione da zero delle più popolari reti neurali convoluzionali in PyTorch. Puoi trovare l’articolo precedente qui, in cui abbiamo costruito LeNet5. In questo articolo, costruiremo AlexNet, uno dei più importanti risultati chiave nell’algoritmo di computer vision. Inizieremo investigando e comprendendo l’architettura di AlexNet. Poi, ci immergeremo nel codice caricando il nostro dataset, CIFAR-10, prima di applicare alcuni pre-processamenti ai dati. Poi, costruiremo l’AlexNet da zero usando PyTorch e lo trainiamo…
-
Uso di precisione mista automatica con PyTorch
Introduzione I modelli di apprendimento profondo più grandi richiedono maggiori risorse di calcolo e di memoria. L’addestramento veloce di reti neurali profonde è stato ottenuto attraverso lo sviluppo di nuove tecniche. Invece dell’FP32 (formato di numeri floating-point a piena precisione), è possibile utilizzare l’FP16 (formato di numeri floating-point a metà precisione), e i ricercatori hanno scoperto che usarli insieme è un’opzione migliore. La precisione mista consente l’addestramento a metà precisione mentre mantiene gran parte dell’accuratezza della rete a precisione singola.…