D2I - Tema 3: Data Mining Stato di avanzamento Roma 11/10/2002 Prodotti - fase 3 D3.P1 Algoritmi di clustering incrementale di dati (BO) D3.P2 Risoluzione di query approssimate (BO) D3.P3 Prototipo per il meta-querying (CS) D3.P4 Sistema integrato di data mining e visualizzazione (RM) D2I - Tema 3 2 Obiettivi - fase 3 Implementazione Raffinamento delle tecniche specifiche sviluppate nelle fasi precedenti e implementazione dei prototipi Visualizzazione Studio di tecniche di visualizzazione dei risultati dei vari algoritmi di data mining Integrazione Studio e raffinamento dell’architettura del sistema integrato di mining e visualizzazione D2I - Tema 3 3 Clustering di dati metrici Data mining engine per clustering Implementazione di algoritmi originali e da letteratura Delphi Librerie acquisite esternamente e integrate Architettura per integrazione con visualizzazione Aperto all’inserimento di altri algoritmi D2I - Tema 3 4 Stato di avanzamento Integrazione Definiti i dettagli dell’architettura API XML Clustering incrementale Algoritmo implementato in fase di collaudo D2I - Tema 3 5 Ricerche di similarità approssimate Problema di base: trovare efficientemente oggetti “simili” a uno dato Essenziale per DM interattivo/esplorativo ricerche esatte spesso troppo costose …e/o non necessarie (qual è la “giusta” query?) Idea generale: rilassare uno o più vincoli del problema Utilizzo dell’approccio PAC (rif. D3.R3) Possibilità, in fase di interrogazione, di: Controllare in maniera probabilistica l’approssimazione del risultato Ottenere un compromesso tra velocità di risoluzione della query e qualità del risultato. Scenario generale: spazi metrici D2I - Tema 3 6 Implementazione del prototipo Interrogazioni considerate: range query (tutti i punti aventi una distanza dalla query minore di una soglia) k nearest neighbor query (i k punti più vicini alla query) Definizione di un errore ERR sul risultato dell’interrogazione Informazione di base: distribuzione delle distanze dei query point: F(x) = Pr{d(q,p) ≤ x} Tipicamente, query point distribuiti come i data point (ma non sempre) Implementazione degli algoritmi PAC Sequenziali Basati su M-tree D2I - Tema 3 7 Risoluzione di PAC range query Input: q: Punto query r: Raggio di ricerca : Valore di errore ( 0) d: Valore di confidenza ( [0, 1[ ) Output: Insieme di oggetti RES RES può non contenere tutti gli oggetti che hanno distanza da q r L’errore è pertanto definito sulla cardinalità dell’insieme dei risultati ERR = 1 – card(RES)/card(R) dove R è il risultato della query esatta In pratica, l’algoritmo si ferma non appena la probabilità di trovare altri punti che soddisfano la query è inferiore a d D2I - Tema 3 8 Risoluzione di PAC k nearest neighbor Input: q: Punto query k: Cardinalità del risultato : Valore di errore ( 0) d: Valore di confidenza ( [0, 1[ ) Output: Lista ordinata (per distanza crescente) di k oggetti RES RES può non contenere i primi k oggetti a minor distanza da q L’errore è pertanto definito sulla distanza da q dei punti inclusi in RES ERR = maxi {d(q, pi*)/d(q, pi) – 1} dove pi* è ciascun punto incluso in RES e pi è il corrispondente punto nel risultato esatto In pratica, l’algoritmo si ferma non appena la probabilità di trovare punti più vicini a q di quelli in RES è inferiore a d D2I - Tema 3 9 Meta querying - stato di avanzamento Metaquerying Valutatore implementato in Java Integrazione Rilasciato package Java per integrazione con tool di visualizzazione D2I - Tema 3 10 Data Mining visual environment Design Test di usabilità Semantica formale dell’ambiente di input Semantica operazionale D2I - Tema 3 11