Esercizi sull Association Analysis



Похожие документы
1 Giochi a due, con informazione perfetta e somma zero

1. PRIME PROPRIETÀ 2

Regole di Associazione

Algoritmi e strutture dati. Codici di Huffman

10. Insiemi non misurabili secondo Lebesgue.

RELAZIONI BINARIE. Proprietà delle relazioni Data una relazione R, definita in un insieme non vuoto U, si hanno le seguenti proprietà :

Teoria degli insiemi

Teoria dei Giochi. Anna Torre

Mining Positive and Negative Association Rules:

Esercizi Capitolo 6 - Alberi binari di ricerca

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

LEZIONE 23. Esempio Si consideri la matrice (si veda l Esempio ) A =

Corrispondenze e funzioni

9. Urti e conservazione della quantità di moto.

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Prova parziale di Geometria e Topologia I - 5 mag 2008 (U1-03, 13:30 16:30) 1/8. Cognome:... Nome:... Matricola:...

A i è un aperto in E. i=1

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

Prodotto libero di gruppi

Rappresentare i nessi logici con gli insiemi

Sulla monotonia delle funzioni reali di una variabile reale

Lezione 1. Gli Insiemi. La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme:

MATEMATICA DEL DISCRETO elementi di teoria dei grafi. anno acc. 2009/2010

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che:

Alberi binari di ricerca

Sono casi particolari di MCF : SPT (cammini minimi) non vi sono vincoli di capacità superiore (solo x ij > 0) (i, j) A : c ij, costo di percorrenza

Grandezze scalari e vettoriali

risulta (x) = 1 se x < 0.

Esercizi per il corso di Algoritmi e Strutture Dati

Esercizi su lineare indipendenza e generatori

ESERCIZI SVOLTI. 1) Dimostrare che l insieme. non è ricorsivo. Soluzione: Definiamo l insieme

Dimensione di uno Spazio vettoriale

19. Inclusioni tra spazi L p.

2 FUNZIONI REALI DI VARIABILE REALE

Il principio di induzione e i numeri naturali.

LEZIONE 31. B i : R n R. R m,n, x = (x 1,..., x n ). Allora sappiamo che è definita. j=1. a i,j x j.

NORMALIZZAZIONE DI SCHEMI RELAZIONALI. Prof.ssa Rosalba Giugno

Analisi dei Dati 12/13 Esercizi proposti 3 soluzioni

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione

FUNZIONI ELEMENTARI - ESERCIZI SVOLTI

CRITERI DI CONVERGENZA PER LE SERIE. lim a n = 0. (1) s n+1 = s n + a n+1. (2) CRITERI PER LE SERIE A TERMINI NON NEGATIVI

Prodotto elemento per elemento, NON righe per colonne Unione: M R S

Parte 6. Applicazioni lineari

CONTINUITÀ E DERIVABILITÀ Esercizi proposti. 1. Determinare lim M(sinx) (M(t) denota la mantissa di t)

Le funzioni continue. A. Pisani Liceo Classico Dante Alighieri A.S A. Pisani, appunti di Matematica 1

Funzioni. Parte prima. Daniele Serra

INdAM QUESITI A RISPOSTA MULTIPLA

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Lezioni di Matematica 1 - I modulo

I sistemi di numerazione

Calcolatori: Algebra Booleana e Reti Logiche

Ottimizazione vincolata

LEZIONE 7. Esercizio 7.1. Quale delle seguenti funzioni è decrescente in ( 3, 0) e ha derivata prima in 3 che vale 0? x x2. 2, x3 +2x +3.

1 Applicazioni Lineari tra Spazi Vettoriali

VC-dimension: Esempio

Funzione reale di variabile reale

1 Insiemi e terminologia

4 3 4 = 4 x x x 10 0 aaa

Capitolo 2. Operazione di limite

Correttezza. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 10. A. Miola Novembre 2007

CALCOLO COMBINATORIO

Elementi di informatica

Algebra Booleana 1 ALGEBRA BOOLEANA: VARIABILI E FUNZIONI LOGICHE

MATRICI E DETERMINANTI

4. Operazioni binarie, gruppi e campi.

Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo

Insiemi di livello e limiti in più variabili

5. La teoria astratta della misura.

Introduzione alla teoria dei database relazionali. Come progettare un database

Moto uniforme sul toro bidimensionale

Funzioni continue. ) della funzione calcolata in x 0, ovvero:

2. Leggi finanziarie di capitalizzazione

2) Codici univocamente decifrabili e codici a prefisso.

IGiochidiArchimede--Soluzionibiennio

Rette e piani con le matrici e i determinanti

Applicazioni lineari

void funzioneprova() { int x=2; cout<<"dentro la funzione x="<<x<<endl; }

Capitolo 13: L offerta dell impresa e il surplus del produttore

Rappresentazione dei numeri in un calcolatore

3 GRAFICI DI FUNZIONI

ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA

Attributi e domini. A per {A}; XY per X Y (pertanto A 1 A 2 A 3 denota

F (x) = f(x) per ogni x I. Per esempio:

DOMINI A FATTORIZZAZIONE UNICA

IGiochidiArchimede-SoluzioniBiennio 22 novembre 2006

LE FIBRE DI UNA APPLICAZIONE LINEARE

Transitori del primo ordine

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Luigi Piroddi

APPLICAZIONI LINEARI

Entropia. Motivazione. ? Quant è l informazione portata dalla sequenza? Abbiamo una sequenza S di N simboli (campioni audio, pixel, caratteri,...

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Algoritmi e Strutture Dati

STRUTTURE ALGEBRICHE

Транскрипт:

Data Mining: Esercizi sull Association Analysis 1 Esercizi sull Association Analysis 1. Si consideri il mining di association rule da un dataset T di transazioni, rispetto a delle soglie minsup e minconf. Si chiamino standard le regole estratte secondo il framework tradizionale. Una regola standard r : X Y è detta anche essenziale se X = 1 oppure per ogni X X, con X, confidenza(x Y (X X ) < confidenza(r). (a) Si consideri un dataset T con le seguenti 5 transazioni: (ABCD), (ABCE), (ABC), (ABE), (BCD). Usando minsup=0.5 e minconf=0.5, trovare una regola standard X Y con X > 1 che non sia essenziale. (b) Di quali regole standard non essenziali una regola essenziale può essere considerata rappresentante? (c) Per un generico dataset T, si consideri una regola standard r : X Y con confidenza c minconf. Si supponga che per un certo item a X valga che supporto(x) = supporto({a}). (i) Dimostrare che per un qualsiasi itemset X X, con a X, si ha che confidenza(x Y (X X )) = c. (ii) In base al risultato del punto (i), dimostrare che se X = m, esistono in T Ω (2 m ) regole standard non essenziali. (a) L itemset ABC ha supporto 3/5 > 0.5. Le regole A BC e AB C hanno entrambe confidenza 3/4 > 0.5, quindi la seconda di esse è standard ma non essenziale. (b) Una regola essenziale r : X Y con confidenza c può essere considerata rappresentante di tutte le regole r : X Y (X X ), con X X che hanno confidenza(r ) = confidenza(r). Infatti, relativamente a queste regole X è l itemset minimale la cui presenza in una transazione implica la presenza di X Y con confidenza c. (c) (i) Sia X X, con a X. Dalla antimonotonicità del supporto si ha che supporto({a}) supporto(x ) supporto(x). Ma poiché per ipotesi supporto(x) = supporto({a}), allora deve valere che supporto(x ) = supporto(x), e quindi confidenza(x (X Y ) X ) = supporto(x Y ) supporto(x ) = supporto(x Y ) supporto(x) = c.

Data Mining: Esercizi sull Association Analysis 2 (ii) Dal punto precedente si deduce che tutte le 2 m 1 regole del tipo X Y (X X ), con a X X, sono standard con lo stesso supporto e la stessa confidenza c di r, ma l unica essenziale è quella con X = {a}. 2. Sia T un dataset di transazioni sull insieme di item I. Per ogni i I sia s i il supporto dell itemset {i}. Per ogni itemset X I sia max(x) = max{s i : i X}. Si definisca la misura µ(x) = Supporto(X). max(x) (Si noti che µ coincide con l h-confidence definita a lezione.) (a) Si dimostri che µ( ) è una misura antimonotona. (b) Data una regola associativa r : X Y, provare che Confidenza(r) µ(x Y ). (c) Data una soglia minmu (0, 1), sia F k l insieme di itemset X di lunghezza k tali che µ(x) minmu, per ogni k 1. Fissato k > 1, e definito C k = {X {i} : (X F k 1 ) (i I X) (s i max(x))}, dimostrare che F k C k. (a) Si considerino due itemset X, Y I con X Y. Per l antimonotonicità del supporto si ha che Supporto(X) Supporto(Y ), ed è facile vedere che max(y ) max(x). Quindi µ(x) = Supporto(X) max(x) Supporto(Y ) max(x) Supporto(Y ) max(y ) = µ(y ) (b) È facile vedere che Supporto(X) max(x) max(x Y ). Di consegeunza Confindenza(r) = Supporto(X Y ) Supporto(X) Supporto(X Y ) max(x Y ) = µ(x Y ) (c) Sia X = {i 1, i 2,..., i k } un itemset di lunghezza k con µ(x) minmu, e sia s ik = max(x). Per l antimonotonicità di µ( ) provata precedentemente, si ha che X = {i 1, i 2,..., i k 1 } X è tale per cui µ(x ) µ(x) minmu, e quindi X F k 1. Inoltre vale che s ik max(x ). Quindi l itmeset X = X {i k } fa parte di C k.

Data Mining: Esercizi sull Association Analysis 3 3. Si consideri un dataset T di transazioni sull insieme di item I. Per un itemset X si definisca T X come l insieme di transazioni che contengono X, e si definisca Chiusura(X) = t T X t. Dimostrare le seguenti proprietà: (a) Supporto(Chiusura(X)) = Supporto(X); (b) Chiusura(X) è un itemset chiuso; (c) Se X è chiuso, allora X = Chiusura(X). Per comodità di notazione, definiamo Y = Chiusura(X). (a) È facile vedere che X Y e quindi, per l antimonotonicità del supporto, si ha che Supporto(X) Supporto(Y ). Inoltre, dato che Y è contenuto per definizione in tutte le transazioni di T X, si ha che Supporto(Y ) T X / T = Supporto(X). Ne consegue che Supporto(Y ) = Supporto(X). (b) Per assurdo, supponiamo che Y non sia un itemset chiuso e, quindi, che esista un item a Y tale che Y {a} abbia lo stesso supporto di Y. Allora, sfruttando quanto provato nel punto precedente, possiamo affermare che X Y Y {a}, e che Supporto(X) = Supporto(Y ) = Supporto(Y {a}). Ne consegue che T X = T Y = T Y {a}. Ciò implica che l item a è presente in tutte le transazioni che contengono X, ovvero nella loro intersezione, e quindi, per definizione di chiusura, si ha che a Y, contraddicendo la scelta di a. (c) Supponiamo che X sia chiuso. Sappiamo già che X Y e che X e Y hanno lo stesso supporto. Se X fosse diverso da Y esisterebbe un sovrainsieme proprio di X che ha lo stesso suo supporto, e quindi X non sarebbe chiuso. 4. Si consideri un dataset T di transazioni sull insieme di item I. Per un itemset X si definisca T X come l insieme di transazioni che contengono X, e si ricordi che se X è chiuso allora vale che X = Chiusura(X) = t T X t. (a) Siano X, Y I due itemset chiusi e sia Z = X Y. Trovare una relazione che lega T Z a T X e T Y (motivando la risposta) e dimostrare che Z è chiuso. (b) Per un itemset X si definisca la seguente misura: µ(x) = max{confidenza(w X) : W I, W X = }. Dimostrare che µ( ) è antimonotona.

Data Mining: Esercizi sull Association Analysis 4 (a) Poichè Z è contenuto in una qualsiasi transazione di T X e in una qualsiasi transazione di T Y, si ha che T X T Y T Z. Se Z non fosse chiuso esisterebbe un item a Z tale che l itemset V = Z {a} avrebbe lo stesso supporto di Z e quindi sarebbe contenuto in tutte le transazioni che contengono Z. Quindi a sarebbe contenuto in tutte le transazioni di T X e in tutte le transazioni di T Y, e quindi poiché X = t T X t e Y = t T Y t, si avrebbe che a X e a Y e quindi a X Y = Z che contraddice la scelta di a. (b) Siano X, X due itemset con X X, e supponiamo che µ(x ) = max{confidenza(w X ) : W I, W X = } = Confidenza( W X ), per un qualche itemset W disgiunto da X. Chiaramente si ha che W è anche disgiunto da X e che µ(x) Confidenza( W X) = Supporto( W X) Supporto( W ) Quindi la misura è antimonotona. Supporto( W X ) Supporto( W ) = µ(x ). 5. Siano I 1 = {a 1, a 2,..., a n } e I 2 = {b 1, b 2,..., b m } due insiemi distinti di item, con n pari ed m log 2 n. Si consideri un dataset T = {t 1, t 2,..., t n } di n transazioni su I 1 I 2, dove I 1 t i I 1 I 2 per ogni 1 i n/2 t i I 2 per ogni n/2 < i n (a) Fare un esempio di un tale dataset T con n = 8 e m = 3, in cui non ci siano due transazioni uguali. (N.B. Per i punti successivi non usare questo particolare dataset ma uno arbitrario che soddisfi le ipotesi date.) (b) Dimostrare che rispetto a T esistono almeno 2 n 1 itemset non vuoti di supporto 1/2. (c) Sia X un itemset chiuso rispetto a T. Dimostrare che se X contiene almeno un item di I 1 allora deve contenere per forza tutto I 1. (d) Usare il punto precedente per dare un limite superiore al numero di itemset chiusi rispetto a T. (a) Esercizio. (b) Un qualsiasi X I 1 ha supporto 1/2. Esistono 2 n 1 sottoinsiemi non vuoti di I 1.

Data Mining: Esercizi sull Association Analysis 5 (c) Sia X chiuso tale che X I 1 e sia T X l insieme delle transazioni che contengono X. Chiarmente T X {t 1, t 2,..., t n/2 }, e quindi ogni transazione che contiene X contiene anche tutto I 1. Ne consegue che Supporto(X) = Supporto(X I 1 ), e se X non contenesse tutto I 1 si avrebbe un superset di X, X I 1, con lo stesso supporto di X, contraddicendo l ipotesi di chiusura di X. (d) Partizioniamo l insieme di itemset chiusi in due gruppi: il gruppo A degli itemset chiusi che contengono item di I 1 ; e il gruppo B degli itemset chiusi che non contengono item di I 1. Dal punto precedente sappiamo che ciascun itemset in A deve contenere tutto I 1. Quindi gli itemset in A possono distinguersi solo in base agli item di I 2. Allora, due itemset nel gruppo A non possono contenere lo stesso sottoinsieme di item di I 2, e quindi ci possono essere al più 2 m itemset in A. Analogamente, due itemset nel gruppo B non possono contenere lo stesso sottoinsieme di item di I 2, e quindi ci possono essere al più 2 m 1 itemset in B (escludendo l itemset vuoto). Quindi gli itemset chiusi sono meno di 2 2 m = 2 m+1. 6. Sia dato un insieme I = {a 1, a 2,..., a n } {b 1, b 2,..., b n } di 2n item, e un dataset T = {t 1, t 2,..., t n } di n transazioni su I, dove t i = {a 1, a 2,... a n, b i } per 1 i n. Per minsup = 1/n, determinare il numero di itemset chiusi frequenti e il numero di itemset massimali. Sia A = {a 1, a 2,..., a n } e B = {b 1, b 2,..., b n }. Ogni sottoinsieme di A ha supporto 1, mentre ogni itemset formato da un sottoinsieme di A e un item di B ha supporto 1/n. Tutti gli altri itemset hanno supporto 0. In questo caso gli itemset chiusi frequenti sono n + 1, ovvero, l itemset A e tutti gli itemset del tipo A {b i }, per 1 i n. Tutti questi itemset, tranne A sono anche massimali, quindi il numero di itemset massimali è n. 7. Si consideri l algoritmo apriori per la determinazione degli itemset frequenti in un dataset D di transazioni su un insieme ordinato di item I. Per ogni k 1, sia F k, l insieme degli itemset frequenti di lunghezza k. Per ogni X F k, siano X[1], X[2],..., X[k] i suoi item in ordine crescente. Per k > 1, nell algoritmo si usa il metodo apriori-gen(f k 1 ) per generare itemset di lunghezza k candidati a essere frequenti. Si supponga di implementare apriori-gen(f k 1 ) come segue:

Data Mining: Esercizi sull Association Analysis 6 C k ; for each X F k 1 do for each (i F 1 ) do if (i > X[k 1]) then aggiungi X {i} a C k rimuovi da C k ogni candidato che contiene itemset di taglia k 1 non in F k 1 return C k Dimostrare che l insieme C k restituito coincide con quello restituito nella implementazione standard di apriori-gen. Sia C k l insieme di candidati restituiti dall implementazione standard di apriori-gen. Per dimostrare che C k = C k, dimostriamo le seguenti due relazioni: (1) C k C k ; e (2) C k C k. Dimostriamo C k C k. Sia Z C k, e quindi Z = X {i} per un qualche X F k 1 e i F 1, con i > X[k 1]. Definito Y = X[1 k 2] {i}, si vede che sia X che Y fanno parte di F k 1 e condividono un prefisso di lunghezza k 2. Quindi Z = X Y sarà inserito in C k nella fase di candidate generation dell implementazione standard e non potrà essere tolto nella successiva fase di candidate pruning dato che sopravvive alla identica fase di pruning dell implementazione data nell esercizio. Dimostriamo ora che C k C k. Sia Z C k. Allora deve essere che Z = X Y, dove X, Y F k 1, X Y, e X[1... k 2] = Y [1... k 2]. Senza perdita di generalità, assumiamo che X[k] < Y [k]. Allora, Z = X {Y [k]}. Dato che X F k 1 e, per l antimonotonicità del supporto, Y [k] F 1, si ha che Z viene aggiunto a C k nei due cicli for innestati dell implementazione data nell esercizio. Dato che Z C k significa che sopravvive alla fase di pruning dell implementazione standard, e quindi deve sopravvivere alla fase di pruning dell implementazione data nell esercizio. Ne consegue che Z C k. 8. Si consideri una sequenza S[0, n 1] di simboli sull alfabeto Σ. Un motivo per S è una sequenza X[0, k 1] su Σ, con k < n, e il suo supporto (assoluto) è Supporto(X) = {i : 0 i < n and S[i, i + k 1] = X}. Ad esempio, aab è un motivo per bcaabdeaabaab con supporto 3. (a) Dimostrare che per il supporto dei motivi vale una proprietà di antimonotonia. (b) Data una soglia minsup [1, n], e dato k 1, sia F k l insieme di motivi di lunghezza k frequenti (cioè con supporto almeno minsup). Dati X, Y F k tali che X[1, k 1] = Y [0, k 2] si definisca fusione(x, Y ) il motivo X[0]Y (ad es., abcd = fusione(abc,bcd)). Sia C k+1 = {fusione(x, Y ) : X, Y F k and X[1, k 1] = Y [0, k 2]}. Dimostrare che F k+1 C k+1.

Data Mining: Esercizi sull Association Analysis 7 (a) Sia X[0, k 1] una sequenza su Σ e X = X[l, r] una sua sottosequenza, con 0 l r < k. Si ha che per ogni indice i tale che S[i, i + k 1] = X allora S[i + l, i + r] = X. E quindi, Supporto(X ) Supporto(X). (b) Si consideri una sequenza Z[0, k] F k+1 arbitraria, e si definisca X = Z[0, k 1] e Y = Z[1, k]. Per l antimonotonicità del supporto illustrata nel punto precedente, si deve avere che X, Y F k. Poiché Z = fusione(x, Y ), allora Z C k+1.