Sunteți pe pagina 1din 73

Introducere n Data Mining

Analiza asocierilor: concepte de baz a Lucian Sasu, Ph.D.


Universitatea Transilvania din Bra sov, Facultatea de Matematic a si Informatic a

April 5, 2012

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

1 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

2 / 73

Not iuni
In cadrul v anz arilor din magazine se nregistreaz a cont inutul co surilor de cump ar aturi achizit ionate = tranzact ii Problem a: pentru un set de tranzact ii s a se determine regulile care dau predispozit ia aparit iei unui obiect pe baza existent ei altor obiecte ntr-un co s Exemplu de tranzact ii: TID Obiecte 1 {p aine, lapte} 2 {p aine, scutece, bere, ou a} {lapte, scutece, bere, suc} 3 4 {p aine, lapte, scutece, bere} 5 {p aine, lapte, scutece, suc}
Table: Tranzact ii de tip co s de cump ar aturi

TID = Transaction ID Exemplu de regul a ce se poate extrage: {scutece } {bere }


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 3 / 73

Not iuni
Regula sugereaz a c a ar exista o relat ie de dependent a ntre v anzarea de scutece si cea de bere Remarc a: regula dat a este direct ional a; nu nseamn a neap arat si c a {bere } {scutece } Moduri de exploatare a unor astfel de reguli:
se scade pret ul obiectelor din antecedentul regulii, se cre ste pret ul celor din consecvent se face cross-selling se decide dispunerea pe raft a produselor se face reclam a sau ofert a personalizat a, gruparea produselor n cataloage de prezentare

Alte medii de aplicare: bioinformatic a, diagnostic medical, web mining, analiza stiint ic a a datelor

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

4 / 73

Not iuni

Probleme: descoperirea de patternuri n seturi mari de date este o problem a intensiv a computat ional o parte din relat iile descoperite pot pur si simplu rodul nt ampl arii evaluarea regulilor obt inute este un pas absolut necesar semnul de implicat ie n acest context nseamn a aparit ie concomitent a, nu cauzalitate de citit: Correlation does not imply causation (Wikipedia)

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

5 / 73

Not iuni, denit ii


Posibil mod de reprezentare a tranzact iilor: TID 1 2 3 4 5 P aine 1 1 0 1 1 Lapte 1 0 1 1 1 Scutece 0 1 1 1 1 Bere 0 1 1 1 0 Ou a 0 1 0 0 0 suc 0 0 1 0 1

Table: Reprezentare binar a a datelor tranzact iei

Reprezentarea binar a este asimetric a: prezent a unui produs este mai important a dec at lipsa lui Reprezentare voit simplist a, omit and cantitatea de achizit ie

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

6 / 73

Not iuni, denit ii

Mult ime de produse (simplu: mult ime; eng: itemset) colect ie de unul sau mai multe obiecte k mult ime (eng: k -itemset) o mult ime compus a din k obiecte (produse) Num arul de suport al unei mult imi () (eng: support count) frecvent a de aparit ie a acelei mult imi (X ) = |{ti : X ti , ti T }| unde T este mult imea tuturor tranzact iilor, |U | este num arul de elemente (cardinalul) al mult imii U Exemplu: ({lapte , paine , scutece }) = 2

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

7 / 73

Not iuni, denit ii


Regul a de asociere (regul a): o expresie de forma X Y unde X , Y sunt mult imi de produse, X Y =

Denit ie (Suportul unei reguli)


Suportul regulii X Y pentru o mult ime de N tranzact ii este fract ia de tranzact ii care cont in produsele din X Y : s (X Y ) = (X Y ) N (1)

Denit ie (Condent a unei reguli)


Condent a regulii X Y este num arul de tranzact ii care cont in pe X si Y raportat la cele care cont in doar pe X : c (X Y ) =
lucian.sasu@ieee.org (UNITBV) Curs 6

(X Y ) (X )
April 5, 2012

(2)
8 / 73

Not iuni, denit ii


Exemplu: pentru datele din tabelul de mai jos TID Obiecte 1 {p aine, lapte} 2 {p aine, scutece, bere, ou a} 3 {lapte, scutece, bere, suc} 4 {p aine, lapte, scutece, bere} {p aine, lapte, scutece, suc} 5 Consider am regula {lapte , scutece } {bere } Num arul de suport pentru {lapte , scutece , bere } este 2; num arul total de tranzact ii este 5, deci suportul este 2/5 Condent a: sunt 3 tranzact ii care cont in {lapte , scutece }, deci condent a este 2/3

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

9 / 73

Not iuni, denit ii

De ce se folose ste suportul?


o regul a cu suport mic poate nsemna o leg atur a nt ampl atoare o regul a cu suport mic sar putea s a e neprotabil a suportul poate elimina regulile neinteresante

De ce se folose ste condent a?


m asoar a ncrederea n rezultatul aplic arii unei reguli pentru regula X Y o condent a mare arat a n ce m asur a aparit ia mult imii X va duce la aparit ia mult imii Y c (X Y ) poate interpretat a ca probabilitatea condit ionat a P ( Y |X )

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

10 / 73

Not iuni, denit ii


Denit ie (Descoperirea relat iilor de asociere)
D anduse o mult ime de tranzact ii T , s a se g aseasc a toate regulile cu suport minsup si condent a conf minconf , unde minsup si minconf sunt praguri date. Abordare brute-force: se genereaz a toate regulile de asociere posibile se calculeaz a suportul si condent a ec arei reguli se elimin a regulile care nu respect a pragurile minconf si minsup date Complexitate de calcul prohibitiv a: num arul de reguli pentru d produse este: R = 3d 2d +1 + 1 (tem a pentru acas a) Pentru cele 6 produse din tranzact iile date am avea 602 reguli; pentru minsup = 20% si minconf = 50%, mai mult de 80% din regulile generate sunt eliminate!
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 11 / 73

Pa si de lucru
Observat ie important a: suportul regulii X Y depinde doar de num arul suport al mult imii X Y Pentru mult imea {bere , scutece , lapte } se pot genera 6 reguli: {bere , scutece } {lapte }, {bere } {scutece , lapte } etc.; toate acestea au acela si suport, indiferent de partit ionarea n antecedent/consecvent Dac a o mult ime nu este frecvent a, atunci toate regulile ce se pot construi pe baza ei pot eliminate f ar a a le mai calcula condent a Concluzie: se poate decupla calculul suportului si al condent ei Pa sii de lucru:
1

generarea mult imilor frecvente, i.e. al celor pentru care suportul este cel put in minsup generarea regulilor pe baza mult imilor frecvente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

12 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

13 / 73

Problema gener arii mult imilor frecvente


Generarea mult imilor frecvente este solicitant a computat ional: pentru o k mult ime de k produse se pot realiza 2 1 potent iale mult imi frecvente (se exclude )

Figure: Latice de mult imi


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 14 / 73

Varianta brute-force:
Fiecare mult ime candidat din latice este considerat ca un candidat de mult ime frecvent a Se calculeaz a num arul suport al ec arui candidat prin scanarea bazei de date Dac a un candidat e inclus ntro tranzact ie se incrementeaz a num arul suport

Figure: Diferit i parametri ai datelor de intrare


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 15 / 73

Complexitate si remedii

Complexitate: O (NMw ) unde: N = num arul de tranzact ii, M = 2k 1 este num arul de mult imi candidat, w este num arul maxim de obiecte dintr-o tranzact ie Modalit a ti de reducere a complexit a tii:
reducerea num arului de mult imi candidat M de exemplu prin principiul Apriori reducerea num arului de comparat ii la confruntarea unei mult imi cu o tranzact ie prin structuri de date eciente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

16 / 73

Principiul Apriori
Teorem a (Principiul Apriori)
Dac a un set este frecvent, atunci oricare din subseturile sale este de asemenea frecvent. Demonstrat ie: Pentru o tranzact ie care cont ine mult imea de obiecte X = {c , d , e } este evident c a ea cont ine si oricare din submult imile lui X : {c , d }, {c , e } etc. Mai mult, pentru o submult ime a lui X poate exista o tranzact ie care s a o cont in a, dar s a nu cont in a si pe X . Astfel, num arul suport pentru o submult ime a lui X este cel put in num arul suport al lui X . teorema arm a c a: X , Y : ( X Y ) s ( X ) s ( Y ) adic a o proprietate de anti-monotonie a suportului
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 17 / 73

Eliminarea mult imilor infrecvente


Contrapozit ia teoremei este util a pentru a face eliminarea mult imilor care nu pot frecvente: Dac a un set nu este frecvent, atunci oricare superset al lui nu poate s a e frecvent.

Figure: Retezarea mult imilor infrecvente


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 18 / 73

Strategie

Se porne ste cu 1-mult imi formate din c ate un obiect 1-mult imile nefrecvente se elimin a Se genereaz a 2-mult imi combin and 1-mult imi frecvente Pentru 2-mult imile generate se calculeaz a suportul; cele nefrecvente se elimin a Se continu a procedeul pentru 3-mult imi etc. Pe baza principiului Apriori, pentru generarea k -mult imilor frecvente candidat se iau n considerare doar (k 1)-mult imile frecvente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

19 / 73

Exemplu de aplicare

Figure: Generarea mult imilor frecvente folosind principiul Apriori


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 20 / 73

Schit a algoritmului Apriori

k =1 Se genereaz a 1-mult imi frecvente Repet a p an a c and nu se mai pot identica mult imi frecvente:
se genereaz a (k + 1)-mult imi candidat folosind k -mult imile frecvente de la pasul anterior se sterg (k + 1)-mult imile candidat care cont in k -mult imi infrecvente (cu suportul sub prag) se contorizeaz a suportul ec arei (k + 1)mult imi prin parcurgerea tranzact iilor se sterg (k + 1)-mult imile candidat care nu sunt frecvente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

21 / 73

Pseudocodul pentru algoritmul Apriori

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

22 / 73

Probleme ce trebuie rezolvate ecient pentru Apriori

Generarea mult imilor candidat si retezarea


1 2

generarea de k -mult imi folosind (k 1)-mult imi frecvente eliminarea candidat ilor care nu au suportul peste pragul impus

Calculul num arului suportul al unei mult imi

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

23 / 73

Generarea mult imilor candidat (var 1)

Generarea mult imilor candidat:


orice algoritm trebuie s a evite generarea de prea multe mult imi candidat trebuie s a asigure generarea unei familii complete de mult imi candidat trebuie s a evite generarea aceleia si mult imi candidat de mai multe ori ({a, b , c } poate proveni din {a, b } {c } sau din {a} {b , c } etc.)

Sunt mai mult i algoritmi n aceast a direct ie Metoda fort ei brute:


Se consider a ecare posibilitate de a obt ine o k -mult ime Se elimin a candidat ii cu suport prea mic Generarea e simpl a, calculul suportului pentru ecare candidat este costisitor Complexitatea metodei: O (d 2d 1 )

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

24 / 73

Generarea mult imilor candidat (var 2)

Metoda Fk 1 F1 :
se pleac a de la ecare (k 1)-mult ime frecvent a si se extinde cu obiecte (1-mult imi) frecvente procedeul e complet se poate ajunge la generarea multipl a a aceleia si k -mult imi evitare: ecare mult ime este ment inut a sortat a lexicograc: {a, b , c } si nu {b , a, c } sau altfel extinderea unei mult imi Fk 1 = {ob1 , ob2 , . . . , obk 1 } se face numai cu mult imi F1 = {x } unde obk 1 < x complexitate: O ( k k |Fk 1 ||F1 |) nc a se pot genera prea multe k -mult imi candidat

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

25 / 73

Generarea mult imilor candidat (var 3)

Metoda Fk 1 Fk 1 :
se reunesc dou a (k 1)-mult imi doar dac a primele k 2 elemente din ele sunt identice (se presupune ordinea lexicograc a): mai clar: dac a A = {a1 , a2 , . . . ak 1 } si B = {b1 , b2 , . . . bk 1 } sunt dou a (k 1)-mult imi, atunci ele se reunesc doar dac a: ai = bi , i = 1, . . . , k 2, ak 1 = bk 1

este varianta propus a n articolul ce introduce algoritmul Apriori

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

26 / 73

Reducerea num arului de comparat ii


Varianta brute force: se scaneaz a toat a baza de date pentru a determina valoarea suport a ec arei mult imi candidat
Posibil, dar neecient

Pentru a reduce num arul de comparat ii stoc am candidat ii ntrun arbore de dispersie (hash tree) Rezultat: n loc de a compara ecare tranzact ie cu ecare mult ime candidat, se compar a ecare tranzact ie cu grupuri de candidat i din arbore; se vor actualiza doar valorile suport pentru mult imi candidat din grupurile g asite

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

27 / 73

Crearea arborelui de dispersie, exemplu


Consider am funct ia de dispersie h(p ) = p mod 3 Impunem restrict ia ca ntrun nod frunz a s a nu avem mai mult de 3 mult imi reprezentate; dac a este cazul, un nod va fragmentat n noduri copil Presupunem c a avem mult imile candidat: {1, 4, 5}, {1, 2, 4}, {4, 5, 7}, {1, 2, 5}, {4, 5, 8}, {1, 5, 9}, {1, 3, 6}, {2, 3, 4}, {5, 6, 7}, {3, 4, 5}, {3, 5, 6}, {3, 5, 7}, {6, 8, 9}, {3, 6, 7}, {3, 6, 8}, Reprezentarea n arbore de dispersie:

Figure: Arbore de dispersie pentru familia de mult imi candidat


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 28 / 73

Reprezentarea mult imilor candidat i n arbore de dispersie

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

29 / 73

Reprezentarea mult imilor candidat i n arbore de dispersie

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

30 / 73

Reprezentarea mult imilor candidat i n arbore de dispersie

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

31 / 73

Generarea 3-submult imilor unei tranzact ii

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

32 / 73

C autarea potrivirilor ntre tranzact ii si mult imi candidat

Figure: Se ia in considerare primul obiect al unei posibile 3-multimi ce se regaseste in tranzactie


lucian.sasu@ieee.org (UNITBV) Curs 6

April 5, 2012

33 / 73

C autarea potrivirilor ntre tranzact ii si mult imi candidat

Figure: Se ia in considerare al doilea obiect al unei posibile 3-multimi ce se regaseste in tranzactie


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 34 / 73

C autarea potrivirilor ntre tranzact ii si mult imi candidat

Figure: Se ia in considerare al treilea obiect al unei posibile 3-multimi ce se regaseste in tranzactie


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 35 / 73

Complexitatea computat ional a a gener arii de mult imi frecvente

Factorii care inuent eaz a complexitatea gener arii: Alegerea valorii de minsup
mic sorarea lui minsup duce la mai multe mult imi declarate ca frecvente

Num arul de obiecte din setul de date


poate duce la m arirea cardinalului maxim de mult ime frecvent a dac a num arul de mult imi frecvente cre ste si el atunci at at efortul computat ional c at si costul I/O cre ste

Dimensiunea bazei de date


ecare tranzact ie se compar a cu mult imile candidat; num ar mare de tranzact ii timp crescut pentru eliminarea mult imilor candidat nefrecvente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

36 / 73

Complexitatea computat ional a a gener arii de mult imi frecvente


Generarea 1-mult imilor frecvente: O (Nw ) Generarea mult imilor candidat:
w w

(k 2)|Ck | < costul unic. a 2 k 1-mult imi <


k =2 k =2

(k 2)|Fk 1 |2

Eliminarea de mult imi candidat infrecvente:


w

O
k =2

k (k 2)|Ck |

Calcularea suportului O N
k k Cw k

unde k este costul actualiz arii unei k -mult imi din arborele de dispersie.
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 37 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

38 / 73

Generarea regulilor

Enunt : d anduse o mult ime frecvent a L, s a se g aseasc a toate submult imile nevide f L astfel nc at regula f L f s a aib a condent a minim a cerut a Pentru mult imea frecvent a {A, B , C , D } regulile candidat ce se pot obt ine sunt: ABC D , ABD C , ACD B , BCD A, A BCD , B ACD , C ABD , D ABCAB CD , AC BD , AD BC , BC AD , BD AC , CD AB Pentru k = |L| sunt 2k 2 reguli care se pot genera (ignor am regulile cu antecedent sau consecvent nul)

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

39 / 73

Generarea regulilor
Nu avem nicio proprietate de tip (anti)monotonie pentru condent a regulilor
X, Y Y nu avem nicio relat Pentru o regul a X Y si X ie Y ) permanent valabil a ntre c (X Y ) si c (X

Dar avem o teorem a

Teorem a
Dac a o regul a X Y X nu satisface condit ia de condent a minim a c (X Y X ) minconf atunci nicio regul a X Y X cu X X nu va avea nici ea condent a minim a. Demonstrat ie: pentru regulile X Y X si X Y X condent ele sunt s1 = (Y )/ (X ) respectiv s2 = (Y )/ (X ). Pentru X X avem c a (X ) (X ). Ca atare, s1 s2 si deci prima regul a nu poate avea o condent a mai mare dec at a doua.
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 40 / 73

Generarea regulilor: strategie de retezare

Figure: Retezarea regulilor aplicand teorema 2

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

41 / 73

Retezarea regulilor n algoritmul Apriori

Se genereaz a toate regulile care au doar un element n antecedent Se combin a reguli care au ceva comun n sux: de exemplu, din {a, c , d } {b } si {a, b , d } {c } se genereaz a {a, d } {b , c } Se fac elimin arile de reguli conform teoremei 2

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

42 / 73

Generarea regulilor n algoritmul Apriori

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

43 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

44 / 73

Reprezentarea compact a a mult imilor frecvente

Num arul de mult imi frecvente poate s a e prohibitiv Se poate identica o familie reprezentativ a de mult imi frecvente din care se pot obt ine toate celelalte mult imi frecvente Variante: mult imi frecvente maximale si mult imi frecvente nchise

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

45 / 73

Mult imi frecvente maximale


Denit ie
O mult ime frecvent a maximal a este o mult ime frecvent a pentru care toate superseturile imediate sunt infrecvente. (superset imediat al lui X este mult ime X {y }, y X )

Figure: Familia de mult imi frecvente maximale este reprezentat a cu verde


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 46 / 73

Utilitatea mult imilor frecvente maximale

Toate mult imile frecvente sunt generate de mult imile frecvente maximale Ex: mult imile frecvente din gura anterioar a sunt ntr-una din situat iile:
1 2

mult imi care ncep cu litera a si cont in c , d sau e mult imi care ncep cu b , c , d sau e .

Exist a algoritmi care pot exploata ecient mult imile frecvente maximale, f ar a a genera toate submult imile Problem a: mult imile frecvente maximale nu dau o modalitate de calcul al suportului submult imilor frecvente pe care le genereaz a

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

47 / 73

Mult imi frecvente nchise

Denit ie (Mult imi nchise)


O mult ime X este nchis a dac a niciunul din superseturile imediate ale sale nu are acela si suport ca ea.

Denit ie (Mult imi frecvente nchise)


O mult ime X este frecvent a nchis a dac a este nchis a si frecvent a.

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

48 / 73

Mult imi frecvente maximale vs. frecvente nchise

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

49 / 73

Utilitatea mult imilor frecvente nchise


Set de tranzact ii:

3 grupuri: {A1, . . . , A5}, {B 1, . . . , B 5}, {C 1, . . . , C 5} Pentru minsup = 20% avem num ar total de mult imi frecvente = 93 Dar exist a doar 3 mult imi frecvente nchise: {A1, . . . , A5}, {B 1, . . . , B 5}, {C 1, . . . , C 5}

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

50 / 73

Relat ia ntre diferite tipuri de mult imi

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

51 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

52 / 73

Metode alternative pentru generarea de mult imi frecvente


Apriori este unul din primii algoritmi ecient i care evit a explozia combinatorial a a gener arii seturilor frecvente Principiul de baz a: retezarea conform teoremei de la pagina 40 Decient a: num arul mare de operat ii de I/O Decient a: pentru seturile de tranzact ii dense performant a scade mult Metode alternative: de la general la specic, de la specic la general, c autare bidirect ional a Ideea de baz a: determinarea mult imilor frecvente este o problem a de c autare n graful laticii mult imilor

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

53 / 73

Metode alternative pentru generarea de mult imi frecvente

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

54 / 73

Metode alternative pentru generarea de mult imi frecvente

De la general la specic: n stilul algoritmului Apriori, de la o (k 1)-mult ime se ajunge la o k -mult ime; strategia e bun a dac a lungimea maxim a a unei mult imi frecvente nu este prea mare De la specic la general: se poate adapta principiul Apriori C autare bidirect ional a: combinat ie a precedentelor dou a, necesit a mai mult a memorie, dar permite determinarea rapid a a zonei de delimitare

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

55 / 73

Metode alternative pentru generarea de mult imi frecvente


Clase de echivalent a: se partit ioneaz a mult imea nodurilor din latice n clase de echivalent a; se trece la o alt a partit ie numai c and sa terminat de explorat partit ia curent a Exemple de partit ionare: arbori de tip prex/sux

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

56 / 73

Metode alternative pentru generarea de mult imi frecvente


C autarea mai nt ai n l a time: algoritmul Apriori funct ioneaz a astfel, trec and la k -mult imi numai dup a ce sau epuizat toate (k 1)-mult imile C autarea n ad ancime este o variant a folosit a pentru a determina mult imile frecvente maximale Odat a g asit a o mult ime maximal a, se poate face retezare

Figure: Parcugeri alternative


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 57 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

58 / 73

Problema evalu arii asocierilor

Algoritmii pot duce la producerea unui num ar mare de reguli Multe pot neinteresante sau redundante Exemplu de redundant a: dac a regulile {A, B , C } {D } si {A, B } {D } au acela si suport si condent a Se pot folosi funct ii de m asurare a gradului de interes care s a reduc a /sorteze regulile In cele prezentate p an a acum, doar suportul si condent a erau considerate

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

59 / 73

Schema unui proces de extragere de cuno stint e

Figure: Pa sii unui proces de extragere de cuno stint e. Postprocesarea cont ine evaluarea regulilor
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 60 / 73

Moduri de cuanticare al gradului de interes

Funct ii obiective:
folosesc statistici derivate din date pentru a determina gradul de interes suport, condent a, corelat ie

Funct ii subiective:
se refer a la grad de interes pentru cunoa sterea uman a exemplu: {unt } {paine } este de a steptat si deci neinteresant; dar {scutece } {bere } este ceva surprinz ator modalit a ti de ncorporare a subiectivismului:
vizualizare ltrare bazat a pe sabloane ierarhie de concepte

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

61 / 73

M asura obiectiv a a interesului


M asur a obiectiv a: modalitate dependent a de date Necesit a intervent ie minim a din partea utilizatorului Punct de plecare pentru diferite m asuri, pe perechi de variabile binare: tabel de contingent a X X Total Y f11 f01 f+1 Y f10 f00 f+0 Total f1+ f0+ N

Table: Tabel de contingent a pentru regula X Y . O valoare de forma () reprezint a lipsa obiectului asociat n tranzat ie. f1+ (f+1 ) reprezint a valoarea suport pentru X (respectiv Y ).

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

62 / 73

Limit ari ale cuplului suport-condent a


Consider am studiul leg aturii ntre cei care beau ceai sau cafea: Ceai Ceai Total Cafea 150 650 800 Cafea 50 150 200 Total 200 800 1000

Table: Preferint e de consum.

Consider am regula: {Ceai } {Cafea}: suport 15%, condent a 75% Remarc am ns a c a procentul celor care beau cafea este de 80%, mai mult dec at condent a anterioar a Deci regula {Ceai } {Cafea} d a o indicat ie gre sit a fat a de starea actual a a datelor; stiind c a o persoan a bea ceai, asta va sc adea sansa ei ca s a bea cafea Cauza: m asura de condent a ignor a suportul mult imii consecvent
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 63 / 73

Alte funct ii obiective de m asurare a gradului de interes


factor de ridicare (eng: lift) lift (A B ) = interes: =1 s (A, B ) >1 : I (A, B ) = s (A) s (B ) <1 = pentru A si B independente pentru A si B pozitiv corelate pentru A si B negativ corelate c (A B ) s (B )

corelat ia Pearson pentru variabile binare: f11 f00 f01 f10 [1, 1] f1+ f+1 f0+ f+0

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

64 / 73

Alte funct ii obiective de m asurare a gradului de interes

Figure: M asuri propuse


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 65 / 73

Sortarea pe baza diferitelor funct ii


Pe baza funct iilor se pot face ordon ari ale regulilor Ordinea poate s a difere de la o funct ie de interes la alta

Figure: 10 exemple de tabele de contingent a

Figure: Sortarea pe baza diferitelor reguli


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 66 / 73

Propriet a ti ale funct iilor obiective

De v azut din bibliograe: Proprietatea de inversiune Proprietatea de ad augare nul a Proprietatea de scalare De citit: paradoxul lui Simpson si necesitatea stratic arii datelor naintea extragerii de reguli

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

67 / 73

Outline
1 2 3 4 5 6 7

Not iuni, denirea problemei Generarea mult imilor frecvente Generarea regulilor Reprezentarea compact a a mult imilor frecvente Metode alternative pentru generarea de mult imi frecvente Evaluarea regulilor de asociere Efectul distribut iei oblice

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

68 / 73

Distribut ii oblice
Uneori datele au urm atoarea form a: foarte multe obiecte cu suport mic, put ine cu suport mare O atare distribut ie este puternic neechilibrat a (eng: skewed) si nu poate tratat a uniform Dac a pragul minsup este ales prea mic atunci algoritmul Apriori (sau oricare altul) poate genera excesiv de multe mult imi frecvente consum mare de memorie, posibil relat ii nt ampl atoare Dac a minsup este prea mare se pot rata ni ste reguli utile
exemplu: bijuterii - se cump ar a rar n comparat ie cu alte produse, dar protul adus e considerabil

Pentru setul de date Public Use Microarray Sample census data distribut ia datelor este:

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

69 / 73

Distribut ii oblice

Figure: Distribut ie oblic a pentru setul de date textcolorbluePUMS census data


lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 70 / 73

Distribut ii oblice

Dac a se las a valoare minsup mic a, atunci o mult ime poate s a combine obiecte cu suport mare si mic Obiectele din mult ime ns a pot avea o corelat ie mic a Atfel de mult imi se numesc sabloane cu suport ncruci sat (eng: cross-support patterns) Pentru minsup = 0.05% avem 18847 perechi frecvente, din care 93% sunt cu obiecte din G1 si G3; corelat ia maxim a este ns a 0.029 - prea put in Chiar m arirea pragului minconf poate inefectiv a; consecventul unei reguli poate avea suport mare deci sabloane cu suport ncluci sat pot nc a s a apar a

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

71 / 73

Distribut ii oblice
Denit ie (S abloane cu suport ncruci sat)
Un sablon cu suport ncruci sat este o mult ime X = {i1 , i2 , . . . , ik } pentru care raportul suporturilor r (X ) = min[s (i1 ), s (i2 ), . . . , s (ik )] max[s (i1 ), s (i2 ), . . . , s (ik )] (3)

este mai mic dec at un prag specicat de utilizator hc . Un alt mod de detectare a sabloanelor cu suport ncruci sat: se examineaz a condent a minim a care se poate extrage dintro mult ime dat a, i.e. m asura h-condent a: s (i1 , i2 , . . . , ik ) max [s (i1 ), s (i2 ), . . . , s (ik )]
lucian.sasu@ieee.org (UNITBV) Curs 6 April 5, 2012 72 / 73

Distribut ii oblice

Criteriul de eliminare a unui sablon ncruci sat X : sablonul se elimin a dac a h condenta(X ) min[s (i1 ), s (i2 ), . . . , s (ik )] hc max[s (i1 ), s (i2 ), . . . , s (ik )]

Valoarea peste hc a h-condent ei ne asigur a c a obiectele din mult ime sunt puternic corelate ntre ele

lucian.sasu@ieee.org (UNITBV)

Curs 6

April 5, 2012

73 / 73

S-ar putea să vă placă și