











Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
DATA MINING E CLUSTERING
Tipologia: Appunti
1 / 19
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!












4.1 Che cos'è il Data Mining
Per Data Mining s'intende quel processo di estrazione di conoscenza da banche dati, tramite l'applicazione di algoritmi che individuano le associazioni non immediatamente riconoscibili tra le informazioni e le rendono visibili. In altre parole, col nome data mining intendiamo l'applicazione di una o più tecniche che consente l'esplorazione di grandi quantità di dati, con l'obiettivo di individuare le informazioni più significative e di renderle disponibili e direttamente utilizzabili nell'ambito del decision making. L'estrazione di conoscenza, ossia di informazioni significative, avviene tramite individuazione delle associazioni, patterns, o sequenze ripetute, nascoste nei dati. In questo contesto un pattern indica una struttura, un modello, o, in generale, una rappresentazione sintetica dei dati. Il termine data mining è utilizzato come sinonimo di knowledge discovery in databases (KDD), anche se sarebbe più preciso parlare di knowledge discovery quando ci si riferisce al processo di estrazione della conoscenza, e di data mining come di una particolare fase del suddetto processo.
4.2 Perché usare strumenti di Data Mining
Gli algoritmi di data mining, sono stati sviluppati per far fronte all esigenza di sfruttare il patrimonio informativo contenuto nelle grandi raccolte di dati che abbiamo a disposizione. Acquisire informazioni non è, infatti, più un problema se si
pensa alla ricchezza delle sorgenti di dati accessibili su Web o attraverso Data Warehouse aziendali, il problema è cercare di utilizzarli, estrarne le informazioni. Spesso i dati, sia che si riferiscano all attività giornaliera dell azienda o dell ente, sia che si riferiscano alla clientela o all utenza, sia che si riferiscano al mercato o alla concorrenza, si presentano in forma eterogenea, ridondante, non strutturata. Tutto ciò fa sì che solo una piccola parte sia analizzata. D altra parte la rapida evoluzione del mercato richiede rapidità di adattamento. In questo contesto riuscire a sfruttare la potenziale ricchezza di informazioni che abbiamo a disposizione costituisce un enorme vantaggio. Per fare ciò è necessario disporre di strumenti potenti e flessibili. La gran quantità di dati e la loro natura eterogenea rende, infatti, inadeguati gli strumenti tradizionali. Questi si dividono in due tipi: strumenti di analisi statistica e strumenti tipici di interrogazione di banche dati dette data retrieval. Per quanto riguarda i primi, le difficoltà nascono dal fatto che difficilmente operano su grandi quantità di dati in quanto richiedono operazioni di campionamento con conseguente perdita di informazioni.
Fig. 1.
relativi all argomento che ci interessa, gli strumenti di data mining, infatti, consentono di raggruppare i documenti per argomento sulla base di tutte le parole contenute nei documenti stessi, tramite l'individuazione di associazioni tra le parole generalmente testi strutturati. Gli strumenti di data mining nascono dall integrazione di vari campi di ricerca come la statistica, la pattern recognition, o la machine learning, e sono stati sviluppati indipendentemente dai database, al fine di operare su dati grezzi.
Fig. 3.
4.3 Tecniche ed ambiti applicativi
Le tecniche utilizzabili sono varie e, di conseguenza, anche gli algoritmi che le implementano. La scelta dipende principalmente dall'obiettivo che si vuole raggiungere e dal tipo di dati da analizzare. Le tecniche più utilizzate sono:
Clustering Reti Neurali Alberi di Decisione Individuazione di Associazioni
Le tecniche di clustering e l'uso delle reti neurali non supervisionate consentono di effettuare operazioni di segmentazione sui dati, cioè di individuare gruppi omogenei, o tipologie, che presentano delle regolarità al loro interno in grado di caratterizzarli e differenziarli dagli altri gruppi. Le reti neurali e gli alberi di decisione consentono di effettuare operazioni di classificazione, fanno cioè uso della conoscenza acquisita in fase di addestramento per classificare nuovi oggetti o prevedere nuovi eventi. Le tecniche di analisi delle associazioni consentono di individuare delle regole nelle occorrenze concomitanti di due o più eventi. A queste si aggiungono le sequential patterns ossia tecniche di individuazione di sequenze temporali e algoritmi genetici. Queste tecniche sono applicabili a qualsiasi ambito di indagine, in generale trovano applicazione tutte le volte che siamo di fronte a grandi quantità di dati e abbiamo l'esigenza di conoscerne il contenuto.
Lo schema seguente mette in luce la natura iterativa del processo. La fase di valutazione può, infatti, portare da una semplice ridefinizione dei parametri di analisi utilizzati, ad una ridefinizione dell intero processo a partire dai dati estratti.
Fig. 5.
Mentre l individuazione di patterns avviene automaticamente, l intero processo di estrazione della conoscenza è difficilmente automatizzabile e richiede il coinvolgimento di varie professionalità come esperti del dominio applicativo, specialisti in analisi dati, informatici.
4.5 L'analisi dei cluster
Nella nostra tesi la metodologia di data mining è stata utilizzata adottando la tecnica di cluster analysis per la classificazione dei pazienti. L'analisi dei cluster, cluster analysis , a volte tradotta come analisi dei grappoli è una tecnica nata negli anni 60 e 70, mirata all'individuazione di agglomerati di dati all'interno di una popolazione nota. Gli obiettivi finali possono essere i più disparati, come l'individuazione o la convalida di un'ipotesi di ricerca a partire dai dati, l'isolamento di pattern caratteristici in determinate sotto-popolazioni, o la classificazione dei dati. In questa sezione saranno esposti i principali strumenti dell'analisi dei cluster con quest'ultimo scopo in mente.
Fig. 6.
una variabile con un alto contenuto informativo ai fini della classificazione sia superflua se utilizzata con altre variabili. Come nei metodi statistici, è utile ora invece analizzare le principali procedure di trasformazione e di normalizzazione delle variabili.
4.6 Trasformazione e normalizzazione delle variabili
Nell'analisi dei cluster è fortemente consigliato l'utilizzo della trasformazione nonché della normalizzazione, poiché rende il risultato indipendente dalle unità di misura adottate per le variabili stesse. Inoltre, la normalizzazione fa si che tutte le variabili contribuiscano in ugual misura alla classificazione. Per trasformazione di una variabile, o attributo, si intende la derivazione di nuove variabili attraverso l'applicazione di funzioni a quelle originarie. In formula:
i (^ i )
def Y (^) i f Y^1 i p
In alcuni casi può essere utile applicare ad alcune variabili delle trasformazioni non lineari, al fine di correggerne la distorsione. Tra le trasformazioni lineari, la più usata è senz'altro la seguente:
[ ]
[ ] i i i i Var Y Y Y E Y 1 i p
spesso denominata normalizzazione. Naturalmente, nella pratica si utilizzano le stime campionarie di queste quantità. Si verifica facilmente che, le variabili così trasformate, hanno media campionaria nulla e varianza campionaria unitaria. Si noti infine che le nuove variabili sono adimensionali. Esistono forme alternative di
normalizzazione. Ad esempio, nel caso in cui i valori delle variabili siano non negative, si può far uso della formula:
j i^ j
i i e d Y Y 1 max^
1 i p
dove si è indicato con e i l' i -esimo versore, e quindi il prodotto scalare, mentre d j rappresenta la componente i -esima dell'osservazione j -esima (si ricordi che d j è stato definito come un vettore colonna). In sostanza, si dividono i dati rilevati di ciascuna variabile per il valore massimo, in modo che tutti i valori delle nuove variabili siano comprese nell'intervallo unitario. Anche quest'ultimo sia il più piccolo intervallo contenente tutti i nuovi valori, si può ricorrere alla seguente formula:
j i j j i^ j
i j i j i e d e d
Y e d Y 1 1
1 max min
min 1 i p
Nei paragrafi a seguire si assumerà di lavorare con una matrice di variabili normalizzate. Ora iniziamo a trattare le principali tecniche di analisi dei cluster che si suddividono in due ampie categorie: i metodi di ripartizione e i metodi gerarchici. Preme sottolineare che il nostro studio verte principalmente sull'utilizzo di procedure di tipo gerarchico, ampiamente descritte in questo capitolo, ricordando invece che pur fornendo una descrizione dettagliata dei metodi di ripartizione, essi non saranno tecnicamente sfruttati nel nostro lavoro.
che esplode facilmente per valori non banali dei due parametri. Aggiungiamo quindi che una ricerca esaustiva della configurazione ottima è quindi improponibile. Sia x il vettore di lunghezza N che conserva i codici associati ai cluster di appartenenza di ciascun dato. Il metodo K-means, partendo da un assegnamento iniziale x 0 e scandendo i dati uno ad uno, ad ogni passo calcola le medie e la funzione obiettivo, e assegna l'osservazione in esame al cluster per cui la nuova valutazione della funzione obiettivo è minima. Il procedimento si arresta allorquando x rimane invariato per N cicli consecutivi. Questo algoritmo è ottimo ad ogni passo, ma non trova necessariamente la soluzione ottima cercata. E' consigliabile pertanto ripetere la procedura con diverse configurazioni iniziali. Si tenga in considerazione, comunque, che la funzione obiettivo soffre di alcune limitazioni, e fornisce risultati scadenti per cluster non sufficientemente compatti e separati, o aventi cardinalità molto diverse tra loro.
4.8 Metodi gerarchici
Nella nostra tesi ci siamo avvalsi invece di algoritmi prettamente gerarchici, che più di altri hanno riscosso successo all'interno delle comunità scientifiche di fisici, naturalisti e sociologi, tanto che alcune pubblicazioni si riferiscono con il termine cluster analysis alla sola analisi gerarchica dei cluster. L'obiettivo di questi algoritmi è l'organizzazione dei dati in una struttura gerarchica, che raggruppa osservazioni molto simili in piccoli cluster ai livelli più bassi, e osservazioni più basicamente collegate in cluster più grandi e generici ai livelli più alti, fino ad arrivare all'insieme di tutti i dati. Formalmente, si ottiene una sequenza di h partizioni di cardinalità strettamente crescente degli N dati. Sia n (^) h la cardinalità della i -esima partizione. Sarà allora:
1 n (^) 1 .... nh N
In altre parole, la prima partizione della sequenza è rappresentata da un solo insieme C 1 ={d i| 1 < i < N } comprendente tutte le osservazioni; la seconda partizione prevede n 2 > 2 sottoinsiemi disgiunti e complementari di C 1 , e così via, fino all'ultima partizione, che si noti non prevede necessariamente la frammentazione dei dati in N singoletti o cluster degeneri. I metodi di analisi gerarchica si distinguono in due importanti categorie: le divisive o di suddivisione , nonché le procedure da noi utilizzate, ossia le agglomerative o associative. Nelle prime i nuovi cluster sono ottenuti per suddivisione di cluster appartenenti al livello precedente. In partenza c'è un unico cluster con tutti gli individui, alla fine ci sono tanti cluster quanti sono gli individui. Le divisive costruiscono un diagramma ad albero, dendrogramma, che dà un'immagine delle relazioni fra gli oggetti.
Fig. 8.
Il dendrogramma si costituisce partendo dai rami, oggetti a sinistra {a, b, c, d, e}, sino ad arrivare, per fusioni successive, ad un unico ramo finale, radice. Le fusioni sono rappresentate dai punti in cui due rami si congiungono. Infine approfondiamo le procedure impiegate nel nostro lavoro, le agglomerative o associative , dove un nuovo cluster è il risultato della fusione di due cluster del livello precedente. In partenza ci sono tanti cluster quanti sono gli individui; alla fine vi sarà un unico cluster o radice composto da tutti gli individui. Ricordiamo comunque che indifferentemente dal tipo di categoria utilizzata, ogni procedura di cluster analysis gerarchica procede attraverso i seguenti passaggi:
Fig. 9.
In questa finestra derivante dal pacchetto Xlminer si evidenzia la tecnica di lavoro da noi seguita per l'operazione di clustering sui nostri pazienti. Si procede opzionando la normalizzazione dei dati, dopo la scelta del metodo euclideo per il calcolo della distanza, viene scelto l'Average group linkage come metodo di clustering gerarchico da impiegare.
Fig. 10.
In questa finestra invece viene indicato il numero di clusters che vogliamo impiegare nella classificazione dei nostri pazienti (2 o 3 classi).
Nei metodi gerarchici sia di tipo divisivo che agglomerativo sono compresi anche altri criteri di fusione di cui forniremo solo una descrizione sommaria in quanto non utilizzati nel nostro studio. Infatti un secondo metodo fornito dal clustering gerarchico nonché da Xlminer è il Single linkage o legame singolo il quale tende a concatenare gli oggetti in una sorta di "serpentina" costruendo cluster contigui e poco separati. Il metodo del Complete linkage o legame completo invece tende a costruire raggruppamenti più separati e definiti. Entrando sempre più nel dettaglio possiamo distinguere che tramite il metodo dell' Average linkage o legame medio la distanza tra due cluster è uguale alla media aritmetica delle distanze definite su tutte le coppie di oggetti nei due cluster. Si termina con il Ward's method o metodo di Ward basato sulla minimizzazione della devianza entro i gruppi che è uguale a quando tutti i casi sono separati, ed è massima quando essi appartengono tutti a un gruppo unico.
4.10 Tecniche gerarchiche e non gerarchiche
Contrapposti ai metodi gerarchici esistono anche metodi non gerarchici che non sono stati utilizzati nella nostra tesi. Quest'ultimi risentono meno della presenza di errori di misura e di altre fonti di varianza spuria riuscendo in tal modo ad individuare meglio gruppi coesi. Spiccano alcune sostanziali differenze tra le due tecniche di clustering: innanzitutto una maggiore rigidità dovuta ad eventuali aggregazioni improprie ai primi livelli dell'aggregazione viene evidenziata nei metodi gerarchici, aggiungiamo inoltre che se un individuo viene assegnato ad un gruppo in un determinato stadio, vi rimarrà in tutti gli stadi successivi, contrariamente ai metodi non gerarchici dove l'assegnazione può cambiare finché il processo di classificazione non giunge a convergenza.
This document was created with Win2PDF available at http://www.daneprairie.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.