6 - Home di homes.di.unimi.it

annuncio pubblicitario
RETI NEURALI ASSOCIATIVE
Mitja Perus
Il modello di rete neurale di Hopfield è descritto dalle
seguenti equazioni che rappresentano la dinamica dell’attività dei
neuroni:
N
q i (t 2  t 1  δt)   J ijq j (t 1 )
i 1
oppure


q(t 2 )  Jq(t 1 )
a cui si associa la legge di apprendimento di Hebb definita
dalle seguenti equazioni:
P
J ij   vik v kj
k 1
oppure
 
J   v k v kT
P
k 1
qi attività corrente dell’i-esimo neurone

q  (q1 ,..., q N )
stato della rete con N neuroni
v ik attività dell’i-esimo neurone
che prende parte alla
k
v
codifica del k-esimo pattern
.


L’equazione q(t 2 )  Jq(t 1 ) descrive la sommatoria dei segnali
pesati dalla forza delle connessioni sinaptiche (Jij) che un neurone
riceve in ingresso da tutti gli altri neuroni.
 k  kT
J

v
v

L’equazione
stabilisce che la forza di ciascuna
P
k 1
connessione sinaptica viene aumentata quando i suoi due neuroni
sono entrambi attivi o inattivi, e viene diminuita se la loro attività
risulta scorrelata.
Le correlazioni neurali afferenti a ciascun pattern
e
immagazzinate simultaneamente sono sommate su tutti i pattern
immagazzinati (P). La matrice J
viene chiamata “matrice
memoria”.
Abbiamo visto che la computazione collettiva della rete può
essere vista attraverso la minimizzazione della funzione energia
1 N
H- 
2 i 1
N
1 N
J ijq i q j  - 

2 i 1
j1
N
 v v q q
j1 k 1
k
i
k
j
i
j
Riscriviamo ora le equazioni in modo continuo secondo la

posizione r e al tempo t:

 


q( r2 , t 2  t 1  δt)   J( r1 , r2 )q( r1 , t 1 )d r1
P
 


J( r1 , r2 )   v k (r1 )v k (r2 )
k 1
Il

q output
richiamo
della


 Jq input  Jq .
memoria
è
effettuato
Questo può essere analizzato come segue:

 



P k  k   

q( r2 , t 2 )   J( r1 , r2 )q ( r1 , t 1 )d r1    v ( r1 )v ( r2 )q ( r2 , t 1 )d r1 
 k 1

 v (r )q(r , t )dr v (r )   v (r )q(r , t )dr v (r )  ... 
1
1
1
1
1
2
1

2
2
1
1

1
1


 P 

...   v ( r1 )q ( r1 , t 1 )d r1 v ( r2 ) 
P

 Av ( r2 )  B
1
dove
A  1 (“segnale”)
B 0 (“rumore”)
2
da

1
q
Dobbiamo scegliere un input  che sia molto simile a v
piuttosto che agli altri

v k con
k  1.

q
Nello stesso tempo, l’input  dovrebbe essere ortogonale a
k
v
tutti gli altri
con k  1 .

q
In questo caso,
converge all’attrattore
termini danno una somma trascurabile B. Così

v1

v1
mentre gli altri
viene richiamato.
Reti neurali olografiche
Se al modello appena descritto aggiungiamo l’evoluzione
oscillatoria
dell’attività
neuronale
otteniamo
un
modello
biologicamente più plausibile .
Allora
le variabili della rete neurale diventano a valori
complessi :
q j  q j0e
i j
 j fase.
Sutherland, Manger, Soucek e altri hanno simulato con
successo la generalizzazione quantistica del modello di Hopfield
con data set concreti. Il risultato è un modello olografico di rete
neurale che si pone a metà strada tra le ANN classiche e le QNN.
Il loro modello si può rappresentare così:
Una sequenza di k coppie di vettori di input-output è stata
utilizzata per l’apprendimento.
Ciascuna componente di input e di output oscilla con una
specifica ampiezza di attività e con una specifica fase (esponente).
La k-esima coppia di input-output è la seguente:
vettore di input :
k
k i1k
k i 2k
k i Nk
s  (s1 e , s 2 e ,..., s N e )
i  -1
vettore di output :
k
k
k i1k
k i 2k
k i M
o  (o1 e , o 2 e ,..., o M e )
Per codificare questi pattern, li lasciamo “interferire” in un
modo che è matematicamente equivalente all’interferenza ottica
della “object wave” (OW) e della “reference wave” (RW).
Nell’olografia la OW è l’onda che è direttamente riflessa
dall’oggetto la cui immagine sarà memorizzata nell’ologramma.
La RW è l’onda indiretta (riflessa attraverso uno specchio).
Queste due onde, che trasportano le informazioni sull’oggetto da
due differenti punti di vista, vengono fatte interagire sulla piastra
olografica.
L’interazione costruttiva o distruttiva determina il grado
locale di trasparenza ottica della placca olografica. Nel caso delle
reti olografiche ciò corrisponde alle correlazioni tra i pattern (le
componenti di memoria).
Matematicamente,
una
piccola
porzione
dell’onda
è
equivalente all’attività di un neurone, e l’interazione delle onde è
equivalente all’interazione tra neuroni con attività oscillatorie.
Utilizzando una legge di apprendimento analoga a quella di
P
k k
Hebb, simile all’equazione J ij   vi v j , calcoliamo la forza di
k 1
connessione tra due neuroni h e j:
N
J hj   s o e
k 1
k
h
k
j
i ( hk  kj )
Ciascun Jhj codifica la sovrapposizione delle ampiezze delle
correlazioni degli input-output locali e le differenze di fase e
angolazione nell’esponente.
In questo modo la matrice di tutte le correlazioni delle
ampiezze moltiplicata con le corrispondenti differenze di fase
rappresenta un ologramma , cioè la memoria.
Nell’olografia
reale,
un’immagine
viene
ricostruita
dall’ologramma mandando una nuova onda di riferimento (la
cosiddetta chiave) attraverso la lastra olografica.
Nel modello di rete neurale olografica simulata da
Sutherland, un pattern memorizzato (es. k=1) può essere
ricostruito dall’ologramma neurale , analogamente all’equazione

Av1 ( r2 )  B , facendo interagire un input chiave con la memoria:
N
N P
k
k
'
'
i h'
' iθ h
k k - i(θ h  j ) '
1 i h'
o  J s   J hjs he  s h o j e
s h e  o je
h 1
h 1 k 1
Scegliamo un input s’h simile a s1h , e ’h simile a 1h.
In tal caso, se gli s sono normalizzati sarà
s’h s1h  1
e
e
i h'
e
i h1
 1.
Gli apici nelle variabili significano valori vicini ai valori
delle variabili senza apici.
Il metodo di richiamo olografico di un pattern è simile al
metodo di richiamo della rete di Hopfield classica, perché soddisfa
le stesse condizioni.
Memorie associative olografiche analogiche si possono
implementare per via ottica, acustica, quantoelettronica e forse
quantobiologica.
L’olografia rappresenta un ponte fra reti neurali e sistemi
quantistici.
Reti neurali associative quantistiche
A partire dai modelli appena descritti introduciamo il loro
corrispettivo quantistico, con le fasi
 implicitamente incorporate
nelle funzioni d’onda   Aexp(i  ) con A ampiezza.
Le equazioni della rete neurale vengono semplicemente
“tradotte” in un formalismo quantistico in modo da preservare la
capacità di trasporto dell’informazione. Consideriamo le seguenti
corrispondenze (  ):
q
q   
vk   k
J G
 
J   v k v kT
P
k 1

P
 


G( r1 , r2 )   k (r1 )*  k (r2 )
k 1
Queste equazioni sono matematicamente equivalenti perché la
loro dinamica collettiva è simile: da un lato abbiamo neuroni e
dall’altro elementi quantistici (.) ed interazioni G(.).
Tenendo conto di questa lista di corrispondenze, tutte le
descrizioni fatte per le reti neurali classiche e olografiche sono
anche valide nel modello quantistico.
Per prima cosa vengono codificati i pattern in specifici stati
quantici.
Poi viene prodotta un’interferenza fra questi stati quantistici,
che crea una forma di memoria quantistica.
Infine per ricostruire un pattern quantistico è necessario che
lo stato, descritto dalla funzione d’onda, collassi.
La dinamica dell’interazione degli stati quantici è descritta
dalla seguente equazione:





(r2 , t 2 )   G( r1 , t 1 , r2 , t 2 )(r1 , t 1 )d r1 dt
1
oppure
(t 2 )  G(t 1 )
e vediamo la corrispondenza


q(t 2 )  Jq(t 1 )  (t 2 )  G(t 1 )
L’apprendimento della rete (“trasformazione di interferenza”)
è dato da:
P




G( r1 , t 1 , r2 , t 2 )   k (r1 , t1 ) *  k (r2 , t 2 )
k 1
oppure
P
 


G( r1 , r2 )   k (r1 ) * k (r2 )
k 1
k
dove 
sono autofunzioni d’onda, stati quantistici
energeticamente stabili.
Supponiamo
quindi
di
aver
codificato
una
qualche
informazione all’interno di essi: le funzioni d’onda sono diventate
dei “quantum pattern”. In questo caso la matrice G costituisce la
cosiddetta “quantum memory”.
Nota .
G
è denominata in questo modo perché funge da
“propagatore” . Infatti in meccanica quantistica le funzioni di
Green G si trovano nell’equazione
(x 2 , t 2 )  i  G(x 2 , t 2 ; x, t )(x, t )d 3 x
(*)
e sono dette propagatore perchè sono lo strumento matematico attraverso
il quale la funzione d’onda si muove attraverso spazio e tempo. Quando G
è nota ed è nota la funzione d’onda iniziale, la dinamica del sistema è nota
grazie alla (*).
Come per le reti neurali classiche, il processo di
apprendimento è il risultato dell’interazione quantistica di neuroni


(
r , t) .
quantistici detti qubits, descritto dalla funzione
 
Le interazioni sono descritte dai pesi G( r1 , t1 , r2 , t 2 ) che sono
gli elementi della matrice quantistica “hebbiana” G.
Il metodo di richiamo della quantum memory è realizzato da
un “collasso” della funzione d’onda:

 



P k  * k   

 ( r2 , t 2  t 1   t)   G( r1 , r2 ) ( r1 , t 1 )d r1    ( r1 )  ( r2 ) ( r1 , t 1 )d r1 
 k 1


1











( r1 ) *  ( r1 , t 1 )d r1  1 ( r2 )   2 ( r1 ) *  ( r1 , t 1 )d r1  2 ( r2 )  ... 







...   P ( r1 ) *  ( r1 , t 1 )d r1  P ( r2 )  A 1 ( r2 )  B
dove A = 1 (“segnale”), B = 0 (“rumore”)
e vediamo quindi la corrispondenza


Av ( r2 )  B  A 1 (r2 )  B
1
E’ stato necessario scegliere un input   che sia più simile a
 1 di qualunque altro  k , k1.
Allo stesso modo,
gli altri 
k
  deve essere quasi ortogonale a tutti
. In questo caso,   converge all’attrattore-pattern
quantistico  , e gli altri termini danno una somma trascurabile B.
1
1
Pertanto il pattern  viene richiamato dalla memoria, ossia
misurato.
Se la condizione che l’input deve essere simile ad uno dei
pattern memorizzati (o almeno più che algli altri pattern
memorizzati) non viene soddisfatta, la risposta della rete non sarà
univoca e il pattern non verrà richiamato.
RIASSUMENDO:
Sia nel caso quantistico che in quello neurale classico, il
nuovo input viene fatto interagire con la memoria, moltiplicando il
vettore di input per la matrice memoria G o J.
Oppure, localmente,le componenti che descrivono le attività
dei neuroni/qubits, che codificano l’input, vengono moltiplicate
con i pesi di connessione
P




G( r1 , t 1 , r2 , t 2 )   k (r1 , t1 ) *  k (r2 , t 2 )
k 1
che codificano la memoria (correlazioni di tutti i possibili
pattern appresi).
Poiché
la
matrice
di
memoria
hebbiana
è
una
sovrapposizione di autocorrelazioni di singoli pattern, possiamo
espandere la moltiplicazione in una serie.
Ciascun termine della serie corrisponde ad un pattern
immagazzinato che interagisce con l’input.
Se scegliamo un input simile ad uno già in memoria, il
termine corrispondente viene amplificato (per “risonanza”),
simultaneamente gli altri vengono soppressi e si ha il collasso al
pattern immagazzinato più vicino.
Il termine “risonante” dà l’output, ossia la quantità misurata
alla fine che corrisponde ad una specifica autofunzione, mentre
simultaneamente gli altri vengono soppressi.
Se le condizioni di similarità non venissero soddisfatte,
l’output sarebbe una sovrapposizione di tutti i pattern in memoria
e l’input, cioè
una mistura indistinta di pattern, ossia
un’interferenza incomprensibile di autofunzioni.
E’ normale che la rete faccia predizioni su situazioni nuovi
ma simili a quelle già apprese.
CONCLUSIONI
Poiché questo algoritmo è realizzabile in ogni sistema dotato
di dinamica collettiva, si può dire che sia relativamente universale.
La differenza fra le variabili neurali classiche e quelle
quantistiche è che le seconde sono complesse ed incorporano la
fase.
La procedura di richiamo della memoria quantistica è un caso
speciale della usuale misura quantistica.
La differenza è che nel nostro caso le autofunzioni hanno uno
specifico significato con contento informativo.
Possiamo assumere che le reti neurali biologiche cooperino a
livello quantistico, su base microtubulare.
Si può pensare che nel cervello le reti neurali facciano
scattare il collasso della funzione d’onda e quindi trasformino la
dinamica quantistica a valori complessi nella dinamica neurale
classica deterministica a valori reali.
Questa trasformazione fra dinamica quantistica e dinamica
classica durante il collasso della funzione d’onda è probabilmente
innescata dall’interazione con l’ambiente.
Riassumendo, i passi dell’algoritmo sono:

k
- costruzione (codifica) di pattern quantistici  (r , t )
- costruzione del propagatore G che lavora come memoria
- equazione eventualmente iterativa (output = memoria *
input)
- ricostruzione dalla memoria G su nuove istanze.
Qui l’insieme usuale completo di autostati ortonormali è
usato in modo “fuzzy”: invece di ubbidire all’ortogonalità esatta
della teoria quantistica si lavora con dati quasi ortogonali.
Scarica