Modellistica e controllo dei sistemi ambientali
DATA MINING IN TIME SERIES
01 Dicembre 2009
Dott. Ing. Roberto Di Salvo
Dipartimento di Ingegneria Elettrica Elettronica e dei Sistemi
Anno Accademico 2009 - 2010
Data Mining in Time series - Data mining
Il concetto di DATA MINING
Il data mining ha per oggetto l’estrazione di un sapere o di una conoscenza a
partire da grandi quantità di dati
Lo scopo del data mining è:
l’estrazione di informazione implicita, nascosta nei dati già strutturati, per
renderla disponibile e direttamente utilizzabile;
l’esplorazione e l’analisi, eseguita in modo automatico o semiautomatico, su
grandi quantità di dati allo scopo di scoprire pattern significativi.
L’identificazione di pattern si riferisce all’apprendimento, da parte del sistema di
data mining, di una relazione causale tra i dati precedentemente ignota (che
qualche volta possono risultare inesistenti)
L’applicazione di tecniche di pattern recognition trova spazio nell’ambito
dell’intelligenza artificiale attraverso lo sviluppo di algoritmi di clustering, reti
neurali e alberi di decisione
Data Mining in Time-series - Time series Database
DATABASE di serie temporali
Un Time Series Database (TSDB) rappresenta una collezione di dati (serie
temporali) in cui assume un aspetto fondamentale la variabile “tempo”
Le serie temporali esprimono la dinamica di un certo fenomeno nel tempo e
vengono studiate sia per interpretare un fenomeno, individuando componenti di
trend, di ciclicità, di stagionalità e/o di accidentalità, sia per prevedere il suo
andamento futuro
Nel contesto del data mining lo studio delle serie temporali permette di:
trovare la rappresentazione più efficiente relativa ai dati in oggetto;
effettuare misure di similarità tra serie temporali;
filtrare e analizzare i processi stocastici descritti dai dati;
clusterizzare e classificare i dati
Data Mining in Time-series - Features Extraction/Selection
Features Extraction Vs Selection
Uno dei task fondamentali è in genere quello di cercare di ridurre la dimensione
delle informazioni definendo le caratteristiche salienti dei dati attraverso un
“features extractor”:
Pro: un minor numero di caratteristiche semplifica la rappresentazione dei
pattern di interesse, nonché il classificatore su esso;
Contro: perdita del contenuto informativo e minore accuratezza sul sistema di
riconoscimento finale
Tecniche di Features Selection: permettono di selezionare il miglior subset a
partire dall’insieme di features iniziale
Tecniche di Features Extraction: permettono di creare un nuovo set di dati
basato sulla trasformazione e combinazione dell’insieme di features iniziali
I due metodi in letteratura vengono utilizzati in modo intercambiabile, ma in
base al dominio di applicazione, la “features extraction” generalmente precede la
“features selection”
Data Mining in Time-series - Features Selection
Principal Component Analysis (1/2)
L’analisi alle componenti principali (PCA) è una tecnica di estrazione di features
che si basa sul criterio dell’errore quadratico medio
È una tecnica non supervisionata, e non è quindi espressamente finalizzata ad
ottimizzare l’accuratezza in un problema di classificazione
È un approccio classico alla riduzione della dimensionalità ed alla
separazione di sorgenti per ottenere un insieme di dati in cui vengano messe in
evidenza solo le caratteristiche salienti degli oggetti analizzati
Operativamente la PCA prevede di:
Stimare la media μ e la matrice di covarianza Σ in termini di media-campione e
covarianza-campione del data set;
Calcolare gli autovalori della covarianza-campione ed i corrispondenti
autovettori;
Ordinare gli autovalori in ordine decrescente;
Costruire la matrice di trasformazione T giustapponendo per righe gli
autovettori
Data Mining in Time-series - Features Selection
Principal Component Analysis (2/2)
Giustapponendo solo i primi m<n autovettori in T si costruisce una
trasformazione dallo spazio delle features originali ad uno spazio di dimensione
minore (pari ad m)
In tal caso T è una matrice rettangolare (m x n) e la PCA proietta un campione
incognito sul sottospazio generato dalla base ortonormale {e1, e2, …, em},
operando una riduzione di features
Intuitivamente, l’uso di PCA per riduzione di features si basa sull’ipotesi che
l’informazione di interesse sia contenuta nella varianza dei dati e pertanto
rappresenta la riduzione di features lineare ottima rispetto al criterio dell’errore
quadratico medio
Data Mining in Time-series - Features Extraction
Algoritmi di segmentazione (1/5)
Esempio di features extraction applicato a serie temporali di qualsiasi natura
Permettono di generare serie temporali con un minor numero di campioni
rispetto a quello iniziale, mantenendo l’informazione relativa al trend
Per ottenere una rappresentazione dei dati che rimanga fedele a quella iniziale, è
possibile utilizzare la tecnica denominata Piecewise Linear Representation
(PLR) che consiste nell’approssimazione di una serie temporale ‘T’ di lunghezza
‘n’ con ‘K’ segmenti
‘K’ è generalmente molto minore di ‘n’ in modo che la nuova rappresentazione
risulti efficiente relativamente alla memorizzazione, trasmissione ed
elaborazione dei dati
La classe di algoritmi che data in ingresso una serie temporale forniscono in
uscita una PLR, prendono il nome di “segmentation algorithm”
Data Mining in Time-series - Features Extraction
Algoritmi di segmentazione (2/5)
L’obiettivo della segmentazione è quello di organizzare le serie temporali in
piccoli intervalli aventi caratteristiche uniformi (flatness, linearity, monotonic…)
Questo tipo di algoritmi risultano utili nell’analisi multivariata di serie temporali
acquisite a differenti frequenze di campionamento
In letteratura esistono diversi approcci relativi alla segmentazione di serie
temporali: le due principali famiglie sono “off-line” e “on-line” algorithms
OFF-LINE: lavorano con una soglia di errore fissata nota a priori
ON-LINE: lavorano con una soglia di errore dinamica che cambia durante
l’esecuzione dell’algoritmo seguendo un criterio specifico
Gli algoritmi off-line sono più semplici da realizzare ma molto meno efficienti
rispetto a quelli on-line
Data Mining in Time-series - Features Extraction
Algoritmi di segmentazione (3/5)
Per determinare come disegnare i segmenti che meglio approssimano la serie
temporale di partenza, è possibile scegliere tra due approcci:
Interpolazione lineare: il segmento per
l’intervallo T[a,b] è semplicemente la
linea che collega ta con tb
Regressione lineare: il segmento per
l’intervallo T[a,b] è preso come miglior
linea nel senso di minimi quadrati.
La migliore rappresentazione grafica accoppiata alla basso sforzo computazione
fa sì che l’interpolazione lineare sia ritenuta la tecnica migliore, anche se dal
punto di vista dell’approssimazione risulta più funzionale la regressione lineare
Data Mining in Time-series - Features Extraction
Algoritmi di segmentazione (4/5)
Algoritmo TOP-DOWN (off-line): la serie temporale viene ricorsivamente
divisa in due fin quando la condizione di arresto non viene raggiunta
Algoritmo BOTTOM-UP (off-line): partendo dalla migliore approssimazione
possibile, i segmenti vengono uniti fino a quando alcune condizioni di arresto
non vengono raggiunte
Algoritmo SLIDING WINDOWS (on-line): un segmento si prolunga fin
quando non si supera un errore di soglia. Il processo si ripete con il punto
successivo non incluso nel segmento creato
(*)Algoritmo
SWAB (misto): mantiene un buffer di dimensioni ‘w’ scelto
inizialmente in modo che possa contenere 5/6 segmenti. In seguito viene
applicato l’algoritmo bottom-up ai dati del buffer e una funzione “best_line”
che si basa sul metodo sliding windows
Data Mining in Time-series - Features Extraction
Algoritmi di segmentazione (5/5)
Esempio di applicazione dell’algoritmo SLIDING WINDOWS (on-line)
Data Mining in Time-series - Statistica multivariata
Analisi statistica multivariata
L’analisi statistica multivariata comprende un insieme di metodologie che
permettono di analizzare simultaneamente misurazioni riguardanti diverse
caratteristiche, sia qualitative che quantitative, di un insieme di oggetti
Gli obiettivi principali degli strumenti di analisi multivariata sono:
sintesi delle osservazioni, ovvero semplificazione della loro struttura (riduzione
del numero delle variabili) ;
ordinamento e nel raggruppamento (classificazione) di osservazioni;
studio delle interdipendenze tra le variabili;
formulazione e verifica di ipotesi operative.
Le diverse tecniche di analisi multivariata possono essere distinte in:
metodi esplorativi, che partono dal presupposto che “il modello deve seguire i dati,
non viceversa” (analisi a carattere intuitivo);
approccio confermativo, per il quale la verifica dell’esistenza di assunzioni
effettuate prima ancora della rilevazione dei dati, viene condotta sulla base di
metodi statistici (analisi a carattere sperimentale)
Data Mining in Time-series - Statistica multivariata
Clustering Vs Classification
In termini statistici per classificazione si intende l’insieme delle attività di cui si
serve un certo algoritmo, per individuare le caratteristiche di una entità da
classificare
Agli elementi che vengono classificati viene in genere associata un’etichetta che
ne identifica l’appartenenza ad una determinata classe di oggetti
Tra le tecniche di classificazione più note, quelle appartenenti alla famiglia di
sistemi per la sintesi di nuova conoscenza, sono:
reti neurali artificiali
Support Vector Machine (SVM)
classificatore Bayesiano
Con il termine clustering si intende invece l’analisi multivariata dei dati volta
alla selezione e al raggruppamento di elementi omogenei in un insieme di dati,
basandosi sul concetto di distanza tra due elementi
Data Mining in Time-series - Statistica multivariata
Self
-Organized Map (SOM) (1/5)
Self-Organized
Reti neurali artificiali appartenenti alla categoria con apprendimento NON
supervisionato (si considerano solo i dati di input)
Scopo: clusterizzare gli elementi contenuti nel dataset iniziale
I cluster vengono disposti in un reticolo che mantiene la topologia dello spazio
degli ingressi:
gli ingressi “vicini” vengono raggruppati nello stesso cluster o in cluster vicini;
gli ingressi “lontani” vengono posti a maggiore distanza fisica sulla mappa.
Nell’ambito del data mining l’analisi SOM permette di mappare un insieme di
dati K-dimensionale in uno spazio di dimensione ridotta
Data Mining in Time-series - Statistica multivariata
Self
-Organized Map (SOM) (2/5)
Self-Organized
Una SOM è rappresentata da una griglia regolare in cui a ogni NODO è
associato un vettore di pesi di dimensione K (come per le dimensioni dei vettori
di input
Il vettore dei pesi associati ai nodi della SOM possono essere:
valori random compresi nell’intervallo [min(xi), max(xi)] in modo uniforme;
linearmente con autovalori e autovettori della matrice di covarianza associata ai
dati
ordinamento e nel raggruppamento (classificazione) di osservazioni;
studio delle interdipendenze tra le variabili;
formulazione e verifica di ipotesi operative.
Ogni neurone (nodo) è collegato a tutti quelli adiacenti secondo una funzione di
vicinanza (closeness function)
Data Mining in Time-series - Statistica multivariata
Self
-Organized Map (SOM) (3/5)
Self-Organized
Durante la fase di training ogni nodo della mappa viene esaminato per calcolare
quale dei suoi pesi è più simile al vettore di input. Il nodo vincitore è noto in
genere con il nome di BMU (Best Matching Unit)
SOM Grid
SOM Training
Size X
Size Y
wij
x1
x2 ……... xn
Features from time series vertical exploration
Data Mining in Time-series - Statistica multivariata
Self
-Organized Map (SOM) (4/5): U
-Matrix
Self-Organized
U-Matrix
La U-Matrix rappresenta uno strumento associato all’uso delle SOM che
permette un’ispezione visuale della mappa
In essa viene mostrata la distanza tra le varie unità
nella mappa, fornendo una struttura a cluster
I valori più alti della U-Matrix indicano il bordo di
un cluster, mentre le aree uniformi (valori più
bassi) indicano il cluster stesso
Nota: la U-Matrix consente solo un’ispezione
visuale della mappa, ma è possibile utilizzare
metodi automatici per quantificare il numero di
clusters nella SOM
Data Mining in Time-series - Statistica multivariata
Self
-Organized Map (SOM) (5/5): KK-Mean
-Mean
Self-Organized
È un semplice algoritmo di apprendimento non supervisionato per risolvere
problemi di clustering (il numero di clusters viene fissato a priori)
Per ogni cluster viene calcolato un nodo centroide il quale deve essere il più
lontano possibile dagli altri nodi
A partire da questa prima clusterizzazione, l’algoritmo iterativamente calcola
questi centroidi ripartizionando conseguentemente gli ingressi
L’algoritmo di ferma quando i centroidi non sono più soggetti ad alcuno
spostamento, oppure calcolando un certo indice di performance il cui valore
più basso indica la migliore clusterizzazione (“Davies Boulding” index)
Svantaggi:
non si raggiunge l’ottimo globale
scelta del numero di clusters da trovare
Data Mining in Time-series - Statistica multivariata
Discriminant Analysis (1/2)
Per Analisi Discriminante si intende un corpo di metodologie che,
considerando un universo campionario k-dimensionale X suddiviso in p
sottopopolazioni {X1, …, Xp}, permettono di assegnare una generica
osservazione x ad una delle p sottopopolazioni
Scopo: individuare la sottopopolazione di appartenenza di un’osservazione
multidimensionale, in base alla conoscenza del comportamento delle diverse
sottopopolazioni
Il classificatore si sviluppa a partire dal dataset, suddividendo i dati risponibili in:
pattern di learning: maggior numero di informazioni
pattern di test: informazioni per testare l’accuratezza del classificatore
L’analisi discriminante lineare è quindi un metodo in cui bisogna identificare,
secondo una procedura appropriata, dei parametri con i quali costruire la soglia
di discriminazione per poter poi effettuare la classificazione
Data Mining in Time-series - Statistica multivariata
Discriminant Analysis (2/2): KK-Fold
-Fold
Per stimare il rischio atteso in presenza di un considerevole numero di dati è
possibile utilizzare la cross-validation con il metodo K-fold
Assumendo di avere a disposizione gli N dati etichettati (osservazioni), questi
vengono divisi in K insiemi di dimensione più o meno equivalente:
K-1 insiemi vengono usati come training set (o learning);
l’insieme rimanente viene utilizzato per calcolare l’errore di predizione;
L’operazione viene ripetuta lasciando fuori ogni sottoinsieme k (con k = 1, 2,
…, K) e la stima del rischio finale si ottiene combinando le k stime intermedie
Scelta del valore di K:
se troppo grande (vicino al valore di N) ci si avvicina allo stimatore ottimale, ma
si ottengono K training set molto simili
se piccolo si ottiene una buona stabilità al variare del learning set e con N molto
grande si avranno a disposizione tanti dati da cui imparare
Data Mining in Time-series - Statistica multivariata
Esempio SHORT TERM (Progetto Flank
Flank))
Multivariate time series analysis by
segmentation and Self-Organized Maps on data
recorded at Mt. Etna during 1996 - 2003
Fine prima parte
Modellistica e controllo dei sistemi ambientali
STATISTICAL ANALYSIS ON
GEOPHYSICAL DATABASE
01 Dicembre 2009
Dott. Ing. Roberto Di Salvo
Dipartimento di Ingegneria Elettrica Elettronica e dei Sistemi
Anno Accademico 2009 - 2010
Statistical Analysis on Geophysical Database - Cataloghi
Catalogo eruttivo (1/3)
Il dataset relativo alle informazioni sulle eruzioni avvenute sull’Etna dal 1600 ai
giorni nostri, è stato realizzato basandosi sul corrispondente catalogo disponibile
finora solo in formato cartaceo
Tecniche di data mining per l’estrazione di nuove conoscenze dai dati
disponibili
Statistical Analysis on Geophysical Database - Cataloghi
Catalogo eruttivo (2/3)
Il modello logico-relazionale implementato comprende una serie di tabelle
collegate tra loro in base ai seguenti criteri:
la tabella delle eruzioni contiene le informazioni relative all’inizio e alla fine di
ciascuna eruzione insieme ai dati sulla localizzazione delle bocche, i volumi emessi,
l’area ricoperta dal magma eruttato e la descrizione dell’evento svipluppatosi
la classe delle eruzioni identifica le modalità con cui si è sviluppata l’evento
associato
il tipo delle eruzioni indica invece se l’eruzione si è sviluppata centralmente o
lateralmente
Le relazioni tra le tabelle sono tutte N - N, poiché una o più eruzioni possono
appartenere a una o più classi o tipologia e viceversa
L’uso delle informazioni contenute in questo catalogo ha permesso di costruire
un ulteriore dataset relativo solamente alle eruzioni di fianco che viene mostrato
di seguito
Statistical Analysis on Geophysical Database - Cataloghi
Catalogo eruttivo (3/3): Flank Eruption (dal 1832)
Distribuzione delle bocche
principali nei relativi settori
S4
S5
S3
Sector
Percentage
S1
27,5%
S2
15%
S3
10%
S4
15%
S5
12,5%
S6
5%
S6
S2
S1
Statistical Analysis on Geophysical Database - Cataloghi
Catalogo macro
-sismico (1/2)
macro-sismico
La frequente sismicità dell’area etnea è eccezionalmente documentata da
un’ampia base di dati storici che a partire dal 1800 forniscono con continuità e
dovizia di particolari i fenomeni sismici e vulcanici all’Etna
Il Catalogo Parametrico dei Terremoti Etnei definisce un quadro completo
ed omogeneo sulla sismicità locale negli ultimi 176 anni
Il catalogo, nella versione aggiornata dal 1832 al 2008, riporta 1790 terremoti
suddivisi in eventi principali e repliche, dei quali 200 al di sopra della soglia del
danno
È a partire da questo set di dati che si rende possibile lo studio delle sequenze
sismiche anche in relazione alle diverse fasi di attività vulcanica e dei meccanismi
di rilascio sismico delle faglie attive che attraversano le aree urbanizzate
Statistical Analysis on Geophysical Database - Cataloghi
Catalogo macro
-sismico (2/2)
macro-sismico
Ogni terremoto è riportato con i seguenti parametri:
localizzazione ed intensità epicentrale;
magnitudo macrosismica;
classe di qualità del dato macrosismico e, ove possibile, struttura
sismogenetica cui è associato;
magnitudo e profondità strumentali (dal 1970).
Statistical Analysis on Geophysical Database - Cataloghi
Relazione tra attivit
à sismica ed eruttiva
attività
L’Etna costituisce uno dei più importanti laboratori di ricerca naturali poiché la
nella sua struttura vi è la combinazione degli effetti:
delle tettoniche regionali relative all’interazione della placca africana con quella
euro-asiatica;
dello stress transiente locale dovuto ai movimenti del magma;
dello stress gravitazionale dovuto alla forma e alla dimensione dell’edificio
vulcanico
La sismicità che si sviluppa sull’Etna può essere studiata per identificare e
discriminare pattern sismici che posso fungere da precursori di eruzioni e
viceversa
La scoperta di queste relazioni rappresenta una sfida per un numero sempre più
alto di scienziati e i ricercatori
Esistono molteplici soluzioni a questo tipo di problema: l’uso di tecniche di
pattern recognition può essere utile in questo senso
Statistical Analysis on Geophysical Database - Methods
Hypothesis Testing (1/2)
É un metodo per prendere decisioni statistiche utilizzando dati sperimentali: un
risultato è ritenuto significativo se è improbabile che accada per caso
L’Hypothesis Testing è una tecnica nota anche come “analisi dei dati
confermativa” e si basa sul concetto di test ad ipotesi nulla (null-hypothesis test)
Assumendo che l’ipotesi nulla sia vera, qual è
la probabilità di osservare un valore del test
statistico che sia estremo almeno tanto quanto
il valore che era stato in realtà osservato?
L’Hypothesis Testing viene utilizzata per decidere se i risultati sperimentali
contengono sufficienti informazioni per togliere ogni dubbio sul significato dei
dati
Statistical Analysis on Geophysical Database - Methods
Hypothesis Testing (2/2)
L’Hypothesis Testing è definita dalla seguente procedura generale:
Il primo passo è quello di definire le ipotesi “null” e “alternative” da testare;
Il secondo passo è quello di considerare le assunzioni da fare durante il test (ad
esempio sulla distribuzione delle osservazioni)
Effettuare il test statistico: la distribuzione di una qualche statistica sotto l’ipotesi
nulla può essere derivata dalle assunzioni. Nei casi standard questo sarà un
risultato noto;
Confrontare il test statistico (S) con i valori critici rilevanti (CV) (ottenuti dalle
tabelle nei casi standard);
Decidere se non scartare l’ipotesi “null” o scartarla a favore dell’ipotesi
“alternative”: la regola di decisione scartare l’ipotesi “null” se S > CV e viceversa
(*)
Mean Hypothesis Testing (MHT) rappresenta un test statistico basato
sull’utilizzo della media come misura del comportamento di una classe e viene
applicato per trovare quelle misure che sono statisticamente differenti nel
confronto tra due classi di oggetti
Statistical Analysis on Geophysical Database - Methods
Decision Trees (1/2)
Gli Alberi di decisione costituiscono il modo più semplice di classificare degli
oggetti in un numero finito di classi
Vengono costruiti suddividendo ripetutamente i records in sottoinsiemi
omogenei rispetto ad una “variabile risposta”
La suddivisione produce una gerarchia ad albero, dove i sottoinsiemi (di
records) vengono chiamati “nodi” e quelli finali “foglie”
I nodi sono etichettati con il nume degli attributi, gli archi (i rami dell’albero)
con i possibili valori dell’attributo sovrastante e le foglie con le differenti
modalità dell’attributo classe che descrivono le classi di appartenenza
Un oggetto è classificato seguendo un
percorso lungo l’albero che porti dalla radice
ad una foglia
Statistical Analysis on Geophysical Database - Methods
Decision Trees (2/2)
Esiste un’importante differenza nella famiglia degli alberi di decisione:
Alberi usati per predire variabili categoriali, noti come alberi di
classificazione;
Alberi usati per predire variabili di tipo continuo, noti come alberi di
regressione
La struttura di un albero di decisione può diventare molto complicata in
presenza di database contenenti un alto numero di attributi ed una variabile
risposta con differenti classi
Per evitare che l’albero diventi non interpretabile, è opportuno utilizzare dei
criteri di controllo che limitino lo splitting dei nodi e il pruning (nascita di
sottoalberi)
(*) Entropic Decision Tree (EDT) è un metodo statistico per determinare
quali attributi sono maggiormente significativi per discriminare classi di
comportamento diverse, basandosi sul concetto di entropia (Shannon, 1949)
Data Mining in Time-series - Statistica multivariata
Esempio LONG TERM (Progetto Flank
Flank))
Relationships between flank dynamics, eruptive
and seismic activity and
geophysics/geochemistry data
Fine seconda parte