Analisi e Interpretazione dd Se e e poai Serie Temporali Neurali... · 2012. 9. 3. · 23/09/2010...
Transcript of Analisi e Interpretazione dd Se e e poai Serie Temporali Neurali... · 2012. 9. 3. · 23/09/2010...
RETI NEURALI: TEORIA E APPLICAZIONI
Analisi e InterpretazioneAnalisi e Interpretazionedi Serie Temporalidi Serie Temporalid Se e e po ad Se e e po a
Modelli neurali
Davide [email protected]
Caso di Studio 1 : Segnali(in collaborazione con L Luccarini ENEA)(in collaborazione con L.Luccarini – ENEA)
Serie temporali acquisite da strumentazione sul campoSerie temporali acquisite da strumentazione sul campoRumoreRumoreRumoreRumore“Periodici”, ma non regolari“Periodici”, ma non regolari
Dinamiche lenteDinamiche lente
7.6
7.7
7.8
7.9
pH
200 400 600 800 1000 1200 1400
7.4
7.5
-100
0
100
ORP
200 400 600 800 1000 1200 1400
-300
-200
3
4
5
6
DO
23/09/201023/09/2010 22200 400 600 800 1000 1200 1400
1
2
3
tempo (min)
DO
(Altri dati)
23/09/201023/09/2010 33
1) Approssimazione con FF-NN Ottima approssimazione dell’intero segnaleOttima approssimazione dell’intero segnale
Perfetto per l’uso offPerfetto per l’uso off--lineline
7.9
8
Addestramento ripetuto per ogni segnaleAddestramento ripetuto per ogni segnale Non adatto all’uso onNon adatto all’uso on--lineline
Diffi il di i l t i iDiffi il di i l t i i
7.6
7.7
7.8
Difficile dimensionare la rete a prioriDifficile dimensionare la rete a priori Rischio di Rischio di overfittingoverfitting Rischio di arresto in un minimo Rischio di arresto in un minimo localelocale
0 50 100 150 200 250 300 350 4007.3
7.4
7.5 NO EstrapolazioneNO Estrapolazione
0 50 100 150 200 250 300 350 400
•Rete 1-10-1 ad attivazione sigmoidale
nello strato nascosto
23/09/201023/09/2010 44
Approssimazione (in collaborazione con G Colombini)(in collaborazione con G.Colombini)
Problema : quanti neuroniProblema : quanti neuroni ?? Pochi La rete non cattura tutti i trend Troppi Eccessiva complessità
23/09/201023/09/2010 55
Approssimazione: Inizializzazione
Approssimazione lineare della Approssimazione lineare della sigmoidesigmoide
12 yy (x y )
Aj 22
12 yyAj (x2,y2)
1/wj
12
2xx
wj
-bj/wj
212 xxwbj(x1,y1)
Approssimazione : 2 fasi
1. Pre-Approssimazione lineare del segnale2 U d i t tti li i i i i li i i2. Uso dei tratti lineari per inizializzare i neuroni
23/09/201023/09/2010 77
Approssimazione : Risultati
Segnale originale Approssimazionelineare
Rete neuraleaddestrata
Approssimazione : “Pruning” Talvolta vengono generati comunque troppi neuroniTalvolta vengono generati comunque troppi neuroni
“Fusione” post addestramento“Fusione” post addestramento Fusione post addestramentoFusione post addestramento Si sfrutta ancora l’approssimazione lineareSi sfrutta ancora l’approssimazione lineare
23/09/201023/09/2010 99
Approssimazione : Riduzione
Da 24 a 8 Da 24 a 8 neuronineuronineuronineuroni
23/09/201023/09/2010 1010
Approssimazione : Conclusioni
Euristica di inizializzazioneEuristica di inizializzazioneBB i i i i BuonaBuona approssimazione approssimazione
RMSE < 5%RMSE < 5%Tempi di addestramento Tempi di addestramento ridottiridottiTempi di addestramento Tempi di addestramento ridottiridotti
Soluzione iniziale già accettabileSoluzione iniziale già accettabileLocalitàLocalitàLocalitàLocalità
Ogni punto del dominio è coperto da un numero limitato di Ogni punto del dominio è coperto da un numero limitato di neuroni non “saturi”neuroni non “saturi”
……
23/09/201023/09/2010 1111
Caso di studio / 2
16
18
20track 24 - 06 - 04
FINE DENITRIFICAZIONE
FINE FASE ANOSSICAN-NH4+N-NO3-N NO2
I segnali sono indicatori indiretti dello svolgimento di un processo biochimico
8
10
12
14
16
Con
c. [m
g/L]
FINE DENITRIFICAZIONEFINE NITRIFICAZIONE
N-NO2-
(in particolare, di depurazione)
Due reazioni alterne0
2
4
6
8C
1. “Denitrificazione”2. “Nitrificazione”
P b l
20 40 60 80 100 120 140 160 180 200 220 2400
tempo [min]
4
5
6track 24 - 06 - 04
FINE DENITRIFICAZIONE
pHORPDO
Processo osservabile:• Dinamica delle serie storiche• Cambi di andamento nei segnali
0
1
2
3
4 FINE DENITRIFICAZIONE
FINE FASE ANOSSICA
FINE NITRIFICAZIONE
-4
-3
-2
-1
20 40 60 80 100 120 140 160 180 200 220 240-5
tempo [min]
23/09/201023/09/2010 1212
2) “Trend Change” Detection
Massimi / MinimiMassimi / Minimi
•• Si analizzano i parametriSi analizzano i parametri dei neuronidei neuroni
Massimi / MinimiMassimi / Minimi
“Ginocchi” / Flessi“Ginocchi” / FlessiGinocchi / FlessiGinocchi / Flessi
“Gradini”“Gradini”
23/09/201023/09/2010 1313
“Trend Change” Detection
Genera una serie di “eventi”Genera una serie di “eventi”•• Vedremo in Vedremo in seguito…seguito…
Locale Locale Considera le dinamiche, ma non i livelliConsidera le dinamiche, ma non i livelli
23/09/201023/09/2010 1414
3) Tracciamento : SOM SelfSelf OrganizingOrganizing MapMap
Memorizza una “sintesi rappresentativa” di un insieme di dati Riconosce dati simili ai riferimenti appresif pp
• Addestramento : I neuroni si dispongono “autonomamente” là dove lo spazio è popolato I neuroni si dispongono autonomamente là dove lo spazio è popolato
• Riconoscimento : I neuroni si “attivano” con intensità inversamente proporzionale alla distanza dall’oggetto
esaminato
0.90.50.0 Limiti:Limiti:0.2
0.050.5
0.010.01
0.0 ““WinnerWinner TakesTakes AllAll””
Conflitti2+ Neuroni attivi
M C t“Classe” 2
2 3
Mancata Copertura0 Neuroni attivi
Soluzione :
“Classe” 1 / 2 ?“Classe” 1 ???
23/09/201023/09/2010 1515
1 Soluzione : Usare il Usare il Grado di AttivazioneGrado di Attivazione
Tracciamento : Training Set e SOM Serie storiche Serie storiche clusterizzateclusterizzate
• Algoritmo basato sulla “Time-Warping Distance”Time-Warping Distance
23/09/201023/09/2010 1616
4500 campioni vs
5x25 Neuroni
Tracciamento Riconoscimento per “Riconoscimento per “recallrecall””
Ogni campione Ogni campione S(t)S(t) della serie storica viene riconosciuto dai un neurone della serie storica viene riconosciuto dai un neurone NN in in grado grado diversodiversogrado grado diversodiverso
S(T)N,t)
“Scope”
d||N - S(t)||
dNj||N S(t)||
““CodebookCodebook” : campioni” : campioni mappati su neuroni (con attivazione)mappati su neuroni (con attivazione) Ogni campione Ogni campione genera un genera un eventoevento di riconoscimentodi riconoscimento
23/09/201023/09/2010 1717
Ogni campione Ogni campione genera un genera un eventoevento di riconoscimentodi riconoscimento E la sequenzialità??E la sequenzialità??
Tracciamento: isolamento Si impone una divisione (clusterizzazione) dei neuroni
Meta-addestramento
Tre (sotto)fasi:I. “pre – evento”
(sottofase rossa)
II. “inter – evento”( f d )(sottofase verde)
III. “post – evento”(sottofase blu)
23/09/201023/09/2010 1818Det(n1,red) Det(n2,grn) Det(n3,grn) !
Tracciamento : Esempio1. Riconoscimento
andamento tipico rosso
2. Fase rossa assodata
3. Riconoscimento andamento tipico verde
14. Fase verde assodata
5. Riconoscimento
1
3
5 5. Riconoscimento andamento tipico blu
6. Fase blu assodata2
5
7. Reazione completa
8 Coda temporale
4
6
8
8. Coda temporale
23/09/201023/09/2010 1919
7
Tracciamento : Conclusioni
La SOM memorizza una La SOM memorizza una sintesisintesi dei dati di dei dati di trainingtrainingtrainingtraining
Riconosce nuovi dati per “Riconosce nuovi dati per “recallrecall””Riconoscimento Riconoscimento imperfettoimperfetto, ma , ma robustorobusto Gli eventi di alto livello non dipendono dalla singola Gli eventi di alto livello non dipendono dalla singola
attivazione…attivazione…… ma da un numero … ma da un numero sufficientesufficiente di attivazioni di attivazioni
ffff f if i didisufficientemente sufficientemente fortiforti e e concordiconcordi(ma in pratica cosa vuol dire ??)(ma in pratica cosa vuol dire ??)
23/09/201023/09/2010 2020
4) Associazione1.1. Caso di studio: Caso di studio:
cerchiamo l’istante in cui cerchiamo l’istante in cui 16
18
20track 24 - 06 - 04
FINE DENITRIFICAZIONE
FINE FASE ANOSSICAN-NH4+N-NO3-N NO2cerchiamo l istante in cui cerchiamo l istante in cui
certi segnali certi segnali raggiungono lo raggiungono lo zerozero……
8
10
12
14
16
Con
c. [m
g/L]
FINE DENITRIFICAZIONEFINE NITRIFICAZIONE
N-NO2-
2.2. … c’è correlazione fra … c’è correlazione fra segnali diretti e segnali diretti e
dd 0
2
4
6
8C
indiretti…indiretti… 20 40 60 80 100 120 140 160 180 200 220 2400
tempo [min]
4
5
6track 24 - 06 - 04
FINE DENITRIFICAZIONE
pHORPDO
… una rete neurale … una rete neurale potrebbe apprendere la potrebbe apprendere la relazione funzionalerelazione funzionale 0
1
2
3
4 FINE DENITRIFICAZIONE
FINE FASE ANOSSICA
FINE NITRIFICAZIONE
relazione funzionalerelazione funzionale FFFF--NNNN ElmanElman--NNNN -4
-3
-2
-1
ElmanElman NNNN
23/09/201023/09/2010 2121
20 40 60 80 100 120 140 160 180 200 220 240-5
tempo [min]
AssociazioneFFFF--NN 3NN 3--1010--2: Output vs Target2: Output vs Target
23/09/201023/09/2010 2222ValidationValidation TestTest
Associazione : problemi
Pochi dati di Pochi dati di addestramento…addestramento…(I target richiedono costose analisi di laboratorio)(I target richiedono costose analisi di laboratorio)(I target richiedono costose analisi di laboratorio)(I target richiedono costose analisi di laboratorio)
Mancata Mancata CoperturaCoperturaL ti li L ti li t lt lLe reti neurali non Le reti neurali non estrapolano…estrapolano…
risposte non garantite per dati “nuovi”risposte non garantite per dati “nuovi”
23/09/201023/09/2010 2323
(Extra) Predizione(in collaborazione con F Calapai)(in collaborazione con F.Calapai)
PredizionePredizione: :
Stimare i valori Stimare i valori successivisuccessivi di una serie temporaledi una serie temporale
dato il valore dato il valore correntecorrente FFFF--NN, …NN, …
d i i l i d i i l i iidati i valori dati i valori passatipassati ElmanElman--NNNN, TD, TD--NN, …NN, …
(Pattern (Pattern matchingmatching proiettato nel tempo)proiettato nel tempo)
23/09/201023/09/2010 2424
Predizione : FF 2-3-1
Target : D(t+1)Target : D(t+1)I t [ D(t) (t) ]I t [ D(t) (t) ]Input : [ D(t) , z(t) ]Input : [ D(t) , z(t) ]
z(t) = (z(t) = (tt--maxmax(s)) | D(s) > 0, s < t se D(t) >0, (s)) | D(s) > 0, s < t se D(t) >0, 00 altrimentialtrimenti
12
14Gutierrez
TrainTrain ValidationValidation
6
8
10
D(t)
ANN
aa Va dat oVa dat o
2
4
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69
“Scarse” performance : pochi neuroni ?“Scarse” performance : pochi neuroni ?
23/09/201023/09/2010 2525
Scarse performance : pochi neuroni ?Scarse performance : pochi neuroni ?
Predizione : separabilità e copertura SeparabilitàSeparabilità
Target simili per training input similiTarget simili per training input simili CoperturaCopertura
Dati di test “simili” ai dati di trainingDati di test “simili” ai dati di training
10
12
14DD
No coperturaNo copertura
6
8
training
test
validation
No cope tu aNo cope tu a
0
2
4
4 2 0 2 4 6 8 10 12 14 16 18zz
‐2
‐4 ‐2 0 2 4 6 8 10 12 14 16 18
No separabilitàNo separabilità
23/09/201023/09/2010 2626
Predizione : TDNN
“Tap” 3 : maggiore separabilità“Tap” 3 : maggiore separabilità U ’ di U ’ di id i iid i i Un po’ di Un po’ di considerazioni…considerazioni…
12
14
6
8
10
D(t)
ANN
2
4
0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69
23/09/201023/09/2010 2727
RETI NEURALI: TEORIA E APPLICAZIONI
Analisi e InterpretazioneAnalisi e Interpretazionedi Serie Temporalidi Serie Temporalid Se e e po ad Se e e po a
Modelli ibridi
Davide [email protected]
Sistemi intelligenti “ibridi”Combinazione di due o più tecniche (di IA)Combinazione di due o più tecniche (di IA)
•• Migliorano le prestazioni mutuamenteMigliorano le prestazioni mutuamente•• Migliorano le prestazioni mutuamenteMigliorano le prestazioni mutuamente•• Suppliscono alle limitazioni individualiSuppliscono alle limitazioni individuali
LooselyLoosely coupledcoupledLooselyLoosely coupledcoupled TightlyTightly coupledcoupled EmbeddedEmbedded EmbeddedEmbedded ……
23/09/201023/09/2010 2929
1) Post-Validazione : SOM + FF FFFF--NN (NN (ElmanElman--NNNN) : calcola il risultato) : calcola il risultato SOM : stima la SOM : stima la confidenceconfidence
Associate
6track 24 - 06 - 04
Input Output
20 40 60 80 100 120 140 160 180 200 220 240-5
-4
-3
-2
-1
0
1
2
3
4
5
6
tempo [min]
FINE DENITRIFICAZIONE
FINE FASE ANOSSICA
FINE NITRIFICAZIONE
pHORPDO
Training
Confidence
Recall
TrainingSet
23/09/201023/09/2010 3030
Associazione con confidence
Risposte (non) “coperte” da training vengono (in)validateRisposte (non) “coperte” da training vengono (in)validate
23/09/201023/09/2010 3131
2) Associazione : training set(in collaborazione con A Manservisi)(in collaborazione con A.Manservisi)
Cit. “Cit. “Pochi dati di Pochi dati di addestramento…addestramento…(I target richiedono costose analisi di laboratorio)”(I target richiedono costose analisi di laboratorio)”(I target richiedono costose analisi di laboratorio)(I target richiedono costose analisi di laboratorio)
NH4
NO3NO3
23/09/201023/09/2010 3232
Training set
La preparazione del training set è affidata ad un sistema ibrido La preparazione del training set è affidata ad un sistema ibrido
ORA pH ORP DO NH4 NO3
10.04 X X X 0 21.7
10.10 X X X 16.74 10.8
… … … … … …
W ORA pH ORP DO NH4 NO310:04 7.04 79.23 1.17 0 21.7
10:05 7.06 68.52 0.90 2.35 19.87
W0.9
0.9 10:05 7.06 68.52 0.90 2.35 19.87
10:06 7.09 50.71 0.59 4.59 17.04
10:07 7.10 42.99 0.48 6.78 16.01
0.9
0.7
0.8
23/09/201023/09/2010 3333
… … … … … …
15:15 7.33 112.29 2.86 0.2 18.01
…
0.7
Preparazione del Training Set
ORA NH4 NO3 pH ORP DOORA NH4 NO3ORA NH4 NO3ORA NH4 NO3 pH ORP DO
10.04 0 21.7 X X X10.10 16.74 10.8 X X X +
Preprocess
W
ORA NH4 NO3
10.04 0 21.7
10.10 16.74 10.8ORA pH ORP DO NH4 NO3
ORA NH4 NO310.04 0 21.7
10.05 2.35 19.87
10 06 4 59 17 040 8 X X X… … … … … …
14.28 0 17.9 X X X
+
ApproxLoad Data
W0.9
0.9
… … …
14.28 0 17.9
15 15 0 18 1
ORA pH ORP DO NH4 NO310.04 7.04 79.23 1.17 0 21.7
10.05 7.06 68.52 0.90 2.35 19.87
10.06 4.59 17.04
10.07 6.78 16.01
… … …
15.15 0 18.1 X X X +
Integrate
0.7
0.8
15.15 0 18.110.06 7.09 50.71 0.59 4.59 17.04
10.07 7.10 42.99 0.48 6.78 16.01
15.15 0.2 18.01
Merge
…
0.7 RuleBased Flow:•blocchi di regole
… … … … … …
15.15 7.33 112.29 2.86 0.2 18.01ORA pH ORP DO10.04 7.04 79.23 1.17
10.05 7.06 68.52 0.90
DB
Evaluate
Update TB
greattive
•Implementazione Drools
10.06 7.09 50.71 0.59
10.07 7.10 42.99 0.48
23/09/201023/09/2010 3434
DB Drools… … … …
15.15 7.33 112.29 2.86
Associazione “ibrida” : Conclusioni
I dati sperimentali vengono approssimati e I dati sperimentali vengono approssimati e validati da un sistema ibridovalidati da un sistema ibridovalidati da un sistema ibridovalidati da un sistema ibrido
Il t i i t i t it Il t i i t i t it b t tb t tIl training set viene costruito per Il training set viene costruito per bootstrapbootstrap
Il training set viene usato in paralleloIl training set viene usato in parallelo FFFF--NN associativaNN associativa SOM di verificaSOM di verifica
23/09/201023/09/2010 3535
3) “Comitato di Esperti”Abbiamo visto (molto in fretta) modi alternativi Abbiamo visto (molto in fretta) modi alternativi
per analizzare serie temporaliper analizzare serie temporaliper analizzare serie temporaliper analizzare serie temporali
Come combinarli?
Dall’ “inconscio” al “conscio”:un po’ di (soft) logicun po di (soft) logic
23/09/201023/09/2010 3636
(Logica e Belief) Il Il Belief modella la convinzione modella la convinzione soggettivasoggettiva nella verità di nella verità di
un fattoun fattoun fattoun fattoSi ottiene per accumulo di Si ottiene per accumulo di evidence, dedotta per mezzo di regole
Evidence(t) && Confidence(t) => Bel*(t)Belief(t) <= Belief(t-1) ∩ Bel*(t)
Dal Belief si calcola poi la Possibilità• (per semplicità supponiamo che siano la stessa cosa)
23/09/201023/09/2010 3737
Reti associative con BeliefEsempio:• Zero( out NN assoc(t) ) => Evidence(t)• Zero( out_NN_assoc(t) ) => Evidence(t)
• “Zero” è un valutatore che riconosce valori vicini a 0es: predicato fuzzy, una rete FF, …p y
• La Confidence(t) relativa viene dalla SOM
23/09/201023/09/2010 3838
Tracciamento con Belief EvidenceEvidence (rispetto alla sottofase): grado di attivazione del neurone vincitore(rispetto alla sottofase): grado di attivazione del neurone vincitore ConfidenceConfidence : tanto maggiore quanto il neurone vincitore si attiva solo in : tanto maggiore quanto il neurone vincitore si attiva solo in
una data sottofaseuna data sottofase
EvidenceEvidence&& &&
ConfConfidenceidenceConfConfidenceidence
BeliefBelief
23/09/201023/09/2010 3939
Riconoscimento con Belief
EvidenceEvidence : Eventi allineati temporalmente: Eventi allineati temporalmente ConfidenceConfidence : Dall’analisi dei parametri : Dall’analisi dei parametri pp
23/09/201023/09/2010 4040
CombinazioneInfine, il Infine, il beliefbelief può essere combinatopuò essere combinato
23/09/201023/09/2010 4141
Domande
23/09/201023/09/2010 4242