All. 1 RELAZIONE ANNUALE CONSUNTIVA PROGRAMMA DI RICERCA SETTORE SOCIETÀ DELL’INFORMAZIONE Progetto SP2 Tecnologie per arricchire e fornire accesso a contenuti Responsabile U.O. Domenico Talia 1. Introduzione Linea e Tema di appartenenza: Azione 2 - Mine the Web Finanziamenti ottenuti per l’anno di riferimento € 20985.00 Titolo della ricerca: Web mining, data mining, parallel algorithms, distributed knowledge discovery 2. Obiettivi previsti nell’anno di attività Gli obiettivi delle attività di ricerca dell’unità ICAR-CNR (già unità ISI) sono: La progettazione di tecniche di Web usage mining per il caching intelligente tramite algoritmi di Web caching che impiegano modelli predittivi degli accessi al Web. La progettazione, realizzazione e valutazione di algoritmi paralleli di data/web mining. Lo scopo è quello di costruire sistemi di data mining scalabili e paralleli per dati Web a larga scala in grado di manipolare sorgenti di dati di dimensioni fino ai Tera Byte. Il Web usage mining ha applicazioni significative nell’ambito della gestione dei siti Web, che variano dalla ristrutturazione adattiva fino all’ottimizzazione del traffico. Un obiettivo di questa attività di ricerca è lo sviluppo di algoritmi di Web caching che impiegano modelli predittivi degli accessi al Web; l’idea è quella di estendere la politica LRU (last recently used) dei Web e Proxy servers rendendola sensibile ai modelli di accesso ai Web estratti dai dati di log mediante tecniche di analisi di data mining. Si studiano due approcci: uno basato su regole di associazione e l’altro su alberi di decisione. I risultati sperimentali dei nuovi algoritmi mostrano miglioramenti sostanziali rispetto alle tecniche tradizionali di caching, in termini di documenti Web direttamente rinvenuti nella cache (hit rate). Inoltre nell’ambito del progetto l’unità ISI intendeva occuparsi della progettazione di algoritmi paralleli di data/web mining. La crescita esponenziale dei documenti presenti nel Web comporta la necessità di individuare soluzioni altamente scalabili ed efficienti per la realizzazione delle Web Search Engine (WSE). Questo è particolarmente vero se viene adottato un modello di IR che prevede la raccolta centralizzata delle informazioni per l’indicizzazione e la ricerca. Oltre alla riduzione della latenza delle fasi di recupero ed indicizzazione dei documenti tramite parallelizzazione e distribuzione, il sistema di gestione delle interrogazioni deve essere altamente distribuito in modo da garantire espandibilità, affidabilità e soprattutto throughput elevato. Le esigenze di parallelizzare gli algoritmi di DM per diminuirne i tempi di risposta sono ben noti. L’approccio che si intendeva perseguire in questa ricerca riguardava lo studio di nuovi algoritmi di DM che sfruttassero tecniche implementative efficienti per ridurre l'impatto dell'I/O sulle prestazioni, e che tenessero conto delle nuove problematiche introdotte dallo sfruttamento PAAS Schema consuntiva U.O. RG All. 1 di testbed paralleli commodity. Lo scopo finale era quello di costruire dimostratori di DM per dati Web a larga scala e paralleli in grado di manipolare sorgenti di dati di dimensioni fino ai Tera Byte. 3. Risultati ottenuti Nel primo anno di attività. gli obiettivi specifici del progetto erano stati armonizzati in un macroobiettivo generale, comune a tutti i partecipanti dell'azione 2. A questo proposito, erano stati individuati quattro tasks principali, indicati come "best Practices" del progetto. Queste includevano un DMQL per la definizione di processi di mining, Crawling Parallelo, Indicizzazione e compressione di documenti testuali, Web Usage e Content Mining, XML Mining. In questi ambiti, erano state individuate delle applicazioni guida. In questo secondo anno di attività l?ICAR-CNR ha consolidato i precedenti contributi sullo studio di DMQL per processi di mining [3,8], e si è concentrato principalmente su alcune applicazioni specifica: Web Usage Mining, e mining di documenti XML. In particolare, il contributo dell’ICAR-CNR è stato rivolto sia allo sviluppo di algoritmi e tecniche innovativi per le problematiche esposte, sia alla definizione di infrastrutture del Web Object-Store per incapsulare tali algoritmi. In particolare, per alcune delle tecniche studiate ne è stata studiata una realizzazione nel Web Object Store, con il duplice obiettivo di valutare l’efficacia del Web Object Store come strumento di ausilio allo sviluppo di applicazioni di Web Mining, e per estendere i contenuti dello stesso con algoritmi High-level. In seguito sono dettagliati i contributi su ognuna delle applicazioni sopra descritte: Web Usage Mining. L’ambito applicativo studiato il primo anno di attività era l’applicazione di tecniche di Web Usage Mining al problema del caching intelligente di pagine Web. L’applicabilità di alcune delle tecniche investigate è stata estesa in quest’anno al problema della personalizzazione. A questo proposito, si è studiato come la combinazione di informazioni di Content, Usage e Structure permettano la definizione di tecniche estremamente efficaci nel campo della personalizzazione [4,11]. In particolare, il contributo dato in quest’ambito è stato: Un nuovo schema di clustering per partizionare le sessioni di navigazione degli utenti in gruppi di transazioni simili, che permettano di scoprire e modellare il comportamento navigazionale di un insieme di utenti in termini di medoidi generalizzati (ovvero, patterns sequenziali che occorrono frequentemente nei clusters). Un nuovo approccio al calcolo della similarità tra transazioni. Tale approccio, originariamente concepito nell’ambito applicativo del Web Caching (e dimostratosi efficace anche in ambito di personalizzazione), prevede di considerare i contesti delle pagine per definire la topologia delle sequenze navigazionali. Una nozione originale di similarità tra pagine Web, che consideri la prossimità di pagine come il risultato sia di similarità di contenuti che di similarità d’uso. Più in generale, la combinazione di tecniche di analisi di content, usage e structure è stata studiata estensivamente in un caso applicativo: l’erogazione personalizzata di Usenet news [10]. Il focus in quest’ambito applicativo è stato in una prospettiva di ottimizzazione: l’adattamento della conoscenza estratta alle richieste, gli interessi e le aspettative degli utenti del servizio, con PAAS Schema consuntiva U.O. RG All. 1 l’obiettivo di ampliare la loro esperienza navigazionale. L’analisi a portato a nuove tecniche per la gestione di news articles, la ristrutturazione di threads di Usenet in comunità di articoli correlati, tale da favorire un reperimento più efficace da parte dell’utente dell’informazione desiderata, il miglioramento dell’accessibilità agli articoli. Data mining di documenti XML. Nel primo anno era stata studiata una tecnica di similarità strutturale tra documenti XML particolarmente innovativa [1]. Un primo contributo in quest’ambito è stato il consolidamento della tecnica e lo sviluppo di un prototipo che implementa tale tecnica. Inoltre, è stata studiata l’applicabilità della tecnica al caso di documenti HTML per l’analisi della loro struttura [2,7]. In quest’ambito, è stata proposta un’architettura che combina crawling e information extraction di pagine Web. In tale architettura, il ruolo principale è ricoperto da un classificatore distance-based che accomuna pagine con struttura simile da cui quindi è più facile estrarre informazioni. Il classificatore fa uso di una rappresentazione di un documento XML/HTML come serie temporale. L’analisi delle frequenze della serie permette di stabilire, in maniera estremamente efficace, le similarità e differenze tra segnali che rappresentano differenti documenti. Un secondo aspetto nel quale l’ICAR-CNR ha concentrato la sua attenzione è l’analisi di tecniche di Clustering per l'estrazione di informazione significativa dai documenti XML [5,6]. La tecnica messa a punto in quest’ambito si basa sulla nozione di “rappresentante” XML che può essere definito come un documento XML prototipo che riassume le caratteristiche strutturali di un insieme di documenti XML. Il clustering è una tecnica di analisi di dati volta alla selezione e raggruppamento di elementi omogenei in insiemi detti cluster e basata sulle relazioni esistenti fra i dati. Ad ogni cluster è associato il “rappresentante” dei documenti che contiene. Il processo di clustering gerarchico avviene, fondamentalmente, confrontando i “rappresentanti” dei vari cluster. L’intuizione principale, sulla quale si fonda l’approccio, risiede nella constatazione che un adeguato “rappresentante” possa essere ottenuto come il risultato di un’opportuna sovrapposizione di tutti i documenti contenuti all’interno del cluster, in modo tale che il rappresentante conservi le caratteristiche strutturali comuni ed, allo stesso tempo, sia una rappresentazione compatta. La nozione di “rappresentante” così proposta risulta molto utile nel contesto applicativo preso in considerazione: la valutazione efficiente di espressioni XPath su una repository di documenti. Un prototipo preliminare è stato sviluppato e presentato all’Industrial Day tenutosi a Roma nel giugno 2004. Studio, definizione ed implementazione di tecniche di data mining parallele. La disponibilità di grosse moli di dati ha portato negli ultimi anni ad un crescente interesse nell’ analisi e realizzazione di tecniche di data mining su architetture parallele e nel cercare proprietà in un ambiente con dati e computazione distribuite. Tipicamente gli algoritmi di data mining distribuito fanno una analisi locale dei dati, a cui segue la generazione di un modello globale attraverso la aggregazione dei risultati locali. Esistono varie tecniche per combinare modelli multipli dei dati generati con lo stesso o differenti metodi. Una prima proposta, nota col nome di bagging (bootstrap aggregating) viene dalla statistica e si basa sulla costruzione di bags di dati della stessa grandezza del training set applicando campionamento random con sostituzione. Ogni bag è creato campionando uniformemente le istanze del training set. Questo significa che ogni tupla PAAS Schema consuntiva U.O. RG All. 1 potrebbe comparire più di una volta in ogni bag mentre altre potrebbero essere assenti. A questo punto un certo numero k di classificatori è generato utilizzando come istanze su cui addestrarsi i vari bag, ed un classificatore finale viene ottenuto combinando i k classificatori applicando una regola di voto per la predizione delle nuove tuple. Breiman stesso ha suggerito che, quando il data set è troppo grande da essere memorizzato in memoria centrale, si potrebbero partizionare i dati in piccoli pezzi e costruire un predittore su ogni pezzo, quindi fondere i vari predittori insieme. Sono state studiate altre tecniche più complesse, quali il boosting che cambia adattativamente la distribuzione del campione in base alla difficoltà di classificare una tupla. Bagging, boosting e varianti sono state studiate e confrontate ed è stato mostrato che esse migliorano l’accuratezza di classificazione. In questo ambito l’unità ICAR-CNR ha realizzato una implementazione parallela della tecnica di bagging in cui, supponendo di avere a disposizione un certo numero p di processori, una certa frazione del data set viene distribuita sui p processori e, su ognuno viene addestrato un classificatore considerando solo i dati locali a disposizione. Quindi i vari classificatori sono scambiati tra i nodi in modo che ognuno abbia a disposizione un ensemble di classificatori. Infine viene applicata un semplice politica di voting a maggioranza per classificare le tuple del test set. Sono stati fatti una serie di esperimenti su alcuni data set ben noti in letteratura supponendo di utilizzare un numero variabile di processori, in particolare 5, 10 15 e considerando su ogni nodo il 5, 10 20 e 50% di tutto il data set. Gli esperimenti hanno mostrato che utilizzando solo un sottoinsieme del data set è possibile ottenere un’accuratezza comparabile con quella che si ha usando l’intero data set. Una descrizione dell’implementazione dell’algoritmo e dei risultati sperimentali si trova in [12] 4. Prodotti della ricerca I prototipi sviluppati dall’unità ICAR-CNR nell’ambito del progetto sono essenzialmente: Deployment del tool Xdist per il calcolo della similarità strutturale di documenti XML. Il tool è stato sviluppato in Java, apportando le migliorie descritte nella pubblicazione [1]. Un sistema di indicizzazione di dati XML basato sull’algoritmo XRep descritto nel lavoro [3]. Il tool è stato sviluppato in Java, e supporta la valutazione di espressioni XPath su un insieme di documenti XML. La valutazione sfruttando la clusterizzazione dei dati. 5. Pubblicazioni: [1] [2] [3] [4] [5] Sergio Flesca, Giuseppe Manco, Elio Masciari, Luigi Pontieri, Andrea Pugliese, Fast Detection of XML Structural similarity, IEEE Trans. Knowl. Data Eng., to appear. Sergio Flesca, Giuseppe Manco, Elio Masciari, Luigi Pontieri, Andrea Pugliese, Structural Document Similarity for integrated Crawling and Wrapping, Rapporto Tecnico ICAR-CNR. Fosca Giannotti, Giuseppe Manco, Franco Turini: Towards a Logic Query Language for Data Mining. Database Support for Data Mining Applications 2004: 76-94 Eugenio Cesario, Francesco Folino, Riccardo Ortale: Putting Enhanced Hypermedia Personalization into Practice via Web Mining. DEXA 2004: 947-956 Gianni Costa, Giuseppe Manco, Riccardo Ortale, Andrea Tagarelli: A Tree-Based Approach to Clustering XML Documents by Structure. PKDD 2004: 137-148 PAAS Schema consuntiva U.O. RG All. 1 [6] Gianni Costa, Giuseppe Manco, Riccardo Ortale, Andrea Tagarelli: Clustering of XML Documents by Structure based on Tree Matching and Merging. SEBD 2004: 314-325 [7] Sergio Flesca, Giuseppe Manco, Elio Masciari: Web wrapper induction: a brief survey. AI Commun. 17(2): 57-61 (2004) [8] Fosca Giannotti, Giuseppe Manco, Franco Turini: Specifying Mining Algorithms with Iterative User-Defined Aggregates. IEEE Trans. Knowl. Data Eng. 16(10): 1232-1246 (2004) [9] Giuseppe Manco, Clara Pizzuti, Domenico Talia: Eureka!: an interactive and visual knowledge discovery tool. J. Vis. Lang. Comput. 15(1): 1-35 (2004) [10] Giuseppe Manco, Andrea Tagarelli, Providing Personalized Access to Usenet Sites through Web Mining, in A. Scime, editor, “Web Mining: Applications and Techniques”, 2004. [11] Riccardo Ortale, Web Mining for Personalization, Ph.D. Thesis, Università della Calabria, 2004. [12] Simona Benigno, Clara Pizzuti, Domenico Talia, Implementazione parallela della tecnica di bagging, RT 2004/16 ICAR-CNR. PAAS Schema consuntiva U.O. RG