




































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
Domande Aperte Data Data Mining - Aperte - Prof.ssa Antonelli
Tipologia: Panieri
1 / 44
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!





































Lezione 002
05. Cosa è una transazione?
Una transazione è una unità elementare di lavoro di un’applicazione a cui si vogliono associare particolari
caratteristiche di correttezza, robustezza ed isolamento.
Un sistema che mette a disposizione meccanismi per la definizione e l’esecuzione di transazioni viene detto
sistema transazionale.
Da Wikipedia :
Una transazione è una sequenza di operazioni, che può concludersi con un successo o un insuccesso; in
caso di successo, il risultato delle operazioni deve essere permanente o persistente, mentre in caso di
insuccesso si deve tornare allo stato precedente all'inizio della transazione.
Le transazioni sono normalmente implementate da DBMS (Data Base Management System) o da gestori di
transazioni.
06. Quali sono le fasi caratteristiche del data mining?
Sono due le fasi che caratterizzano la fase di data mining:
di esplorazione controllata dei dati. L’obiettivo è quello di fornire uno strumento per evidenziare errori nella
preparazione ed estrazione dei dati.
modelli. Una volta generati, i modelli devono essere validati ed interpretati.
07. Quali sono le fasi del KDD (Knowledge Discovery in Database)?
Il processo di estrazione della conoscenza dai dati è il processo automatico iterativo di esplorazione ed
analisi dei dati che ha lo scopo di estrarre dai dati nuova conoscenza utile per supportare i processi
decisionali.
In ingresso al processo ci sono tipicamente dati grezzi provenienti da sorgenti eterogenee, in uscita dal
processo si ha nuova conoscenza acquisita.
La fase principale è proprio quella del data mining che estrae nuova conoscenza o identifica pattern/modelli
nei dati mediante l’applicazione di diversi algoritmi.
Le fasi del KDD:
Selezione: I dati vengono estratti secondo alcuni criteri che dipendono dall'obiettivo che si vuole
raggiungere. In gergo, si dice che i dati vengono campionati.
Pre-elaborazione: durante questa fare i dati vengono ripuliti da informazioni ritenute inutili e che possono
rallentare le interrogazioni della base di dati. In questa fase i dati possono subire delle trasformazioni per
evitare inconsistenze dovute al fatto che dati simili provenienti da sorgenti diverse e gestiti con metadati
leggermente diversi.
Trasformazione: i dati possono essere trasformati in modo tale da aggiungere ad essi ulteriori campi,
rendendoli quindi usabili e navigabili per la specifica applicazione.
Data mining: in questa fase vengono estratti i modelli dai dati. Un modello può essere definito come segue:
dato un insieme di fatti (i dati) F, un linguaggio L ed alcune misure di certezza C, un modello è una
dichiarazione S nel linguaggio L che descrive le relazioni che esistono tra i dati di un sottoinsieme G di F con
una certezza c tale che S sia più semplice in qualche modo della enumerazione dei fatti contenuti in G;
Interpretazione e valutazione: in questa fase i modelli identificati dal sistema vengono utilizzati ed interpretati
con l’obiettivo di utilizzare la conoscenza acquisita. Tale conoscenza potrebbe essere utilizzata per il
supporto alle decisioni, effettuando previsioni, classificazioni, descrizione dei fenomeni osservati.
Lezione 003
05. Discutere la differenza fra modelli predittivi e descrittivi
La modellazione utilizza principalmente i dati per stimare i parametri dei modelli. Per far ciò, sono importanti
delle conoscenze multi-disciplinare che spaziano dalla statistica alla teoria delle basi di dati, passando per
tecniche di auto apprendimento.
I modelli possono essere predittivi o descrittivi, ina base all'obiettivo dell'analisi che si vuole effettuare.
I modelli descrittivi , identificati tipicamente da algoritmi di clustering o regole associative, vengono
utilizzato per descrivere la struttura organizzativa e la distribuzione dei dati. L'obiettivo di questi modelli e
quello di approfondire la conoscenza nascosta dietro ai dati.
Con il clustering , per esempio, si riesce a verificare se i dati sono organizzati in gruppi che hanno
caratteristiche simili.
Le regole associative consentono di prevedere tendenze e relazioni esistenti fra le variabili/attributi che
caratterizzano le transazioni gestite dal sistema di data mining.
I modelli predittivi , tipici degli algoritmi di classificazione e regressione, utilizzano i loro parametri e
meccanismi caratteristici per effettuare delle previsioni future che possono essere utili nei processi
decisionali.
Per esempio, un algoritmo di classificazione , consente di assegnare una etichetta caratteristica ad un nuova
transazione che viene gestita dal sistema di data mining.
Un algoritmo di regressione consente di effettuare delle previsioni future sul valore che potrà assumere una
determinata variabile, sulla base dei suoi valori passati o sulla base dei valori di altre variabili.
06. Perché il modello di data mining è da considerarsi interattivo?
In generale, per ottenere dei modelli di buona qualità è necessario eseguire con attenzione le tre fasi sulle
quali si poggia ogni algoritmo di DM: esplorazione, moderazione e valutazione.
Potrebbe essere necessario ritornare più volte sia nella fase di esplorazione dei dati sia nella fase di
modellazione. Il processo di data mining è spesso iterativo.
La conoscenza del dominio di applicazione aiuta l'ingegnere della conoscenza ad aggiungere in fase di
modellazione elementi che potrebbero non essere estraibili dai dati.
È molto importante, infatti, il confronto fra gli esperti del dominio e l'ingegnere della conoscenza. Questa fase
di confronto si chiama knowledge elicitation.
07. Quali sono i pilastri operativi su cui poggia il data mining?
Ogni algoritmo di data mining si poggia su tre pilastri operativi:
esplorazione, moderazione e valutazione.
Esplorazione. Durante questa fase i protagonisti sono i dati a disposizione. Da essi gli algoritmi di data
mining partono per fare analisi ed assunzioni. Il punto di forza del data mining sta appunto nel saper
07. Discutere il processo della cross validation
Quando non si ha a disposizione molti dati oppure quando si vuole ridurre al minimo la dipendenza dai dati
del processo di identificazione e valutazione del modello si utilizza una tecnica chiamata Cross Validation.
Supposto si avere N istanze o transazioni a disposizione, si divide l’insieme dei dati in K partizioni (gruppi di
dati) casuali, detti fold.
Si ripete l'addestramento e la valutazione del modello K volte utilizzando, in maniera ciclica, K-1 partizioni
come training set e la restante partizione come test set.
In pratica si creano ogni volta K modelli con un training set diverso formato da K-1 partizioni e si valuta la
capacità di generalizzazione di ciascun modello con la partizione che non è stata utilizzata per
l’addestramento.
Alla fine del processo si ottengono K valori di errore o di accuratezza calcolati utilizzando i K test set. Il
valore medio di questi valori prende il nome di errore o accuratezza cross-validato.
In questo caso si ha una 4-fold CV. Il dataset viene diviso in 4 partizioni (quattro colori) e per quattro volte
viene creato un modello con un training set formato da 3 partizioni (ogni volta diverse).
La partizione che resta viene utilizzata per valutare la capacita di generalizzazione del modello.
Alla fine, si ottiene la media gli errori o delle accuratezze calcolate sul training set per ciascun modello.
08. Discutere il problema dell’overfitting
Quando in fase di addestramento un modello si adatta al campione osservato e perde la capacita di
generalizzazione si ha il problema dell’overfitting.
In pratica i parametri si allineano ai dati osservati facendo seguire al modello il trend dei dati. Se i dati non
sono rappresentativi di tutto il fenomeno, il modello non è in grado di generalizzare.
Supponiamo di voler costruire un modello che effettui previsioni del livello di pioggia che cade in una
determinata zona, sulla base dello storico delle osservazioni. Se l'addestramento viene effettuato solo
utilizzando i dati della stazione estiva, sarà praticamente impossibile generalizzare sui dati relativi alla
stagione invernale. Infatti, il modello avrà acquisito solo le tendenze della stagione estiva che sono molto
diverse da quelle della stagione invernale.
Durante il processo di campionamento dei dati, bisogna stare attenti a selezionare un sotto insieme di dati
cha sia rappresentativo del fenomeno che si vuole descrivere.
Lezione 005
06. Fornire un esempio di distribuzione e del suo istogramma
Alle variabili casuali in genere è associata una funzione di densità di probabilità. Tale funzione descrive la
probabilità che ha ogni punto di essere presente nello spazio dei campioni.
Si dice che un insieme di punti segue una distribuzione normale se ad esso è associata la seguente
funzione di densità di probabilità:
La media di tale distribuzione è pari a m e la varianza vale s2. Questi sono i due parametri caratteristici di
tale distribuzione.
Sara molto importante nell'applicazione di algoritmi di data mining sapere se gli attributi dei dati a
disposizione seguono una distribuzione normale.
Esempio:
Si consideri la seguente distribuzione di incidenti per mese in una società
di costruzioni: 0, 1, 3, 4, 5, 2, 2, 6, 7, 2, 0, 1.
I l v a l o r e d e l l a m e d i a è :
Se si ordina la distribuzione si ha (0, 0, 1, 1, 2, 2, 2, 3, 4, 5, 6, 7). Chiaramente la moda vale 7 e la mediana
vale 2.
Si disegna il corrispondente istogramma ( diagrammi che consentono di visualizzare la frequenza con cui si
distribuiscono i dati divisi in classi (in intervalli) ) con 5 rettangoli con la base della stessa dimensione.
Ciascun rettangolo ha una base ampia 1.4. L'intervallo [0,7] viene diviso utilizzando il vettore di punti [
1.4000 2.8000 4.2000 5.6000 7.0000] i cui valori identificano l’inizio e la fine di ogni rettangolo:
07. Cosa si intende per outliers?
Gli Outliers (valori fuori dal limite) sono punti, dei Box plot, oltre una certa soglia rappresentati singolarmente
oltre i valori minimo e massimo (di solito, un valore superiore / inferiore a 1,5 x RIQ).
08. Discutere la differenza tra quartile e quantile (nella misura della dispersione dei dati)
Il k-esimo quantile di un insieme di dati ordinati è quel valore che ha la
seguente proprietà: il k% dei dati assume valore minore o uguale ad xi. La mediana è in sostanza il 50-
esimo percentile.
Per primo quartile Q1 si intende il 25-esimo percentile.
Il terzo quartile Q3 è il 75-esimo percentile.
Il range interquartile si calcola come segue RIQ = Q3-Q1.
09. Quali sono gli indicatori di dispersione
La varianza fornisce una misura della variabilità dei valori assunti dalla variabile, nello specifico, di quanto
essi si discostino quadraticamente dalla media.
La deviazione standard è la radice quadrata della varianza.
errori nella strutturazione dei dati
errori umani nell'inserimento
errori intenzionali (derivanti ad esempio dalla volontà di non divulgare informazioni personali)
decadimento dei dati (indirizzi civici obsoleti), ecc.
Per individuare le discrepanze si effettuano in genere i seguenti passaggi:
Definizione di Metadati : si deve ben identificare dominio e intervallo degli attributi, tipo di distribuzione e
dipendenze tra i dati.
Controllo dell'overloading dei campi : bisogna verificare se gli sviluppatori hanno utilizzato, per un nuovo
attributo, una porzione di spazio di memoria non utilizzata ma già destinata ad un altro attributo.
Controllo delle regole di :
valore per l'attributo.
commerciali potrebbero essere utilizzati
La seconda fase del processo di data cleaning consiste nella trasformazione dei dati per effettuare la
correzione.
Anche per questo tipo di operazione esistono molti tool commerciali utili per la correzione:
esempio, consentono di sostituire la stringa “gender” con “sex”.
trasformazioni tramite l'uso di una semplice interfaccia utente (GUI).
07. Le fasi del processo di data cleaning si effettuano una sola volta. Vero o falso? Discutere la scelta
Falso. Potrebbe essere necessario ripetere il processo di data cleaning, organizzato nelle due fasi di
rilevazione di discrepanze e trasformazioni dei dati, più volte.
Infatti, questo processo, potrebbe essere soggetto ad errori e alcune trasformazioni possono introdurre altre
discrepanze.
Inoltre, alcune discrepanze nidificate possono essere rilevate solo dopo che le altre siano state risolte.
Le trasformazioni sono spesso effettuate come un processo batch, mentre l'utente attende senza feedback.
Solo dopo che la trasformazione è stata completata l'utente controlla che nessuna nuova anomalia sia stata
creata per errore.
Si capisce come il processo di data cleaning sia time consuming (richiede molto tempo).
08. Cosa si intende per Data Scrubbling e Data Auditing?
Esistono vari tool commerciali di cui si consiglia l’utilizzo nella fase di individuazione delle discrepanze.
Questi tool si occupano di:
ricercare gli errori ed effettuare le correzioni dovute.
discrepanze quelle tuple che violano tali condizioni. In genere si utilizza una analisi di correlazione e di
clustering.
Lezione 008
04. Quali sono i conflitti che possono apparire nei dati?
L'integrazione dei dati può generare conflitti sui valori.
Per esempio, per la stessa entità del mondo reale, i valori di un attributo acquisiti da sorgenti differenti
possono differire. Ciò può essere dovuto a differenze nella rappresentazione, nella scala o nella codifica. Per
esempio, l’attributo distanza potrebbe essere espresso in metri o in pollici.
Attributi possono anche differire relativamente al livello di astrazione: un attributo in una base di dati
potrebbe essere stato memorizzato ad un livello di astrazione più basso di quanto non sia in un'altra base di
dati. Per esempio, la temperatura media potrebbe riferirsi alla media in un'ora in una base di dati, mentre alla
media in un giorno in un'altra base di dati.
05. Cos'è il test del chi quadro? Come può essere utilizzato nella fase di data integration?
La ridondanza è uno dei problemi fondamentali a cui far fronte quando si effettua l'integrazione.
“Un attributo può essere ridondante se può essere derivato da un altro attributo o da un insieme di attributi.”
Le inconsistenze possono anche esse causare ridondanze nell’insieme dei dati risultante.
Dato che la ridondanza inficia le prestazioni del processo di analisi dei dati è fondamentale individuarla ed
eliminarla.
Molte delle ridondanze presenti possono essere individuate tramite l’analisi di correlazione. Dati due attributi,
tale analisi valuta quanto un attributo “dipende” da un altro.
Per attributi numerici la correlazione fra due attributi può essere calcolata utilizzando il coefficiente di
correlazione: maggiore è il suo valore e maggiore è la correlazione fra i due attributi. Se due attributi sono
fortemente correlati, uno di loro può essere eliminato in quanto fornisce un'informazione ridondante.
Per attributi discreti o categorici viene spesso utilizzato il test del χ2 (chi- quadro): maggiore è il valore del
chi-quadro, maggiormente i due attributi sono correlati. Di nuovo uno dei due attributi è quindi ridondante e
può essere eliminato.
06. Cosa si intende per l'identificazione delle ridondanze? Come si possono gestire?
La ridondanza è uno dei problemi fondamentali a cui far fronte quando si effettua l'integrazione.
“Un attributo può essere ridondante se può essere derivato da un altro attributo o da un insieme di attributi.”
Le inconsistenze possono anche esse causare ridondanze nell’insieme dei dati risultante.
Dato che la ridondanza inficia le prestazioni del processo di analisi dei dati è fondamentale individuarla ed
eliminarla.
Molte delle ridondanze presenti possono essere individuate tramite l’analisi di correlazione. Dati due attributi,
tale analisi valuta quanto un attributo “dipende” da un altro.
Per attributi numerici la correlazione fra due attributi può essere calcolata utilizzando il coefficiente di
correlazione: maggiore è il suo valore e maggiore è la correlazione fra i due attributi. Se due attributi sono
fortemente correlati, uno di loro può essere eliminato in quanto fornisce un'informazione ridondante.
Per attributi discreti o categorici viene spesso utilizzato il test del χ2 (chi- quadro): maggiore è il valore del
chi-quadro, maggiormente i due attributi sono correlati. Di nuovo uno dei due attributi è quindi ridondante e
può essere eliminato.
07. Quando si parla di data integration, cosa sono e come si usano i metadati?
Per evitare errori generati dal problema dell’identificazione delle entità durante l’integrazione si possono
sfruttare ed utilizzare i metadati.
Esempi di metadati per ogni attributo includono nome, significato, tipo di dati, range di valori permessi e
regole per gestire valori nulli.
I metadati possono anche essere usati per aiutare ad evitare errori nello schema di integrazione.
Lezione 009
05. Discutere il problema della dimensionalità e come la riduzione dei dati aiuta a risolverlo.
Molto spesso una base di dati o un data wareouse potrebbe contenere al suo interno terabyte e terabyte di
dati.
Molte fra le tecniche di data mining prevedono di scansionare anche più di una volta le tabelle in cui sono
contenuti i dati. Ne consegue che processo di estrazione di conoscenza potrebbe durare molto tempo.
La forza della trasformata wavelet sta nel fatto che i segnali wavelet trasformati possono essere “troncati” e
ricostruiti successivamente a partire dal segnale wavelet base.
Quindi si avrà una forte compressione dei dati, perché si memorizzeranno solamente i coefficienti wavelet
più significativi, generando un'ottima approssimazione dell'intero insieme di dati.
Ad esempio tutti i coefficienti wavelet sopra una determinata soglia stabilita dall'utente possono essere
memorizzati, mentre gli altri sono considerati nulli ed eliminati.
08. Quali sono i casi in cui conviene maggiormente usare la PCA oppure la trasformata wavelet?
La PCA tende ad essere migliore per gestire dati sparsi, mentre la DWT è più adatta per i dati di elevata
dimensionalità.
Lezione 010
07. Discutere le differenze tra metodi wrapper e metodi filter per la selezione di attributi
Per effettuare la valutazione di un singolo attributo o di un insieme di attributi si possono utilizzare metodi
che utilizzano un classificatore o un regressore specifico (metodi wrapper) oppure approcci che tengono in
considerazione la correlazione o la mutua informazione fra gli attributi e il vettore delle classi (metodi filter).
08. Discutere la mutua informazione fra due attributi/variabili e spiegare come può essere utilizzata
nel processo di selezione di attributi
Intuitivamente, l'informazione mutua fra due variabili Xe Y misura l'informazione che X e Y condividono: essa
misura quanto la conoscenza di una di queste variabili riduce la nostra incertezza riguardo all'altra.
Ad esempio, se X e Y sono indipendenti, allora la conoscenza di X non dà alcuna informazione riguardo a Y
e viceversa, perciò la loro mutua informazione è zero.
All'altro estremo, se X e Y sono identiche allora tutte le informazioni trasmesse da X sono condivise con Y: la
conoscenza di X determina il valore di Y e viceversa. Come risultato, nel caso di identità l'informazione
mutua è la stessa contenuta in Y (o X) da sola, vale a dire l'entropia di Y (o X: chiaramente se X e Y sono
identiche, hanno identica entropia).
Maggiore è il valore della mutua informazione e maggiore due variabili sono correlate.
Nel processo di selezione di attributi il concetto di mutua informazione può essere utilizzato in vari contesti.
Per prima cosa, potrebbe essere utilizzato per effettuare una classifica degli attributi. Facendo l'assunzione
forte che gli attributi siano indipendenti, si calcola la mutua informazione fra ciascun attributo e la variabile di
uscita. In problemi di classificazione la variabile di uscita sarà nominale, in problemi di regressione tale
variabile sarà di numerica. Gli attributi con maggiore mutua informazione sono quelli più correlati con l'uscita
e quindi potrebbero essere selezionati. Occorre fissare una soglia o sul numero di attributi o sul valore
minino di mutua informazione.
Nel processo di ricerca del sottoinsieme migliore di attributi, vengono spesso utilizzati degli indici, basati
sulla mutua informazione. Essi sono utilizzati per valutare la bontà del sottoinsieme individuato o per
valutare quale attributo conviene aggiungere.
09. Cosa si intende per metodo greedy?
Metodi euristici che, ad ogni passo della ricerca nello spazio degli attributi, effettuano la migliore scelta
possibile. L’ idea dei metodi euristici è quella di ottenere un sottoinsieme ottimale degli attributi che
probabilmente non sarà l’ottimo, ma che ha una buona probabilità di avvicinarsi.
10. Cosa si intende per attributi ridondanti e irrilevanti?
L’insieme di dati da analizzare con tecniche di data mining potrebbe avere moltissimi attributi. Fra questi ci
potrebbero essere attributi:
Ridondanti , che replicano parti o tutte le informazioni già contenute già in altri attributi. Per esempio, il
prezzo di un prodotto e l’IVA pagata (in genere una percentuale del prezzo).
Irrilevanti , che contengono informazioni che non sono utili al processo di data mining. Per esempio, la
matricola di uno studente è inutile se si vuole predire il valor medio dei voti di un esame
Lezione 011
04. Discutere una tecnica per la generazione di gerarchie di concetti per dati nominali
Le gerarchie di concetti organizzano i concetti (i valori degli attributi) in maniera gerarchica, specialmente nei
data warehouse.
Tali gerarchie facilitano l'inserimento e l'eliminazione di attributi nei data warehouse.
La formazione delle gerarchie di concetti consente ricorsivamente la riduzione dei dati raggruppando e
sostituendo concetti a basso livello con concetti a più alto livello (ad esempio i valori numerici per età
possono essere sostituiti con concetti del tipo, giovane, adulto, senior).
Le gerarchie di concetti possono essere specificate a mano da esperti del dominio dei dati oppure dai
progettisti dei data warehouse.
Le gerarchie possono anche essere create in maniera automatica da dati numerici e nominali. Per i dati
numerici, occorre utilizzare prima dei metodi di discretizzazione.
Il concetto di gerarchie viene utilizzato per trasformare e discretizzare i dati in molteplici livelli di granularità.
Si riportano di seguito due dei quattro metodi per la generazione dei gerarchie di concetti per i dati nominali:
dell'utente esperto al livello della generazione dello schema
I concetti gerarchici spesso sono presentati in gruppi.
Un utente esperto del dominio può facilmente definire i concetti gerarchici tramite la specifica anche parziale
di un ordinamento fra gli attributi.
Ad esempio se si considerano gli attributi “Città”, “Regione”, “Strada”, l'ordinamento intuitivo che l'utente
esperto potrebbe fornire e’ Regione>Città>Strada.
Questa è essenzialmente la definizione manuale di una parte della gerarchia dei concetti.
Nei grandi database è ovviamente irrealistico definire un'intera gerarchia tramite un'esplicita enumerazione
dei valori presenti.
Per tale motivo, in tali casi, si specificano dei gruppi di dati di livello intermedio. Ad esempio, dopo aver
specificato “Città” e “Stato” come gerarchia per lo schema, un utente può definire qualche livello intermedio
gerarchico.
Ad esempio {Novedrate, Como, Lombardia} < Italia
05. Cosa sono le gerarchie di concetti? Per cosa possono essere utili?
Le gerarchie di concetti organizzano i concetti (i valori degli attributi) in maniera gerarchica, specialmente nei
data warehouse.
Tali gerarchie facilitano l'inserimento e l'eliminazione di attributi nei data warehouse.
La formazione delle gerarchie di concetti consente ricorsivamente la riduzione dei dati raggruppando e
sostituendo concetti a basso livello con concetti a più alto livello (ad esempio i valori numerici per età
possono essere sostituiti con concetti del tipo, giovane, adulto, senior).
Le gerarchie di concetti possono essere specificate a mano da esperti del dominio dei dati oppure dai
progettisti dei data warehouse.
Le gerarchie possono anche essere create in maniera automatica da dati numerici e nominali. Per i dati
numerici, occorre utilizzare prima dei metodi di discretizzazione.
Il concetto di gerarchie viene utilizzato per trasformare e discretizzare i dati in molteplici livelli di granularità.
06. Discutere la discretizzazione dei dati e la tassonomia delle tecniche esistenti
La tecniche di discretizzazione consentono di dividere l’intervallo di un attributo numerico (reale) in intervalli.
Gli intervalli vengono poi utilizzati per sostituire nelle tabelle i valori reali effettivi.
Questo processo serve sia di ridurre i dati sia per preparare la successiva fase si analisi.
Molti algoritmi di data mining, infatti, prevedono la discretizzazione inziale dei dati.
Matrice di dissimilarità : matrice quadrata e triangolare n x n riporta le distanze fra ciascuna coppia di punti
05. Qual’è la differenza tra distanza e similarità?
Concetto di distanza: Si indichi con S la rappresentazione simbolica di uno spazio di misura Siano x , y , z tre punti qualsiasi nello spazio S. Si definisce la misura di distanza d(x,y): S x S-> R una funzione che soddisfa le seguenti condizioni:
Concetto di similarità: Si indichi con S la rappresentazione simbolica di uno spazio di misura Siano x , y due punti qualsiasi nello spazio S. Si definisce la misura di similarità s(x,y): S x S-> R una funzione che soddisfa le seguenti condizioni:
Similarità: Valore numerico che specifica quanto due oggetti siano simili Il valore della similarità è tanto maggiore quanto due oggetti sono simili In genere è definito nell’intervallo [0,1]. Quando la similarità vale 1, i due oggetti in questione sono identici.
06. Cos’è la disuguaglianza triangolare? Fornire un semplice esempio grafico
Se la funzione di distanza rispetta anche la seguente condizione, detta disuguaglianza triangolare :
essa si definisce distanza metrica. La quarta condizione si definisce comunemente come diseguaglianza triangolare: la distanza trai i punti x ed y deve essere minore o al massimo uguale alla somma delle distanza tra i due punti ed un terzo punto z distinto dai precedenti.
7 ti p - n x p ) e: le righe e tano entità ensione, iangolare n a ciascuna » » » » » » » ¼ º « « « « « « « ¬ ª np ... x nf ... x n x ... ... ... ... ... ip ... x if ... x i x ... ... ... ... ... 1p ... x 1f ... x 11 x » » » » » » ¼ º « « « « « « ¬ ª ( , 1 ) ( , 2 ) ... 0 : : : ) ( 3 , 2 ) dn dn ... d(3,1 d 0 d(2,1) 0 0
Lezione 013
04. Definire la distanza di Minkowski e le sue proprietà
Uno dei tipi di distanza che possono essere usati nella creazione dei modelli di data mining. Si utilizza per
attributi numerici.
Dati i = (xi1, xi2, ..., xip) e j = (xj1, xj2, ..., xjp) due attributi punti definiti nello spazio p-dimensionale, si
d e f i n i r e l a d i s t a n z a d ( I , j ) c o m e s e g u e :
Dove h rappresenta l’ordine della distanza, chiamata anche Lh norma.
Proprietà della Distanza di Minkowski:
d(i, j) > 0 se i ≠ j, ed(i,i) = 0 ( Definita positiva)
d(i, j) = d(j, i) (Simmetrica)
d(i, j) ≤ d(i, k) + d(k, j) (Diseguaglianza triangolare)
Come già detto in precedenza, una distanza che soddisfa queste proprietà si dice metrica.
Casi speciali della distanza di Minkowski:
In base al valore di h si identificano dei diversi tipi di distanza:
Nella formula della distanza Minkowski:
h rappresenta l’ordine della distanza, chiamata anche Lh norma.
In base al valore di h si identificano dei diversi tipi di distanza:
In base al valore di h si identificano dei diversi tipi di distanza:
Lezione 014
04. Qual’è la differenza tra la distanza e la similarità di Jaccard?
Nel caso di vettori con attributi descritti da variabili binarie asimmetriche si utilizza, in genera, la distanza di
Jaccard:
La similarità o indice di Jaccard, si calcola come segue:
La similarità di Jaccard viene anche definito come coerenza, ed è pari ad 1-d(i,j)jaccard.
Si tratta di una media pesata, dove i δij sono dei pesi definiti per ciascuna coppia corrispondente di attributi.
I pesi valgono zero se per uno dei due oggetti il valore della variabile f non è definita o xif=xjf e la variabile è
binaria asimmetrica. In alternativa, valgono 1.
Lezione 016
05. Discutere la principale differenza fra clustering e classificazione
Il problema del clustering consiste nell’attribuire le osservazioni sperimentali a una tra differenti categorie e
allo stesso tempo nello scoprire tali categorie.
Nel problema del clustering, come nella classificazione, mi interessa trovare la legge che mi permette di
assegnare le osservazioni alla classe corretta; ma, a differenza della classificazione , devo anche trovare
una plausibile suddivisione delle classi.
Mentre nella classificazione ho un aiuto che proviene dal target (la classificazione che mi viene fornita nel
training set), nel caso del clustering non posso basarmi su alcuna informazione aggiuntiva e devo dedurre le
classi studiando la distribuzione spaziale dei dati.
Si immagini di avere un insieme di oggetti da analizzare in cui, a differenza della classificazione, non `e nota
l’etichetta di classe di ciascun oggetto.
Il processo di raggruppamento di un insieme di oggetti fisici o astratti in classi di oggetti simili `e denominato
clustering.
Un cluster `e una collezione di oggetti che sono simili l’un l’altro e sono dissimili dagli oggetti di altri cluster.
Un cluster di oggetti può essere trattato collettivamente come un gruppo in molte applicazioni.
Sebbene la classificazione `e un mezzo efficace per distinguere gruppi o classi di oggetti essa richiede una
costruzione e un’etichettatura del training set che risultano spesso costose.
06. Discutere la principale differenza tra apprendimento supervisionato e non supervisionato
Nell’apprendimento supervisionato la logica di classificazione viene conferita alla macchina come input,
mentre nell’apprendimento non supervisionato la logica di classificazione non viene consegnata alla
macchina ma è demandato alla macchina il compito di trovarne una. Quindi per esempio se si ha una
popolazione da classificare in gruppi, a seconda di caratteristiche definite, si lascia il computer definire i
raggruppamenti.
07. Discutere il concetto di cluster
Un cluster è una collezione di oggetti simili tra loro e che sono dissimili rispetto agli oggetti degli altri cluster.
E’ importante poter valutare la qualità del partizionamento dei dati ottenuto tramite un algoritmo di clustering.
Si è detto che in linea di massima, un buon clustering assicura che punti dello stesso cluster sia simili fra
loro e punti di cluster diversi siano distanti fra loro.
Formalmente un buon algoritmo di clustering produce cluster di alta qualità se assicura:
La qualità di un algoritmo di clustering dipende da:
La misura di similarità utilizzata dall’algoritmo
La sua implementazione
L’abilità dell’algoritmo di scoprire alcuni o tutti gli elementi caratteristici nascosti nei dati.
Fondamentale è il tipo di misura di similarità utilizzata: scegliere una misura non idonea al tipo dei dati
potrebbe portare a risultati non soddisfacenti.
08. Quali sono i principali requisiti che devono assicurare gli algoritmi di clustering?
Gli algoritmi di clustering devo essere in grado di assicurare :
Scalabilità : possibilità di gestire dati di dimensioni crescenti, sia in termini di quantità di oggetti sia in termini
di numero di attributi usati per descriverli
Abilità a gestire attributi di tipo diverso
Clustering con vincoli : l’utente deve avere la possibilità di fissare dei vincoli e usare la conoscenza del
dominio di applicazione per fissare i parametri di ingresso dello specifico algoritmo
Interpretabilità ed usabilità dei risultati : il modello e i risultati devo essere “leggibili” e direttamente
utilizzabili per risolvere uno specifico problema (vedere le applicazioni del clustering elencate in questa
lezione).
Ulteriori sfide :
Identificare cluster di forma arbitraria
Trattare dati rumorosi
Identificare i gruppi in maniera incrementale
Gestire dati con elevata dimensionalità
Gestire big data
Lezione 017
05. Qual’è la principale differenza tra algoritmi di clustering partizionali e density-based?
Algoritmi partizionali :
Dato un insieme di n oggetti, i metodi partizionali costruiscono k partizioni dei dati, dove ogni partizione
rappresenta un cluster. Ogni partizione contiene almeno un oggetto.
La maggior parte dei metodi partizionali sono basati sulla distanza. Dato il numero k dei cluster, un metodo
partizionale crea una partizione iniziale.
Successivamente, si usa una tecnica di rilocazione iterativa che tenta di migliorare il partizionamento
muovendo gli oggetti da un gruppo ad un altro.
Il criterio generale di un buon partizionamento prevede che oggetti nello stesso cluster siano vicini o collegati
l’un l’altro, mentre oggetti in cluster differenti sono lontani o molto differenti.
Raggiungere l’ottimo globale nel partizionamento dell’insieme di dati è spesso computazionalmente
proibitivo, richiedendo una enumerazione esaustiva di tutte le possibili partizioni.
La maggior parte dei metodi proposti adottano approcci euristici, come per esempio l’approccio greedy
seguito per i popolarissimi k-means e k-medoids.
Questi algoritmi progressivamente procedono per minimizzazioni locali e migliorano la qualità del
partizionamento.
Gli algoritmi partizionali in genere trovano cluster di forma sferica e possono essere applicati a piccoli insiemi
di dati.
Algoritmi density-based:
La maggior parte dei metodi partizionali partizionano gli oggetti basandosi sulla distanza. Gli algoritmi di
clustering che si basano sul concetto di densità utilizzano funzioni di connettività e di densità per identificare
i cluster.
I metodi che si basano sul concetto di densità fanno crescere un cluster fintantoché la densità (numero di
oggetti) nel vicinato eccede una soglia prefissata. Il vicinato è in genere definito da un raggio.
Per esempio, per ogni oggetto in un dato cluster, il vicinato raggio deve contenere almeno un numero
minimo di punti.
Metodi basati sulla densità possono ridurre il rumore ed individuare outlier, oltre a scoprire cluster di forma
arbitraria.
06. Come funzionano gli algoritmi di clustering gerarichici?
Gli algoritmi appartenenti a questa categoria effettuano una decomposizione gerarchica dell’insieme di dati.
I metodi gerarchici possono essere aggregativi o divisivi in base a come la decomposizione è realizzata.
L’ approccio agglomerativo inizia considerando che ogni oggetto formi un cluster separato. Quindi, unisce i
cluster più vicini fino a quando tutti i cluster sono raggruppati in un solo cluster oppure una condizione di
terminazione è verificata.
L' approccio divisivo inizia considerando tutti gli oggetti in un unico cluster. Ad ogni iterazione successiva, un
cluster è diviso in cluster più piccoli, finché ogni oggetto formi un cluster oppure una condizione di
terminazione è verificata
dal punto stesso.
Pseudocodice :
05. Qual’è la differenza tra cluster e centroide nell’algoritmo di clustering K-means?
L’algoritmo K-means è il più famoso degli algoritmi partizionali.
Fu introdotto nel 1967 da MacQueen e l’obiettivo inseguito è quello di minimizzare la varianza totale inter-
cluster.
Ogni cluster è rappresentato da un centroide (baricentro o punto medio).
Ogni centroide è descritto da un insieme di attributi di dimensione pari a quello dei singoli oggetti che
vengono clusterizzati.
06. Qual’è la misura che si ottimizza nell’algoritmo di clustering K-means?
d(xi, cj). ???
07. Discutere l’idea di base dell’algoritmo di clustering K-means
L’algoritmo è di tipo iterativo: passo passo si cerca di migliorare la clusterizzazione.
punti possono essere assegnati a caso o utilizzando anche informazioni sul dominio del problema.
dal punto stesso.
Lezione 019
05. Discutere lo schema base di un algoritmo di clustering gerarichico agglomerative
L’approccio agglomerativo inizia considerando che ogni oggetto formi un cluster separato. Quindi, unisce i
cluster più vicini fino a quando tutti i cluster sono raggruppati in un solo cluster oppure una condizione di
terminazione è verificata.
A questo gruppo appartiene l’algoritmo AGNES (Aglomerative Nesting).
Lo schema base di un algoritmo di clustering gerarchico agglomerativo è il seguente:
Raggruppare i cluster più vicini
Aggiornare la matrice delle distanze
06. Come si calcola la distanza tra due cluster nati dalla fusione di due o più cluster?
Esistono vari metodi per aggiornare la matrice delle distanze fra i cluster ad ogni iterazione.
Il problema è quello di calcolare la distanza fra due cluster nati dalla fusione di due o più cluster. Si parte dal
conoscere la distanza fra gli elementi appartenenti ai due cluster (cosa vera a ciascun passo dell’algoritmo).
Di seguito si riportano i quattro metodi più diffusi.
Single Link: è la minima distanza fra due elementi dei cluster
Complete Link: è la massima distanza fra due elementi dei cluster
Average Link: è la media delle distanze fra tutti gli elementi dei cluster
Weighted Average Link: è la media pesata delle distanze fra tutti gli elementi dei cluster. I pesi sono
rappresentati dal numero di elementi di ciascun cluster.
Centroide: la distanza si calcola come la distanza fra i centroidi dei cluster.
07. Quali sono i pro e i contro degli algoritmi di clustering gerarchico?
Pro :
Non richiede di definire a priori il numero dei cluster
Il numero desiderato di cluster puoì essere ottenuto ‘tagliando’ il dendrogramma al livello opportuno
Può̀ identificare una tassonomia (classificazione gerarchica) di concetti Gli elementi più simili saranno fusi
prima di elementi meno simili
Contro :
Una volta che una decisione è presa (fusione) non piò più essere annullata
In molte configurazioni è sensibile a rumore e outlier
Manca una funzione di ottimizzazione globale
08. Discutere i passi principali dell’algoritmo DIANA
Lavora in maniera inversa di AGNES.
(che ha la massima distanza fra qualsiasi coppia di suoi oggetti).
oggetti del cluster.
ottengono due cluster.
terminazione.
09. Qual’è la principale differenza tra gli algoritmi AGNES e DIANA?
Algoritmo AGNES
Utilizza il single link per misurare la distanza fra i cluster (minimo delle distanze fra gli elementi di cluster
diversi).
Si basa sulla fusione di nodi o cluster che hanno minima distanza.
Segue un approccio bottom-up (dal basso all’alto) fino ad ottenere un unico cluster finale.
Algoritmo DIANA
Lavora in maniera inversa di AGNES.
10. Che cos’è il dendogramma?
Gli algoritmi di clustering gerarchico producono insiemi diversi di cluster organizzati come un albero
gerarchico.
Tale albero si rappresenta graficamente con il cosiddetto dendogramma
Il dendogramma è un diagramma ad albero che mostra le sequenza di fusioni fra cluster.