ricerca

Il bipolo neuromorfico

Ovvero, come costruire nuove unità di elaborazione a partire da componenti nativamente più simili a quelli del cervello umano.

Il reservoir computing è una tecnica che si fonda su un’idea in larga parte ispirata dal comportamento del sistema nervoso umano e di altri organismi viventi. Crediti immagine: Pixabay

RICERCA – In un lavoro recente pubblicato su Nature Communications  un team di ricerca dell’Università del Michigan, guidato da Wei Lu, docente di computer science, ha evidenziato come la scelta di una particolare tipologia di componenti per realizzare l’hardware, ovvero l’architettura fisica su cui viene eseguito l’algoritmo di una rete neurale, può determinare un notevole risparmio di complessità e riduzione dei tempi richiesti l’addestramento del sistema.

Come ben noto, le reti neurali sono algoritmi basati su modelli matematici costituiti da neuroni artificiali, che simulano il comportamento delle cellule del cervello. (OggiScienza ha già affrontato questo tema, con riferimento a varie applicazioni, inclusi i lavori di ricerca avanzata condotti da colossi come Apple)

Si tratta di particolari procedure costituite da un numero finito di passi, che possono essere eseguite su computer tradizionali per svolgere funzioni molto specializzate: riconoscere il testo scritto mano, o gli oggetti presenti in una data immagine. O anche estrarre concetti astratti da grandi quantità di dati, come nel caso di AlphaGo, l’automa sviluppato da Google per battere il campione del mondo di Go.

Più in dettaglio, nella ricerca dell’Università del Michigan, dal titolo “Reservoir computing using dynamic memristors for temporal information processing”, il team ha proposto l’utilizzo dei cosiddetti memristori. Di che cosa si tratta, e che cosa si intende esattamente con reservoir computing?

Per quel che riguarda la prima questione, memristore è una parola coniata nei primi anni ’70 per descrivere un particolare bipolo elettrico, ossia un componente con due terminali, con caratteristiche simili a quello dei resistori o resistenze, ma con una fondamentale differenza: mentre la tensione ai capi del resistore, come formulato nella celebre legge di Ohm, è proporzionale alla variazione di carica elettrica, ossia alla corrente attuale che scorre tra gli stessi terminali, nel caso del memristore la tensione è invece anche funzione della carica immagazzinata all’interno del componente, che dipende dai valori precedenti della corrente.

Per dirla in termini semplici, si tratta di un componente in grado di ricordare, o immagazzinare, informazioni sulla storia passata, ossia sui valori precedenti della corrente che è fluita nel recente passato attraverso i suoi capi.

Questa speciale capacità, che rende il memristore una sorta di ibrido tra un resistore (che non è normalmente dotato di memoria) e un induttore o un capacitore (che sono dotati di memoria ma non presentano una semplice caratteristica proporzionale tra tensione e corrente, come il resistore), è stata sfruttata per l’implementazione di una rete neurale innovativa. Più precisamente, tali componenti sono stati utilizzati per la costruzione della parte cosiddetta ricorrente della rete neurale stessa.

In effetti, come accennato in precedenza, per poter svolgere il suo compito una rete neurale necessita di una fase di training, in cui viene di fatto addestrata ad apprendere un comportamento basandosi su input noti e su output attesi.

Ad esempio, se gli input sono delle immagini che possono contenere uno specifico oggetto, come un bicchiere, e l’output è la capacità di individuare il bicchiere stesso all’interno di una qualunque immagine, l’addestramento consisterà nel sottoporre alla rete un numero sufficientemente elevato di immagini che contengono o meno il bicchiere, e guidare la sua evoluzione, modificando i parametri interni alla rete, in modo che a regime sia in grado di effettuare la selezione con successo.

Esaurito l’addestramento, la rete potrà essere messa alla prova su nuove immagini, per verificare l’effettiva capacità di riconoscere che in una immagine è presente l’oggetto target. La rete viene quindi addestrata ad apprendere.

E proprio in relazione a questi aspetti,  il reservoir computing è una tecnica che si fonda su un’idea in larga parte ispirata dal comportamento del sistema nervoso umano e di altri organismi viventi: che esista, cioè, una parte ricorrente dell’apprendimento (detta appunto reservoir, o ‘serbatoio’), che una volta assestata si può evitare di riprendere o effettuare nuovamente, e una parte non-ricorrente, che necessita di essere invece ripetuta caso per caso.

Infatti, come evidenziato anche dallo studio del team di Wei Lu, l’addestramento di una rete neurale è un processo molto oneroso dal punto di vista del tempo necessario, e si può rivelare talora anche altamente inefficiente, nel senso che non tiene conto di particolari aspetti del problema da risolvere che potrebbero essere invece utilizzati per abbreviare notevolmente l’iter.

Ad esempio, tradurre un testo da una lingua a un’altra è una operazione che dipende molto dall’esperienza di chi la esegue, e dalla capacità di interpretare correttamente il contesto per abbreviare i tempi ed eseguire rapidamente scelte tra possibili opzioni, individuando la più adeguata: queste capacità hanno insito il concetto di ricorrenza, proprio perché si basano su operazioni già svolte in passato o su elementi temporalmente precedenti di una specifica sequenza di dati.

Pertanto, una rete neurale ricorrente si presta particolarmente all’esecuzione di tali compiti, visto che incorpora sia una capacità di elaborazione del dato correntemente sotto analisi, sia una memoria delle informazioni o della storia passata.

A questo punto appare chiaro perché costruire la rete a partire da memristori può essere così vantaggioso: infatti, la nativa capacità di tali componenti di processare particolari input, conservando una memoria della storia dei segnali che li hanno ‘attraversati’, li rende ottimali per una applicazione di tipo ricorrente.

La risoluzione di un dato problema può essere pertanto decomposta in due stadi: nel primo, il reservoir elabora i dati di ingresso, immagazzinando informazioni sulla loro storia e sulle loro caratteristiche. Questo stadio può essere implementato tramite memristori.

Nel secondo stadio, una rete neurale di tipo più semplice, non ricorrente, potrà sfruttare direttamente gli output della rete ricorrente, per eseguire un task meno complesso, per il quale anche l’addestramento necessario sarà molto più breve.

Come evidenziato nello studio, utilizzando solo 88 memristori è stato possibile, in un test sul riconoscimento di scrittura a mano, ottenere un risultato confrontabile con quello ottenibile con una rete neurale tradizionale di migliaia di nodi.

In altri termini, il team di ricerca ha provato che è possibile spostare la complessità dall’algoritmica, ossia dal software utilizzato per l’elaborazione o del modello matematico sottostante, alla architettura fisica del sistema di calcolo, costruendo quest’ultimo con elementi più complessi e simili alla reale struttura del sistema nervoso umano.

Usando questo approccio, secondo Lu sarà possibile nel prossimo futuro costruire macchine in grado di prevedere in modo efficiente ciò che un umano sta per dire, basandosi sulla parte precedente del suo discorso e sulla porzione di parola che ha già pronunciato.

Non si tratta, naturalmente, della prima applicazione avanzata nell’ambito: nel 2009, ad esempio, una circuito basato su induttori, capacitori e memristori è stato utilizzato per modellare il processo di apprendimento di organismi unicellulari come le amebe.

Più di recente, inoltre, nell’ambito del progetto DARPA SyNAPSE, portato avanti in partnership da HP Labs e Università di Boston, sono state sviluppate delle cosiddette architetture neuromorfiche basate su memristori.

Pertanto, tali componenti si candiderebbero fortemente ad essere dei potenziali elementi costitutivi di unità di elaborazione avanzate di nuova generazione con struttura ispirata a quella del sistema nervoso umano: neuromorfica, appunto.

Leggi anche: Una rete neurale per le nanoscienze

Pubblicato con licenza Creative Commons Attribuzione-Non opere derivate 2.5 Italia.   

Condividi su
Gianpiero Negri
Laureato in Ingegneria Elettronica, un master CNR in meccatronica e robotica e uno in sicurezza funzionale di macchine industriali. Si occupa di ricerca, sviluppo e innovazione di funzioni meccatroniche di sicurezza presso una grande multinazionale del settore automotive. Membro di comitati scientifici (SPS Italia) e di commissioni tecniche ISO, è esperto scientifico del MIUR e della European Commission e revisore di riviste scientifiche internazionali (IEEE Computer society). Sta seguendo attualmente un corso dottorato in matematica e fisica applicata. Appassionato di scienza, tecnologia, in particolare meccatronica, robotica, intelligenza artificiale e matematica applicata, letteratura, cinema e divulgazione scientifica, scrive per Oggiscienza dal 2015.