• Nem Talált Eredményt

Elemhalmazokat tartalmaz´o gyakori sorozatok

6. Gyakori sorozatok, bool formul´ ak ´ es epiz´ odok 105

6.1.3. Elemhalmazokat tartalmaz´o gyakori sorozatok

Az el˝oz˝o r´eszben defini´alt feladat ´altal´anos´ıt´asa,

amikor a bemeneti sorozat ´es a mintahalmaz elemei nem elemek sorozata, hanem elemhalma-zok´e. Azaz megeneged¨unk hAB, B, ABC, Ei t´ıpus´u sorozatokat is. V´as´arl´asokn´al p´eld´aul nem csak egy term´eket v´as´arolnak az emberek, hanem term´ekek egy halmaz´at.

Form´alis le´ır´as

A bemeneti sorozatok ´es a mintat´er elemei a 2I felett ´ertelmezett sorozatok, azaz a sorozat elemei az I r´eszhalmazai. A bemeneti sorozat elemeit szok´as v´as´arl´oi sorozatoknak is h´ıvni, utalva arra, hogy el˝osz˝or v´as´arl´oi sorzatok eset´en ker¨ult el˝o a feladat.

Hasonl´oan az eddigiekhez a t´amogatotts´agot a tartalmaz´asi rel´aci´o alapj´an defini´aljuk.

6.2. defin´ıci´o. S=hI1, . . . , Imisorozat tartalmazzaS0=hI10, . . . , In0isorozatot (jel¨ol´esselS0S), ha l´eteznek j1 < j2 < . . . < jn eg´esz sz´amok ´ugy, hogy I10 ⊆Ij1, I20 ⊆Ij2, . . . , In0 ⊆ijn.

Ezzel a tartalmaz´asi rel´aci´oval egy sorozat m´erete a sorozat elemeinek m´eret¨osszege (teh´at p´eld´aul ahAB, B, ABC, Eisorozat m´erete 7). A t´amogatotts´ag, gyakoris´ag, TID lista, gyakori sorozat fogalmai megegyeznek az eddigiekkel. Feladatunk kinyerni az elemhalmazokb´ol fel´ep¨ul˝o gyakori sorozatokat [8].

APRIORIALL

Ism´et APRIORI ! De minek t¨orj¨uk az agyunkat ´uj m´odszereken, ha van m´ar m´odszer, ami j´ol megoldja a feladatot. Csak a jel¨oltek el˝o´all´ıt´as´at kell tiszt´azni (pontosabban csak annak els˝o l´ep´es´et), ´es k´eszen is vagyunk, mehet¨unk pihenni (,). Enn´el m´eg k´enyelmesebb megold´ast java-soltak az APRIORIALL kital´al´oi1. Visszavezett´ek ezt a feladatot az el˝oz˝o r´eszben bemutatott APRIORI megold´asra.

Bevezethetj¨uk a gyakori elemhalmaz fogalm´at. Az I elemhalmaz t´amogatotts´aga megegye-zik azon sorozatok sz´am´aval, amelyek valamelyik eleme tartalmazza I-t. Az I gyakori, ha t´amogatotts´aga nagyobb min supp-n´al. Nyilv´anval´o, hogy gyakori sorozat minden eleme gya-kori elemhalmaz. Ezeket a gyagya-kori elemeket tekinthetj¨uk atomi elemeknek, ´es haszn´alhatjuk az el˝oz˝o r´eszben bemutatott algorimust. A gyakori elemhalmazok meghat´aroz´as´ahoz pedig tetsz˝oleges gyakori elemhalmazt kinyer˝o algoritmust haszn´alhatunk. ¨Ugyeln¨unk kell azonban ar-ra, hogy a t´amogatotts´ag meghat´aroz´as´an´al egy sorozat csak eggyel n¨ovelheti egy jel¨olt m´eret´et akkor is ha t¨obb elem´enek r´esze a jel¨olt.

A feladat visszavezet´ese az el˝oz˝o feladat APRIORI megold´as´ara nem jelenti azt, hogy ez a megold´as megegyezik az absztrakt APRIORI adapt´al´as´aval elemhalmazokat tartalmaz´o so-rozatokra. Az APRIORIALL ugyanis az iter´aci´ok sor´an eggyel hosszabb jel¨oltsorozatokat hoz l´etre, amelyek m´erete nem felt´etlen¨ul eggyel nagyobb gener´atoraikn´al. Az APRIORIALL na-gyobb l´ept´ekben halad, ´ıgy kevesebb iter´aci´os l´ep´est hajt v´egre, de ugyanakkor j´oval t¨obb hamis jel¨oltet gener´alhat. Ez teh´at egy k´enyelmes, de vesz´elyes megold´as.

Id˝ok´enyszerek Bevezet´ese

A gyakori sorozatok kinyer´es´et – hasonl´oan a gyakori mint´ak kinyer´es´ehez – a marketingesek ig´enye keltette ´eletre. A kapott eredm´enyek azonban nem el´eg´ıtett´ek ki ˝oket, ´ujabb feladattal

´alltak el˝o [163] [191] !

I. Id˝ok´enyszerek bevezet´ese. A felhaszn´al´ok gyakran specifik´alni akarj´ak a sorozatban tal´alhat´o szomsz´edos elemek k¨oz¨ott eltelt id˝o maxim´alis ´es minim´alis megengedett ´ert´ek´et.

P´eld´aul nem tulajdon´ıtunk t´ul nagy jelent˝os´eget annak, ha valaki vesz egy tusf¨urd˝ot majd h´arom ´ev m´ulva egy ugyanolyan m´ark´aj´u szappant.

II. Kosarak defin´ıci´oj´anak laz´ıt´asa. Sok alkalmaz´asn´al nem sz´am´ıt ha a sorozat egy elem´et 2 (vagy t¨obb) egym´as ut´ani kos´ar tartalmazza, ha azok v´as´arl´asi ideje bizonyos id˝oablakon bel¨ul van. Amennyiben egy vev˝o 5 perc m´ulva visszat´er az ´aruh´azba, akkor val´osz´ın˝u, hogy ezt nem az el˝oz˝o v´as´arl´as´anak hat´as´ara tette (m´eg kicsomagolni sem volt ideje az ´arut), hanem ink´abb elfelejtett valamit. Logikus, hogy a k´et v´as´arl´ast ¨ossze-vonhatjuk, ´es lehet, hogy az ¨osszevont kos´arhalmazban m´ar megtal´alhat´o lesz a sorozat egy eleme, m´ıg az eredeti kett˝oben k¨ul¨on-k¨ul¨on nem. A tranzakci´ok defin´ıci´oj´anak ilyen laz´ıt´as´an´al a sorozatok elemeit kosarak uni´oja tartalmazhatja, ahol az uni´oban szerepl˝o kosarak v´as´arl´asi idejeinek egy el˝ore megadott id˝oablakon bel¨ul kell lenni¨uk.

1Ez nem meglep˝o, hiszen sem az ism´etl´es n´elk¨uli jel¨oltel˝all´ıt´as sem a t´amogatotts´ag meghat´aroz´asa nem trivi´alis feladat. ´Erdemes elgondolkozni azon, hogy mi´ert nem.

A Gyakori Sorozat Fogalma Id˝ok´enyszerek Eset´en

Ism´et v´as´arl´asi sorozatok sorozatak´ent adott a bemenet, de most a v´as´arl´asi sorozatok elemei nem puszt´an elemhalmazok, hanem olyan p´arok, amelyek els˝o tagja egy elemhalmaz, m´asodik tagja pedig egy id˝ob´elyeg. Teh´at, legyen ism´et I={i1, i2, . . . , im}elemek (vagy term´ekek) hal-maza. Egy v´as´arl´oi sorozat mostT=hˆt1,ˆt2, . . . ,ˆtnitranzakci´ok sorozata, ahol ˆtj= (tj, T IM Ej), tj ⊆I, T IM Ej ∈R. A ˆt= (t, T IM E) tranzakci´o tartalmazza I ⊆I elemhalmazt (jel¨ol´esben I⊆ˆt), ha I⊆t. A ˆttranzakci´o idej´ere a tov´abbiakban ˆt.T IM E-al hivatkozunk, tranzakci´oj´ara ˆt.t-vel.

A mintak¨ornyezet defin´ıci´oja megegyezik a hagyom´anyos, sorozatokat tartalmaz´o min-tak¨ornyezettel. Mivel ebben az esetben a bemenet ´es a mintat´er elemeinek t´ıpusa k¨ul¨onb¨ozik (p´arokb´ol ´all´o sorozat, illetve elemhalmazokb´ol ´all´o sorozat) ez´ert defini´alnunk kell a t´amogatotts´agot.

6.3. defin´ıci´o. AT=hˆt1,ˆt2, . . . ,ˆtni v´as´arl´oi sorozat tartalmazza az M=hI1, . . . , Imi mintaso-rozatot, ha l´eteznek 1≤l1≤u1< l2≤u2< . . . < lm≤um≤n eg´esz sz´amok ´ugy, hogy

I. Ij⊆ ∪uk=lj jk.t,1≤j≤m,

II. ˆtui.T IM E−ˆtli.T IM E≤ id˝o ablak, 1≤i≤m, III. ˆtli.T IM E−ˆtui−1.T IM E > min eltelt id˝o, 2≤i≤m IV. ˆtui.T IM E−ˆtli1.T IM E ≤ max eltelt id˝o, 2≤i≤m

A fentiekb˝ol l´atszik, hogy a 6.1 defin´ıci´oval ellent´etben tetsz˝oleges elemhalmazt tranzakci´ok elemhalmazainak uni´oja tartalmazhat, ahol a tranzakci´oknak id˝o ablakon bel¨ul kell lenni¨uk (2.

felt´etel).

Ez alapj´an az M mintasorozat t´amogatotts´aga legyen az M-et tartalmaz´o v´as´arl´oi soro-zatok sz´ama. Egy mintasorozat gyakori, ha t´amogatotts´aga nem kisebb egy el˝ore megadott t´amogatotts´agi k¨usz¨obn´el (min supp).

Defini´altunk egy gyakori mint´akat kinyer˝o probl´em´at, amit nyilv´anval´oan meg tudunk ol-dani egy APRIORI algoritmussal. A jel¨oltek el˝o´all´ıt´as´anak m´odja egyezzen meg az APRI-ORIALL jel¨oltel˝o´all´ıt´as´anak m´odj´aval (l´ev´en a mintak¨ornyezet ugyanaz), a t´amogatotts´agok meghat´aroz´as´an´al pedig vegy¨uk figyelembe az id˝ok´enyszereket, annak ´erdek´eben, hogy a helyes t´amogatotts´agokat kapjuk. Ha lefuttatn´ank ´ıgy az algoritmus, ´es vizsg´aln´ank az eredm´enyt, akkor megd¨obbenve venn´enk ´eszre, hogy az APRIORI algoritmus nem ´all´ıtotta el˝o az ¨osszes gyakori sorozatot. Mi az oka ennek ? Bizony´ıtottuk, hogy az APRIORI teljes, de akkor hol b´ujt el a hiba ? A k¨ovetkez˝o r´eszben el´aruljuk a megold´ast.

GSP algoritmus

A GSP (Generalized Sequential Patterns) algoritmus alkalmas olyan sorozatok kinyer´esre, amelyn´el id˝ok´enyszereket alkalmazhatunk ´es laz´ıthatjuk a tranzakci´ok defin´ıci´oj´at. A most k¨ovetkez˝o le´ır´as l´atsz´olag teljesen elt´er a GSP-t publik´al´o ´ır´ast´ol. Ennek oka az, hogy ragaszko-dunk az egys´eges le´ır´ashoz, amit a 5.1 r´eszben adtunk. Ennek a le´ır´asnak nagy el˝onye az, hogy ha a probl´em´at meg tudjuk fogalmazni ebben a keretben, akkor a megold´as is azonnal ad´odik.

T´erj¨unk vissza arra a k´erd´esre, hogy hol a hiba. Tekints¨uk a k¨ovetkez˝o mint´at :M=hA, B, Ci,

´es n´ezz¨uk a k¨ovetkez˝o v´as´arl´oi sorozatot :T=h(A,1.0),(B,2.0),(C,3.0)i. Hamax eltelt id˝o=1.5, akkor T tartalmazza M-et, de nem tartalmazza annak M0 = hA, Ci r´eszmint´aj´at, ugyanis az A ´es C elem id˝ob´elyege k¨oz¨ott nagyobb a k¨ul¨onbs´eg max eltelt id˝o-n´el. Ezek szerint az M t´amogatotts´aga nagyobb, mint M0 r´eszmint´aj´anak t´amogatotts´aga. Azaz a fent defini´alt t´amogatotts´agi f¨uggv´eny nem teljes´ıt a t´amogatotts´agi f¨uggv´ennyel szembeni elv´ar´asunkat ! H´at ez a hiba, ez´ert nem fog helyes eredm´enyt adni az APRIORI.

Ahelyett, hogy ´uj probl´em´at defini´aln´ank ´es ´uj algoritmus keresn´enk, pr´ob´alkozzunk azzal, hogy ´at´ırjuk a feladatot ´ugy, hogy az ´uj feladat megold´asai megegyezzenek az eredeti feladat megold´asaival, ´es az ´uj feladat beilleszkedjen egys´eges keret¨unkbe. A bemenet, a keresett minta t´ıpusa ´es a t´amogatotts´agi f¨uggv´eny adott, ´ıgy csak a MK= (M,≺) mintak¨ornyezet m´asodik tagj´at v´altoztathatjuk meg.

6.4. defin´ıci´o. Az M=hI1, . . . , Ini sorozatnakM0 r´eszsorozata (vagy az M tartalmazza M0-t, M0≺M), amennyiben az al´abbi 3 felt´etel k¨oz¨ul teljes¨ul valamelyik :

I. M0-t megkaphatjuk M-b˝ol I1 vagy In t¨orl´es´evel.

II. M0-t megkaphatjuk I-b˝ol egy legal´abb 2 elem˝u Ii valamely elem´enek t¨orl´es´evel.

III. M0 r´eszsorozata M00-nek, ahol M00 r´eszsorozataM-nek.

Ebben a mintak¨ornyezetben a || f¨uggv´eny ism´et a sorozat elemei m´eret´enek ¨osszeg´et adja meg. N´ezz¨unk p´eld´akat r´eszsorozatokra. Legyen M =hAB, CD, E, Fi. Ekkor a hB, CD, Ei, hAB, C, E, Fi´es ahC, Eimind r´eszsorozatai M-nek, de a hAB, CD, Fi´es hA, E, Fi sorozatok nem azok.

6.5. ´eszrev´etel. A fenti tartalmaz´asi rel´aci´ora n´ezve a t´amogatotts´agi f¨uggv´eny rendelkezik a monotonit´as tulajdons´ag´aval.

Ha visszat´er¨unk ahhoz a p´eld´ahoz, amelyen bemutattuk, hogy az eredeti t´amogatotts´agi f¨uggv´eny nem igazi t´amogatotts´agi f¨uggv´eny, akkor l´athatjuk, hogy nem baj, ha hA, B, Ci t´amogatotts´aga nagyobb, mint azhA, Cit´amogatotts´aga, ugyanishA, Cinem r´esze azhA, B, Ci sorozatnak.

Most m´ar alkalmazhatjuk az APRIORI algoritmust. Ezzel kapcsolatban egyetlen k´erd´est kell tiszt´aznunk, m´egpedig az, hogyan ´es mikor ´all´ıtsunk el˝o k´et`−1 elem˝u gyakori sorozatb´ol

` elem˝u jel¨oltet.

K´et k-m´eret˝u sorozatb´ol (S1, S2) potenci´alis jel¨oltet gener´alunk akkor, ha t¨or¨oln´enk S1 els˝o elem´enek legkisebb sorsz´am´u elem´et ugyanazt a sorozatot kapn´ank, mintha S2-b˝ol az utols´o elem legnagyobb sorsz´am´u elem´et t¨or¨oln´enk. A jel¨olt sorozat azS2 utols´o elem´enek legnagyobb sorsz´am´u elem´evel b˝ov´ıtettS1sorozat lesz. Az ´uj elem k¨ul¨on elemk´ent fog megjelenni a jel¨oltben, amennyibenS2-ben is k¨ul¨on elem volt, ellenkez˝o esetbenS1utols´o elem´ehez csatoljuk. A fentiek al´ol kiv´etel az 1-elemes sorozatok illeszt´ese, ahol az ´uj elemet mind a k´etf´elek´eppen fel kell venni, teh´at mint ´uj elem, ´es mint b˝ov´ıt´es is. Ezek szerint h(i)i ´es h(j)i illeszt´es´en´el h(i, j)i,

´es h(j),(i)i is beker¨ul a jel¨oltek k¨oz´e (egy´ertelm˝u, hogy mindk´et jel¨oltnek mindk´et 1-elemes sorozat r´eszsorozata).

A fenti t´abl´azat egy p´eld´at mutat a jel¨oltek el˝o´all´ıt´as´ara. Az h(A, B),(C)i sorozatot a h(B),(C, D)i ´es a h(B),(C),(E)i sorozathoz is illeszthetj¨uk. A t¨obbi sorozatot egyetlen

3 m´eret˝u 4 m´eret˝u jel¨oltek gyakoriak potenci´alis jel. jel¨olt h(A, B),(C)i h(A, B),(C, D)i h(A, B),(C, D)i h(A, B),(D)i h(A, B),(C),(E)i

h(A),(C, D)i h(A, C),(E)i h(B),(C, D)i h(B),(C),(E)i

6.1. t´abl´azat. P´elda : GSP jel¨oltgener´al´as

m´asik sorozathoz sem tudjuk illeszteni. P´eld´aul az h(A, B),(D)i illeszt´es´ehez h(B),(Dx)ivagy h(B),(D),(x)i alak´u sorozatnak k´ene szerepelnie a gyakoriak k¨oz¨ott, de ilyen nem l´etezik. A t¨orl´esi f´azisban az h(A, B),(C),(E)i sorozatot t¨or¨olj¨uk, mert az h(A),(C),(E)i r´eszsorozata nem gyakori.

A jel¨oltek t´amogatotts´ag´anak meghat´aroz´as´at nem r´eszletezz¨uk.