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