Introduzione alle Reti Neuronali

annuncio pubblicitario
Sommario
Introduzione alle
Reti Neuronali
• Motivazioni
• Elaborazione neurale
• Modelli di apprendimento
• Memorie Associative
Giorgio Buttazzo
• Riconoscimento di pattern
Dipartimento di Informatica e Sistemistica
Università di Pavia
• Reti per il controllo autonomo
• Conclusioni
2
Applicazioni dell’I.A.
Ricerca della soluzione
Si basa su l’esplorazione di vaste strutture dati
organizzate ad albero:
• Giochi di strategia
– scacchi, dama, otello
• Comprensione del parlato
3
9
27
81
243
…
– analisi sintattica e semantica
• Risoluzione di teoremi
– dimostrazioni automatiche
• Sistemi esperti
Dopo 10 passi ci sono circa 60.000 nodi da esplorare
Dopo 20 passi ce ne sono circa 3 miliardi e mezzo.
– diagnosi mediche, previsioni
3
4
Gli scacchi
Deep Blue vs. Kasparov
• Ogni posizione ammette in media 20 mosse
legali.
• Lo spazio di ricerca è immenso (10120).
Tuttavia i calcolatori sono più efficienti
dell’uomo nelle ricerche su grosse strutture dati.
Potenza attuale dei computer:
Deep Blue:
2 ·108 posiz /sec
Kasparov:
3 posiz /sec
108 - 10 9 posizioni/sec
Ricerca esaustiva: 10111 s
1094 U
11 Maggio 97: Deep Blue batte Kasparov
3.5 a 2.5
(U ≅ 101 7 s)
(ore 19:00 GMT)
5
6
1
Bambino batte Computer
Il dilemma dell’I.A.
I computer sono eccellenti nel calcolo, ma
falliscono quando si cerca di riprodurre
attività tipicamente umane:
• Percezione sensoriale
3a0
Sebbene un computer possa battere il campione
del mondo di scacchi, esso non è in grado di
competere con un bambino di 3 anni nel
• costruire con il Lego
• riconoscere il volto di una persona
• riconoscere la voce dei genitori
• Coordinamento senso-motorio
• Riconoscimento di immagini
• Capacità di adattamento
7
8
Problema
Esempi
• Le azioni complesse dipendono da molti
fattori, che non possono essere previsti
esattamente in un programma.
• Afferraggio di un oggetto è determinato da
numerosi fattori:
• Tali fattori devo essere acquisiti con
l’esperienza, in una fase di apprendimento.
La mente ha bisogno di un corpo!
–
–
–
–
la posizione dell'oggetto
la nostra postura
la dimensione e la forma dell'oggetto
il peso previsto
– gli eventuali ostacoli interposti
9
Riconoscimento del parlato
Richiede una
necessaria per:
fase
di
10
Riconoscimento di
immagini
apprendimento
• adattarsi al soggetto che parla
LIBRO
• filtrare i rumori esterni
• separare eventuali altre voci
11
12
2
L’approccio neuronale
Come funziona il cervello?
L’estrema difficoltà di trattare questi problemi
con il calcolatore ha fatto nascere l'esigenza di
studiare nuove metodologie di calcolo,
ispirate alle reti neuronali.
• Quando riconosciamo un volto o afferriamo
un oggetto non risolviamo equazioni.
Medici
→ studi sul cervello
Ingegneri
→ risoluzioni di problemi
• Il cervello lavora in modo associativo:
ogni stato sensoriale evoca uno stato
cerebrale (un’attività elettro-chimica) che
viene memorizzata a seconda delle necessità.
13
Colpire una palla da tennis
14
Fase di apprendimento
• In una fase di apprendimento si provano le
azioni e si memorizzano quelle buone:
• La traiettoria dipende da diversi fattori:
− forza di lancio, angolazione iniziale, effetto,
velocità del vento;
• La previsione della traiettoria richiede:
− la misurazione precisa delle variabili;
− la soluzione simultanea di equazioni complesse,
da ricalcolare ad ogni acquisizione dei dati.
− se la palla è passata in questa zona del campo
visivo, fai un passo indietro;
− se la palla …
Come fa un giocatore a fare tutto ciò?
15
16
Fase operativa
Il calcolo associativo
• Una volta allenati, il cervello esegue le
azioni senza pensare, sulla base delle
associazioni apprese.
• Un insieme di equazioni complesse vengono
risolte mediante una look-up table.
• Essa è costruita in base all’esperienza e
viene affinata con l’allenamento.
stato
sensoriale
azione
memorizzata
.
.
.
Un meccanismo simile è usato da
chi suona o da chi guida
17
18
3
Il neurone biologico
sinapsi
nucleo
Alcune proprietà del cervello
impulso
• Velocità dei neuroni:
alcuni ms
• Numero di neuroni:
1011 ÷ 1012
• Connessioni:
103 ÷ 10 4 per neurone
tolleranza al rumore
• Controllo distribuito:
manca una CPU
basso consumo
• Tolleranza ai guasti:
graceful degradation
assone
dendriti
• Attivazione/inibizione:
• Apprendimento dovuto alle sinapsi (Hebb 1949)
19
•
Evoluzione della ricerca
•
•
•
20
1943, McCulloch e Pitts: nasce il primo modello
neurale: il neurone binario a soglia.
•
1949, Hebb: dagli studi sul cervello, emerge che
l’apprendimento non è una proprietà dei neuroni,
ma è dovuto a una modifica delle sinapsi.
•
1962, Rosenblatt: propone un nuovo modello di
neurone capace di apprendere mediante esempi:
il perceptron.
•
1969, Minsky e Papert: dimostrano i limiti del
perceptron: crolla l’entusiasmo sulle reti neurali.
1982, Hopfield: propone un modello di rete per
realizzare memorie associative.
1982, Kohonen: propone un tipo di rete autoorganizzante (mappe recettive).
1985, Rumelhart, Hinton e Williams:
formalizzano l’apprendimento di reti neurali con
supervisione (Back-Propagation).
21
22
Modello generale di neurone
Modello di un neurone
x1
Occorre definire
x2
• il numero dei canali d’ingresso:
• il tipo dei segnali d’ingresso:
N
xi
• i pesi delle connessioni:
wi
• la funzione di attivazione:
F
• la funzione di uscita:
f
•
•
•
F
a
y
f
xn
a(t) = F(x1, x2, … , xn)
y(t) = f(a)
23
24
4
Il neurone binario a soglia
Funzione di Heaviside
x1
y(t)
x2
1
•
•
•
Σ
y
a
θ
xn
Σi wi xi
a =
0
se
a = Σ i wi xi
Σi w i
x
i
<
θ
y (t) =
y = HS(a − θ)
1
altrimenti
25
Altre funzioni di uscita
f
Reti di neuroni
f
Per costruire una rete neurale occorre definire:
θ
a
f
• Il modello dei neuroni
a
• L’architettura della rete
• La modalità di attivazione dei neuroni
f
θ
a
26
• Il paradigma di apprendimento
θ
• La legge di apprendimento
a
27
28
Rappresentazione delle
connessioni
Architetture di rete
i
Completamente connessa
wji
j
Peso sul neurone j della
connessione proveniente
dal neurone i
stratificata
29
30
5
Reti completamente connesse
I
pesi
della
rete
possono
essere
specificati
attraverso una matrice di connessione
pesi neurone 1
W =
Reti stratificate
I pesi di una rete a n strati possono essere specificati
attraverso n−
−1 matrici di connessione:
strato 3 (uscita)
W32
pesi neurone 2
strato 2 (nascosto)
•
•
•
W21
strato 1 (ingresso)
pesi neurone n
31
32
Apprendimento
Modalità di attivazione
Capacità della rete di modificare il
comportamento in una direzione desiderata al
variare delle connessioni sinaptiche (pesi).
• Sincrona (parallela)
I neuroni cambiano stato tutti insieme,
sincronizzati da un clock.
I paradigmi di apprendimento possono essere
suddivisi in tre classi fondamentali:
• Asincrona (sequenziale)
• supervisionato
• competitivo
• con rinforzo
I neuroni cambiano stato uno per volta.
Occorre definire un criterio di scelta.
33
Apprendimento supervisionato
34
Fase di addestramento
La rete impara a riconoscere un insieme di
configurazioni di ingresso desiderate.
Xk
RETE
NEURALE
esempio
La rete opera in due fasi distinte:
• Fase di addrestramento
∆w
Teacher
si memorizzano le informazioni desiderate
Ydk
• Fase di evoluzione
Yk
uscita
Learning
Rule
uscita desiderata
si recuperano le informazioni memorizzate
35
36
6
Apprendimento competitivo
Apprendimento con rinforzo
• I neuroni competono per specializzarsi a riconoscere
un particolare stimolo.
• Alla fine, ogni stimolo attiva un particolare neurone
(isomorfismo tra stimoli e nueuroni di uscita).
RETE
NEURALE
Xk
stimolo
Yk
RETE
NEURALE
Xk
Zk
Sistema da
controllare
R
Yk
uscita
Critico
∆w
37
Rete completamente connessa
• Neuroni binari a soglia
• Attivazione parallela
38
Equazione di evoluzione
In forma matriciale:
X(t+1) = HS [W X(t)]
Transizione di stato
xi(t+1) = HS [ Σ i wi x i(t)]
xi(t+1) =
• X(t) è lo stato della rete al tempo t
• W è la matrice dei pesi
1 se Σ iwix i(t) ≥ 0
0 altrimenti
39
40
Transizione di stato
Esempio
X2
Matrice simmetrica
x2
1
1
x1
−1
−1
−1
−1
x3
0
1
−1
W = 1
0
−1
−1 −1
0
Stato iniziale: X(t) =
00
11
00
X1
X3
Stato successivo: X(t+1) = HS[W X(t)] =
= HS
00 11 −1
−1
11 00 −1
−1
−1
−1 −1
−1 00
00
11
00
X2
=
1
1
0
X1
41
X3
42
7
Diagramma delle transizioni
011
101
000
100
010
111
110
Esempio
Matrice antisimmetrica
x2
1
x1
001
−1 −1
−1
1
1
x3
0
−1
1
W = 1
0
−1
1
0
−1
43
44
Definizioni
Diagramma delle transizioni
• Trasformazione
000
010
001
100
111
011
101
110
Funzione T:S→S, che trasforma uno stato X(t)
nel successivo X(t+1).
• Traiettoria
Sequenza degli stati assunti dalla rete, a partire
da uno stato iniziale X0:
X(0) = X0
X(t+1) = T[X(t)]
45
Definizioni
46
Definizioni
• Stato raggiungibile
• Ciclo limite di ordine k
Uno stato XF si dice raggiungibile da XI se esiste
una traiettoria che parte da XI e arriva in X F .
Traiettoria che parte da uno stato iniziale XI e
arriva nello stesso stato dopo k passi.
• Stabilità globale
• Stato stabile
Una rete si dice globalmente stabile se per ogni
stato iniziale X, la traiettoria che parte da X
raggiunge uno stato stabile.
Stato che genera una traiettoria costante:
X(t+1) = X(t) = X s
47
48
8
Modello di Hopfield
Proprietà di stabilità
(Hopfield ‘82)
y(net)
1
Una rete neurale completamente
connessa è globalmente stabile se:
θ
• la matrice dei pesi è simmetrica
• l’attivazione è asincrona
net = Σ i wi x i
 n

y = sgn  ∑ wi xi − θ 
 i =1

49
50
Dimostrazione
La funzione Energia
• Ogni stato è caratterizzato da una energia:
1
E(X) = − XT WX
2
• Se la matrice dei pesi è simmetrica e l’attivazione
è asincrona, allora
E(X) è monotona non crescente
con l’evolvere dello stato
E( X ) = −
1 n n
∑∑ wij xi x j
2 i =1 j =1
Derivando rispetto a x k (varia un solo neurone):
n

∂E
1 n
= −  ∑ wkj x j + ∑ wik xi 
∂xk
2  j =1
i =1

Supponendo W simmetrica si ha:
 n

∂E
= − ∑ wkj x j 
∂xk
 j =1

E[X(t+1)] ≤ E[X(t)]
51
Nel discreto si ha:
La rete evolve verso uno stato stabile
 n

∆ E = −∆ xi  ∑ wij x j 
 i =1

∆ xi > 0 ( xi: -1 → 1) ⇒
Σjw ijx j ≥ 0
∆ xi < 0 ( xi: 1 → -1) ⇒
Σjw ijx j < 0
quindi:
52
E(X)
X
∆E < 0
Xini
53
Xfin
X2
X3
54
9
Rete con 3 stati stabili
Bacino di attrazione:
insieme degli stati tali che tutte le traiettorie
partenti da essi finiscono nello stesso stato stabile.
E
9
bacino di attrazione per XS1
0000
0100
bacino di XS2
1001
bacino di XS3
1111
1011
1110
0011
1010
E(X)
7
X
0001
1101
5
0101
1100
2
0111
1000
0110
XS1
XS2
XS3
X0
0010
55
56
Memorizzazione di immagini
Memorie Associative
Sono memorie i cui i contenuti possono essere
recuperati sulla base di una informazione
parziale o distorta del contenuto stesso.
Immagine:
n ×× m pixel
Neuroni:
N = n ×× m
Connessioni: C = N 2
Stati:
S = 2N
Immagine:
8 ×× 8 pixel
Neuroni:
N = 64
Connessioni: C = 4096
S ≅ 2 ·1019
Stati:
57
58
Recupero delle memorie
input
E(X)
input
Xj
Xi State space
Memo 1
59
Memo 2
Memo 3
60
10
x2
Regola di memorizzazione
M1: (+ + −)
(Hopfield ‘82)
x1
+1
−1
W1 =
0 1 −1
1 0 −1
−1 −1 0
W2 =
0 1 −1
1 0 −1
−1 −1 0
x3
−1
x2
M2: (− − +)
x2
W = ∑Wk =
k =1
0
1
−3
1
0
−1
−3
−1
0
x1
x3
62
M = {(+ + −), (− − + ), (− + +)}
M3
+−−
−3
++−
M1
−1
−1
0 −1 −1
0 1
−1 1 0
W3 = −1
1
(Attivazione Sincrona)
x2
1
−1
Diagramma delle transizioni
Rete complessiva
m
x3
−1
M3: (− + +)
61
−1
1
x1
x1
−1
1
x3
−++
−−−
+−+
−−+
+++
−+−
M2
63
Diagramma delle transizioni
64
Osservazioni
Quando si sovrappongono troppe memorie:
• Non sempre una memoria risulta stabile
(Attivazione Asincrona)
M = {(+ + −), (− − + ), (− + +)}
La creazione di un minimo locale può avere
l’effetto di cancellarne un altro.
E=3
−+−
+−−
E = −1
E = −5
+++
M1
++−
−−−
M3
M2
+−+
• Possono nascere memorie spurie
−++
La superficie energetica può assumere forme
complesse.
Spesso il complementare di una memoria è
anche una memoria poiché W(x) = W(~x).
−−+
65
66
11
Capacità di memoria
Ottimizzazione
• Regola empirica (Hopfield)
Una rete di Hopfield minimizza la funzione
energia:
Una rete di N neuroni può ospitare al più un
numero M = N/7 memorie (M ≅ 0.15 N).
E( X ) = −
• Analisi statistica
Detta β la probabilità di stabilità delle memorie,
M=
N
2 ln(N / a)
dove:
xi
wji
dove a = −lnβ
1 n n
∑∑ wij xi x j
2 i =1 j =1
sono le incognite del problema
rappresentano i vincoli del problema
Ad esempio, se N = 1000 e β = 0.9 si ha M = 54.
67
68
Macchina di Boltzman
Ottimizzazione
(Hinton & Sejnowski, 1983)
E(X)
Per sfuggire dai minimi locali si consentono
transizioni di stato probabilistiche:
P( y = 1) =
X
Sol. sub-ottima
1
Sol. ottima
1
1+ e − a / T
T
Come si fa a trovare il minimo assoluto?
69
a = Σ i wi xi
70
Simulated Annealing
E(X)
X
Sol. ottima
Regola di
raffreddamento
T (k ) =
T0
log(1 + k )
71
12
Scarica