Le reti neurali
u
La rete che apprende
Frank Rosenblatt realizzò nel 1958 un programma di computer, il Perceptron, che simulava il funzionamento di una rete di neuroni. Il Perceptron era costituito da celle aventi la funzione dei neuroni, che venivano attivate quando la somma algebrica dei segnali entranti provenienti da altre celle superava una certa soglia.
In mancanza di una teoria che stabilisse come definire l’ intensità (o "peso", positivo o negativo) delle varie connessioni in modo da ottenere certi processi di elaborazione, Rosenblatt organizzò il programma in modo che stabilisse valori arbitrari dei pesi e li cambiasse, poi, in modo casuale, confermando, però, o azzerando il valore dei pesi in base ai successi ottenuti. La speranza era che il Perceptron imparasse a riconoscere configurazioni e, quindi, a elaborare segnali esterni in modo sempre più efficiente analogamente a quello che succede nel cervello umano. In effetti Rosenblatt definiva che due stimoli sensoriali sono identici - come quelli prodotti da due immagini visive - se attivano esattamente le stesse cellule della rete neurale.
Il Perceptron non conseguì risultati molto interessanti, ma il concetto fu ripreso da John Hopfield ed altri alla fine degli anni Settanta, in modo più elaborato. Attualmente esistono molte realizzazioni di così dette reti neurali, in cui le celle (che funzionano grosso modo come neuroni) sono suddivise in vari strati. La configurazione (attivati/disattivati) dei neuroni dello strato più esterno, o di uscita, costituisce il risultato del processo (uscita o output).
Le reti neurali vengono specializzate a eseguire un certo compito (in genere di
riconoscimento di configurazioni di dati in ingresso - grafiche, simboliche o
numeriche). Questo avviene durante una fase di apprendimento in cui i segnali
entranti provengono in successione da tutte le configurazioni che si vogliono
riconoscere: un operatore presenta insieme a ciascuna configurazione, anche la
configurazione neurale di uscita desiderata e questa viene confrontata con
quella prodotta inizialmente a caso dalla rete. Così si può misurare l'errore
compiuto, utilizzando procedure per valutare se i cambiamenti appena fatti siano
stati utili oppure no e, quindi, per definire la direzione delle modifiche
successive che alterano ciclicamente i pesi nelle connessioni fra i vari strati.
u A cosa serve una rete neurale?
Sono stati fatti anche tentativi di utilizzare le reti neurali per eseguire elaborazioni matematiche di dati numerici, ma i programmi tradizionali di computer sono enormemente più efficienti. Sono stati pubblicati resoconti di successi notevoli ottenuti con le reti neurali per risolvere problemi di sistemi di controllo industriale e anche per definire diagnosi mediche. Meno credibili appaiono le notizie di successi delle reti neurali nel prevedere l'andamento di mercati finanziari e borse valori.