adatbányászat - gyakori elemhalmazok asszociációs és...

34
Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakori elemhalmazok Asszociációs és döntési szabályok Szegedi Tudományegyetem Adatbányászat

Upload: others

Post on 06-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

AdatbányászatGyakori elemhalmazok

Asszociációs és döntési szabályok

Szegedi Tudományegyetem

Adatbányászat

Page 2: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Mire megyünk a gyakori elemhalmazokkal?

A különféle adatbázisokban gyakran együttesen előfordulójellemzők ismerete hasznos lehetMit kezd vele egy marketinges? És az adatbányász?

Tranzakció ID Termékek1 {tej, kenyér, Hertz szalámi}2 {sör, pelenka}3 {sör, virsli}4 {sör, bébiétel, pelenka}5 {pelenka, kóla, kenyér}

Adatbányászat

Page 3: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Vásárlói kosarak megjelenési formái – Horizontális tárolás

Tranzakció ID Termékek1 {tej, kenyér, Hertz szalámi}2 {sör, pelenka}3 {sör, virsli}4 {sör, bébiétel, pelenka}5 {pelenka, kóla, kenyér}

Adatbányászat

Page 4: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Vásárlói kosarak megjelenési formái – Vertikális/invertálttárolás

Termék Kosaraktej {1}

kenyér {1, 5}Hertz szalámi {1}

sör {2,3,4}pelenka {2,4,5}virsli {3}

bébiétel {4}kóla {5}

Adatbányászat

Page 5: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Vásárlói kosarak megjelenési formái – Relációs tárolás

Kosár Termék1 tej1 kenyér1 Hertz szalámi2 sör2 pelenka3 sör3 virsli4 sör4 bébiétel4 pelenka5 pelenka5 kóla5 kenyér

Adatbányászat

Page 6: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Asszociációs szabályok legyűjtése

Cél: T tranzakciós adatbázis jellemzőinek (termékeinek) azondiszjunkt részhalmazainak meghatározása, melyek együttestámogatottsága (support) meghalad egy gyakoriságiküszöbértéket, továbbá a kettőjük között (bármely irányban)fennálló implikációt jellemző bizonyosság (confidence) magasX halmaz támogatottsága: s(X ) = |{ti |ti ∈ T ∧ X ⊆ ti}|Relatív támogatottság: s(X ) normalizálása a tranzakciósadatbázis sorainak számávalA→ B szabály bizonyossága c(A→ B) = s(A∪B)

s(A) ≈ P(B|A)A→ B szabály jelentése: amennyiben egy kosárban bennevannak A elemei, úgy az valószínű B-t is tartalmazni fogja

Adatbányászat

Page 7: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Asszociációs szabályok érdekessége

Minden gyakorisági és bizonyossági küszöböt meghaladószabály érdekel bennünket?Egy szabály bizonyossága egyszerűen attól is lehet magas,hogy a szabály jobb oldalán lévő elem a bal oldalon állóktólfüggetlenül gyakori. Például?A→ B szabály érdekessége = c(A→ B)− P(B)

Hogy lehet értelmezni ezt a mutatót? (Érdekesek a magasabszolút értékkel jellemzett szabályok lesznek. Miért?)A küszöbszámok olyanok legyenek, hogy a megkapott érdekesszabályok feldogozhatók legyenekTovábbi érdekességi mutatók: χ2, κ, . . .

Adatbányászat

Page 8: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Hol lehet még használni a gyakori elemhalmazokat? –Plágiumellenőrzés

Intuíciónkkal ellentétben legyenek a kosaraink mondatok, atermékek pedig a dokumentumokKonklúzió

A "termékek" alkotta "kosarak" és a "tartalmazás" fogalmátrugalmasan kell kezelniTermékek közötti függést vizsgáljuk, nem a kosarak közöttihasonlóságot (azt már letudtuk korábban)Milyen jelentést társíthatunk a gyakorielemhalmazoknak/asszociációs szabályoknak, ha a kosarak adokumentumok, és a termékek a mondatok?

Adatbányászat

Page 9: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Hol lehet még használni a gyakori elemhalmazokat? –Adatbányászat

Asszociációs szabályok segítségével kezdetleges osztályozótépíthetünkHiányzó adatokat becsülhetünk meg a változók gyakoriegyüttállásábólVáltozókat vonhatunk össze, ha azok túlzott (teljes) egyezéstmutatnak

Adatbányászat

Page 10: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Az aszociációs szabályok legyártásának sémája

t (relatív) gyakorisági küszöböt meghaladó gyakorielemhalmazok F halmazának legyűjtéseA gyakori elemhalmazok particionálása (diszjunktrészhalmazokra bontása), bizonyosságuk mértékének vizsgálata

Adatbányászat

Page 11: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Miért nem működik a naiv megközelítés?

Mi lenne a naiv megközelítés?d termék ⇒ 3d − 2d+1 + 1 jelölt (pl. d = 9⇒ 18660lehetőség)

Bizonyítás (hint: (1+ x)d =d∑

j=1

(dj

)xd−j + xd)

d∑i=1

(di

)d−i∑j=1

(d−ij

)=

d∑i=1

(di

)(2d−i − 1) =

d∑i=1

(di

)2d−i −

d∑i=1

(di

)=

(3d − 2d)− (2d − 1)

2 4 6 8 10 12 14

0

1

2

3

4

5·106

d

lehetséges

asszociációs

szabályok

2 4 6 8 10 12 140

2

4

6

d

log 1

0(lehetséges

asszociációs

szabályok)

Adatbányászat

Page 12: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

A segítség – Apriori elv

I elemhalmaz gyakori ⇒ ∀J ⊆ I elemhalmaz gyakoriÉs ha I elemhalmaz nem gyakori?Anti-monoton tulajdonság miatt: f függvény anti-monoton, ha∀X ,Y ∈ P (U) : X ⊆ Y ⇒ f (X ) ≥ f (Y )

{a,b,c}

{a,b} {a,c} {b,c}

{a} {b} {c}

Adatbányászat

Page 13: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Az Apriori elv érvényesülése

Legyen 3 a gyakorisági küszöbértékünk

Termék Gyakoriságsör 3

kenyér 4kóla 2

pelenka 4tej 4virsli 1

Adatbányászat

Page 14: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Az Apriori elv érvényesülése

Legyen 3 a gyakorisági küszöbértékünk

Termék Gyakoriságsör 3

kenyér 4kóla 2

pelenka 4tej 4virsli 1

Termékek Gyakoriság{kenyér, sör} 2

{pelenka, sör} 3{sör, tej} 2

{kenyér, pelenka} 3{kenyér, tej} 3{pelenka, tej} 3

Adatbányászat

Page 15: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Gyakori elemhalmazok meghatározása

Algorithm 1 Gyakori elemhalmazok számításának pszeudokódjaInput: U termékuniverzum, T tranzakciós adatbázis, t gyakorisági

küszöbértékOutput: gyakori elemhalmazok1: C1 := U2: Számítsuk ki C1 elemeinek támogatottságait3: F1 := {x |x ∈ C1 ∧ s(x) ≥ t}4: for (k = 2; k < |U|&&Fk−1 6= ∅; k ++) do5: Ck meghatározása Fk−1 elemeiből6: Ck elemeinek támogatottságának számítása7: Fk := {X |X ∈ Ck ∧ s(X ) ≥ t}8: end for9: return ∪ki=1Fi

Adatbányászat

Page 16: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Ck-k számításának hatékony módja

F1 elemeire támaszkodva. Inkább ne!Fk−1 és F1 elemeinek kombinálásából.Fk−1 és Fk−1 elemeinek kombinálásából. Előnye, hogy nemgenerál fölöslegesen többször elemhalmazokat, csak akkor vonössze, ha∃A = {a1, a2, . . . , ak−1} ∈ Fk−1,B = {b1, b2, . . . , bk−1} ∈Fk−1 : ∀ai = bi , 1 ≤ i ≤ k − 2 ∧ ak−1 6= bk−1

F elemein megéri értelmezni egy rendezést (pl. egészekkéleképezni őket), és így tárolni őket

Adatbányászat

Page 17: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Ck gyakoriságának számításának módja

(|Fk−1|2

)lehetséges elempáros gyakoriságát kell számon tartani

→ memóriakorlátA nemnulla értékek arányában ezeket vagy mind eltárolhatjuk,vagy (i , j , c) hármasok halmazaként kezelhetjük őket, amelyértelmezése: az i elemet a j elemmel együtt előfordulni calkalommal láttukEgydimenziós háromszögmátrixban (i , j), i ≤ j elempárokgyakorisága a t = (i − 1)(|Fk−1| − i

2) + j − i pozíción. Miért?

Ha a nulla elemek száma meghaladja (|Fk−1|2 )3 -t, akkor megéri

az (i , j , c) hármasokkal történő reprezentáció

Adatbányászat

Page 18: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Ck gyakoriságának számításának módja – példa

Tfh. van 107 kosár, kosaranként 10 termékkel105 lehetséges termék kaphatóHáromszögmátrixszal ≈ 5 ∗ 109 egésszel írhatjuk le azelempárok gyakoriságátIndex-gyakoriság hármasokkal legrosszabb esetben is csak107(10

2

)termékpáros van jelen a tranzakciós adatbázisban

→ max . ≈ 3 ∗ 4, 5 ∗ 108 = 1, 35 ∗ 109 egésszel leírhatók anemnulla elempárok vásárlásainak gyakoriságai

Adatbányászat

Page 19: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Gyakori elemhalmazok tömörítése

Maximális gyakori elemhalmazok:{I |I gyakori ∧ @ gyakori J ⊃ I}Zárt elemhalmazok: {I |@J ⊃ I : s(J) = s(I )}Zárt gyakori elemhalmazok: a gyakorisági küszöbértéknekeleget tevő zárt elemhalmazok halmazaLehet-e egy maximális gyakori elemhalmaz nem zárt?Lehet-e egy zárt gyakori elemhalmaz nem maximális?

Adatbányászat

Page 20: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Gyakori elemhalmazok tömör definiálása – Példa(küszöbérték = 3)

Elem Darab Maximális Zárt Gyakori zártA 4B 5C 3AB 4AC 2BC 3ABC 2

Adatbányászat

Page 21: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Gyakori elemhalmazok tömör definiálása – Példa(küszöbérték = 3)

Elem Darab Maximális Zárt Gyakori zártA 4 - - -B 5 - + +C 3 - - -AB 4 + + +AC 2 - - -BC 3 + + +ABC 2 - + -

Adatbányászat

Page 22: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

A gyakori elemhalmaztípusok viszonyai

Gyakori elemhalmazok

Zárt gyakori elemhalmazok

Maximális gyakorielemhalmazok

Adatbányászat

Page 23: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

PCY (Park-Chen-Yu) algoritmus – az Apriori kiterjesztése

Az egyelemű halmazok gyakoriságának számolásávalegyidejűleg tartsunk fenn egy számlálót, ami az elempárokhatványhalmazainak bizonyos részhalmazainak aggregáltelőfordulásait tartja számonMit tudunk biztosra az aggregált előfordulási gyakoriságokból?Mit nem tudunk?Csak azokat a kételemű halmazokat kell ténylegesgyakoriságuk szerint megvizsgálni, amelyek alkotóelemeigyakoriak, valamint olyan kupacba képeződtek le, amelyaggregált gyakorisága meghaladja a gyakorisági küszöbértéket

Adatbányászat

Page 24: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Gyakorlati észrevételek

Mintavételezéssel is becsülhetjük a támogatottságot ⇒helyességet, teljességet ekkor persze kockáztatjukA tranzakciós adatbázis struktúrájától függően módosítottstratégiák is elképzelhetők

Adatbányászat

Page 25: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Apriori általánosítása

Kosárkezdemények szintek szerinti bővítési stratégiájánaklecseréléseApriori elv érvényesítése ekvivalenciaosztályonként haladvaAz eredeti felállásban az ekvivalenciaosztályok a termék n-esekmérete alapján történtAlternatív megközelítés: átfedő prefix vagy szuffix méterealapján

Adatbányászat

Page 26: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Asszociációs szabályokFölhasználásukApriori elvMeghatározásuk

Apriori általánosítása – prefix és szuffix szemlélet

null

AB AC AD BC BD CD

A B C D

ABC ABD ACD BCD

ABCD

null

AB AC ADBC BD CD

A B C D

ABC ABD ACD BCD

ABCD

(a) Prefix fa (b) Szuffix fa

Adatbányászat

Page 27: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

FP-fák

Apriori elv helyett olyan adatszerkezet használata, amelybőlkönnyen kinyerhetők a gyakori elemhalmazokFP-fák: alternatív, tömörített reprezentációs lehetőségElőállíthatók a tranzakciós adatbázis sorainak egyszerifeldolgozása segítségévelAz egyes kosarak a fában egy-egy útként jelennek megEgyes termékek több kosárban is szerepet kapnak ⇒ átfedőutak ⇒ tömöríthetőségSzerencsés esetben az egész adatbázis a memóriában tartható

Adatbányászat

Page 28: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

FP-fák építésének menete

Célszerű inicializáció: rendezzük a termékeket csökkenőtámogatottságuk szerint (heurisztika)Tranzakciós adatbázis sorainak feldolgozása

Ha találunk olyan gyökérből induló utat a fában, aminek vanaz adott kosár prefixével megegyező szelete, akkor azt az ágatfolytatjuk

Az átfedő csúcsokhoz tartozó gyakorisági értékekinkrementálásaÚjonnan bekerülő csúcsok gyakorisági értékeinek 1-re állítása

Különben új gyökérből induló út felvételeA csúcsokhoz 1-es gyakorisági értékek rendelése

Azonos termékeket jelölő csúcsok között mutatók létesítése

Adatbányászat

Page 29: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

FP-fa – példa

1

1Tan, Steinbach, Kumar: Introduction to Data Mining diái alapján

Adatbányászat

Page 30: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

FP-fa – utolsó kosár feldolgozása után

TID Kosár1 {A,B}2 {B,C,D}3 {A,C,D,E}4 {A,D,E}5 {A,B,C}6 {A,B,C,D}7 {B,C}8 {A,B,C}9 {A,B,D}10 {B,C,E}

A:7

B:5

C:3

D:1

D:1

C:1

D:1

E:1

D:1

E:1

B:3

C:3

D:1 E:1

Milyen fákat kapnánk, ha a kosarakban lévő termékeket atranzakciós adatbázisbeli támogatottságukkal egyező/fordítottsorrendben ábrázolnánk? ({A:7,B:8,C:7,D:5,E:3})

Adatbányászat

Page 31: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

FP-Growth algoritmus

FP-fán bottom-up elven működő oszd meg és uralkodj eljárásHa egy elemhalmazról az FP-fa alapján megállapítható, hogygyakori, vizsgáljuk meg az adott halmazt szuffixkénttartalmazó bővebb halmazokat

A már bizonyosan gyakori részhalmazon kondicionált FP-részfavizsgálatával eldönthető ez a kérdésPl. {E}-ről megállapítható, hogy gyakori volt, úgy vizsgáljukmeg, hogy {A,E}, {B,E}, {C,E}, {D,E} halmazok közötttalálunk-e gyakoriakat

Adatbányászat

Page 32: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Célelem(ek)re kondicionált FP-fa

A teljes FP-fának azon része, amit akkor kapnánk, ha csak acélelem(ek)et tartalmazó tranzakciókat vennénk figyelembe

Persze nem akarjuk újraépíteni a fát1 Fejtsük le az adott célelem(ek)re nézve ”érdektelen” részeket

TID Kosár1 {A,B}2 {B,C,D}3 {A,C,D,E}4 {A,D,E}5 {A,B,C}6 {A,B,C,D}7 {B,C}8 {A,B,C}9 {A,B,D}10 {B,C,E}

A:7

C:1

D:1

E:1

D:1

E:1

B:3

C:3

E:1

Az {E}-n kondicionált FP-fa

Adatbányászat

Page 33: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Célelem(ek)re kondicionált FP-fa

A teljes FP-fának azon része, amit akkor kapnánk, ha csak acélelem(ek)et tartalmazó tranzakciókat vennénk figyelembe

Persze nem akarjuk újraépíteni a fát2 Egy csúcs szupportja legyen a fiai frissített szupportjainak

összege

TID Kosár...

...3 {A,C,D,E}4 {A,D,E}...

...10 {B,C,E}

A:2

C:1

D:1

D:1

B:1

C:1

Az {E}-n kondicionált FP-fa

Adatbányászat

Page 34: Adatbányászat - Gyakori elemhalmazok Asszociációs és ...berendg/docs/dm/DM_market_basket_… · Vásárlói kosarak Gyakori elemhalmazok FP-growth Adatbányászat Gyakorielemhalmazok

Vásárlói kosarakGyakori elemhalmazok

FP-growth

Célelem(ek)re kondicionált FP-fa

A teljes FP-fának azon része, amit akkor kapnánk, ha csak acélelem(ek)et tartalmazó tranzakciókat vennénk figyelembe

Persze nem akarjuk újraépíteni a fát3 Küszöbszámot meg nem haladó összgyakoriságú elemek

elhagyása (pl. 2-es küszöb alkalmazása mellett)4 Készítsük el a(z {E}-t tartalmazó) gyakori elemketteseken

kondicionált FP-fákat, ami alapján meghatározhatjuk agyakori elemhármasokat (pl. {D,E}→ {A,D,E})

TID Kosár...

...3 {A,C,D,E}4 {A,D,E}...

...10 {B,C,E}

A:2

C:1

D:1

D:1

C:1

Az {E}-n kondicionált FP-faAdatbányászat