Realizzazione e caratterizzazione di una semplice rete neurale per la separazione di due campioni di eventi Vincenzo Izzo
Sommario Le reti neurali Lalgoritmo di apprendimento I risultati Vincenzo Izzo
1 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 w i
3 Vincenzo Izzo Lapprendimento (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 loutput 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 w i = w i + w i
4 Vincenzo Izzo Lapprendimento (2) Definiamo lerrore commesso dalla rete N 0 = neuroni in uscita, T = eventi del campione di training, Out i = valori in uscita della rete, Y i = valori attesi E = 1 (Y i (t) - Out i (t) ) 2 N0N0 T i=1t=1 N0N0 La correzione sui pesi è
5 Vincenzo Izzo Lapprendimento (3) Per un solo perceptrone la correzione vale w i = η(t-y)x i, Per una rete a tre livelli, tra layer dingresso e nascosto Dove x i sono gli input, i = Out i (t) (Y i - Out i )(1 - Out i (t) ) e w il sono i pesi tra layer di input e layer nascosto; tra layer nascosto e layer di uscita è Dove gli h k indicano loutput del k-esimo neurone del layer nascosto
6 Vincenzo Izzo I problemi nellapprendimento 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 x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ Insieme N x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ Se un dato appartiene allinsieme S, luscita del neurone dovrà essere 1, se appartiene allinsieme N luscita sarà 0 La generazione dei dati gaussiani i dati sono mescolati alternando una quadrupla dellinsieme S ed una quadrupla dellinsieme 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 (Y i (t) - Out i (t) ) 2 N0N0 T i=1t=1 N0N0 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 linsieme S: training (a sin.) e controllo
11 Vincenzo Izzo I risultati – 100 eventi Uscita del neurone per linsieme 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 linsieme N per 50, 100, 200 eventi – campione di training
19 Vincenzo Izzo I risultati – dipendenza da n. eventi Output per linsieme N per 50, 100, 200 eventi – campione di controllo
20 Vincenzo Izzo I risultati – dipendenza da n. eventi Output per linsieme S per 50, 100, 200 eventi – campione di training
21 Vincenzo Izzo I risultati – dipendenza da n. eventi Output per linsieme S per 50, 100, 200 eventi – campione di controllo
22 Vincenzo Izzo I risultati – dipendenza da n. eventi Efficienza per linsieme N per 50, 100, 200 eventi – campione di training
23 Vincenzo Izzo I risultati – dipendenza da n. eventi Efficienza per linsieme N per 50, 100, 200 eventi – campione di controllo
24 Vincenzo Izzo I risultati – dipendenza da n. eventi Efficienza per linsieme S per 50, 100, 200 eventi – campione di training
25 Vincenzo Izzo I risultati – dipendenza da n. eventi Efficienza per linsieme S per 50, 100, 200 eventi – campione di controllo
26 Vincenzo Izzo I risultati – dipendenza da n. eventi Contaminazione per linsieme N per 50, 100, 200 eventi – campione di training
27 Vincenzo Izzo I risultati – dipendenza da n. eventi Contaminazione per linsieme N per 50, 100, 200 eventi – campione di controllo
28 Vincenzo Izzo I risultati – dipendenza da n. eventi Contaminazione per linsieme S per 50, 100, 200 eventi – campione di training
29 Vincenzo Izzo I risultati – dipendenza da n. eventi Contaminazione per linsieme 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 dellerrore in funzione delle epoche, per α=0.5, 2, 10 - Training
32 Vincenzo Izzo I risultati – dip. dal parametro Andamento dellerrore 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 dellerrore in funzione delle epoche, modalità alternata (a sin.) e pseudorandom - Training
39 Vincenzo Izzo I risultati – dip. dal mixing dei dati Andamento dellerrore 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 x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ Insieme N x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ Insieme S x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ Insieme N x1x1 σ1σ1 x2x2 σ2σ2 x3x3 σ3σ3 x4x4 σ4σ
46 Vincenzo Izzo Andamento dellerrore 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 dellerrore 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
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 lespressione per r e θ a partire da due distribuzioni uniformi in (0,1) descritti dalle grandezze X 1 e X 2 che invertite danno Ritornando alle coordinate X e Y si ottiene così X = r cos e Y = r sin.