Knowledge Discovery e Data Mining interessi di ricerca, risultati e progetti Salvatore Orlando Alessandra Raffaetà Data Mining Motivazioni: Evoluzione delle tecnologie per la raccolta e la memorizzazione dei dati Lettori di codici a barre, scanner, foto digitali, ecc. Database Relazioni, Data warehouses, altri repository Disponibilità di enormi sorgenti di dati: Terrorbytes! I dati contengono molte informazioni nascoste Pattern frequenti, regole ricorrenti, modelli di conoscenza, ecc. Nuove conoscenze valide, e potenzialmente utili Data Mining ovvero tecnologie e strumenti per l estrazione di conoscenza da grandi basi di dati in modo semi-automatico
KDD: Knowledge Discovery in Databases Data mining: il cuore del processo di KDD Pattern Evaluation Task-relevant Data Data Mining Data Warehouse Selection Data Cleaning Data Integration Databases KDD come confluenza di molte discipline
Il processo di analisi usando strumenti di Data Mining Discovery-driven Il computer setaccia milioni di ipotesi e presenta solo le più interessanti/valide all analista Differente dal tipico metodo statistico verification-driven, basato sul campionamento dei dati e sulla verifica di ipotesi fornite dall analista Esempio : A partire dai dati relativi ad un gran numero di clienti che hanno trasferito il proprio conto su una banca concorrente identifica le caratteristiche più importanti dei clienti che sono correlati strettamente (modello di conoscenza). Usando tali caratteristiche, classifica il resto dei clienti e valuta quanto fortemente sono correlati al gruppo campione. Market Basket Analysis Market-Basket Transactional database TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke Esempio di regola associativa: Supporto = 60% Confidenza = 75%
Pattern sequenziali 10/01/2002 12/02/2002 23/12/2002 20/04/2002 10/11/2002 Database delle sequenze 16/05/2002 10/06/2002 Sequenza frequente estratta Classificazione age income student credit_rating buys_computer <=30 high no fair no <=30 high no excellent no 31 40 high no fair yes >40 medium no fair yes >40 low yes fair yes >40 low yes excellent no 31 40 low yes excellent yes <=30 medium no fair no <=30 low yes fair yes >40 medium yes fair yes <=30 medium yes excellent yes 31 40 medium no excellent yes 31 40 high yes fair yes >40 medium no excellent no Training data age? <=30 >40 student? YES 31..40 credit rating? Modello = Albero di decisione no yes excellent fair NO YES NO YES
Clustering Scopo: raggruppare oggetti/dati in cluster in modo da Massimizzare la similarità intra-cluster Minimizzare la similarità inter-cluster rispetto ad una certa metrica di similarità Dati originali (bidimensionali) Clusters Interessi di ricerca Alte Prestazioni Database enormi Limitazioni di memoria su computer sequenziali out-of-core passi multipli (e potenzialmente costosi) di I/O sui dati Scalabilità possibilità di gestire dati più grandi per aumentare l accuratezza della conoscenza acquisita ottenere risultati in meno tempo vantaggi competitivi se la conoscenza è usata per migliorare marketing o processi di business
Interessi di ricerca Sorgenti di dati stream Misure monitoraggio di reti Dettagli chiamate telefoniche Transazioni di acquisto in catene di distribuzione, transazioni ATM Record di log generati da Web Servers e Search Engines Dati raccolti da reti di sensori Dati relativi a traiettorie di oggetti mobili Caratteristiche delle applicazioni Grandi volumi di dati (terabytes) Record che giungono rapidamente e in burst Goal: Estrarre patterns, processare query e calcolare statistiche su stream in real-time Interessi di ricerca Stream multipli e distribuiti Ambienti distribuiti Dati collezionati da entità diverse, spesso appartenenti a organizzazioni differenti Problemi di eterogeneità dei dati Centralizzazione non possibile Comunicazioni eterogenee tra i partner, con vincoli di banda es., reti wireless Dati privacy sensitive Necessità di algoritmi distribuiti, ad accoppiamento lasco
Persone e Collaborazioni Knowledge Discovery e Data Mining Salvatore Orlando Claudio Silvestri (Post-Doc) Claudio Lucchese (PhD Student) Fernando Bras (PhD Student) Modelli per data warehouse Spazio Temporale, ragionamento logico su conoscenza Spazio Temporale Renzo Orsini Alessandra Raffaetà Alessandro Roncato Salvatore Orlando Fernando Bras (PhD Student) Grid Computing Salvatore Orlando Matteo Mordacchini (PhD Student) Francesco Lelli (PhD Student) Collaborazioni ISTI C.N.R./ Università - Pisa HPC Lab KDD Lab Università di Milano Università della Calabria e ICAR/C.N.R. Alcuni risultati Algoritmi per l estrazione di pattern frequenti e chiusi DCI, kdci, ParDCI, CCSM DCI_Closed AP interp e AP stream Applicazioni Web Usage Mining Query logs of Web Search Engines Web Server logs
DCI_Closed Pattern Chiusi e Frequenti Se {birra,patatine} sono acquistati sempre assieme al {latte} analista interessato solo a pattern e regole che contengono {birra,patatine,latte} Lucchese, Orlando, Perego. "Fast and Memory Efficient Mining of Frequent Closed Itemsets", IEEE Transactions on Knowledge and Data Engineering, Jan 2006 (Vol. 18, No. 1), pp. 21-36 AP interp e AP stream Estrazione di pattern frequenti da stream multipli distribuiti Un framework che combina AP stream e AP interp AP stream C. Silvestri, S. Orlando. Approximate Mining of Frequent Patterns on Streams. Int. Journal of Intelligent Data Analisys, IOS Press.
Analisi di Log dei Web Search Engine Caching dei risultati delle query Analysi delle query più frequenti Molte delle query riappaiono ciclicamente a grande distanza metodi di cache replacement LRU, basati solo su quanto recentemente è stata riferita una query, possono fallire Static cache + Prefetching SDC (Static & Dynamic Cache) Strategia di caching che cerca di sfruttare la località temporale e spaziale Query più frequenti memorizzate in una porzione statica e read-only della cache. Uso e confronto di diverse politiche dinamiche nella porzione dinamica Adaptive prefetching per migliorare l hit-ratio (spatiale sull insieme dei risultati) Fagni, Silvestri, Orlando, Perego. Boosting the Performance of Web Search Engines: Caching and Prefetching Query Results by Exploiting Historical Usage Data. ACM Trans. on Inf. Sys., To apper, 2006.
Analisi di Log dei Web Search Engine Migliorare le prestazioni di un Parallel WSE Term-Partitioned Index Indici relativi ad ogni termine t i sono assegnati completamente ad uno degli IR Core Per risolvere una query, solo gli IR Core responsabili per i termini della query devono essere interrogati Problema dell assegnamento dei termini agli IR Core cercare l assegnamento che migliora il tempo di completamento compromesso tra bilanciamento del carico tra gli IR Core incremento del numero di query risolte completamente da un singolo (pochi) IR Core, senza (con poco) overhead di comunicazione Analisi di Log dei Web Search Engine Migliorare le prestazioni di un Parallel WSE Analisi dei log con strumenti di mining per determinare correlazioni frequenti tra termini all interno delle query del log per inferire il carico medio generato da un certo assegnamento parziale di termini Algoritmo di ottimizzazione modificato (Bin Packing) che assegna sfruttando le conoscenze acquisite dalle analisi dei log altri query log sono usati poi per il testing dell assegnamento Lucchese, Orlando, Perego, Silvestri. Statistically Driven Term Partitioning to Enhance Performance of Parallel IR Systems. Submitted to ACM SIGIR 06.
PRIN 04/EU GeoPKDD GeoPKDD - Geographic Privacy-aware Knowledge Discovery and Delivery Partecipanti: S. Orlando, R. Orsini, A. Raffaetà, A. Roncato, F. Bras (PhD Student), C. Silvestri (Assegnista), C. Lucchese (PhD Student). Motivazioni: Nuove tecnologie hanno permesso di raccogliere una grande collezione di dati referenziati sia nello spazio che nel tempo Cellulari, GPS, altri dispositivi location-aware. Obiettivo: Teorie, tecniche e sistemi per la scoperta e presentazione di conoscenza da grandi sorgenti distribuite e streaming di dati geografici, referenziati sia nello spazio che nel tempo; nuovi metodi che garantiscano automaticamente la privacy. Scenario Aggregative Location-based services Bandwidth/Power optimization Mobile cells planning Traffic Management Accessibility of services Mobility evolution Urban planning. Telecommunication company (WIND) Privacy-aware Data mining interpretation visualization Public administration or business companies GeoKnowledge trajectory reconstruction p(x)=0.02 ST patterns warehouse Trajectories warehouse Privacy enforcement
Tematiche di ricerca Nuovi modelli per oggetti mobili Data warehouse per memorizzare le traiettorie degli oggetti mobili e relativi aggregati Clustering Nuovi metodi di data mining che preservino la privacy Nuovi metodi di data mining per dati distribuiti e streaming Ragionamento spaziotemporale, anche sulla base di conoscenza di dominio 60% 7% 20%? Classification 5% 8% Frequent pattern Modelli per traiettorie t Real trajectory of moving object: Traj: T R 2 t Route and trajectory reconstruction X Y t Sampling Y X X Y t [t 1,t 2 ] (x-x 1 )(t 2 -t 1 )-(x 2 -x 1 )(t-t 1 ) = 0
Data warehouse di traiettorie Data warehouse: è una raccolta di dati integrata, orientata ai soggetti, storica, con dati tipicamente aggregati e non volatile di supporto ai processi decisionali. Modello dei dati multidimensionale: Data Cube. Fatti, misure e dimensioni. Traiettorie arrivano in stream come triple: (ID, SpatialPos, TemporalPos). Come memorizzare tali dati all interno di un data warehouse? Necessità di discretizzare la dimensione spaziale e temporale. Quali sono le misure e le relative operazioni di aggregazione? Numero di oggetti Velocità Distanza percorsa