View
213
Download
1
Category
Preview:
Citation preview
Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di
eventi
• Vincenzo Izzo
Sommario
• Le reti neurali
• L’algoritmo di apprendimento
• I risultati
Vincenzo Izzo
1
Vincenzo Izzo
Reti neurali biologiche
• corpo cellulare o “soma”, dal quale partono collegamenti (dendriti) verso altri neuroni: compito dei dendriti è ricevere i segnali dagli altri neuroni collegati
• il soma ha un collegamento di uscita, o assone, con il quale il neurone trasmette i suoi dati verso i dendriti di altri neuroni
2
Vincenzo Izzo
Reti neurali artificiali
• Composta da un certo numero di neuroni collegati tra loro da collegamenti “pesati”
• Accetta dati sulle unità in ingresso (input) e presenta i corrispondenti dati sulle unità di uscita; può avere unità nascoste (hidden) che contribuiscono a codificare i legami tra le variabili di input e quelle di output
• Ogni neurone riceve una combinazione lineare delle uscite dei neuroni dello strato precedente e tali connessioni sono pesate dai pesi sinaptici wi
3
Vincenzo Izzo
L’apprendimento (1)
• Si inizializza la rete scegliendo i pesi in modo casuale;
• Si fornisce un campione di training composto da coppie Input/output atteso;
• Si calcola il risultato in output della rete e lo si confronta con l’output atteso;
• Si modificano i pesi dei collegamenti tra i neuroni in funzione dello scarto tra output e output atteso.
• La funzione di trasferimento input-output della rete viene ottenuta attraverso
un processo di addestramento (training) con dati proposti alla rete
• La correzione dei pesi avviene secondo una semplice somma wi = wi + ∆wi
4
Vincenzo Izzo
L’apprendimento (2)
• Definiamo l’errore commesso dalla rete
• N0 = neuroni in uscita, T = eventi del campione di training,
• Outi = valori in uscita della rete, Yi = valori attesi
E = 1 ∑ ∑ (Yi(t) - Outi
(t) )2N0 T
i=1 t=1N0
• La correzione sui pesi è
5
Vincenzo Izzo
L’apprendimento (3)
• Per un solo perceptrone la correzione vale ∆wi = η(t-y)xi,
• Per una rete a tre livelli, tra layer d’ingresso e nascosto
Dove xi sono gli input, i = Outi(t) (Yi - Outi )(1 - Outi
(t) ) e wil sono i pesi
tra layer di input e layer nascosto; tra layer nascosto e layer di uscita è
Dove gli hk indicano l’output del k-esimo neurone del layer nascosto
6
Vincenzo Izzo
I problemi nell’apprendimento
• Si inizializza la rete scegliendo i pesi in modo casuale
• Si può risolvere scegliendo diverse velocità di apprendimento
7
Vincenzo Izzo
La programmazione
Insieme S
x1 σ1 x2 σ2 x3 σ3 x4 σ4
0 1 1 1 1 1 1 1
Insieme N
x1 σ1 x2 σ2 x3 σ3 x4 σ4
4 1 4 1 4 1 4 1
• Se un dato appartiene all’insieme S, l’uscita del neurone dovrà essere 1, se appartiene all’insieme N l’uscita sarà 0
• La generazione dei dati gaussiani
• i dati sono mescolati alternando una quadrupla dell’insieme S ed una quadrupla dell’insieme N
• i dati sono mescolati in modalità casuale basata sullo stesso algoritmo di generazione di numeri casuali
8
Vincenzo Izzo
I risultati
• Errore commesso dal neurone, per il campione di training e quello di controllo
E = 1 ∑ ∑ (Yi(t) - Outi
(t) )2N0 T
i=1 t=1N0
• Risposta in uscita, per il campione di training e quello di controllo
• Efficienza e contaminazione per gli insiemi S e N del neurone, per il campione di training e quello di controllo
9
Vincenzo Izzo
I risultati – 100 eventi
• Errore del neurone su 100 eventi: training (a sin.) e controllo
10
Vincenzo Izzo
I risultati – 100 eventi
• Uscita del neurone per l’insieme S: training (a sin.) e controllo
11
Vincenzo Izzo
I risultati – 100 eventi
• Uscita del neurone per l’insieme N: training (a sin.) e controllo
12
Vincenzo Izzo
I risultati – 100 eventi
• Efficienza del neurone sul campione S in funzione del taglio: training (a sin.) e controllo
13
Vincenzo Izzo
I risultati – 100 eventi
• Efficienza del neurone sul campione N in funzione del taglio: training (a sin.) e controllo
14
Vincenzo Izzo
I risultati – 100 eventi
• Contaminazione del campione S in funzione del taglio: training (a sin.) e controllo
15
Vincenzo Izzo
I risultati – 100 eventi
• Contaminazione del campione N in funzione del taglio: training (a sin.) e controllo
16
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Errore del neurone per 50, 100, 200 eventi – campione di training
17
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Errore del neurone per 50, 100, 200 eventi – campione di controllo
18
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Output per l’insieme N per 50, 100, 200 eventi – campione di training
19
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Output per l’insieme N per 50, 100, 200 eventi – campione di controllo
20
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Output per l’insieme S per 50, 100, 200 eventi – campione di training
21
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Output per l’insieme S per 50, 100, 200 eventi – campione di controllo
22
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Efficienza per l’insieme N per 50, 100, 200 eventi – campione di training
23
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Efficienza per l’insieme N per 50, 100, 200 eventi – campione di controllo
24
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Efficienza per l’insieme S per 50, 100, 200 eventi – campione di training
25
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Efficienza per l’insieme S per 50, 100, 200 eventi – campione di controllo
26
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Contaminazione per l’insieme N per 50, 100, 200 eventi – campione di training
27
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Contaminazione per l’insieme N per 50, 100, 200 eventi – campione di controllo
28
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Contaminazione per l’insieme S per 50, 100, 200 eventi – campione di training
29
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Contaminazione per l’insieme S per 50, 100, 200 eventi – campione di controllo
30
Vincenzo Izzo
I risultati – dipendenza da n. eventi
• Andamento dei pesi in funzione delle epoche, per 50, 100, 200 eventi nel campione
31
Vincenzo Izzo
I risultati – dip. dal parametro
• Andamento dell’errore in funzione delle epoche, per α=0.5, 2, 10 - Training
32
Vincenzo Izzo
I risultati – dip. dal parametro
• Andamento dell’errore in funzione delle epoche, per α=0.5, 2, 10 - Controllo
33
Vincenzo Izzo
I risultati – dip. dal parametro
• Efficienza per il campione N, per α=0.5, 2, 10 - Training
34
Vincenzo Izzo
I risultati – dip. dal parametro
• Efficienza per il campione N, per α=0.5, 2, 10 - Controllo
35
Vincenzo Izzo
I risultati – dip. dal parametro
• Efficienza per il campione S, per α=0.5, 2, 10 - Training
36
Vincenzo Izzo
I risultati – dip. dal parametro
• Efficienza per il campione S, per α=0.5, 2, 10 - Controllo
37
Vincenzo Izzo
I risultati – dip. dal parametro
• Andamento dei pesi in funzione delle epoche, per α=0.5, 2, 10
38
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Andamento dell’errore in funzione delle epoche, modalità alternata (a sin.) e pseudorandom - Training
39
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Andamento dell’errore in funzione delle epoche, modalità alternata (a sin.) e pseudorandom - Controllo
40
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Efficienza per il campione N, modalità alternata (a sin.) e pseudorandom – Training
41
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Efficienza per il campione N, modalità alternata (a sin.) e pseudorandom – Controllo
42
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Efficienza per il campione S, modalità alternata (a sin.) e pseudorandom – Training
43
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Efficienza per il campione S, modalità alternata (a sin.) e pseudorandom – Controllo
44
Vincenzo Izzo
I risultati – dip. dal mixing dei dati
• Andamento dei pesi in funzione delle epoche, modalità alternata (a sin.) e pseudorandom
45
Vincenzo Izzo
I risultati – dip. dalla sovrapposizione dei dati
Insieme S
x1 σ1 x2 σ2 x3 σ3 x4 σ4
2 1 2 1 2 1 2 1
Insieme N
x1 σ1 x2 σ2 x3 σ3 x4 σ4
4 1 4 1 4 1 4 1
Insieme S
x1 σ1 x2 σ2 x3 σ3 x4 σ4
0 1 1 1 1 1 1 1
Insieme N
x1 σ1 x2 σ2 x3 σ3 x4 σ4
4 1 4 1 4 1 4 1
46
Vincenzo Izzo
• Andamento dell’errore in funzione delle epoche, per i dati della tabella 1 (a sin.) e tabella 2 - Training
I risultati – dip. dalla sovrapposizione dei dati
47
Vincenzo Izzo
• Andamento dell’errore in funzione delle epoche, per i dati della tabella 1 (a sin.) e tabella 2 - Controllo
I risultati – dip. dalla sovrapposizione dei dati
48
Vincenzo Izzo
• Efficienza per il campione N, per i dati della tabella 1 (a sin.) e tabella 2 – Training
I risultati – dip. dalla sovrapposizione dei dati
49
Vincenzo Izzo
• Efficienza per il campione N, per i dati della tabella 1 (a sin.) e tabella 2 – Controllo
I risultati – dip. dalla sovrapposizione dei dati
50
Vincenzo Izzo
• Efficienza per il campione S, per i dati della tabella 1 (a sin.) e tabella 2 – Training
I risultati – dip. dalla sovrapposizione dei dati
51
Vincenzo Izzo
• Efficienza per il campione S, per i dati della tabella 1 (a sin.) e tabella 2 – Controllo
I risultati – dip. dalla sovrapposizione dei dati
52
Vincenzo Izzo
• Andamento dei pesi in funzione delle epoche, per i dati della tabella 1 (a sin.) e tabella 2
I risultati – dip. dalla sovrapposizione dei dati
Vincenzo Izzo
Vincenzo Izzo
La programmazione• La generazione dei dati gaussiani: metodo di Box-Muller
• Si parte da una distribuzione gaussiana bidimensionale
• Si passa da coordinate cartesiane X e Y in coordinate polari r e θ, tenendo conto che r è lo Jacobiano della trasformazione e che quindi dxdy = rdrdθ
• Si ottiene l’espressione per r e θ a partire da due distribuzioni uniformi in (0,1) descritti dalle grandezze X1 e X2
• che invertite danno
• Ritornando alle coordinate X e Y si ottiene così X = r cos e Y = r sin.
Recommended