Ciao a tutti, sono Vincenzo Lomonaco, ricercatore e docente all’Università di Pisa.
Nella puntata di oggi non possiamo non parlare del tema più caldo del momento che ha scosso e eccitato l’intero mondo dell’intelligenza artificiale: parliamo del Nobel della fisica assegnato qualche giorno fa a John Hopfield e Geoffrey Hinton per il loro contributo allo sviluppo delle reti neurali artificiali.
Ma cosa hanno fatto per meritare questo premio? Scopriamolo insieme in questa puntata di Le Voci dell’AI.
Il premio Nobel per la Fisica del 2024 è stato annunciato l’8 ottobre 2024 presso l’Accademia Reale Svedese delle Scienze a Stoccolma.
I vincitori, con estrema sorpresa da parte di tutto il pubblico accademico, sono stati John Hopfield e Geoffrey Hinton, un fisico computazionale e un informatico, riconosciuti per le loro innovazioni nel contesto delle reti neurali artificiali per l’intelligenza artificiale.
Questa notizia di cronaca è particolarmente significativa perché non è mai accaduto prima che un informatico vincesse un premio per la fisica.
Come saprete, non esiste un premio analogo al Nobel per l’informatica, ma Hinton aveva già vinto, assieme a Yoshua Bengio e Yann LeCun, un Turing Award, il riconoscimento annuale più importante conosciuto nel mondo dell’informatica.
Sembra incredibile, ma anche il premio Nobel per la chimica del 2024 ha annunciato altrettanto recentemente è stato assegnato a David Baker, Demis Hassabis e John Jumper per i loro contributi significativi nel campo della progettazione e previsione delle strutture proteiche tramite algoritmi di intelligenza artificiale, di cui abbiamo discusso in una puntata precedente di Le Voci dell’AI.
Sembra incredibile, ma questo attesta certamente la centralità dell’intelligenza artificiale in questo momento storico, dal punto di vista della ricerca e dell’innovazione nei campi più disparati.
Ma tornando al Nobel per la fisica, quali sono le innovazioni tecniche e metodologie logiche che hanno portato a questo riconoscimento? Beh, nonostante i curricula di Hopfield e Hinton siano piuttosto stati estesi, come immaginerete, potremmo riassumere il loro impatto più determinante nella definizione delle reti di Hopfield e la back propagation, rispettivamente.
Le reti di Hopfield sono un tipo di rete neurale artificiale proposto da John Hopfield nel 1982 progettate per funzionare come memoria associativa. Queste reti sono innovative perché possono memorizzare e recuperare pattern di dati complessi in modo molto efficiente grazie alla loro capacità di convergere verso stati stabili attraverso un processo di minimizzazione dell’energia.
Le reti di Hopfield sono costituite da neuroni interconnessi che si attivano reciprocamente, consentendo di identificare e richiamare informazioni anche in presenza di dati parziali o affetti da rumore.
Le applicazioni pratiche delle reti di Hopfield includono il riconoscimento di pattern, la compressione dei dati e la risoluzione di problemi di ottimizzazione, come nel caso del problema classico del commesso viaggiatore.
Infine, le reti di Hopfield hanno avuto un’importante influenza nel modo scientifico, anche più interdisciplinare, aprendo la strada a sviluppi successivi nel campo delle reti neurali, influenzando la progettazione di modelli più avanzati utilizzati moltissimo nell’intelligenza artificiale moderna.
La back propagation, invece, è un algoritmo di apprendimento supervisionato per le reti neurali, sviluppato negli anni ’70 e poi reso popolare da Hinton negli anni ’80.
Esso consente di ottimizzare i pesi e i parametri di una rete neurale in modo efficace ed efficiente; la sua innovazione principale risiede nella capacità di calcolare il gradiente della funzione di errore rispetto ai pesi della rete, quindi permettendo così un aggiornamento sistematico e piuttosto rapido.
Questo processo di retropropagazione dell’errore consente alle reti neurali di apprendere grandi quantità di dati in modo molto più efficiente rispetto ai metodi di ottimizzazione precedentemente utilizzati.
L’algoritmo ha quindi rivoluzionato il campo dell’intelligenza e del machine learning, rendendo possibili reti neurali profonde, quindi con molteplici strati e, vedremo più avanti con un esempio, quello che oggi viene anche chiamato deep learning.
Le applicazioni pratiche sono pressoché infinite e vanno dalla traduzione automatica alla guida autonoma, quindi alla visione artificiale, alla diagnosi medica e molto altro ancora, dove le reti possono apprendere e migliorare le loro prestazioni analizzando automaticamente pattern complessi dei dati grazie alla propagazione di modelli, quindi possono adattarsi continuamente a nuove informazioni, rendendo questo metodo cruciale per il successo delle applicazioni basate su AI e machine learning.
Ma chiariamo meglio i dettagli di questa metodologia con un esempio.
In questa immagine vediamo rappresentata una rete neurale artificiale composta da tre livelli di neuroni in giallo, blu e rosso, rispettivamente.
Immaginiamo che si tratti di una rete neurale che vorremmo addestrare per riconoscere la presenza di un individuo in una stanza al fine di accendere o spegnere la luce automaticamente.
Comodo, no? Beh, potremmo per esempio analizzare la temperatura, l’umidità e il livello di CO₂ e in funzione di questi dati, di questi tre valori reali, predirre la presenza o meno di un individuo.
Ecco, questi valori reali rappresenterebbero l’input che forniamo alla rete neurale nel livello giallo, il livello di input uno per ogni neurone.
Successivamente questi dati verrebbero manipolati tramite somma e moltiplicazione nel livello blu, generando una rappresentazione astratta del dato di partenza che ci consentirà di predirre nell’errore rosso, il terzo livello, la presenza o meno di una persona nella stanza.
Il processo di back propagation consiste nella modifica delle operazioni di moltiplicazione all’interno della rete, in modo da migliorare la predizione del modello.
Si parte infatti dagli errori che il sistema fa e gradualmente, procedendo all’indietro, si ritoccano i parametri del modello affinché questi errori vengono ridotti il più possibile.
Il processo di minimizzazione degli errori che fa uso dell’algoritmo di back propagation è il processo di ottimizzazione iterativo che prende il nome di gradient descent, discesa del gradiente Il gradiente è calcolato dalla retro propagazione degli errori; è semplicemente un numero che ci suggerisce come modificare il parametro di una rete neurale in funzione del suo contributo nella generazione di un errore.
In questa immagine vediamo come, modificando un certo peso W sull’asse delle X è possibile minimizzare gli errori indicati sull’asse Y come funzione di perdita, di loss in modo incrementale iterativo, partendo un certo peso w-old e modificandolo gradualmente fino a portare a zero gli errori, se possibile.
Bene, in questa puntata abbiamo parlato di Hopfield e Hinton, due pionieri dell’intelligenza artificiale moderna e di come i loro studi siano valsi un premio Nobel per la fisica.
In particolare abbiamo discusso delle loro innovazioni principali nelle reti di Hopfield e soprattutto del concetto della back propagation, un algoritmo grazie al quale è possibile ottimizzare in modo efficiente ed efficace i parametri di una rete neurale e quindi cambiarne progressivamente il funzionamento, al fine di minimizzare gli errori su un insieme di dati di addestramento.
Si specula spesso sulla possibilità di superare i limiti della back propagation, soprattutto in un contesto accademico, con algoritmi di addestramento più innovativi.
Ma ad oggi questa scoperta metodologica alla base dell’addestramento delle reti neurali allo stato dell’arte come i Large Language Models, non accenna ad essere dismessa.
Ciao! Alla prossima puntata di Le Voci dell’AI.