Introduzione alle reti neurali artificiali : cosa sono e come sono fatte ?


Introduzione alle reti neurali: cosa sono e come sono fatte ?

sinapsi

 

Le reti neurali artificiali sono nate per riprodurre attività tipiche del cervello umano come la percezione di immagini, il riconoscimento di forme, la comprensione del linguaggio, il coordinamento senso-motorio ecc.

Annunci

A tale scopo si sono studiate le caratteristiche del cervello umano.

Nel sistema nervoso esistono miliardi di neuroni (cellule nervose) un neurone è formato da un corpo cellulare e da molti prolungamenti ramificati, detti dendriti, attraverso i quali il neurone riceve segnali elettrici da altri neuroni. Ogni neurone ha anche un prolungamento filamentoso chiamato assone, la cui lunghezza può variare da circa 1 cm a qualche metro. All'estremità l'assone si ramifica formando terminali attraverso i quali i segnali elettrici vengono trasmessi ad altre cellule(ad esempio ai dendriti di altri neuroni). Tra un terminale di un assone e la cellula ricevente esiste uno spazio. I segnali superano questo spazio per mezzo di sostanze chimiche dette neurotrasmettitori. Il punto di connessione tra terminale e dendrite è detto sinapsi.

Un neurone si "attiva", cioè trasmette un impulso elettrico lungo il suo assone quando si verifica una differenza di potenziale elettrico tra l'interno e l'esterno della cellula. L'impulso elettrico provoca la liberazione di un neurotrasmettitore dai terminali dell'assone, che a loro volta possono, ad esempio, influenzare altri neuroni.

I neuroni biologici sono da 5 a 6 ordini di grandezza più lenti dei componenti elettronici convenzionali: un evento in un chip si verifica in alcuni nanosecondi mentre un evento neurale in alcuni millisecondi.

Il cervello umano è un calcolatore complesso, non lineare e parallelo. Pur essendo costituito da elementi di elaborazione molto semplici (i neuroni), è in grado di eseguire computazioni complesse, come il riconoscimento, la percezione e il controllo del m0vimento, molte volte più velocemente del più veloce degli attuali calcolatori.

Ti potrebbe interessare  Transistor a vuoto : la nuova valvola termoionica

Il cervello è in grado di modificare le connessioni tra i neuroni in base all'esperienza acquisita, cioè è in grado di imparare.

Nel cervello non esiste un controllo centralizzato, nel senso che le varie zone del cervello funzionano, influenzandosi reciprocamente e contribuendo alla realizzazione di uno specifico compito.

Infine, il cervello è fault tolerant, cioè se un neurone o una delle sue connessioni sono danneggiate, il cervello continua a funzionare, anche se con prestazione leggermente degradate. In particolare, le prestazioni del processo cerebrale degradano gradualmente man mano che si distruggono sempre più neuroni .

Quindi, per riprodurre artificialmente il cervello umano occorre realizzare una rete di elementi molto semplici che sia una struttura distribuita, massicciamente parallela, capace di apprendere e quindi di generalizzare (cioè produrre uscite in corrispondenza di ingressi non incontrati durante l'addestramento).

Tipicamente, il neurone artificiale ha molti ingressi ed una sola uscita.Ogni ingresso ha associato un peso, che determina la conducibilità del canale di ingresso. L'attivazione del neurone è una funzione della somma pesata degli ingressi.

Il metodo più usato per addestrare una rete neurale consiste nel presentare in ingresso alla rete un insieme di esempi(training set). La risposta fornita dalla rete per ogni esempio viene confrontata con la risposta desiderata, si valuta la differenza (errore) fra le due e, in base a tale differenza, si aggiustano i pesi. Questo processo viene ripetuto sull'interno training set affinchè le uscite della rete producano un errore al di sotto di una soglia prestabilita.

Anche se di recente introduzione, le reti neurali trovano valida applicazione in settori quali predizione, classificazione, riconoscimento e controllo, portando spesso contributi significativi alla soluzione di problemi difficilmente con metodologie classifiche .

Ti potrebbe interessare  Il grafene come metodo di studio delle molecole

MODELLO DI UN NEURONE:

Si può interpretare un neurone come una cella con più ingressi e una sola uscita(assone); l'informazione contenuta nella cella si scarica sull'uscita quando l'insieme degli input portano lo stato di attivazione della cella al raggiungimento di un certo livello di soglia. L'output di ogni neurone può essere "analogicamente" collegato agli input di altri neuroni: nasce così una rete neurale in cui l'informazione globale è costituita dall'insieme delle singole informazioni contenute in ogni neurone.

TIPI DI RETI NEURONALI:

Esistono diversi tipi di reti neuronali: totalmente connesse, simmetriche, autoassociative, stocastiche, asincroncrone..ecc, che sono caratterizzate da differenti architetture, organizzazione dei collegamenti tra i neuroni, e possibilità applicative. Accenno solamente a tre tipi di reti:

  • RETI CICLICHE: al contrario delle reti non ricorrenti possono avere degli output che ritornano come input e sono quindi reti che producono sicuramente un'oscillazione prima di convergere risultando intrinsecamene più lente.

 

  • RETI A PIU' LIVELLI: In queste reti esistono dei livelli nascosti, cioè degli strati di neuroni intermedi che non sono collegati nè con l'input nè con l'output della rete. In particolare questo tipo di rete è importante perchè esiste un teorema (Hecht-Nielsen) che afferma che attraverso una rete con tre livelli totalmente connessi tra un livello e l'altro ma con i neuroni di ogni livello e l'altro scollegati tra loro, è possibile computare una funzione qualsiasi, purchè il numero dei neuroni del livello intermedio sia adeguato.

 

  • RETI STRATIFICATE : Nelle reti si individuano degli strati di neuroni tali che ogni neurone è connesso con tutti quelli dello strato successivo, ma non esistono connessioni tra i neuroni all'interno dello stesso strato , nè tra neuroni di strati adiacenti.                                                    Immagine                                                                                                                                                                                                                                                                                                                                                                                                           Le connessioni tra i neuroni di una rete stratificata sono rappresentate mediante tante matrici quante sono le coppie di strati adiacenti. Ogni matrice contiene i pesi della connessioni tra le coppie di neuroni di due strati adiacenti.
Ti potrebbe interessare  Introduzione al motore passo-passo

 

fonti : documento in PDF della Prof. Beatrice Lazzerini


Tagged with: