Csima Judit április 29.

Hasonló dokumentumok
Csima Judit május 10.

Adatbányászat: Asszociációs szabályok Alapfogalmak és algoritmusok

Adatbányászat: Társítási szabályok Alapfogalmak és algoritmusok

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

Csima Judit április 9.

Gyakori elemhalmazok és asszociációs szabályok

Gyakori elemhalmazok kinyerése

Gyakori elemhalmazok

Nagyméretű adathalmazok kezelése (BMEVISZM144) Reinhardt Gábor április 5.

Klaszterezés, 2. rész

Csima Judit BME, VIK, november 9. és 16.

Leggyakrabban használt adatbányászási technikák. Vezetői információs rendszerek

Csima Judit november 15.

Gyakorló feladatok adatbányászati technikák tantárgyhoz

Dependency preservation

A próbafelvételi eredményei: (Minden feladat 5 pontos volt...)

Minden az adatról. Csima Judit február 11. BME, VIK, Csima Judit Minden az adatról 1 / 41

KOMBINATORIKA. Készítette: Bordi István Tóth Árpád Gimnázium Debrecen,

2018, Diszkrét matematika

Asszociációs szabályok

Mapping Sequencing Reads to a Reference Genome

Csima Judit október 24.

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet Nonparametric Tests

On The Number Of Slim Semimodular Lattices

Megoldás Digitális technika I. (vimia102) 3. gyakorlat: Kombinációs hálózatok minimalizálása, hazárdok, a realizálás kérdései

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.

Diszkrét matematika 2. estis képzés

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet. Hypothesis Testing. Petra Petrovics.

Megyei matematikaverseny évfolyam 2. forduló

Adatbányászati technikák (VISZM185) 2015 tavasz

A vitorlázás versenyszabályai a évekre angol-magyar nyelvű kiadásának változási és hibajegyzéke

Construction of a cube given with its centre and a sideline

Miskolci Egyetem Gazdaságtudományi Kar Üzleti Információgazdálkodási és Módszertani Intézet. Nonparametric Tests. Petra Petrovics.

Algoritmuselmélet. Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás. Katona Gyula Y.

Egy feladat megoldása Geogebra segítségével

6. előadás. Vektoriális szorzás Vegyesszorzat

Adatbázisok 1. Rekurzió a Datalogban és SQL-99

Adatszerkezetek. Nevezetes algoritmusok (Keresések, rendezések)

Hogyan használja az OROS online pótalkatrész jegyzéket?

3 függvény. Számítsd ki az f 4 f 3 f 3 f 4. egyenlet valós megoldásait! 3 1, 3 és 5 3 1

Matematika érettségi emelt 2008 október. x 2 0. nem megoldás. 9 x

Országos Középiskolai Tanulmányi Verseny 2009/2010 Matematika I. kategória (SZAKKÖZÉPISKOLA) 2. forduló feladatainak megoldása

Biomatematika 2 Orvosi biometria

A valós számok halmaza

GYAKORI RÉSZGRÁFOK KERESÉSE HÁLÓZATOKON

Az Országos Középiskolai Tanulmányi Verseny tanévi első fordulójának feladatmegoldásai. 81f l 2 f 2 + l 2

Tartalom Keresés és rendezés. Vektoralgoritmusok. 1. fejezet. Keresés adatvektorban. A programozás alapjai I.

A B C D EF C D EF C C BF A BC DE F D A E E E E D C C E DC C E E DC C C E D D E A D A E A

4. előadás. Vektorok

ADATBÁZISOK. 4. gyakorlat: Redundanciák, funkcionális függőségek

KOMBINATORIKA ELŐADÁS osztatlan matematika tanár hallgatók számára. Szita formula

XX. Nemzetközi Magyar Matematika Verseny

Keresés és rendezés. A programozás alapjai I. Hálózati Rendszerek és Szolgáltatások Tanszék Farkas Balázs, Fiala Péter, Vitéz András, Zsóka Zoltán

A 2015/2016. tanévi Országos Középiskolai Tanulmányi Verseny döntő forduló MATEMATIKA III. KATEGÓRIA (a speciális tanterv szerint haladó gimnazisták)

Eloszlás-független módszerek (folytatás) 15. elıadás ( lecke)

Create & validate a signature

Gráfelmélet. I. Előadás jegyzet (2010.szeptember 9.) 1.A gráf fogalma

Osztott jáva programok automatikus tesztelése. Matkó Imre BBTE, Kolozsvár Informatika szak, IV. Év 2007 január

History. Barcelona 11 June 2013 HLASA 1

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

MATEMATIKA ÉRETTSÉGI május 8. EMELT SZINT

0. Ha valahol még nem szerepelt a relációs algebrai osztás, akkor azt kell először venni:

(. 04 *A 0, 0 2* ( ( =!"#$!" #$% &' %& # () *+,-./ # 56789:; - 2 F G ()H2 IJKFLMNF O>? ; G 2.3G VWO&# 2 KXY; O [

Térinformatikai algoritmusok Elemi algoritmusok

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 12.

Azonosító jel: MATEMATIKA EMELT SZINTŰ ÍRÁSBELI VIZSGA október 21. 8:00. Az írásbeli vizsga időtartama: 240 perc

Algoritmuselmélet. Függvények nagyságrendje, elágazás és korlátozás, dinamikus programozás. Katona Gyula Y.

SZAMOKKAL Egy algoritmus generálja növekvő sorrendben, kizárólag a 3, 5 és 7 számjegyeket használva, az összes n számjegyű számot.

[Biomatematika 2] Orvosi biometria

Funkcionális és logikai programozás. { Márton Gyöngyvér, 2012} { Sapientia, Erdélyi Magyar Tudományegyetem }

Chomsky-féle hierarchia

István Micsinai Csaba Molnár: Analysing Parliamentary Data in Hungarian

discosnp demo - Peterlongo Pierre 1 DISCOSNP++: Live demo

Választási modellek 3

Relációs adatbázisok tervezése ---2

Csima Judit február 19.

MATEMATIKA ÍRÁSBELI ÉRETTSÉGI-FELVÉTELI FELADATOK május 19. du. JAVÍTÁSI ÚTMUTATÓ

Loss Distribution Approach

Térinformatikai algoritmusok Elemi algoritmusok

Javítókulcs, Válogató Nov. 25.

(a b)(c d)(e f) = (a b)[(c d) (e f)] = = (a b)[e(cdf) f(cde)] = (abe)(cdf) (abf)(cde)

NULLADIK MATEMATIKA ZÁRTHELYI

A 2014/2015. tanévi Országos Középiskolai Tanulmányi Verseny első forduló MATEMATIKA I. KATEGÓRIA (SZAKKÖZÉPISKOLA) Javítási-értékelési útmutató

JAVASLAT A TOP-K ELEMCSERÉK KERESÉSÉRE NAGY ONLINE KÖZÖSSÉGEKBEN

XVIII. Nemzetközi Magyar Matematika Verseny

Cluster Analysis. Potyó László

A 2013/2014 tanévi Országos Középiskolai Tanulmányi Verseny első forduló javítási-értékelési útmutató. INFORMATIKA II. (programozás) kategória

Számelméleti alapfogalmak

Brósch Zoltán (Debreceni Egyetem Kossuth Lajos Gyakorló Gimnáziuma) Geometria V.

Kereskedési rendszerek kétoldalú szerződésekkel

Csima Judit február 26.

4 = 0 egyenlet csak. 4 = 0 egyenletből behelyettesítés és egyszerűsítés után. adódik, ennek az egyenletnek két valós megoldása van, mégpedig

Phenotype. Genotype. It is like any other experiment! What is a bioinformatics experiment? Remember the Goal. Infectious Disease Paradigm

= 1, azaz kijött, hogy 1 > 1, azaz ellentmondásra jutottunk. Így nem lehet, hogy nem igaz

Csercsik Dávid ITK PPKE. Csercsik Dávid (ITK PPKE) Játékelmélet és hálózati alkalmazásai 5. ea 1 / 40

A magkémia alapjai. Kinetika. Nagy Sándor ELTE, Kémiai Intézet

Gráfelméleti feladatok. c f

FAMILY STRUCTURES THROUGH THE LIFE CYCLE

Hálózati folyamok. Tétel: A maximális folyam értéke megegyezik a minimális vágás értékével.

Diszkrét matematika 1.

Átírás:

Asszociációs szabályok keresése Csima Judit BME, VIK, Számítástudományi és Információelméleti Tanszék 2016. április 29. Csima Judit Asszociációs szabályok keresése 1 / 35

Alapfeladat adottak vásárlói kosarak (tranzakciók): miket vásároltak együtt cél: olyan szabályokat felálĺıtani, hogy ha valaki vesz X -et, akkor esélyes, hogy vesz Y -t is X és Y lehet több elemből álló halmaz is egy ilyen szabály nem jelent ok-okozati összefüggést! de egy ilyen szabályból hasznot lehet húzni: pl. árazzuk le X -et kicsit, emeljük meg Y árát jobban Csima Judit Asszociációs szabályok keresése 2 / 35

Association Rule Mining Given a set of transactions, find rules that will predict the occurrence of an item based on the occurrences of other items in the transaction Market-Basket transactions TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke Example of Association Rules {Diaper} {Beer}, {Milk, Bread} {Eggs,Coke}, {Beer, Bread} {Milk}, Implication means co-occurrence, not causality! Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 2 Csima Judit Asszociációs szabályok keresése 3 / 35

Jelölések, alapfogalmak elem (item): amit lehet venni, pl. tej, pelenka tranzakció: amiket együtt vettek, egy vásárlói kosár egyszerű modell: darabszám nem számít, csak az, hogy szerepel-e egy adott termék a kosárban cél: X Y szabályok találása, ahol X, Y nemüres, diszjunkt elemhalmazok (X Y = ) elnevezés: ha X = k, akkor X -et k-elemű elemhalmaznak (k-item set) hívjuk Csima Judit Asszociációs szabályok keresése 4 / 35

Mikor jó egy szabály? ha X és Y sok tranzakcióban szerepel együtt (különben nem érdekes, pl. Hello Kittys papucs és motorosfűrész) ha az X -et tartalmazó kosarak jelentős része tartalmaz Y -t is lesz még valami más is, de először nézzük ezeket Csima Judit Asszociációs szabályok keresése 5 / 35

Támogatottság, support X Y abszolút támogatottsága (support count): hány kosárban van X és Y is, jele σ(x Y ) X Y támogatottsága (support): σ(x Y ) supp(x Y ) = number of transactions csak olyan szabályokat akarunk, amikre a supp elég nagy (egy küszöbnél nagyobb, a küszöb neve min sup) azért, mert ha kicsi a support, akkor arra nem lehet stratégiát építeni, az lehet, hogy véletlen egybeesés (Hello Kitty és fűrész) Csima Judit Asszociációs szabályok keresése 6 / 35

Támogatottság, support supp(x Y ) csak X Y -tól függ, attól nem, hogy X és Y hogy oszlik el a szabály két oldalára ha supp(x Y ) a küszöbnél nagyobb, akkor X Y neve gyakori elemhalmaz (frequent item set) az persze kérdés, hogy mi a küszöb... Csima Judit Asszociációs szabályok keresése 7 / 35

Definition: Frequent Itemset Itemset A collection of one or more items Example: {Milk, Bread, Diaper} k-itemset An itemset that contains k items Support count () Frequency of occurrence of an itemset E.g. ({Milk, Bread,Diaper}) = 2 Support Fraction of transactions that contain an itemset E.g. s({milk, Bread, Diaper}) = 2/5 Frequent Itemset An itemset whose support is greater than or equal to a minsup threshold TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 3 Csima Judit Asszociációs szabályok keresése 8 / 35

Megbízhatóság, confidence X Y megbízhatósága (confidence): conf (X Y ) = σ(x Y ) σ(x ) azaz: az X -et tartalmazó kosarak mekkora részében van Y is az a szabály érdekes, aminél a conf egy küszöbnél (jele min conf) nagyobb ez mutatja, hogy X eladásai befolyásolhatják Y eladásait Csima Judit Asszociációs szabályok keresése 9 / 35

Definition: Association Rule Association Rule An implication expression of the form X Y, where X and Y are itemsets Example: {Milk, Diaper} {Beer} Rule Evaluation Metrics Support (s) Fraction of transactions that contain both X and Y Confidence (c) Measures how often items in Y appear in transactions that contain X TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke Example: { Milk, Diaper} Beer (Milk, Diaper, Beer) 2 s 0.4 T 5 (Milk, Diaper, Beer) 2 c 0.67 (Milk, Diaper) 3 Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 4 Csima Judit Asszociációs szabályok keresése 10 / 35

Szabályok keresése olyan szabály kell, ahol supp min sup és conf min conf supp mindig kisebb, mint conf egy adott szabály esetén két külön küszöb van, ez két külön feltétel egy szabály el tud bukni mindkét feltételen Csima Judit Asszociációs szabályok keresése 11 / 35

Brute-force módszer minden olyan X és Y elemhalmaz végignézése, amikre X Y = minden ilyenre supp és conf számolása, rosszak kidobása d 1 ( ) d ez sajnos túl sok: nagyjából 2 d k, durván exponenciális (ahol k d darab lehetséges item van) k=1 Csima Judit Asszociációs szabályok keresése 12 / 35

Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 10 Computational Complexity Given d unique items: Total number of itemsets = 2 d Total number of possible association rules: 1 2 3 1 1 1 1 d d d k k d j j k d k d R If d=6, R = 602 rules Csima Judit Asszociációs szabályok keresése 13 / 35

Észrevétel egy X Y szabály akkor jó, ha elég nagy a supp és a conf is supp csak X Y -tól függ, először ezt a lécet kell megugrania a potenciális szabálynak ha supp(z = X Y ) elég nagy, akkor jön az, hogy hogyan legyen Z szétosztva a szabály két oldalára, hogy a conf is elég nagy legyen válasszuk szét a két ellenőrzést: először keressünk gyakori elemhalmazokat (Z), csak ilyenekből lehet jó szabály nézzük meg, hogy egy gyakori elemhalmazból milyen nagy megbízhatóságú szabály gyártható le Csima Judit Asszociációs szabályok keresése 14 / 35

Általános algo először legenerálom az összes gyakori elemhalmazt (adott a min sup) ezután minden egyes gyakori elemhalmazból megcsinálom a nagy megbízhatóságú szabályokat Csima Judit Asszociációs szabályok keresése 15 / 35

Brute-force módszer gyakori elemhalmazok keresésére minden nem-üres részhalmazt végignézek ez nem jó, túl sok van: 2 d 1 észrevétel: a részhalmazok háló-struktúrát alkotnak sőt: ha M jelölt van a gyakori halmazra és N tranzakció, akkor minden jelöltet össze kell vetni minden tranzakcióval (benne van-e a jelölt az adott kosárban) ez O(NMw), ahol w a tranzakciók nagysága (hány elem van benne) és már csak M maga 2 d 1 a brute-force esetben Csima Judit Asszociációs szabályok keresése 16 / 35

Frequent Itemset Generation null A B C D E AB AC AD AE BC BD BE CD CE DE ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE ABCD ABCE ABDE ACDE BCDE ABCDE Given d items, there are 2 d possible candidate itemsets Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 8 Csima Judit Asszociációs szabályok keresése 17 / 35

Frequent Itemset Generation Brute-force approach: Each itemset in the lattice is a candidate frequent itemset Count the support of each candidate by scanning the database Transactions List of Candidates N TID Items 1 Bread, Milk 2 Bread, Diaper, Beer, Eggs 3 Milk, Diaper, Beer, Coke 4 Bread, Milk, Diaper, Beer 5 Bread, Milk, Diaper, Coke w Match each transaction against every candidate Complexity ~ O(NMw) => Expensive since M = 2 d!!! Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 9 M Csima Judit Asszociációs szabályok keresése 18 / 35

Hogyan lehetne gyorsítani? csökkentsük M-et: ne az összes részhalmazt nézzük ész nélkül, hanem szűrjünk valahogy mielőtt elkezdjk őket összevetni a tranzakciókkal csökkentsük N-t (a tranzakciók számát) vagy a hosszukat (w-t) használjunk valami ügyes adatszerkezetet a jelöltek és a tranzakciók összevetésére most először az első lehetőséget nézzük: M csökkentése Csima Judit Asszociációs szabályok keresése 19 / 35

Jelöltek számának csökkentése cél: gyakori elemhalmazok keresése hogyan: a részhalmazokból álló hálót úgy bejárni, hogy minél több elemhalmazt ki tudjunk zárni, minél előbb követelmények: minden gyakorit generáljunk végül egyet csak egyszer ne dolgozzunk túl sokat a generálás során egyszerűsítés: item-ek neve helyett számokat használunk Csima Judit Asszociációs szabályok keresése 20 / 35

Apriori-elv Apriori-elv: ha X gyakori, akkor minden részhalmaza gyakori mert ha Y X, akkor supp(y ) = σ(y ) N σ(x ) N = supp(x ) (itt N a tranzakciók száma) ugyanez máshogy: ha Y nem gyakori, akkor senki se gyakori, aki Y -t tartalmazza ezt úgy is szokták mondani, hogy a support függvény anti-monoton Csima Judit Asszociációs szabályok keresése 21 / 35

Apriori algo haladjunk k szerint növően k = 1-től ha egy k elemű elemhalmaz nem gyakori, akkor minden nála bővebb elemhalmaz kizárható (infrequent) egy k elemű halmaz csak akkor lehet gyakori, ha minden k 1 elemű részhalmaza gyakori Csima Judit Asszociációs szabályok keresése 22 / 35

Illustrating Apriori Principle null A B C D E AB AC AD AE BC BD BE CD CE DE Found to be Infrequent ABC ABD ABE ACD ACE ADE BCD BCE BDE CDE ABCD ABCE ABDE ACDE BCDE Pruned supersets ABCDE Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 13 Csima Judit Asszociációs szabályok keresése 23 / 35

Apriori algo 1 egyszer végignézek minden tranzakciót és kigyűjtöm az egy-elemű gyakoriakat (ehhez minden x elemre kiszámolom σ(x)-et), ez az F 1 halmaz 2 k = 2 C 2 = 2-elemű esélyesek: akiknek mindkét tagja F 1 -ben van F 2 = C 2 -beli jelöltek összevetése a tranzakciókkal, a gyakoriak F 2 3 k = 3 C 3 = 3-elemű esélyesek: akiknek minden kételemű részhalmaza F 2 -ben van F 3 = C 3 -beli jelöltek összevetése a tranzakciókkal, a gyakoriak F 3 4 k általában C k = k-elemű esélyesek: akiknek minden k 1-elemű részhalmaza F k 1 -ben van F k = C k -beli jelöltek összevetése a tranzakciókkal, a gyakoriak F k Csima Judit Asszociációs szabályok keresése 24 / 35

Illustrating Apriori Principle Item Count Bread 4 Coke 2 Milk 4 Beer 3 Diaper 4 Eggs 1 Minimum Support = 3 Items (1-itemsets) Itemset Count {Bread,Milk} 3 {Bread,Beer} 2 {Bread,Diaper} 3 {Milk,Beer} 2 {Milk,Diaper} 3 {Beer,Diaper} 3 Pairs (2-itemsets) (No need to generate candidates involving Coke or Eggs) Triplets (3-itemsets) If every subset is considered, 6 C1 + 6 C 2 + 6 C 3 = 41 With support-based pruning, 6 + 6 + 1 = 13 Itemset Count {Bread,Milk,Diaper} 3 Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 14 Csima Judit Asszociációs szabályok keresése 25 / 35

Észrevételek úgy könnyű F k 1 -ből C k képzése, ha az elemhalmazokban növekvő sorrendben vannak mert ekkor könnyű C k -ba tartozó k-elemű jelölteket előálĺıtani úgy, hogy két olyan (rendezett) (k 1)-eleműt keresek F k 1 -ben, amiknek az első k 2 tagja ugyanaz így biztos, hogy minden k elemű gyakori bekerül C k -ba, pontosan egyszer nem kell azzal foglalkozni, hogy C k -ból kiszűrjük a duplikátumokat Csima Judit Asszociációs szabályok keresése 26 / 35

Hogyan lesz tehát F k F k 1 -ből? F k 1 -ben minden elemhalmazban rendezetten vannak az elemek két F k 1 -beli k 1 elemű elemhalmazból akkor csinálok egy k elemű jelöltet C k -ba, ha az első k 2 tagjuk ugyanaz az így létrejött k elemű elemhalmaz többi k 1 elemű részhalmaza is F k 1 -ben van (ez még k 2 ellenőrzés) az így kapott C k minden elemhalmazát összevetjük minden tranzakcióval (ténylegesen leszámoljuk a σ-kat) Csima Judit Asszociációs szabályok keresése 27 / 35

További gyorsítás láttuk, hogy a nagy meló a jelöltek és a tranzakciók összevetése (az egeyes jelöltek előfordulásainak kiszámolásához) eddig: mielőtt összevetjük a jelölteket a tranzakciókkal, csökkentsük a jelöltek számát (minden k elemű részhalmaz helyett csak C k -beliek) további lehetőségek: csökkentsük a tranzakciók hosszát: a nem gyakori egy eleműeket dobjuk ki az elején minden tranzakcióból csökkentsük a tranzakciók számát: F k előálĺıtása közben, akkor dobjunk ki minden k-nál nem hosszabb tranzakciót Csima Judit Asszociációs szabályok keresése 28 / 35

Szabályok generálása gyakori elemhalmazokból tegyük fel, hogy megvannak a gyakori elemhalmazok minden Z gyakori elemhalmazból le szeretnénk generálni az összes olyan X Y szabályt, ahol Z = X Y, X és Y sem üres supp(x Y ) min sup conf (X Y ) min conf a min sup-os dolog Z gyakorisága miatt megvan a conf -os feltételt kéne teljesíteni Csima Judit Asszociációs szabályok keresése 29 / 35

Brute-force algo adott Z esetén minden lehetséges módon X, Z \ X kiválasztása minden választásra conf (X Z \ X ) számolása ehhez σ(x ) kell de 2 Z -2 lehetőség van X -re, ez túl sok Csima Judit Asszociációs szabályok keresése 30 / 35

Észrevétel Ha adott egy Z és ennek egy X részhalmazából, mint baloldalból származtatott szabály nem jó (conf-ja kisebb, mint min conf ), akkor az összes olyan X baloldalból se lesz jó szabály, ahol X X. Biz. conf (X Z \ X ) = σ(z) σ(x ) σ(z) σ(x ) < min conf A középen álló egyenlőtlenség azért igaz, mert X X miatt σ(x ) σ(x ). Csima Judit Asszociációs szabályok keresése 31 / 35

Észrevétel másként ha egy adott Z-ből generálok szabályokat és egy Y jobboldalú szabály rossz, akkor minden olyan szabály is rossz, ahol a jobboldal Y -nál bővebb ez hasonló az Apriori-elvhez csináljuk ugyanazt, amit az Apriori-algoban: adott Z esetén először legeneráljuk az 1-elemű jobboldalú jó szabályokat növeljük a szabályok jobboldalának hosszát, csak olyan jobboldalak jönnek be, amiknek minden eggyel kisebb részhalmazához tartozó szabály jó volt Csima Judit Asszociációs szabályok keresése 32 / 35

Rule Generation for Apriori Algorithm Lattice of rules Low Confidence Rule ABCD=>{ } BCD=>A ACD=>B ABD=>C ABC=>D CD=>AB BD=>AC BC=>AD AD=>BC AC=>BD AB=>CD Pruned Rules D=>ABC C=>ABD B=>ACD A=>BCD Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 47 Csima Judit Asszociációs szabályok keresése 33 / 35

Rule Generation for Apriori Algorithm Candidate rule is generated by merging two rules that share the same prefix in the rule consequent join(cd=>ab,bd=>ac) would produce the candidate rule D => ABC CD=>AB BD=>AC Prune rule D=>ABC if its subset AD=>BC does not have high confidence D=>ABC Tan,Steinbach, Kumar Introduction to Data Mining 4/18/2004 48 Csima Judit Asszociációs szabályok keresése 34 / 35

Apriori-elven működő szabálygenerálás Z-ből egyelemű jobboldalú szabályokra conf számolása, csak a jók maradnak minden szabály jobboldalán rendezve tartjuk az elemeket k 1 hosszú jobboldalról k hosszú jobboldalra: ha van két olyan k 1 hosszú jobboldal, akiknek az első k 2 tagja megegyezik, akkor ezekből unióval k hosszú jobboldalt képezünk (ezt minden lehetséges módon megtesszük) leellenőrizzük, hogy a két, generáló k 1 hosszú részhalmazon kívüli többi k 2 darab k 1 elemű részhalmazhoz is jó szabály tartozott aki ezen a szűrőn is átmegy, arra conf -ot számolok, aki ezt is túléli az lesz jó, k hosszú jobboldalú szabály Csima Judit Asszociációs szabályok keresése 35 / 35