SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
Universit`a degli Studi di Pisa
DIPARTIMENTO DI INFORMATICA
Corso di Laurea in Informatica
Tesi di laurea
Echo State Network per la classificazione di interazioni sociali
in ambienti domestici
Candidato:
Andrea Valenti
Relatori:
Prof. Alessio Micheli
Dott. Claudio Gallicchio
Anno Accademico 2014–2015
Indice
1 Introduzione 2
2 Reti Neurali Ricorrenti 3
2.1 Potenza Computazionale . . . . . . . . . . . . . . . . . . . . . 4
2.2 Algoritmi di Apprendimento . . . . . . . . . . . . . . . . . . . 5
2.2.1 Propriet`a e Problematiche . . . . . . . . . . . . . . . . 6
2.3 Reservoir Computing . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 Modelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4.1 Input Delay Neural Network . . . . . . . . . . . . . . . 8
2.4.2 Simple Recurrent Network . . . . . . . . . . . . . . . . 9
2.4.3 Nonlinear Autoregressive Exogenous Network . . . . . 11
2.4.4 Echo State Network . . . . . . . . . . . . . . . . . . . . 12
3 Studio di un Caso Reale 15
3.1 Motivazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Descrizione degli Esperimenti . . . . . . . . . . . . . . . . . . 16
3.3 Risultati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Conclusioni 22
Appendice A Cross-Validation 23
A.1 K-fold cross-validation . . . . . . . . . . . . . . . . . . . . . . 23
A.2 Double k-fold cross-validation . . . . . . . . . . . . . . . . . . 24
Bibliografia 28
1
Capitolo 1
Introduzione
L’elaborato si propone di studiare uno dei problemi posti dal proget-
to europeo FP7 DOREMI, finalizzato alla realizzazione di tecnologie per la
prevenzione del declino fisico e cognitivo nella popolazione anziana. Nello
specifico, viene affrontato il problema di classificare situazioni di interazione
sociale (rappresentate da visite), utilizzando come input una rete di senso-
ri incorporata nell’ambiente domestico. La soluzione proposta si colloca nel
campo del Machine Learning e sfrutta l’efficienza e la flessibilit`a del Reservoir
Computing in generale, e delle Echo State Network in particolare.
In prima istanza vengono presentate le Reti Neurali Ricorrenti (RNN),
delineandone la potenza computazionale, i principali algoritmi di apprendi-
mento ed introducendo il paradigma del Reservoir Computing. Successiva-
mente sono introdotti alcuni modelli di RNN. Per ognuno di questi viene
fornita una descrizione e un’analisi delle sue potenzialit`a, sia nel caso gene-
rale che in relazione allo scopo del progetto. In seguito uno di questi modelli,
una Echo State Network, viene studiata su un problema reale, analizzandone
prestazioni e comportamento in base alle diverse configurazioni di parame-
tri. Segue un’analisi sintetica dei risultati ottenuti, dove sono enfatizzati gli
aspetti salienti ed indicate possibili direzioni di sviluppo future.
2
Capitolo 2
Reti Neurali Ricorrenti
In questo capitolo `e presentata la classe delle Reti Neurali Ricorrenti,
prima caratterizzandone gli aspetti teorici generali ed i principali algoritmi
di apprendimento, poi analizzando alcuni modelli nello specifico.
Introduciamo ora la definizione:
Definizione 2.1. Le Reti Neurali Ricorrenti (RNN) sono una classe di reti
neurali in cui il grafo delle connessioni tra i neuroni contiene almeno un ciclo
diretto.
Questa retroazione, creando uno stato interno alla rete, permette alla
RNN di tenere conto del contesto temporale in cui gli input sono presentati.
A differenza delle reti neurali di tipo feedforward, dove l’output del modello
`e determinato esclusivamente dall’input corrente senza l’utilizzo di nessun
tipo di memoria, le RNN sono in grado di determinare il proprio output
anche tenendo conto della cronologia degli input presentati fino a quel mo-
mento. Questo rende le RNN particolarmente adatte per processare tipi di
dato strutturati temporalmente, soprattutto per quei tipi di applicazione che
naturalmente presuppongono una struttura temporale di base.
3
2.1 Potenza Computazionale 4
2.1 Potenza Computazionale
Dalla loro introduzione, le RNN sono state oggetto di vari studi teorici nel
corso degli anni. Ci`o ha portato alla scoperta di importanti risultati riguar-
danti questa classe di modelli, primo fra tutti il teorema di approssimazione
universale[12]:
Teorema 2.1. Qualsiasi sistema dinamico non lineare pu`o essere approssi-
mato da una RNN con arbitraria precisione, a patto che il numero di neuroni
della rete non sia limitato a priori.
Questo risultato, seppur profondo, non arriva totalmente inaspettato, dal
momento che anche le architetture feedforward con almeno un layer nascosto
godevano gi`a di un analoga propriet`a [11]. Dal momento che la classe dei
sistemi dinamici include al suo interno modelli come automi a stati finiti, au-
tomi a pila e macchine di Turing, questo teorema delinea l’estrema flessibilit`a
delle RNN come modello di calcolo.
Un ulteriore formalizzazione delle capacit`a rappresentative delle RNN `e
data dal seguente teorema [17]
Teorema 2.2. Qualsiasi macchina di Turing pu`o essere simulata da una
RNN completamente connessa costituita da neuroni ad attivazione sigmoida-
le.
Anche se non tutti i modelli di RNN sono completamente connessi, nel
corso degli anni vari studi hanno dimostrato che molti modelli tra i pi`u
usati sono in grado di simulare RNN completamente connesse [18][19], se non
per un eventuale rallentamento lineare (ovvero: se una RNN completamente
connessa con N neuroni completa un task in tempo T, allora il modello
equivalente completer`a lo stesso task in, al pi`u, tempo (N + 1)T.)
`E importante evidenziare che i risultati sopracitati valgono solamente nel
caso non si limiti a priori il numero di neuroni nella rete. In caso contrario,
la potenza computazionale delle RNN non `e pi`u garantita, ed il modello
potrebbe non essere in grado di imparare perfettamente alcuni tipi di task
particolarmente difficili.
2.2 Algoritmi di Apprendimento 5
2.2 Algoritmi di Apprendimento
Come le reti neurali feedforward, anche le RNN hanno due principali
modalit`a di addestramento:
ˆ Addestramento per epoche: per ogni singola epoca `e presentate alla rete
un’intera sequenza di coppie (input, target). Dopodich`e, il processo
di addestramento viene interrotto e la RNN viene resettata allo stato
iniziale in preparazione dell’epoca successiva.
ˆ Addestramento continuo: in questo caso il processo di apprendimento
non si ferma mai.
Da notare che qui per “epoca” si intende l’addestramento con una singola
sequenza di input, mentre nel caso della reti feedforward “epoca” si riferisce
all’intero training set.
Di seguito sono presentati due algoritmi, tra i pi`u studiati e utilizzati per
addestrare RNN. Per un’analisi dettagliata sul loro funzionamento si rimanda
a [4] e [13]; in questo contesto ci si limiter`a a fornire una spiegazione generale
del loro comportamento.
ˆ Backpropagation Through Time (BPTT) Il BPTT `e un discendente
diretto del Backpropagation standard. Si basa sulla premessa che l’o-
perato temporale della rete possa essere “srotolato” fino ad ottenere
un Multi-layer Perceptron. La rete cos`ı ottenuta conterr`a un layer per
ogni step temporale (fig. 2.1). A questo punto `e possibile applicare
il classico Backpropagation. L’algoritmo pu`o essere utilizzato sia per
l’addestramento per epoche che per l’addestramento continuo, sia per
una combinazione dei due.
ˆ Real-Time Recurrent Learning (RTRL) Il nome dell’algoritmo deriva
dal fatto che i pesi dei neuroni sono adattati in tempo reale, mentre
la rete continua a processare la sequenza di input. Questo rende il
RTRL particolarmente adatto per l’addestramento continuo, ed risulta
2.2 Algoritmi di Apprendimento 6
Figura 2.1: Esempio di unfolding nel tempo di una rete ricorrente
completamente connessa con 2 neuroni.
particolarmente utile per quei task in cui non `e facile dividere l’input
in epoche.
2.2.1 Propriet`a e Problematiche
Entrambi gli algoritmi descritti si basano su tecniche a discesa del gra-
diente, pertanto presentano una serie di problematiche comuni:
ˆ Elevata complessit`a computazionale.
ˆ Lenta convergenza.
ˆ Funzione dell’errore generalmente non convessa, che comporta il rischio
di rimanere intrappolati in un minimo locale.
ˆ Problema del vanishing gradient [8].
2.3 Reservoir Computing 7
Da tenere particolarmente in considerazione durante l’utilizzo pratico del-
le RNN `e il succitato problema del vanishing gradient. Nei metodi a discesa
di gradiente, infatti, ad ogni passo d’addestramento i pesi sono modificati
proporzionalmente al gradiente della funzione di errore, calcolato rispetto ai
pesi correnti. Dal momento che le tipiche funzioni di attivazione utilizzate
hanno gradienti compresi in (−1, 1) o [0, 1), l’errore propagato subir`a un’at-
tenuazione esponenziale proporzionale al numero di layer nella rete. Se un
certo layer `e sufficientemente “lontano” dal layer di output (che `e quello che
origina l’errore), allora i pesi dei neuroni di quel layer verranno aggiornati
molto lentamente, ed il processo di addestramento sar`a molto lento.
2.3 Reservoir Computing
Per Reservoir Computing (RC) si intende una famiglia di modelli neu-
rali, tutti caratterizzati dalla stessa idea di base: la separazione tra parte
ricorrente (reservoir) e parte non ricorrente (readout) della rete. Solamente
il readout viene addestrato, spesso mediante regressione lineare, mentre il re-
servoir non `e pi`u modificato dopo l’inizializzazione [2][5]. Questo approccio,
oltre ad essere molto efficiente dal punto di vista computazionale, permette
di evitare molti dei problemi a cui sono soggetti i modelli addestrati con
tecniche di error backpropagation (discussi in sez. 2.2.1).
Nel corso degli anni il paradigma RC si `e dimostrato particolarmente po-
tente e flessibile [1] modelli RC (in particolare ESN e LI-ESN) sono stati uti-
lizzati con successo per una gran variet`a di applicazioni nell’ambito del’Am-
bient Assisted Living [10], risultando particolarmente adatti per processare
sequenze di input rumorose originate da reti di sensori [14].
2.4 Modelli 8
2.4 Modelli
La lista di modelli qui presentata non ha la pretesa di essere esaustiva,
ma piuttosto si concentra su quei modelli che nel corso degli anni si sono
dimostrati adatti per l’utilizzo in applicazioni di Ambient Assisted Living.
2.4.1 Input Delay Neural Network
Uno dei modelli pi`u semplici in grado di rappresentare un contesto tempo-
rale `e la Input Delay Neural Network (IDNN), ottenuta applicando tecniche
di buffering dell’input (time delay line) ad una rete feedforward (spesso un
MLP). Ad ogni passo di addestramento gli ultimi input presentati vengono
memorizzati in una finestra temporale di dimensione finita DU . Ci`o permette
al MLP di vedere, oltre all’input corrente, anche gli ultimi DU input passati.
Nella delay window dello stream di input si viene quindi a formare un pattern
temporale.
La relazione tra input ed output di una IDNN `e descritta da
y(t) = f u(t − DU ), ..., u(t − 1), u(t) (2.1)
dove f `e una funzione non lineare degli ingressi, y(t) `e l’output della rete
al passo t, u(t) `e la sequenza di input al passo t. In figura 2.2 `e mostrato un
esempio di IDNN. Queste reti hanno il vantaggio di poter essere addestrate
utilizzando algoritmi sviluppati per le reti di tipo feedforward senza necessit`a
di alcun tipo di adattamento. D’altro canto, il dover limitare arbitrariamen-
te la dimensione della finestra DU pu`o costituire un problema, richiedendo
un certo grado di conoscenza a priori della struttura temporale dell’input.
Inoltre, dal momento che il numero di unit`a in input cresce linearmente con
DU , una finestra temporale di dimensioni elevate comporta un alto numero di
parametri addestrabili. L’aumento risultante della complessit`a del modello
potrebbe andare a detrimento del tempo di addestramento e della capacit`a
di generalizzazione della rete.
2.4 Modelli 9
Figura 2.2: Architettura di una rete IDNN con ordine dell’input uguale a DU ,
input e output monodimensionali ed un layer nascosto composto da 4 unit`a.
2.4.2 Simple Recurrent Network
Per superare le limitazioni imposte dalle IDNN `e necessario utilizzare un
approccio diverso di rappresentazione del contesto temporale. Nel caso delle
Simple Recurrent Network (SRN)[7][15], le connessioni di retroazione sono
rese esplicite, sia tra neuroni dello stesso layer che tra neuroni di layer distinti,
mediante l’utilizzo di connessioni feedback-delay (fig. 2.3). Questo consente
di rappresentare il contesto temporale come stato interno della rete, senza la
necessit`a di salvare esplicitamente la cronologia degli input. Di conseguenze
le SRN sono in grado (in linea di principio) di conservare le informazioni sul
passato per un tempo arbitrariamente lungo, eliminando di fatto la relazione
tra dimensione della memoria e numero di unit`a neurali che caratterizzava le
IDNN.
Il concetto di SRN fu introdotto per la prima volta in [7], dove si pro-
pone l’architettura descritta in figura 2.3, detta anche Rete di Elman. Per
semplificare la notazione `e stato introdotto un layer fittizio, detto layer del
contesto, che contiene le attivazioni ritardate dei neuroni scelti. Ci`o permet-
te alla SRN di essere rappresentata come una rete feedforward con alcune
connessioni retroattive ritardate. L’output della rete `e descritto da
2.4 Modelli 10
Figura 2.3: Architettura di una SRN con input ed output monodimensionali e
layer del contesto di dimensione 4. In rosso `e evidenziata la parte ricorrente
della rete.
y(t) = fY x(t)
x(t) = fH u(t), c(t)
c(t) = x(t − 1)
(2.2)
dove u(t), x(t) e y(t) sono rispettivamente input, stato interno ed output
della rete al passo t; c(t) `e il layer del contesto al passo t; fY `e la funzione
di attivazione del layer di output e fH `e la funzione di attivazione del layer
nascosto. Avere connessioni retroattive esplicite implica l’utilizzo di algo-
ritmi di addestramento pi`u complessi rispetto a quelli utilizzati per le reti
feedforward: tipicamente si utilizzano gli algoritmi BPTT e RTRL (sez. 2.2).
Questo, se da un lato permette di sfruttare le propriet`a di approssimazione
universale delle RNN (ref. 2.1), dall’altro introduce le classiche problema-
tiche tipiche degli algoritmi basati su tecniche a discesa del gradiente (sez.
2.2.1).
2.4 Modelli 11
Figura 2.4: Architettura di una rete NARX con ordine dell’input uguale a
DU , ordine dell’output uguale a DY , input ed output monodimensionale ed un
layer nascosto composto da 4 unit`a. In rosso `e evidenziata la parte ricorrente
della rete.
2.4.3 Nonlinear Autoregressive Exogenous Network
Un’ampia classe di architetture deriva dall’implementazione mediante reti
neurali del modello non lineare autoregressivo con input esogeni (NARX, fig.
2.4)[9][16], descritta dalla seguente
y(t) = f u(t − DU ), ..., u(t − 1), u(t), y(t − DY ), ..., y(t − 1) (2.3)
dove u(t) e y(t) sono rispettivamente input e output della rete al passo
t, DU e DY sono rispettivamente l’ordine dell’input e l’ordine dell’output
(ovvero rappresentano la dimensione delle finestre di buffering usate rispet-
tivamente in input ed in output), f `e una funzione non lineare degli ingressi,
2.4 Modelli 12
spesso implementata con un MLP. Questi modelli combinano la rappresenta-
zione interna del contesto temporale tipica delle SRN con le input delay line
delle IDNN, riuscendo (almeno in parte) a superare i problemi che affliggono
i succitati modelli.
Le reti NARX hanno infatti la caratteristica di essere particolarmente
adatte per essere addestrate usando algoritmi a discesa del gradiente, in
quanto la presenza di output ritardati rende questi modelli meno sensibili al
problema del vanishing gradient, e quindi pi`u adatti ad imparare dipendenze
a lungo termine presenti nell’input [9].
2.4.4 Echo State Network
Sfruttando il paradigma del Reservoir Computing, le Echo State Network
(ESN) si sono distinte negli anni per il loro utilizzo con successo in una
gran variet`a di applicazioni [2][10], rappresentando un’efficiente alternativa
ai modelli “classici”.
Una ESN `e composta da tre parti principali (fig. 2.5):
ˆ Un layer di input.
ˆ Un reservoir, tipicamente costituito da un elevato numero di neuroni
sparsamente connessi tra di loro. `E importante notare che il reservoir,
dopo un’adeguata inizializzazione, `e lasciato immutato, riducendo enor-
memente la complessit`a computazione del processo di apprendimento
[5]. Al fine di garantire un corretto comportamento della ESN, i pesi
delle unit`a del reservoir devono sottostare ad un’ulteriore condizione,
detta Echo State property (ESP) [2][5][1].
Propriet`a 2.1. In una ESN, lo stato corrente x(t) `e una funzione
esclusivamente della cronologia degli input presentati fino a quel mo-
mento, indipendentemente dai valori dello stato iniziale.
2.4 Modelli 13
Figura 2.5: Architettura di una ESN con input ed output monodimensionali.
Sempre in [2] vengono fornite due condizioni, una necessaria e l’altra
sufficiente, che una ESN deve rispettare per garantire la ESP:
ρ(W) < 1 (2.4)
σ(W) < 1 (2.5)
la condizione necessaria 2.4 dichiara che il raggio spettrale della matrice
dei pesi del reservoir W deve essere minore di uno, mentre la condizione
sufficiente dichiara che il pi`u grande valore singolare di W sia minore
di uno. Dal momento che la norma Euclidea di W `e equivalente al suo
pi`u grande valore singolare, la condizione 2.5 pu`o essere riscritta come
[5]
W 2 < 1 (2.6)
ˆ Un layer di readout. `E l’unica parte della rete che viene addestrata.
Solitamente viene calcolata una combinazione lineare dell’attivazione
dei neuroni del reservoir. A volte pu`o essere conveniente applicare un
readout non lineare (ad es. mediante una rete neurale feedforward),
anche se ci`o comporterebbe un aumento della complessit`a del modello.
2.4 Modelli 14
Ad ogni passo, il comportamento della rete `e descritto da
x(t) = f Winu(t) + Wx(t − 1)
y(t) = Woutx(t)
(2.7)
dove x(t) `e lo stato del reservoir al momento t, u(t) `e l’input al momento
t, Win `e la matrice dei pesi input-reservoir, W `e la matrice dei pesi del
reservoir, Wout `e la matrice dei pesi reservoir-readout e f `e la funzione di
attivazione delle unit`a neurali (solitamente tanh).
Di seguito `e presentata anche una variante delle ESN che utilizza, al posto
delle unit`a neurali sigmoidali standard, dei Leaky Integrator Neuron. Tale
variante `e chiamata Leaky Integrator ESN (LI-ESN)[1] e si contraddistingue
per il suo utilizzo con successo in applicazioni che sfruttano reti di sensori
per generare l’input della rete neurale [10]. Rispetto ad una ESN standard,
la LI-ESN applica una media mobile esponenziale nei confronti degli stati del
reservoir, risultando in un migliore trattamento delle sequenze che tendono a
cambiare lentamente rispetto alla frequenza di campionamento. Le equazioni
2.7 ora diventano
x(t) = (1 − a)x(t − 1) + af Winu(t) + Wx(t − 1)
y(t) = Woutx(t)
(2.8)
`E stato introdotto il parametro a ∈ [0, 1], detto leaky parameter. Cambian-
done il valore `e possibile variare l’intervallo di frequenze in cui il reservoir
opera: in pratica a controlla la velocit`a delle dinamiche del reservoir. In
ultimo, `e importante notare che per a = 1, la LI-ESN si comporta come una
normale ESN. Questo ci garantisce che una LI-ESN con una buona scelta di
parametri avr`a performance almeno equivalenti a quelle di una ESN standard
[1].
Capitolo 3
Studio di un Caso Reale
Questo capitolo tratter`a dello studio di una ESN applicata ad un task
di classificazione. Si parler`a delle motivazioni che hanno spinto lo studio
di questo tipo di task, dei motivi che hanno portato a preferire una ESN
rispetto agli altri modelli presentati e delle modalit`a con cui gli esperimenti
sono stati condotti. Infine sono analizzati i risultati, delineando le conclusioni
significative ed evidenziando possibili sviluppi futuri.
3.1 Motivazioni
FP7 DOREMI (fig. 3.1) `e un progetto europeo atto a sviluppare soluzioni
per estendere la capacit`a funzionale e cognitiva delle persone anziane attra-
verso il monitoraggio non intrusivo ed il potenziamento delle loro attivit`a
quotidiane. Le iniziative che compongono il progetto combinano l’utilizzo di
soluzioni multidisciplinari provenienti da diverse aree di ricerca: giochi seri,
reti sociali, analisi dei pattern comportamentali, reti di sensori wireless e rico-
noscimento di attivit`a. Registrando ed analizzando le informazioni riguardo
l’uso dei protocolli comportamentali adottati, il progetto vuole introdurre la
possibilit`a per il personale medico coinvolto di individuare preventivamente
segni precoci di declino fisico e/o cognitivo. L’efficacia e l’impatto dei prodot-
ti che saranno sviluppati nell’ambito del progetto verr`a poi testata attraverso
15
3.2 Descrizione degli Esperimenti 16
Figura 3.1: Logo del progetto europeo FP7 DOREMI
studi di prova in Italia e nel Regno Unito. Nello specifico, il compito del team
dell’Universit`a di Pisa `e quello di sviluppare un sistema context-aware per
l’activity recognition in grado di interpretare input provenienti da una rete
di sensori wireless, disposti sia nell’ambiente che indossati dal soggetto. Lo
studio seguente si inserisce nel contesto di sviluppo del suddetto sistema: la
ESN ha il compito di monitorare, mediante una rete di sensori disseminati
nell’ambiente domestico, le attivit`a sociali dell’utente, riconoscendo eventi di
entrata e uscita di eventuali visitatori.
3.2 Descrizione degli Esperimenti
A causa delle doti di efficienza e flessibilit`a del paradigma RC, la scelta del
modello da implementare `e ricaduta su una ESN, in particolare sulla variante
LI-ESN. Studi in passato hanno confermato come le ESN siano in grado di
trattare con successo task in presenza di input eterogenei (e potenzialmente
rumorosi). Inoltre, mediante tecniche di quantizzazione dei valori dei pesi dei
neuroni, `e possibile ridurre di molto le richieste in termini di memoria senza
compromettere l’accuratezza del modello, permettendone l’implementazione
in sistemi con risorse limitate[sensors].
Il dataset `e stato ottenuto in due fasi (Giugno 2015 e Ottobre 2015) me-
diante la simulazione di situazioni reali nel CIAMI Lab costruito presso le
strutture dell’azienda Mysphera nell’ambito delle attivit`a del progetto FP7
DOREMI, da membri dello staff del progetto. Nell’homelab sono stati instal-
lati 6 Passive Infrared Sensors (PIRs) dislocati nelle varie stanze (fig. 3.2) e 2
3.2 Descrizione degli Esperimenti 17
Figura 3.2: Piantina del CIAMI Lab, con indicata la disposizione dei sensori
nell’ambiente.
sensori di contatto posizionati sulle porte (uno sulla porta del bagno e l’altro
sulla porta d’ingresso). Le sequenze raccolte sono state quindi classificate
in base alla tipologia. Si `e cercato di rappresentare il pi`u ampio spettro di
situazioni possibili in modo da testare la capacit`a di generalizzazione della
rete: in prima istanza sono stati raccolti i dati relativi a situazioni di vi-
sita “ordinarie”, variando numero di visitatori e pattern di entrata/uscita
(comprese situazioni dove l’utente non riceve alcuna visita); successivamente
sono state registrate le sequenze “anomale”, ovvero corrispondenti a situazio-
ni particolari (ad esempio il caso della “consegna della posta”, che provoca
un’attivazione di sensori simile a quelle delle visite). A partire da questi
dati iniziali sono state raccolte ulteriori varianti, in modo da simulare una
3.2 Descrizione degli Esperimenti 18
differente velocit`a d’andatura o un appartamento con differente topologia.
Gli esperimenti condotti hanno cercato di indagare il comportamento
della ESN sotto i seguenti punti i vista:
ˆ Variazione delle performance al variare degli iperparametri, in partico-
lare il numero dei neuroni del reservoir.
ˆ Variazione delle performance al variare del numero e tipologia di sen-
sori forniti in input; in particolar modo si `e cercato di scoprire quali
sensori risultino pi`u utili (e quali invece potrebbero essere fonte di even-
tuali problemi) per le capacit`a predittive della ESN. Inoltre, una rete
che utilizza meno sensori in input pu`o essere utilizzata anche in quelle
situazioni dove per motivi logistici `e impossibile implementare una pie-
na rete di sensori (ed esempio appartamenti piccoli o dalla topologia
anomala).
Le 71 sequenze del dataset sono state organizzate in una double cross
fold validation con 3 fold esterne e 3 fold interne (A), risultando in circa 24
sequenze in test per ogni fold esterna. Il training set di ogni fold interna `e
stato diviso in training e validation set con proporzioni di circa 67%-33%.
Gli esperimenti sono stati condotti addestrando 5 ESN indipendenti per
ogni esperimento. I risultati si riferiscono alla media delle 5 ESN con la
configurazione di iperparametri selezionata dalla double cross fold validation.
Per misurare le performance della rete, per ogni step temporale delle
sequenze in test `e stato considerato l’output della rete ed il target (ovvero
l’output desiderato). Gli esempi sono stati quindi classificati come:
ˆ Veri positivi (TP). Sono gli esempi positivi classificati correttamente
dalla rete: In questi casi, sia l’output che il target segnalano un’entrata
o uscita.
ˆ Veri negativi (TN). Sono gli esempi negativi classificati correttamen-
te dalla rete. In questi casi, sia l’output che il target non segnalano
un’entrata o uscita.
3.2 Descrizione degli Esperimenti 19
ˆ Falsi positivi (FP). Sono gli esempi classificati incorrettamente dalla
rete come positivi. In questi casi, l’output segnala un’entrata o uscita
che in realt`a non sta avvenendo.
ˆ Falsi negativi (FN). Sono gli esempi classificati incorrettamente dalla
rete come negativi. In questi casi, l’output non segnala un’entrata o
uscita che in realt`a sta avvenendo.
A partire da questa classificazione sono state calcolate i seguenti indici
statistici:
ˆ Accuracy. Misura la capacit`a della rete di identificare correttamente
un esempio, sia positivo che negativo. In formule:
ACC =
TP + TN
P + N
=
TP + TN
TP + TN + FP + FN
(3.1)
ˆ Sensitivity, o true positive rate. Misura il rapporto tra gli esempi veri
positivi e gli esempi positivi totali (P). In questo caso misura la capacit`a
della rete di evitare falsi positivi.
TPR =
TP
P
=
TP
TP + FN
(3.2)
ˆ Specificity, o true negative rate. Speculare alla sensitivity, misura il
rapporto tra gli esempi classificati negativamente correttamente (veri
negativi) e gli esempi negativi totali (N). In formule:
TNR =
TN
N
=
TN
TN + FP
(3.3)
ˆ Precision, o positive predictive value. Misura il rapporto tra i veri
positivi e tutti i gli esempi classificati come positivi (sia correttamente
che incorrettamente). In questo caso misura la capacit`a della rete di
identificare correttamente un esempio positivo, ovvero di segnalare un
ingresso o un’uscita quando sta veramente accadendo. In formule:
PPV =
TP
TP + FP
(3.4)
3.3 Risultati 20
RESn TR VAL TS
100 0.904± (0.139) 0.899± (0.139) 0.902± (0.133)
500 0.917± (0.118) 0.895± (0.122) 0.903± (0.117)
1000 0.926± (0.100) 0.892± (0.115) 0.901± (0.113)
2000 0.935± (0.085) 0.889± (0.110) 0.897± (0.113)
Tabella 3.1: Variazione dell’accuracy in base al numero di unit`a del reservoir.
ˆ F1-score. Ottenuto facendo la media armonica tra precision e sensi-
tivity, pu`o essere interpretato come la media pesata tra le due. In
formule:
F1 = 2
PPV · TPR
PPV + TPR
=
2TP
2TP + FP + FN
(3.5)
Questi indicatori permettono di avere una panoramica molto pi`u completa
sul risultato del processo di apprendimento.
3.3 Risultati
Tutti i risultati si riferiscono alla configurazione di iperparametri specifi-
cata in tabella 3.3. In tabella 3.3 sono elencati i risultati dei task con full set
di sensori al variare del numero di unit`a del reservoir. La ESN si `e rivelata in
grado di apprendere task anche con un numero di unit`a relativamente esiguo:
gi`a 100 neuroni sono sufficienti per ottenere un’accuracy di circa il 90% nel
test set. Ulteriori incrementi della dimensione del reservoir portano ad un
overfitting del modello, senza aumentare l’accuracy del test set. In tabella
3.3 sono contenuti i risultati relativi a varie configurazioni di sensori in input.
Sono stati individuati 3 configurazioni di sensori: full set (8 sensori), set ri-
dotto (5 sensori) e set minimo (3 sensori). La ESN sembra essere in grado di
apprendere il task anche nel caso si utilizzi il set minimale di sensori, senza
un deterioramento significativo delle performance.
3.3 Risultati 21
Parametro Valore
Regularization 1.0
Leaky Parameter 0.5
Input Scaling 0.5
Rho 0.9
Tabella 3.2: Configurazione di iperparametri selezionata dalla double cross-
fold validation.
task (configuration) TR VAL TS
entering (8 sensors) 0.917±(0.119) 0.895±(0.125) 0.902±(0.120)
leaving (8 sensors) 0.911±(0.122) 0.889±(0.132) 0.890±(0.128)
entering (5 sensors) 0.920±(0.111) 0.898±(0.122) 0.905±(0.119)
leaving (5 sensors) 0.913±(0.121) 0.892±(0.133) 0.894±(0.131)
entering (3 sensors) 0.916±(0.120) 0.900±(0.127) 0.908±(0.122)
leaving (3 sensors) 0.908±(0.128) 0.891±(0.136) 0.891±(0.133)
Tabella 3.3: Variazione dell’accuracy in base alle diverse configurazioni di
sensori.
task (configuration) SENS SPEC PREC F1
entering (8 sensors) 0.119 0.993 0.597 0.110
leaving (8 sensors) 0.179 0.982 0.467 0.148
entering (5 sensors) 0.122 0.994 0.646 0.115
leaving (5 sensors) 0.202 0.986 0.559 0.174
entering (3 sensors) 0.128 0.996 0.720 0.122
leaving (3 sensors) 0.220 0.988 0.631 0.195
Tabella 3.4: Sensitivity, specificity, precision e f1-score in base alle diverse
configurazioni di sensori.
Capitolo 4
Conclusioni
In questo elaborato sono state descritte e studiate le RNN. Sono state
introdotte le principali propriet`a computazionali di questi modelli, discuten-
done il funzionamento generale dei pi`u comuni algoritmi di apprendimento
attualmente utilizzati. `E stato descritto il paradigma RC, con particolare
riguardo alle sue applicazioni nell’ambito dell’AAL. Sono state descritti e
discussi alcuni modelli di RNN, nello specifico IDNN, SRN, NARX ed ESN.
La seconda parte ha descritto lo studio di una ESN per un’applicazione di
AAL, nell’ambito del progetto europeo FP7 DOREMI. Dopo aver fornito le
motivazioni di tale scelta, `e stato descritto lo svolgimento degli esperimenti
ed i risultati significativi ottenuti.
22
Appendice A
Cross-Validation
La cross-validation `e una tecnica statistica di validazione. Nel Machine
Learning, viene usata per capire come il modello addestrato sia in grado di ge-
neralizzare il task appreso, valutando il suo comportamento in corrispondenza
di dati di input non utilizzati per la fase di addestramento. Normalmente
l’insieme dei dati usati per l’addestramento di una modello `e diviso in training
set (utilizzato per l’addestramento vero e proprio) e test set (utilizzato per
testare le performance del modello addestrato). Durante la cross-validation
viene definito un ulteriore dataset, detto validation set, utilizzato per testare
le prestazioni del modello durante il processo di apprendimento. L’utilizzo
di tali tecniche serve per mitigare le tipiche problematiche che tipicamen-
te si incontrano durante l’apprendimento, come ad esempio l’overfitting del
modello o il campionamento asimmetrico del dataset.
A.1 K-fold cross-validation
Nella k-fold cross-validation, il training set originale viene diviso in k sot-
toinsiemi, uno dei quali `e tenuto per la validation. I restanti k−1 sottoinsiemi
vanno a costituire il nuovo training set. Questo procedimento `e ripetuto k
volte, in modo che ogni singolo sottoinsieme sia utilizzato esattamente una
volta per la validazione. I k risultati cos`ı ottenuti sono quindi combinati
23
A.2 Double k-fold cross-validation 24
per ottenere il risultato finale. Questo metodo, rispetto alla normale cross-
validation, presenta il vantaggio di utilizzare tutto il dataset sia in training
che in validation.
A.2 Double k-fold cross-validation
In questo caso sono utilizzate due k-fold cross-validation “innestate” l’una
dentro l’altra: una prima cross-validation divide il dataset in kex sottoinsie-
mi (fold esterne). Una fold esterna `e quindi utilizzata come test set, mentre
sulle restanti kex −1 fold esterne (che vanno a costituire il training set) viene
applicata un’ulteriore k-fold cross validation. Il procedimento `e iterato kex
volte, una per ogni fold esterna. L’utilizzo di questa tecnica, oltre ad include-
re tutti vantaggi presenti nella k-fold cross-validation singola, comporta che
ogni elemento del dataset venga utilizzato per il test esattamente una vol-
ta. Ci`o permette di evitare errori di sbilanciamento che potrebbero accadere
durante il partizionamento manuale del dataset.
A.2 Double k-fold cross-validation 25
Figura A.1: Esempio di applicazione di una double cross-fold validation con
3 fold esterne e 3 fold interne. Per ogni fold, il test set `e indicati in blu, il
training set in arancione e il validation set in giallo.
Elenco delle figure
2.1 Esempio di unfolding nel tempo di una rete ricorrente comple-
tamente connessa con 2 neuroni. . . . . . . . . . . . . . . . . 6
2.2 Architettura di una rete IDNN con ordine dell’input uguale
a DU , input e output monodimensionali ed un layer nascosto
composto da 4 unit`a. . . . . . . . . . . . . . . . . . . . . . . . 9
2.3 Architettura di una SRN con input ed output monodimensiona-
li e layer del contesto di dimensione 4. In rosso `e evidenziata
la parte ricorrente della rete. . . . . . . . . . . . . . . . . . . 10
2.4 Architettura di una rete NARX con ordine dell’input uguale
a DU , ordine dell’output uguale a DY , input ed output mono-
dimensionale ed un layer nascosto composto da 4 unit`a. In
rosso `e evidenziata la parte ricorrente della rete. . . . . . . . 11
2.5 Architettura di una ESN con input ed output monodimensionali. 13
3.1 Logo del progetto europeo FP7 DOREMI . . . . . . . . . . . . 16
3.2 Piantina del CIAMI Lab, con indicata la disposizione dei sen-
sori nell’ambiente. . . . . . . . . . . . . . . . . . . . . . . . . 17
A.1 Esempio di applicazione di una double cross-fold validation
con 3 fold esterne e 3 fold interne. Per ogni fold, il test set `e
indicati in blu, il training set in arancione e il validation set
in giallo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
26
Elenco delle tabelle
3.1 Variazione dell’accuracy in base al numero di unit`a del reservoir. 20
3.2 Configurazione di iperparametri selezionata dalla double cross-
fold validation. . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Variazione dell’accuracy in base alle diverse configurazioni di
sensori. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Sensitivity, specificity, precision e f1-score in base alle diverse
configurazioni di sensori. . . . . . . . . . . . . . . . . . . . . . 21
27
Bibliografia
[1] M. Lukosevicius, H. Jaeger: Reservoir computing approaches to
recurrent neural network training. IEEE Press, 2001.
[2] H. Jaeger: The ’echo state’ approach to analysing and training recurrent
neural networks. GMD Report 148, German National Research Center
for Information Technology, 2001.
[3] S. Haykin: Neural Networks and Learning Machines (3rd Edition). pag.
790-845 PHI Learning Private Limited, 2010.
[4] S. Haykin: Neural Networks: A Comprehensive Foundation (2nd
edition). Prentice Hall PTR, 1998
[5] C. Gallicchio, A. Micheli: Architectural and Markovian factors of echo
state networks. Neural Networks, vol 24(5), pag. 440-456, 2011.
[6] D. Verstraeten, B. Schrauwen, M. D’Haene, D. Stroobandt: An expe-
rimental unification of reservoir computing methods. Neural Networks
20, pag. 391-403, 2007.
[7] J.L. Elman: Finding structure in time. Cognitive Science, vol 14, pag
179-211, 1990.
[8] B. Hammer, Jochen J. Steil: Tutorial: Perspectives on Learning
with RNNs. Proceeings of the European Symposium on Artificial
Neural Networks, Computational Intelligence and Machine Learning
(ESANN), pag. 357-368, d-side, 2002.
28
BIBLIOGRAFIA 29
[9] T. Lin, B.G. Horne, P.Tino, C.L. Giles: Learning long-term dependen-
cies in NARX recurrent neural networks. IEEE Transactions on Neural
Networks, vol 7(6), pag. 1329-1338, 1996.
[10] D. Bacciu, P. Barsocchi, S. Chessa, C. Gallicchio, A. Micheli: An ex-
perimental characterization of reservoir computing in ambient assisted
living applications. Neural Computing and Applications, vol 24(6), pag.
1451-1464, 2014.
[11] K. Hornik, M. Stinchcombe, H. White: Multi-layer feedforward net-
works are universal approximators. Neural Networks 2, pag. 359–366,
1989.
[12] A.M. Sch¨afer, H.G. Zimmermann: Recurrent Neural Networks Are Uni-
versal Approximators. Artificial Neural Networks – ICANN 2006, pag.
632-640, 2006.
[13] R.J. Williams: Gradient-based learning algorithms for recurrent net-
works and their computational complexity in Backpropagation: Theo-
ry, Architectures and Applications, capitolo 13, pag. 433-486, Lawrence
Erlbaum Publishers, Hillsdale, N.J., 1995.
[14] C. Gallicchio, A. Micheli, P. Barsocchi, S. Chessa: User Movements
Forecasting by Reservoir Computing using Signal Streams produced by
Mote-Class Sensors, Computer Science Department, University of Pisa
and ISTI-CNR, Pisa Research Area, 2011.
[15] J.L. Elman: Distributed Representations, Simple Recurrent Networks,
and Grammatical Structure, Machine Learning, vol. 7, pag. 195-225,
1991.
[16] H.T. Su, T. MacAvoy, P. Werbos: Long-Term Predictions of Chemi-
cal Processes Using Recurrent Neural Networks: A Parallel Training
Approach, Industrial Engineering and Chemical Research, vol. 31, pag.
1338-1352, 1992.
BIBLIOGRAFIA 30
[17] H.T. Siegelmann, E.D. Sontag: Turing computability with neural nets,
Applied Mathematics Letter, vol. 4, pag. 77-80, 1991.
[18] H.T. Siegelmann, B.G. Horne, C.L. Giles: Computational Capabilities
of Recurrent NARX Neural Networks, IEEE transactions on systems,
man, and cybernetics, vol. 27(2),1997.
[19] S.C. Kremer: On the computational power of Elman-style recurrent
networks, IEEE Transactions on Neural Networks, vol. 6(4), 1995.

Weitere ähnliche Inhalte

Was ist angesagt?

CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...
CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...
CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...Leonardo Di Donato
 
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...
 Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route... Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...Ce.Se.N.A. Security
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopPaolo Nesi
 
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...Ce.Se.N.A. Security
 
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...Fausto Intilla
 
NunzioMeliTesi-up1
NunzioMeliTesi-up1NunzioMeliTesi-up1
NunzioMeliTesi-up1Nunzio Meli
 
Neural Network per la composizione musicale
Neural Network per la composizione musicaleNeural Network per la composizione musicale
Neural Network per la composizione musicaleCorinne Schillizzi
 
a1dddf507ce838f51f5349d2b2c25241
a1dddf507ce838f51f5349d2b2c25241a1dddf507ce838f51f5349d2b2c25241
a1dddf507ce838f51f5349d2b2c25241Nunzio Meli
 
Tesi di Laurea Specialistica
Tesi di Laurea SpecialisticaTesi di Laurea Specialistica
Tesi di Laurea SpecialisticaClaudio Carcaci
 
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...Simone Cumar
 
Schema di watermarking robusto per un bitstream jpeg cifrato
Schema di watermarking robusto per un bitstream jpeg cifratoSchema di watermarking robusto per un bitstream jpeg cifrato
Schema di watermarking robusto per un bitstream jpeg cifratoGianmarco Beato
 
A Location Based Mobile Social Network
A Location Based Mobile Social NetworkA Location Based Mobile Social Network
A Location Based Mobile Social NetworkLeonardo Di Donato
 
Slides of my Master's Thesis
Slides of my Master's ThesisSlides of my Master's Thesis
Slides of my Master's ThesisDavid Canino
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...MichaelFuser
 
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMUL...
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:  UN FRAMEWORK DI SIMUL...VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:  UN FRAMEWORK DI SIMUL...
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMUL...Lorenzo Cavina
 

Was ist angesagt? (20)

CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...
CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...
CRADLE: Clustering by RAndom minimization Dispersion based LEarning - Un algo...
 
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...
 Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route... Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per route...
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
 
Le reti neurali
Le reti neuraliLe reti neurali
Le reti neurali
 
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...
Rilevamento di attacchi di rete tramite protocolli di monitoraggio per router...
 
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...
Reti neurali: ipotetiche forme di vita artificiale o realistici calcolatori a...
 
NunzioMeliTesi-up1
NunzioMeliTesi-up1NunzioMeliTesi-up1
NunzioMeliTesi-up1
 
TesiEtta
TesiEttaTesiEtta
TesiEtta
 
Neural Network per la composizione musicale
Neural Network per la composizione musicaleNeural Network per la composizione musicale
Neural Network per la composizione musicale
 
Calcolo Parallelo
Calcolo ParalleloCalcolo Parallelo
Calcolo Parallelo
 
a1dddf507ce838f51f5349d2b2c25241
a1dddf507ce838f51f5349d2b2c25241a1dddf507ce838f51f5349d2b2c25241
a1dddf507ce838f51f5349d2b2c25241
 
Tesi di Laurea Specialistica
Tesi di Laurea SpecialisticaTesi di Laurea Specialistica
Tesi di Laurea Specialistica
 
Algoritmo di Dijkstra
Algoritmo di DijkstraAlgoritmo di Dijkstra
Algoritmo di Dijkstra
 
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...Compressione di insiemi di espressioni regolari tramite programmazione geneti...
Compressione di insiemi di espressioni regolari tramite programmazione geneti...
 
Schema di watermarking robusto per un bitstream jpeg cifrato
Schema di watermarking robusto per un bitstream jpeg cifratoSchema di watermarking robusto per un bitstream jpeg cifrato
Schema di watermarking robusto per un bitstream jpeg cifrato
 
A Location Based Mobile Social Network
A Location Based Mobile Social NetworkA Location Based Mobile Social Network
A Location Based Mobile Social Network
 
Rilevamento intrusioni in wlan
Rilevamento intrusioni in wlanRilevamento intrusioni in wlan
Rilevamento intrusioni in wlan
 
Slides of my Master's Thesis
Slides of my Master's ThesisSlides of my Master's Thesis
Slides of my Master's Thesis
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
 
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMUL...
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:  UN FRAMEWORK DI SIMUL...VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA:  UN FRAMEWORK DI SIMUL...
VERSO RETI AUTO-ORGANIZZANTI ISPIRATE ALLA BIOCHIMICA: UN FRAMEWORK DI SIMUL...
 

Andere mochten auch

Hướng dẫn lập trình web với PHP - Ngày 3
Hướng dẫn lập trình web với PHP - Ngày 3Hướng dẫn lập trình web với PHP - Ngày 3
Hướng dẫn lập trình web với PHP - Ngày 3Nguyễn Tuấn Quỳnh
 
Annotated Bib1
Annotated Bib1Annotated Bib1
Annotated Bib1ldorsey
 
Asamblea 2016 pp web
Asamblea 2016 pp webAsamblea 2016 pp web
Asamblea 2016 pp webHernan Cuevas
 
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...Metrificar para prever e não prever para metrificar. O aprendizado a partir ...
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...Raphael Donaire Albino
 
WEBD 162: display property, Float and Clear
WEBD 162: display property, Float and ClearWEBD 162: display property, Float and Clear
WEBD 162: display property, Float and Clearpalomateach
 
The roadtocodecraft
The roadtocodecraftThe roadtocodecraft
The roadtocodecraftbbongcsu
 

Andere mochten auch (13)

Social Media Digital
Social Media Digital Social Media Digital
Social Media Digital
 
Ejes tematicos
Ejes tematicosEjes tematicos
Ejes tematicos
 
Hướng dẫn lập trình web với PHP - Ngày 3
Hướng dẫn lập trình web với PHP - Ngày 3Hướng dẫn lập trình web với PHP - Ngày 3
Hướng dẫn lập trình web với PHP - Ngày 3
 
Jh Back
Jh BackJh Back
Jh Back
 
Vigor
VigorVigor
Vigor
 
ITIL_Foundation
ITIL_FoundationITIL_Foundation
ITIL_Foundation
 
组合 1
组合 1组合 1
组合 1
 
Annotated Bib1
Annotated Bib1Annotated Bib1
Annotated Bib1
 
Manual web tec (julio 19 2011)
Manual web tec (julio 19 2011)Manual web tec (julio 19 2011)
Manual web tec (julio 19 2011)
 
Asamblea 2016 pp web
Asamblea 2016 pp webAsamblea 2016 pp web
Asamblea 2016 pp web
 
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...Metrificar para prever e não prever para metrificar. O aprendizado a partir ...
Metrificar para prever e não prever para metrificar. O aprendizado a partir ...
 
WEBD 162: display property, Float and Clear
WEBD 162: display property, Float and ClearWEBD 162: display property, Float and Clear
WEBD 162: display property, Float and Clear
 
The roadtocodecraft
The roadtocodecraftThe roadtocodecraft
The roadtocodecraft
 

Ähnlich wie AV_tesi_v5

Extended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural NetworksExtended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural Networkschiarabotter
 
Extended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkExtended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkOlesiaRonzon
 
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...KevinMarzio
 
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...Cristian Randieri PhD
 
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...Fausto Intilla
 
Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)Valerio Eletti
 
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”StefanoChen1
 
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...Paolo Morandini
 
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...Andrea Marchetti
 
Monitoraggio di mac address in lan
Monitoraggio di mac address in lanMonitoraggio di mac address in lan
Monitoraggio di mac address in lanCe.Se.N.A. Security
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisGuido Colangiuli
 
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...Marco Garoffolo
 
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia
 
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...SergioMilo1
 
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...Vrije Universiteit Brussel
 
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...Analisi e realizzazione di uno strumento per la verifica di conformità su sis...
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...Davide Bravin
 

Ähnlich wie AV_tesi_v5 (20)

Extended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural NetworksExtended Summary of Self-building Neural Networks
Extended Summary of Self-building Neural Networks
 
Extended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet NetworkExtended Summary of Optimized Design of a Human Intranet Network
Extended Summary of Optimized Design of a Human Intranet Network
 
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...
Graph partitioning: implementazione dell'algoritmo spettrale e confronto con ...
 
AV_slides
AV_slidesAV_slides
AV_slides
 
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...
Tesi laurea Cristian Randieri: TECNICHE DI SOFT COMPUTING PER LA MODELLISTICA...
 
Tesi Laurea Cristian Randieri
Tesi Laurea  Cristian RandieriTesi Laurea  Cristian Randieri
Tesi Laurea Cristian Randieri
 
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...
UNA NUOVA RAPPRESENTAZIONE SEMANTICA CON GLI ALGORITMI GENETICI PER LA PROGET...
 
Network monitoring tramite snmp
Network monitoring tramite snmpNetwork monitoring tramite snmp
Network monitoring tramite snmp
 
Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)Complexity education by Valerio Eletti (3/4)
Complexity education by Valerio Eletti (3/4)
 
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
 
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...
Tesi: Progetto e realizzazione di un sistema robusto di gestione dei dati per...
 
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...
Valutazione delle prestazioni di un protocollo di routing (Surge) per reti di...
 
Monitoraggio di mac address in lan
Monitoraggio di mac address in lanMonitoraggio di mac address in lan
Monitoraggio di mac address in lan
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
 
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...
PROGETTAZIONE ED IMPLEMENTAZIONE DI STRUMENTI PER LA VALUTAZIONE DI RETI COMP...
 
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
Stefano Bragaglia MSc Thesis, awarded as Best Italian thesis in AI 2009/2010
 
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
Extended Summary of "Engineered Self-Organization for Resilient Robot Self-As...
 
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...
Uno studio empirico sulla parametrizzazione dell'algoritmo slsq per la compre...
 
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...Analisi e realizzazione di uno strumento per la verifica di conformità su sis...
Analisi e realizzazione di uno strumento per la verifica di conformità su sis...
 
Hog processing
Hog processingHog processing
Hog processing
 

AV_tesi_v5

  • 1. Universit`a degli Studi di Pisa DIPARTIMENTO DI INFORMATICA Corso di Laurea in Informatica Tesi di laurea Echo State Network per la classificazione di interazioni sociali in ambienti domestici Candidato: Andrea Valenti Relatori: Prof. Alessio Micheli Dott. Claudio Gallicchio Anno Accademico 2014–2015
  • 2. Indice 1 Introduzione 2 2 Reti Neurali Ricorrenti 3 2.1 Potenza Computazionale . . . . . . . . . . . . . . . . . . . . . 4 2.2 Algoritmi di Apprendimento . . . . . . . . . . . . . . . . . . . 5 2.2.1 Propriet`a e Problematiche . . . . . . . . . . . . . . . . 6 2.3 Reservoir Computing . . . . . . . . . . . . . . . . . . . . . . . 7 2.4 Modelli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.4.1 Input Delay Neural Network . . . . . . . . . . . . . . . 8 2.4.2 Simple Recurrent Network . . . . . . . . . . . . . . . . 9 2.4.3 Nonlinear Autoregressive Exogenous Network . . . . . 11 2.4.4 Echo State Network . . . . . . . . . . . . . . . . . . . . 12 3 Studio di un Caso Reale 15 3.1 Motivazioni . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2 Descrizione degli Esperimenti . . . . . . . . . . . . . . . . . . 16 3.3 Risultati . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4 Conclusioni 22 Appendice A Cross-Validation 23 A.1 K-fold cross-validation . . . . . . . . . . . . . . . . . . . . . . 23 A.2 Double k-fold cross-validation . . . . . . . . . . . . . . . . . . 24 Bibliografia 28 1
  • 3. Capitolo 1 Introduzione L’elaborato si propone di studiare uno dei problemi posti dal proget- to europeo FP7 DOREMI, finalizzato alla realizzazione di tecnologie per la prevenzione del declino fisico e cognitivo nella popolazione anziana. Nello specifico, viene affrontato il problema di classificare situazioni di interazione sociale (rappresentate da visite), utilizzando come input una rete di senso- ri incorporata nell’ambiente domestico. La soluzione proposta si colloca nel campo del Machine Learning e sfrutta l’efficienza e la flessibilit`a del Reservoir Computing in generale, e delle Echo State Network in particolare. In prima istanza vengono presentate le Reti Neurali Ricorrenti (RNN), delineandone la potenza computazionale, i principali algoritmi di apprendi- mento ed introducendo il paradigma del Reservoir Computing. Successiva- mente sono introdotti alcuni modelli di RNN. Per ognuno di questi viene fornita una descrizione e un’analisi delle sue potenzialit`a, sia nel caso gene- rale che in relazione allo scopo del progetto. In seguito uno di questi modelli, una Echo State Network, viene studiata su un problema reale, analizzandone prestazioni e comportamento in base alle diverse configurazioni di parame- tri. Segue un’analisi sintetica dei risultati ottenuti, dove sono enfatizzati gli aspetti salienti ed indicate possibili direzioni di sviluppo future. 2
  • 4. Capitolo 2 Reti Neurali Ricorrenti In questo capitolo `e presentata la classe delle Reti Neurali Ricorrenti, prima caratterizzandone gli aspetti teorici generali ed i principali algoritmi di apprendimento, poi analizzando alcuni modelli nello specifico. Introduciamo ora la definizione: Definizione 2.1. Le Reti Neurali Ricorrenti (RNN) sono una classe di reti neurali in cui il grafo delle connessioni tra i neuroni contiene almeno un ciclo diretto. Questa retroazione, creando uno stato interno alla rete, permette alla RNN di tenere conto del contesto temporale in cui gli input sono presentati. A differenza delle reti neurali di tipo feedforward, dove l’output del modello `e determinato esclusivamente dall’input corrente senza l’utilizzo di nessun tipo di memoria, le RNN sono in grado di determinare il proprio output anche tenendo conto della cronologia degli input presentati fino a quel mo- mento. Questo rende le RNN particolarmente adatte per processare tipi di dato strutturati temporalmente, soprattutto per quei tipi di applicazione che naturalmente presuppongono una struttura temporale di base. 3
  • 5. 2.1 Potenza Computazionale 4 2.1 Potenza Computazionale Dalla loro introduzione, le RNN sono state oggetto di vari studi teorici nel corso degli anni. Ci`o ha portato alla scoperta di importanti risultati riguar- danti questa classe di modelli, primo fra tutti il teorema di approssimazione universale[12]: Teorema 2.1. Qualsiasi sistema dinamico non lineare pu`o essere approssi- mato da una RNN con arbitraria precisione, a patto che il numero di neuroni della rete non sia limitato a priori. Questo risultato, seppur profondo, non arriva totalmente inaspettato, dal momento che anche le architetture feedforward con almeno un layer nascosto godevano gi`a di un analoga propriet`a [11]. Dal momento che la classe dei sistemi dinamici include al suo interno modelli come automi a stati finiti, au- tomi a pila e macchine di Turing, questo teorema delinea l’estrema flessibilit`a delle RNN come modello di calcolo. Un ulteriore formalizzazione delle capacit`a rappresentative delle RNN `e data dal seguente teorema [17] Teorema 2.2. Qualsiasi macchina di Turing pu`o essere simulata da una RNN completamente connessa costituita da neuroni ad attivazione sigmoida- le. Anche se non tutti i modelli di RNN sono completamente connessi, nel corso degli anni vari studi hanno dimostrato che molti modelli tra i pi`u usati sono in grado di simulare RNN completamente connesse [18][19], se non per un eventuale rallentamento lineare (ovvero: se una RNN completamente connessa con N neuroni completa un task in tempo T, allora il modello equivalente completer`a lo stesso task in, al pi`u, tempo (N + 1)T.) `E importante evidenziare che i risultati sopracitati valgono solamente nel caso non si limiti a priori il numero di neuroni nella rete. In caso contrario, la potenza computazionale delle RNN non `e pi`u garantita, ed il modello potrebbe non essere in grado di imparare perfettamente alcuni tipi di task particolarmente difficili.
  • 6. 2.2 Algoritmi di Apprendimento 5 2.2 Algoritmi di Apprendimento Come le reti neurali feedforward, anche le RNN hanno due principali modalit`a di addestramento: ˆ Addestramento per epoche: per ogni singola epoca `e presentate alla rete un’intera sequenza di coppie (input, target). Dopodich`e, il processo di addestramento viene interrotto e la RNN viene resettata allo stato iniziale in preparazione dell’epoca successiva. ˆ Addestramento continuo: in questo caso il processo di apprendimento non si ferma mai. Da notare che qui per “epoca” si intende l’addestramento con una singola sequenza di input, mentre nel caso della reti feedforward “epoca” si riferisce all’intero training set. Di seguito sono presentati due algoritmi, tra i pi`u studiati e utilizzati per addestrare RNN. Per un’analisi dettagliata sul loro funzionamento si rimanda a [4] e [13]; in questo contesto ci si limiter`a a fornire una spiegazione generale del loro comportamento. ˆ Backpropagation Through Time (BPTT) Il BPTT `e un discendente diretto del Backpropagation standard. Si basa sulla premessa che l’o- perato temporale della rete possa essere “srotolato” fino ad ottenere un Multi-layer Perceptron. La rete cos`ı ottenuta conterr`a un layer per ogni step temporale (fig. 2.1). A questo punto `e possibile applicare il classico Backpropagation. L’algoritmo pu`o essere utilizzato sia per l’addestramento per epoche che per l’addestramento continuo, sia per una combinazione dei due. ˆ Real-Time Recurrent Learning (RTRL) Il nome dell’algoritmo deriva dal fatto che i pesi dei neuroni sono adattati in tempo reale, mentre la rete continua a processare la sequenza di input. Questo rende il RTRL particolarmente adatto per l’addestramento continuo, ed risulta
  • 7. 2.2 Algoritmi di Apprendimento 6 Figura 2.1: Esempio di unfolding nel tempo di una rete ricorrente completamente connessa con 2 neuroni. particolarmente utile per quei task in cui non `e facile dividere l’input in epoche. 2.2.1 Propriet`a e Problematiche Entrambi gli algoritmi descritti si basano su tecniche a discesa del gra- diente, pertanto presentano una serie di problematiche comuni: ˆ Elevata complessit`a computazionale. ˆ Lenta convergenza. ˆ Funzione dell’errore generalmente non convessa, che comporta il rischio di rimanere intrappolati in un minimo locale. ˆ Problema del vanishing gradient [8].
  • 8. 2.3 Reservoir Computing 7 Da tenere particolarmente in considerazione durante l’utilizzo pratico del- le RNN `e il succitato problema del vanishing gradient. Nei metodi a discesa di gradiente, infatti, ad ogni passo d’addestramento i pesi sono modificati proporzionalmente al gradiente della funzione di errore, calcolato rispetto ai pesi correnti. Dal momento che le tipiche funzioni di attivazione utilizzate hanno gradienti compresi in (−1, 1) o [0, 1), l’errore propagato subir`a un’at- tenuazione esponenziale proporzionale al numero di layer nella rete. Se un certo layer `e sufficientemente “lontano” dal layer di output (che `e quello che origina l’errore), allora i pesi dei neuroni di quel layer verranno aggiornati molto lentamente, ed il processo di addestramento sar`a molto lento. 2.3 Reservoir Computing Per Reservoir Computing (RC) si intende una famiglia di modelli neu- rali, tutti caratterizzati dalla stessa idea di base: la separazione tra parte ricorrente (reservoir) e parte non ricorrente (readout) della rete. Solamente il readout viene addestrato, spesso mediante regressione lineare, mentre il re- servoir non `e pi`u modificato dopo l’inizializzazione [2][5]. Questo approccio, oltre ad essere molto efficiente dal punto di vista computazionale, permette di evitare molti dei problemi a cui sono soggetti i modelli addestrati con tecniche di error backpropagation (discussi in sez. 2.2.1). Nel corso degli anni il paradigma RC si `e dimostrato particolarmente po- tente e flessibile [1] modelli RC (in particolare ESN e LI-ESN) sono stati uti- lizzati con successo per una gran variet`a di applicazioni nell’ambito del’Am- bient Assisted Living [10], risultando particolarmente adatti per processare sequenze di input rumorose originate da reti di sensori [14].
  • 9. 2.4 Modelli 8 2.4 Modelli La lista di modelli qui presentata non ha la pretesa di essere esaustiva, ma piuttosto si concentra su quei modelli che nel corso degli anni si sono dimostrati adatti per l’utilizzo in applicazioni di Ambient Assisted Living. 2.4.1 Input Delay Neural Network Uno dei modelli pi`u semplici in grado di rappresentare un contesto tempo- rale `e la Input Delay Neural Network (IDNN), ottenuta applicando tecniche di buffering dell’input (time delay line) ad una rete feedforward (spesso un MLP). Ad ogni passo di addestramento gli ultimi input presentati vengono memorizzati in una finestra temporale di dimensione finita DU . Ci`o permette al MLP di vedere, oltre all’input corrente, anche gli ultimi DU input passati. Nella delay window dello stream di input si viene quindi a formare un pattern temporale. La relazione tra input ed output di una IDNN `e descritta da y(t) = f u(t − DU ), ..., u(t − 1), u(t) (2.1) dove f `e una funzione non lineare degli ingressi, y(t) `e l’output della rete al passo t, u(t) `e la sequenza di input al passo t. In figura 2.2 `e mostrato un esempio di IDNN. Queste reti hanno il vantaggio di poter essere addestrate utilizzando algoritmi sviluppati per le reti di tipo feedforward senza necessit`a di alcun tipo di adattamento. D’altro canto, il dover limitare arbitrariamen- te la dimensione della finestra DU pu`o costituire un problema, richiedendo un certo grado di conoscenza a priori della struttura temporale dell’input. Inoltre, dal momento che il numero di unit`a in input cresce linearmente con DU , una finestra temporale di dimensioni elevate comporta un alto numero di parametri addestrabili. L’aumento risultante della complessit`a del modello potrebbe andare a detrimento del tempo di addestramento e della capacit`a di generalizzazione della rete.
  • 10. 2.4 Modelli 9 Figura 2.2: Architettura di una rete IDNN con ordine dell’input uguale a DU , input e output monodimensionali ed un layer nascosto composto da 4 unit`a. 2.4.2 Simple Recurrent Network Per superare le limitazioni imposte dalle IDNN `e necessario utilizzare un approccio diverso di rappresentazione del contesto temporale. Nel caso delle Simple Recurrent Network (SRN)[7][15], le connessioni di retroazione sono rese esplicite, sia tra neuroni dello stesso layer che tra neuroni di layer distinti, mediante l’utilizzo di connessioni feedback-delay (fig. 2.3). Questo consente di rappresentare il contesto temporale come stato interno della rete, senza la necessit`a di salvare esplicitamente la cronologia degli input. Di conseguenze le SRN sono in grado (in linea di principio) di conservare le informazioni sul passato per un tempo arbitrariamente lungo, eliminando di fatto la relazione tra dimensione della memoria e numero di unit`a neurali che caratterizzava le IDNN. Il concetto di SRN fu introdotto per la prima volta in [7], dove si pro- pone l’architettura descritta in figura 2.3, detta anche Rete di Elman. Per semplificare la notazione `e stato introdotto un layer fittizio, detto layer del contesto, che contiene le attivazioni ritardate dei neuroni scelti. Ci`o permet- te alla SRN di essere rappresentata come una rete feedforward con alcune connessioni retroattive ritardate. L’output della rete `e descritto da
  • 11. 2.4 Modelli 10 Figura 2.3: Architettura di una SRN con input ed output monodimensionali e layer del contesto di dimensione 4. In rosso `e evidenziata la parte ricorrente della rete. y(t) = fY x(t) x(t) = fH u(t), c(t) c(t) = x(t − 1) (2.2) dove u(t), x(t) e y(t) sono rispettivamente input, stato interno ed output della rete al passo t; c(t) `e il layer del contesto al passo t; fY `e la funzione di attivazione del layer di output e fH `e la funzione di attivazione del layer nascosto. Avere connessioni retroattive esplicite implica l’utilizzo di algo- ritmi di addestramento pi`u complessi rispetto a quelli utilizzati per le reti feedforward: tipicamente si utilizzano gli algoritmi BPTT e RTRL (sez. 2.2). Questo, se da un lato permette di sfruttare le propriet`a di approssimazione universale delle RNN (ref. 2.1), dall’altro introduce le classiche problema- tiche tipiche degli algoritmi basati su tecniche a discesa del gradiente (sez. 2.2.1).
  • 12. 2.4 Modelli 11 Figura 2.4: Architettura di una rete NARX con ordine dell’input uguale a DU , ordine dell’output uguale a DY , input ed output monodimensionale ed un layer nascosto composto da 4 unit`a. In rosso `e evidenziata la parte ricorrente della rete. 2.4.3 Nonlinear Autoregressive Exogenous Network Un’ampia classe di architetture deriva dall’implementazione mediante reti neurali del modello non lineare autoregressivo con input esogeni (NARX, fig. 2.4)[9][16], descritta dalla seguente y(t) = f u(t − DU ), ..., u(t − 1), u(t), y(t − DY ), ..., y(t − 1) (2.3) dove u(t) e y(t) sono rispettivamente input e output della rete al passo t, DU e DY sono rispettivamente l’ordine dell’input e l’ordine dell’output (ovvero rappresentano la dimensione delle finestre di buffering usate rispet- tivamente in input ed in output), f `e una funzione non lineare degli ingressi,
  • 13. 2.4 Modelli 12 spesso implementata con un MLP. Questi modelli combinano la rappresenta- zione interna del contesto temporale tipica delle SRN con le input delay line delle IDNN, riuscendo (almeno in parte) a superare i problemi che affliggono i succitati modelli. Le reti NARX hanno infatti la caratteristica di essere particolarmente adatte per essere addestrate usando algoritmi a discesa del gradiente, in quanto la presenza di output ritardati rende questi modelli meno sensibili al problema del vanishing gradient, e quindi pi`u adatti ad imparare dipendenze a lungo termine presenti nell’input [9]. 2.4.4 Echo State Network Sfruttando il paradigma del Reservoir Computing, le Echo State Network (ESN) si sono distinte negli anni per il loro utilizzo con successo in una gran variet`a di applicazioni [2][10], rappresentando un’efficiente alternativa ai modelli “classici”. Una ESN `e composta da tre parti principali (fig. 2.5): ˆ Un layer di input. ˆ Un reservoir, tipicamente costituito da un elevato numero di neuroni sparsamente connessi tra di loro. `E importante notare che il reservoir, dopo un’adeguata inizializzazione, `e lasciato immutato, riducendo enor- memente la complessit`a computazione del processo di apprendimento [5]. Al fine di garantire un corretto comportamento della ESN, i pesi delle unit`a del reservoir devono sottostare ad un’ulteriore condizione, detta Echo State property (ESP) [2][5][1]. Propriet`a 2.1. In una ESN, lo stato corrente x(t) `e una funzione esclusivamente della cronologia degli input presentati fino a quel mo- mento, indipendentemente dai valori dello stato iniziale.
  • 14. 2.4 Modelli 13 Figura 2.5: Architettura di una ESN con input ed output monodimensionali. Sempre in [2] vengono fornite due condizioni, una necessaria e l’altra sufficiente, che una ESN deve rispettare per garantire la ESP: ρ(W) < 1 (2.4) σ(W) < 1 (2.5) la condizione necessaria 2.4 dichiara che il raggio spettrale della matrice dei pesi del reservoir W deve essere minore di uno, mentre la condizione sufficiente dichiara che il pi`u grande valore singolare di W sia minore di uno. Dal momento che la norma Euclidea di W `e equivalente al suo pi`u grande valore singolare, la condizione 2.5 pu`o essere riscritta come [5] W 2 < 1 (2.6) ˆ Un layer di readout. `E l’unica parte della rete che viene addestrata. Solitamente viene calcolata una combinazione lineare dell’attivazione dei neuroni del reservoir. A volte pu`o essere conveniente applicare un readout non lineare (ad es. mediante una rete neurale feedforward), anche se ci`o comporterebbe un aumento della complessit`a del modello.
  • 15. 2.4 Modelli 14 Ad ogni passo, il comportamento della rete `e descritto da x(t) = f Winu(t) + Wx(t − 1) y(t) = Woutx(t) (2.7) dove x(t) `e lo stato del reservoir al momento t, u(t) `e l’input al momento t, Win `e la matrice dei pesi input-reservoir, W `e la matrice dei pesi del reservoir, Wout `e la matrice dei pesi reservoir-readout e f `e la funzione di attivazione delle unit`a neurali (solitamente tanh). Di seguito `e presentata anche una variante delle ESN che utilizza, al posto delle unit`a neurali sigmoidali standard, dei Leaky Integrator Neuron. Tale variante `e chiamata Leaky Integrator ESN (LI-ESN)[1] e si contraddistingue per il suo utilizzo con successo in applicazioni che sfruttano reti di sensori per generare l’input della rete neurale [10]. Rispetto ad una ESN standard, la LI-ESN applica una media mobile esponenziale nei confronti degli stati del reservoir, risultando in un migliore trattamento delle sequenze che tendono a cambiare lentamente rispetto alla frequenza di campionamento. Le equazioni 2.7 ora diventano x(t) = (1 − a)x(t − 1) + af Winu(t) + Wx(t − 1) y(t) = Woutx(t) (2.8) `E stato introdotto il parametro a ∈ [0, 1], detto leaky parameter. Cambian- done il valore `e possibile variare l’intervallo di frequenze in cui il reservoir opera: in pratica a controlla la velocit`a delle dinamiche del reservoir. In ultimo, `e importante notare che per a = 1, la LI-ESN si comporta come una normale ESN. Questo ci garantisce che una LI-ESN con una buona scelta di parametri avr`a performance almeno equivalenti a quelle di una ESN standard [1].
  • 16. Capitolo 3 Studio di un Caso Reale Questo capitolo tratter`a dello studio di una ESN applicata ad un task di classificazione. Si parler`a delle motivazioni che hanno spinto lo studio di questo tipo di task, dei motivi che hanno portato a preferire una ESN rispetto agli altri modelli presentati e delle modalit`a con cui gli esperimenti sono stati condotti. Infine sono analizzati i risultati, delineando le conclusioni significative ed evidenziando possibili sviluppi futuri. 3.1 Motivazioni FP7 DOREMI (fig. 3.1) `e un progetto europeo atto a sviluppare soluzioni per estendere la capacit`a funzionale e cognitiva delle persone anziane attra- verso il monitoraggio non intrusivo ed il potenziamento delle loro attivit`a quotidiane. Le iniziative che compongono il progetto combinano l’utilizzo di soluzioni multidisciplinari provenienti da diverse aree di ricerca: giochi seri, reti sociali, analisi dei pattern comportamentali, reti di sensori wireless e rico- noscimento di attivit`a. Registrando ed analizzando le informazioni riguardo l’uso dei protocolli comportamentali adottati, il progetto vuole introdurre la possibilit`a per il personale medico coinvolto di individuare preventivamente segni precoci di declino fisico e/o cognitivo. L’efficacia e l’impatto dei prodot- ti che saranno sviluppati nell’ambito del progetto verr`a poi testata attraverso 15
  • 17. 3.2 Descrizione degli Esperimenti 16 Figura 3.1: Logo del progetto europeo FP7 DOREMI studi di prova in Italia e nel Regno Unito. Nello specifico, il compito del team dell’Universit`a di Pisa `e quello di sviluppare un sistema context-aware per l’activity recognition in grado di interpretare input provenienti da una rete di sensori wireless, disposti sia nell’ambiente che indossati dal soggetto. Lo studio seguente si inserisce nel contesto di sviluppo del suddetto sistema: la ESN ha il compito di monitorare, mediante una rete di sensori disseminati nell’ambiente domestico, le attivit`a sociali dell’utente, riconoscendo eventi di entrata e uscita di eventuali visitatori. 3.2 Descrizione degli Esperimenti A causa delle doti di efficienza e flessibilit`a del paradigma RC, la scelta del modello da implementare `e ricaduta su una ESN, in particolare sulla variante LI-ESN. Studi in passato hanno confermato come le ESN siano in grado di trattare con successo task in presenza di input eterogenei (e potenzialmente rumorosi). Inoltre, mediante tecniche di quantizzazione dei valori dei pesi dei neuroni, `e possibile ridurre di molto le richieste in termini di memoria senza compromettere l’accuratezza del modello, permettendone l’implementazione in sistemi con risorse limitate[sensors]. Il dataset `e stato ottenuto in due fasi (Giugno 2015 e Ottobre 2015) me- diante la simulazione di situazioni reali nel CIAMI Lab costruito presso le strutture dell’azienda Mysphera nell’ambito delle attivit`a del progetto FP7 DOREMI, da membri dello staff del progetto. Nell’homelab sono stati instal- lati 6 Passive Infrared Sensors (PIRs) dislocati nelle varie stanze (fig. 3.2) e 2
  • 18. 3.2 Descrizione degli Esperimenti 17 Figura 3.2: Piantina del CIAMI Lab, con indicata la disposizione dei sensori nell’ambiente. sensori di contatto posizionati sulle porte (uno sulla porta del bagno e l’altro sulla porta d’ingresso). Le sequenze raccolte sono state quindi classificate in base alla tipologia. Si `e cercato di rappresentare il pi`u ampio spettro di situazioni possibili in modo da testare la capacit`a di generalizzazione della rete: in prima istanza sono stati raccolti i dati relativi a situazioni di vi- sita “ordinarie”, variando numero di visitatori e pattern di entrata/uscita (comprese situazioni dove l’utente non riceve alcuna visita); successivamente sono state registrate le sequenze “anomale”, ovvero corrispondenti a situazio- ni particolari (ad esempio il caso della “consegna della posta”, che provoca un’attivazione di sensori simile a quelle delle visite). A partire da questi dati iniziali sono state raccolte ulteriori varianti, in modo da simulare una
  • 19. 3.2 Descrizione degli Esperimenti 18 differente velocit`a d’andatura o un appartamento con differente topologia. Gli esperimenti condotti hanno cercato di indagare il comportamento della ESN sotto i seguenti punti i vista: ˆ Variazione delle performance al variare degli iperparametri, in partico- lare il numero dei neuroni del reservoir. ˆ Variazione delle performance al variare del numero e tipologia di sen- sori forniti in input; in particolar modo si `e cercato di scoprire quali sensori risultino pi`u utili (e quali invece potrebbero essere fonte di even- tuali problemi) per le capacit`a predittive della ESN. Inoltre, una rete che utilizza meno sensori in input pu`o essere utilizzata anche in quelle situazioni dove per motivi logistici `e impossibile implementare una pie- na rete di sensori (ed esempio appartamenti piccoli o dalla topologia anomala). Le 71 sequenze del dataset sono state organizzate in una double cross fold validation con 3 fold esterne e 3 fold interne (A), risultando in circa 24 sequenze in test per ogni fold esterna. Il training set di ogni fold interna `e stato diviso in training e validation set con proporzioni di circa 67%-33%. Gli esperimenti sono stati condotti addestrando 5 ESN indipendenti per ogni esperimento. I risultati si riferiscono alla media delle 5 ESN con la configurazione di iperparametri selezionata dalla double cross fold validation. Per misurare le performance della rete, per ogni step temporale delle sequenze in test `e stato considerato l’output della rete ed il target (ovvero l’output desiderato). Gli esempi sono stati quindi classificati come: ˆ Veri positivi (TP). Sono gli esempi positivi classificati correttamente dalla rete: In questi casi, sia l’output che il target segnalano un’entrata o uscita. ˆ Veri negativi (TN). Sono gli esempi negativi classificati correttamen- te dalla rete. In questi casi, sia l’output che il target non segnalano un’entrata o uscita.
  • 20. 3.2 Descrizione degli Esperimenti 19 ˆ Falsi positivi (FP). Sono gli esempi classificati incorrettamente dalla rete come positivi. In questi casi, l’output segnala un’entrata o uscita che in realt`a non sta avvenendo. ˆ Falsi negativi (FN). Sono gli esempi classificati incorrettamente dalla rete come negativi. In questi casi, l’output non segnala un’entrata o uscita che in realt`a sta avvenendo. A partire da questa classificazione sono state calcolate i seguenti indici statistici: ˆ Accuracy. Misura la capacit`a della rete di identificare correttamente un esempio, sia positivo che negativo. In formule: ACC = TP + TN P + N = TP + TN TP + TN + FP + FN (3.1) ˆ Sensitivity, o true positive rate. Misura il rapporto tra gli esempi veri positivi e gli esempi positivi totali (P). In questo caso misura la capacit`a della rete di evitare falsi positivi. TPR = TP P = TP TP + FN (3.2) ˆ Specificity, o true negative rate. Speculare alla sensitivity, misura il rapporto tra gli esempi classificati negativamente correttamente (veri negativi) e gli esempi negativi totali (N). In formule: TNR = TN N = TN TN + FP (3.3) ˆ Precision, o positive predictive value. Misura il rapporto tra i veri positivi e tutti i gli esempi classificati come positivi (sia correttamente che incorrettamente). In questo caso misura la capacit`a della rete di identificare correttamente un esempio positivo, ovvero di segnalare un ingresso o un’uscita quando sta veramente accadendo. In formule: PPV = TP TP + FP (3.4)
  • 21. 3.3 Risultati 20 RESn TR VAL TS 100 0.904± (0.139) 0.899± (0.139) 0.902± (0.133) 500 0.917± (0.118) 0.895± (0.122) 0.903± (0.117) 1000 0.926± (0.100) 0.892± (0.115) 0.901± (0.113) 2000 0.935± (0.085) 0.889± (0.110) 0.897± (0.113) Tabella 3.1: Variazione dell’accuracy in base al numero di unit`a del reservoir. ˆ F1-score. Ottenuto facendo la media armonica tra precision e sensi- tivity, pu`o essere interpretato come la media pesata tra le due. In formule: F1 = 2 PPV · TPR PPV + TPR = 2TP 2TP + FP + FN (3.5) Questi indicatori permettono di avere una panoramica molto pi`u completa sul risultato del processo di apprendimento. 3.3 Risultati Tutti i risultati si riferiscono alla configurazione di iperparametri specifi- cata in tabella 3.3. In tabella 3.3 sono elencati i risultati dei task con full set di sensori al variare del numero di unit`a del reservoir. La ESN si `e rivelata in grado di apprendere task anche con un numero di unit`a relativamente esiguo: gi`a 100 neuroni sono sufficienti per ottenere un’accuracy di circa il 90% nel test set. Ulteriori incrementi della dimensione del reservoir portano ad un overfitting del modello, senza aumentare l’accuracy del test set. In tabella 3.3 sono contenuti i risultati relativi a varie configurazioni di sensori in input. Sono stati individuati 3 configurazioni di sensori: full set (8 sensori), set ri- dotto (5 sensori) e set minimo (3 sensori). La ESN sembra essere in grado di apprendere il task anche nel caso si utilizzi il set minimale di sensori, senza un deterioramento significativo delle performance.
  • 22. 3.3 Risultati 21 Parametro Valore Regularization 1.0 Leaky Parameter 0.5 Input Scaling 0.5 Rho 0.9 Tabella 3.2: Configurazione di iperparametri selezionata dalla double cross- fold validation. task (configuration) TR VAL TS entering (8 sensors) 0.917±(0.119) 0.895±(0.125) 0.902±(0.120) leaving (8 sensors) 0.911±(0.122) 0.889±(0.132) 0.890±(0.128) entering (5 sensors) 0.920±(0.111) 0.898±(0.122) 0.905±(0.119) leaving (5 sensors) 0.913±(0.121) 0.892±(0.133) 0.894±(0.131) entering (3 sensors) 0.916±(0.120) 0.900±(0.127) 0.908±(0.122) leaving (3 sensors) 0.908±(0.128) 0.891±(0.136) 0.891±(0.133) Tabella 3.3: Variazione dell’accuracy in base alle diverse configurazioni di sensori. task (configuration) SENS SPEC PREC F1 entering (8 sensors) 0.119 0.993 0.597 0.110 leaving (8 sensors) 0.179 0.982 0.467 0.148 entering (5 sensors) 0.122 0.994 0.646 0.115 leaving (5 sensors) 0.202 0.986 0.559 0.174 entering (3 sensors) 0.128 0.996 0.720 0.122 leaving (3 sensors) 0.220 0.988 0.631 0.195 Tabella 3.4: Sensitivity, specificity, precision e f1-score in base alle diverse configurazioni di sensori.
  • 23. Capitolo 4 Conclusioni In questo elaborato sono state descritte e studiate le RNN. Sono state introdotte le principali propriet`a computazionali di questi modelli, discuten- done il funzionamento generale dei pi`u comuni algoritmi di apprendimento attualmente utilizzati. `E stato descritto il paradigma RC, con particolare riguardo alle sue applicazioni nell’ambito dell’AAL. Sono state descritti e discussi alcuni modelli di RNN, nello specifico IDNN, SRN, NARX ed ESN. La seconda parte ha descritto lo studio di una ESN per un’applicazione di AAL, nell’ambito del progetto europeo FP7 DOREMI. Dopo aver fornito le motivazioni di tale scelta, `e stato descritto lo svolgimento degli esperimenti ed i risultati significativi ottenuti. 22
  • 24. Appendice A Cross-Validation La cross-validation `e una tecnica statistica di validazione. Nel Machine Learning, viene usata per capire come il modello addestrato sia in grado di ge- neralizzare il task appreso, valutando il suo comportamento in corrispondenza di dati di input non utilizzati per la fase di addestramento. Normalmente l’insieme dei dati usati per l’addestramento di una modello `e diviso in training set (utilizzato per l’addestramento vero e proprio) e test set (utilizzato per testare le performance del modello addestrato). Durante la cross-validation viene definito un ulteriore dataset, detto validation set, utilizzato per testare le prestazioni del modello durante il processo di apprendimento. L’utilizzo di tali tecniche serve per mitigare le tipiche problematiche che tipicamen- te si incontrano durante l’apprendimento, come ad esempio l’overfitting del modello o il campionamento asimmetrico del dataset. A.1 K-fold cross-validation Nella k-fold cross-validation, il training set originale viene diviso in k sot- toinsiemi, uno dei quali `e tenuto per la validation. I restanti k−1 sottoinsiemi vanno a costituire il nuovo training set. Questo procedimento `e ripetuto k volte, in modo che ogni singolo sottoinsieme sia utilizzato esattamente una volta per la validazione. I k risultati cos`ı ottenuti sono quindi combinati 23
  • 25. A.2 Double k-fold cross-validation 24 per ottenere il risultato finale. Questo metodo, rispetto alla normale cross- validation, presenta il vantaggio di utilizzare tutto il dataset sia in training che in validation. A.2 Double k-fold cross-validation In questo caso sono utilizzate due k-fold cross-validation “innestate” l’una dentro l’altra: una prima cross-validation divide il dataset in kex sottoinsie- mi (fold esterne). Una fold esterna `e quindi utilizzata come test set, mentre sulle restanti kex −1 fold esterne (che vanno a costituire il training set) viene applicata un’ulteriore k-fold cross validation. Il procedimento `e iterato kex volte, una per ogni fold esterna. L’utilizzo di questa tecnica, oltre ad include- re tutti vantaggi presenti nella k-fold cross-validation singola, comporta che ogni elemento del dataset venga utilizzato per il test esattamente una vol- ta. Ci`o permette di evitare errori di sbilanciamento che potrebbero accadere durante il partizionamento manuale del dataset.
  • 26. A.2 Double k-fold cross-validation 25 Figura A.1: Esempio di applicazione di una double cross-fold validation con 3 fold esterne e 3 fold interne. Per ogni fold, il test set `e indicati in blu, il training set in arancione e il validation set in giallo.
  • 27. Elenco delle figure 2.1 Esempio di unfolding nel tempo di una rete ricorrente comple- tamente connessa con 2 neuroni. . . . . . . . . . . . . . . . . 6 2.2 Architettura di una rete IDNN con ordine dell’input uguale a DU , input e output monodimensionali ed un layer nascosto composto da 4 unit`a. . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Architettura di una SRN con input ed output monodimensiona- li e layer del contesto di dimensione 4. In rosso `e evidenziata la parte ricorrente della rete. . . . . . . . . . . . . . . . . . . 10 2.4 Architettura di una rete NARX con ordine dell’input uguale a DU , ordine dell’output uguale a DY , input ed output mono- dimensionale ed un layer nascosto composto da 4 unit`a. In rosso `e evidenziata la parte ricorrente della rete. . . . . . . . 11 2.5 Architettura di una ESN con input ed output monodimensionali. 13 3.1 Logo del progetto europeo FP7 DOREMI . . . . . . . . . . . . 16 3.2 Piantina del CIAMI Lab, con indicata la disposizione dei sen- sori nell’ambiente. . . . . . . . . . . . . . . . . . . . . . . . . 17 A.1 Esempio di applicazione di una double cross-fold validation con 3 fold esterne e 3 fold interne. Per ogni fold, il test set `e indicati in blu, il training set in arancione e il validation set in giallo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 26
  • 28. Elenco delle tabelle 3.1 Variazione dell’accuracy in base al numero di unit`a del reservoir. 20 3.2 Configurazione di iperparametri selezionata dalla double cross- fold validation. . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3 Variazione dell’accuracy in base alle diverse configurazioni di sensori. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.4 Sensitivity, specificity, precision e f1-score in base alle diverse configurazioni di sensori. . . . . . . . . . . . . . . . . . . . . . 21 27
  • 29. Bibliografia [1] M. Lukosevicius, H. Jaeger: Reservoir computing approaches to recurrent neural network training. IEEE Press, 2001. [2] H. Jaeger: The ’echo state’ approach to analysing and training recurrent neural networks. GMD Report 148, German National Research Center for Information Technology, 2001. [3] S. Haykin: Neural Networks and Learning Machines (3rd Edition). pag. 790-845 PHI Learning Private Limited, 2010. [4] S. Haykin: Neural Networks: A Comprehensive Foundation (2nd edition). Prentice Hall PTR, 1998 [5] C. Gallicchio, A. Micheli: Architectural and Markovian factors of echo state networks. Neural Networks, vol 24(5), pag. 440-456, 2011. [6] D. Verstraeten, B. Schrauwen, M. D’Haene, D. Stroobandt: An expe- rimental unification of reservoir computing methods. Neural Networks 20, pag. 391-403, 2007. [7] J.L. Elman: Finding structure in time. Cognitive Science, vol 14, pag 179-211, 1990. [8] B. Hammer, Jochen J. Steil: Tutorial: Perspectives on Learning with RNNs. Proceeings of the European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning (ESANN), pag. 357-368, d-side, 2002. 28
  • 30. BIBLIOGRAFIA 29 [9] T. Lin, B.G. Horne, P.Tino, C.L. Giles: Learning long-term dependen- cies in NARX recurrent neural networks. IEEE Transactions on Neural Networks, vol 7(6), pag. 1329-1338, 1996. [10] D. Bacciu, P. Barsocchi, S. Chessa, C. Gallicchio, A. Micheli: An ex- perimental characterization of reservoir computing in ambient assisted living applications. Neural Computing and Applications, vol 24(6), pag. 1451-1464, 2014. [11] K. Hornik, M. Stinchcombe, H. White: Multi-layer feedforward net- works are universal approximators. Neural Networks 2, pag. 359–366, 1989. [12] A.M. Sch¨afer, H.G. Zimmermann: Recurrent Neural Networks Are Uni- versal Approximators. Artificial Neural Networks – ICANN 2006, pag. 632-640, 2006. [13] R.J. Williams: Gradient-based learning algorithms for recurrent net- works and their computational complexity in Backpropagation: Theo- ry, Architectures and Applications, capitolo 13, pag. 433-486, Lawrence Erlbaum Publishers, Hillsdale, N.J., 1995. [14] C. Gallicchio, A. Micheli, P. Barsocchi, S. Chessa: User Movements Forecasting by Reservoir Computing using Signal Streams produced by Mote-Class Sensors, Computer Science Department, University of Pisa and ISTI-CNR, Pisa Research Area, 2011. [15] J.L. Elman: Distributed Representations, Simple Recurrent Networks, and Grammatical Structure, Machine Learning, vol. 7, pag. 195-225, 1991. [16] H.T. Su, T. MacAvoy, P. Werbos: Long-Term Predictions of Chemi- cal Processes Using Recurrent Neural Networks: A Parallel Training Approach, Industrial Engineering and Chemical Research, vol. 31, pag. 1338-1352, 1992.
  • 31. BIBLIOGRAFIA 30 [17] H.T. Siegelmann, E.D. Sontag: Turing computability with neural nets, Applied Mathematics Letter, vol. 4, pag. 77-80, 1991. [18] H.T. Siegelmann, B.G. Horne, C.L. Giles: Computational Capabilities of Recurrent NARX Neural Networks, IEEE transactions on systems, man, and cybernetics, vol. 27(2),1997. [19] S.C. Kremer: On the computational power of Elman-style recurrent networks, IEEE Transactions on Neural Networks, vol. 6(4), 1995.