Titolo della ricerca: Web mining, data mining, parallel algorithms

annuncio pubblicitario
All. 1
RELAZIONE FINALE CONSUNTIVA
PROGRAMMA DI RICERCA SETTORE SOCIETÀ DELL’INFORMAZIONE
Progetto SP2 Tecnologie per arricchire e fornire accesso a contenuti
Responsabile U.O. Domenico Talia
 Linea e Tema di appartenenza: Azione 2 - Mine the Web
 Titolo della ricerca: Web mining, data mining, parallel algorithms, distributed knowledge
discovery
Obiettivo/i previsto/i:
Gli obiettivi delle attività di ricerca dell’unità ICAR-CNR (già unità ISI nella proposta di progetto)
erano:


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 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.
PAAS
Schema consuntiva U.O.
RG
All. 1
Riassunto dei risultati
L’unità ICAR-CNR (ex ISI-CNR) si è concentrata principalmente in tre contesti applicativi: Web
Usage Mining, Web Content/Structure mining e tecniche per la definizione e/o la valutazione di
algoritmi paralleli di data/web mining. Di seguito sono descritti i risultati principali conseguiti
dall’ICAR-CNR in seno al progetto.
Web Usage Mining.
Il punto di partenza della ricerca dell’ICAR è stato la progettazione di tecniche di Web usage mining
per il caching intelligente. A questo proposito, l’ICAR si è concentrato sull’utilizzo di tecniche di
clustering per la descrizione di modelli comportamentali da poter utilizzare per la definizione di
modelli predittivi per il caching. L’analisi in quest’ambito si è concentrata essenzialmente sul clustering
di dati ad altissima dimensionalità. I dati ad altissima dimensionalità hanno una connessione diretta con
i dati Web. Ad esempio, le sessioni di utilizzo di un servizio Web possono essere rappresentati come
una tupla in uno spazio n-dimensionale dove la dimensione n è altissima (tipicamente, dell’ordine di
106). Ogni dimensione rappresenta una risorsa Web che può essere acceduta: se effettivamente un
utente la accede, una tupla che descrive la sessione dell’utente conterrà il valore booleano true in
corrispondenza di quella colonna. Viceversa, se la risorsa non viene acceduta, allora la tupla conterrà il
valore false.
Partendo dallo studio preliminare fatto in [1], in cui vengono analizzate le caratteristiche dei dati ad
altissima dimensionalità e si studia l’estensione del k-Means a tale tipo di dati, l’attività di ricerca
dell’ICAR procede in due direzioni direzioni principali.
Una direzione deriva dall’osservazione che le tecniche in letteratura non prendono in considerazione la
similarità di pagine web, sia dal punto di vista dei contenuti e della struttura, sia dal punto di vista
comportamentale. Due pagine simili dal punto di vista comportamentale (ovvero, che puntano allo
stesso insieme di pagine, o che vengono puntate dallo stesso insieme di pagine), è probabile che siano
visitate collegialmente.
Da questo punto di vista, si è studiato in [2,3] un approccio differente: di considerare un sottoinsieme di
interesse del Web come un grafo ``alla Kleinberg'' (ma senza considerare la struttura a link risultante
dalla pagine stesse, quanto piuttosto quella risultante dall'analisi dei logs). Tale approaccio permette di
individuare velocemente tali similarità dall'analisi, appunto, del grafo, e consequentemente di tarare le
tecniche di caching tradizionali (come LRU, LFU o anche le tecniche di LRU intelligente) affinché
prendano in considerazione tali similarità. 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.
PAAS
Schema consuntiva U.O.
RG
All. 1

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.
Una ulteriore direzione studiata [4] è stato lo sviluppo di un approccio completamente automatico al
clustering di dati ad altissima dimensionalità. La tecnica è basata su una procedura iterativa in due fasi,
ed ha un decorso molto simile a quello dello sviluppo degli alberi di decisione. Il vantaggio principale
dell’algoritmo, chiamato AT-DC, è la sua totale automaticità: l’algoritmo non richiede parametri, e dato
un database di input restituisce la migliore partizione ottenibile.
Si è infine investigata l’estensione degli approcci descritti a problemi di streaming. Si tratta cioè di
problemi in cui i dati disponibili vengono aggiornati di continuo, per cui ci si può aspettare che i
modelli estratti abbiano una intrinseca dinamicità. A questo proposito, si è sviluppato un algoritmo
incrementale è stato proposto in [16]. L’algoritmo fa uso di unta tecnica di indicizzazione basata su
tecniche hash, che di fatto rende il processo di clusterizzazione lineare nella dimensione dei dati: in
pratica, per ogni nuova tupla che arriva, si riesce a decidere in tempo costante se esiste un cluster a cui
associarla, o se viceversa si deve creare un nuovo cluster.
Un aspetto interessante è che le tecniche investigate si prestino non solo al loro utilizzo nell’ambito del
Web Caching, ma in generale permettano di approcciare proficuamente il 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 [3,5]. 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 [3,6]. 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 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.
Web Content/Structure Mining
In quest’ambito, i contributi principali del gruppo di ricerca dell’ICAR sono essenzialmente due. Il
primo riguarda l’analisi dei dati testuali. A questo proposito l’obiettivo principale è stato quello di
sfruttare tecniche di Content Mining per la definizione di un sistema di classificazione di messaggi di
posta elettronica capace di organizzare automaticamente i messaggi memorizzati nella mailbox di un
utente. La classificazione dei messaggi può essere vista essenzialmente come un problema di Content
Mining: dato un insieme di documenti testuali (i.e., i contenuti dei messaggi), l'obiettivo principale è la
loro classificazione in base al contenuto. Lo studio si è concentrato prevalentemente sulla possibilità di
sfruttare le tecniche di clustering per organizzare in gruppi omogenei i messaggi di posta elettronica
rappresentati dalle informazioni strutturate e non strutturate adeguatamente estratte. I contributo
principale in quest’ambito è stato il sistema AMCo [8,9], che permette di affrontare l’aggiornamento
incrementale dell'organizzazione della mailbox all'arrivo di nuovi messaggi, nonché l’adattamento
dell'organizzazione in base al comportamento mostrato dall'utente di fronte alla classificazione dei
messaggi, in modo tale che le successive assegnazioni tengano conto anche dell'esigenze e delle
preferenze dell'utente.
PAAS
Schema consuntiva U.O.
RG
All. 1
Un ulteriore contributo nell’ambito del content mining è stata la definizione ed implementazione di un
tool di clustering per dati multidimensionali [7]. Il tool implementa una tecnica di clustering visuale
particolarmente adatta a dati testuali/web, che permette l’esplorazione dello spazio delle features in
maniera guidata e interattiva. Infatti, la tecnica permette di individuare clusters di forma differente o
che fanno riferimento a nozioni di similarità variegate. La tecnica effettua una decomposizione SVD
(singular value decomposition) di un insieme di dati, per fornire una rappresentazione bidimensionale
dei dati particolarmente adatta per essere analizzata in maniera visuale.
Un ulteriore aspetto che si è investigato riguarda lo sviluppo di una tecnica di Named Entity
Recognition, basata su un algoritmo di classificazione a regole che ricorsivamente migliora la
confidenza nella classificazione arricchendo il dominio in considerazione con la conoscenza che
progressivamente scopre. La tecnica è introdotta in [15], ed è basata sul paradigma della progressive
classification (ovvero, una classificazione a stadi multipli dove, ad ogni stato intermedio, un
classificatore è appreso a analizza i frammenti testuali non riconciliati sinora).
Il secondo filone di investigazione riguarda l’analisi dei dati XML. In quest’ambito, si volevano
definire tecniche di data mining per il delivery di informazione sintetizzata da documenti HTML/XML.
Si sa che i dati XML/HTML oggi giorno sono ritenuti la sorgente di informazione più ricca sul Web. A
questo proposito, l’attività dell’ICAR si è concentrata nel definire tecniche per l’analisi di tali dati. Un
primo contributo significativo è stato l’analisi della similarità strutturale di documenti XML [13]. La
tecnica sviluppata fa uso di una rappresentazione di un documento XML 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.
Inoltre, è stata studiata l’applicabilità della tecnica al caso di documenti HTML per l’analisi della loro
struttura [14]. 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.
Il concetto di similarità investigato può essere usato proficuamente anche in congiunzione ad algoritmi
di clustering di dati XML, che possono essere utilizzati per l’organizzazione e l’indicizzazione delle
grandi repositories di dati. A questo proposito, si è studiato il problema del clustering con
rappresentanti, fornendo una caratterizzazione teorica e un’implementazione pratica [14]. 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
Per ciò che riguarda la parallelizzare di algoritmi di DM è stata studiata l'esplicitazione di diverse forme
di parallelismo nelle tecniche di data mining e knowledge discovery. Lo scopo è stato quello di
PAAS
Schema consuntiva U.O.
RG
All. 1
analizzare tecniche di data mining su architetture parallele e di mostrare come le applicazioni di data
mining e knowledge discovery su grandi moli di dati possono beneficiare delle funzionalità, degli
strumenti e delle elevate prestazioni offerte dai sistemi di elaborazione paralleli. Sono state esaminate
le problematiche e le tecniche di analisi dei dati e i diversi modi possibili per esplicitare il parallelismo
presente in esse. Inoltre sono stati effettuati esperimenti di parallelizzazione di un algoritmo di
clustering su macchine parallele di tipo MIMD a memoria distribuita.
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 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]
PAAS
Schema consuntiva U.O.
RG
All. 1
Pubblicazioni:
[1] Fosca Giannotti, Cristian Gozzi, Giuseppe Manco: Clustering Transactional Data. PKDD 2002:
175-187
[2] Giuseppe Manco, Riccardo Ortale, Domenico Saccà: Similarity-Based Clustering of Web
Transactions. SAC 2003: 1212-1216
[3] Riccardo Ortale, Web Mining for Personalization, Ph.D. Thesis, Università della Calabria, 2004.
[4] Eugenio Cesario, Giuseppe Manco, Riccardo Ortale: Top-Down Parameter-Free Clustering of highdimensional categorical data: RT 2005/02 ICAR-CNR. Submitted to ACM Trans. On Knowledge
Discovery in Databases.
[5] Eugenio Cesario, Francesco Folino, Riccardo Ortale: Putting Enhanced Hypermedia Personalization
into Practice via Web Mining. DEXA 2004: 947-956
[6] Giuseppe Manco, Riccardo Ortale, Andrea Tagarelli, Providing Personalized Access to Usenet Sites
through Web Mining, in A. Scime, editor, “Web Mining: Applications and Techniques”, 2004.
[7] Giuseppe Manco, Clara Pizzuti, Domenico Talia: Eureka!: an interactive and visual knowledge
discovery tool. J. Vis. Lang. Comput. 15(1): 1-35 (2004)
[8] Giuseppe Manco, Elio Masciari, Andrea Tagarelli: A Framework for Adaptive Mail Classification.
ICTAI 2002: 387[9] Giuseppe Manco, Elio Masciari, Andrea Tagarelli: Mining Categories for Emails via Clustering and
Pattern Discovery.Submitted to Kluwer Journal of Intelligent Information Systems
[10] Sergio Flesca, Giuseppe Manco, Elio Masciari: Web wrapper induction: a brief survey. AI
Commun. 17(2): 57-61 (2004)
[11] Sergio Flesca, Giuseppe Manco, Elio Masciari, Luigi Pontieri, Andrea Pugliese: Fast Detection
of XML Structural Similarity. IEEE Trans. Knowl. Data Eng. 17(2): 160-175 (2005)
[12] S. Flesca, G. Manco, E. Masciari, L. Pontieri, A. Pugliese.Exploiting Structural Similarity for
Effective Web Information Extraction, Procs. of Dagsthul seminar 2005-06, Foundations of Semi
Structured Data. An extended version has been accepted for publication by Elsevier Journal on Data
and Knowledge Engineering.
[13] Gianni Costa, Giuseppe Manco, Riccardo Ortale, Andrea Tagarelli: A Tree-Based Approach to
Clustering XML Documents by Structure. PKDD 2004: 137-148
[14] Eugenio Cesario, Francesco Folino, Giuseppe Manco, Luigi Pontieri, An Incremental Clustering
Scheme for Duplicate Detection in Large Databases, IDEAS 2005: 89-95.
[15] Eugenio Cesario, Francesco Folino, Antonio Locane, Giuseppe Manco, Riccardo Ortale:
RecBoost: A supervised approach to text segmentation, Proc. SEBD 2005: 220-231: An extended
version submitted to International Journal of Knowledge and Information Systems.
PAAS
Schema consuntiva U.O.
RG
Scarica