Assosiaatiosäännöt ja niiden etsintä datasta



Samankaltaiset tiedostot
arvostelija Assosiaatiosäännöt sekvensseissä Jarmo Hakala Vantaa HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Esimerkkejä vaativuusluokista

Tietokannan eheysrajoitteet ja niiden määrittäminen SQL-kielellä

Tiedonlouhinta (kl 2013) Kurssin kuvaus. Esitiedot. Kurssin arvostelu

2 k -faktorikokeet. Vilkkumaa / Kuusinen 1

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi

(1) refleksiivinen, (2) symmetrinen ja (3) transitiivinen.

Matematiikassa ja muuallakin joudutaan usein tekemisiin sellaisten relaatioiden kanssa, joiden lakina on tietyn ominaisuuden samuus.

Paikkatieto ja assosiaatiosäännöt

Paikkatieto ja assosiaatiosäännöt. Referenssipiirre. Spatiaaliset assosiaatiosäännöt

Matriisipotenssi. Koska matriisikertolasku on liitännäinen (sulkuja ei tarvita; ks. lause 2), voidaan asettaa seuraava määritelmä: ja A 0 = I n.

Kielitieteellisten aineistojen käsittely

9 Matriisit. 9.1 Matriisien laskutoimituksia

Tehostettu kisällioppiminen tietojenkäsittelytieteen ja matematiikan opetuksessa yliopistossa Thomas Vikberg

Salausmenetelmät LUKUTEORIAA JA ALGORITMEJA. Veikko Keränen, Jouko Teeriaho (RAMK, 2006) 3. Kongruenssit. à 3.4 Kongruenssien laskusääntöjä

näkökulma lähekkäisten vedenkokoumien nimeämiseen

MS-A0402 Diskreetin matematiikan perusteet

Ratkaisu: Yksi tapa nähdä, että kaavat A (B C) ja (A B) (A C) ovat loogisesti ekvivalentit, on tehdä totuustaulu lauseelle

Hilbertin aksioomat ja tarvittavat määritelmät Tiivistelmä Geometria-luentomonisteesta Heikki Pitkänen

E. Oja ja H. Mannila Datasta Tietoon: Luku 2

T Datasta tietoon, syksy 2005 Laskuharjoitus 8.12., ratkaisuja Jouni Seppänen

T Luonnollisten kielten tilastollinen käsittely

Salausmenetelmät. Veikko Keränen, Jouko Teeriaho (RAMK, 2006)

Vasen johto S AB ab ab esittää jäsennyspuun kasvattamista vasemmalta alkaen:

Ortogonaalinen ja ortonormaali kanta

Reaalilukuvälit, leikkaus ja unioni (1/2)

811120P Diskreetit rakenteet

-Matematiikka on aksiomaattinen järjestelmä. -uusi tieto voidaan perustella edellisten tietojen avulla, tätä kutsutaan todistamiseksi

monitavoitteisissa päätöspuissa (Valmiin työn esittely) Mio Parmi Ohjaaja: Prof. Kai Virtanen Valvoja: Prof.

Ryhmäfaktorianalyysi neurotiedesovelluksissa (Valmiin työn esittely) Sami Remes Ohjaaja: TkT Arto Klami Valvoja: Prof.

Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa Linkkikeskukset ja auktoriteetit (hubs and authorities) -algoritmi

kaikille a R. 1 (R, +) on kommutatiivinen ryhmä, 2 a(b + c) = ab + ac ja (b + c)a = ba + ca kaikilla a, b, c R, ja

T Luonnollisen kielen tilastollinen käsittely Vastaukset 3, ti , 8:30-10:00 Kollokaatiot, Versio 1.1

TAPAUS-VERROKKITUTKIMUS

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.

Assosiaatiosääntöjen louhinnan tehostaminen

BM20A0700, Matematiikka KoTiB2

HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 4 Ratkaisuehdotukset

Matriisien tulo. Matriisit ja lineaarinen yhtälöryhmä

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

Tutorial on Assignment 3 in Data Mining 2008 Association Rule Mining. Gyozo Gidofalvi Uppsala Database Laboratory

Kurssikoe on maanantaina Muista ilmoittautua kokeeseen viimeistään 10 päivää ennen koetta! Ilmoittautumisohjeet löytyvät kurssin kotisivuilla.

811120P Diskreetit rakenteet


Tiedonlouhinta ja sen mahdollisuudet

Tiedonlouhinta rakenteisista dokumenteista (seminaarityö)

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

Yhteenlaskun ja skalaarilla kertomisen ominaisuuksia

Jarkko Peltomäki. Aliryhmän sentralisaattori ja normalisaattori

Insinöörimatematiikka D

Ratkaisu: Käytetään induktiota propositiolauseen A rakenteen suhteen. Alkuaskel. A = p i jollain i N. Koska v(p i ) = 1 kaikilla i N, saadaan

Tekijä Pitkä matematiikka On osoitettava, että jana DE sivun AB kanssa yhdensuuntainen ja sen pituus on 4 5

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

HY / Matematiikan ja tilastotieteen laitos Johdatus logiikkaan I, syksy 2018 Harjoitus 5 Ratkaisuehdotukset

Johdatus matematiikkaan

Matematiikka B2 - Avoin yliopisto

Talousmatematiikan perusteet: Luento 9. Matriisien peruskäsitteet Yksinkertaiset laskutoimitukset Transponointi Matriisitulo

Loogiset konnektiivit

Tiedon louhinnan teoria (ja käytäntö) OUGF kevätseminaari 2004 Hannu Toivonen

[a] ={b 2 A : a b}. Ekvivalenssiluokkien joukko

TAMPEREEN YLIOPISTO Pro gradu -tutkielma. Roosa Niemi. Riippuvuuslogiikkaa

Opetuksen ja opiskelun tehokas ja laadukas havainnointi verkkooppimisympäristössä

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Matriisit. Määritelmä 1 Reaaliluvuista a ij, missä i = 1,..., k ja j = 1,..., n, muodostettua kaaviota a 11 a 12 a 1n a 21 a 22 a 2n A =

Tehtäväsarja I Tehtävät 1-5 perustuvat monisteen kappaleisiin ja tehtävä 6 kappaleeseen 2.8.

Käyttäjäkeskeisen suunnittelun periaatteet ja prosessit

1. Logiikan ja joukko-opin alkeet

T kevät 2007 Laskennallisen logiikan jatkokurssi Laskuharjoitus 1 Ratkaisut

Suurin yhteinen tekijä (s.y.t.) ja pienin yhteinen monikerta (p.y.m.)

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

Nimitys Symboli Merkitys Negaatio ei Konjuktio ja Disjunktio tai Implikaatio jos..., niin... Ekvivalenssi... jos ja vain jos...

Avainsanojen poimiminen Eeva Ahonen

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

Matematiikka B2 - TUDI

7. Lohkominen ja sulautus 2 k kokeissa. Lohkominen (Blocking)

Ennakkotehtävän ratkaisu

Lukion matematiikkakilpailun alkukilpailu 2015

Sovellettu todennäköisyyslaskenta B

Tyyppiluokat II konstruktoriluokat, funktionaaliset riippuvuudet. TIES341 Funktio-ohjelmointi 2 Kevät 2006

Lukumäärän laskeminen 1/7 Sisältö ESITIEDOT:

MAT Algebra 1(s)

Laskennan mallit (syksy 2010) Harjoitus 8, ratkaisuja

Tehtävä 1. Päättele resoluutiolla seuraavista klausuulijoukoista. a. 1 {p 3 } oletus. 4 {p 1, p 2, p 3 } oletus. 5 { p 1 } (1, 2) 7 (4, 6)

T Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 2 (opetusmoniste, lauselogiikka )

Ekvivalenssirelaatio. Määritelmä 2 Joukon A binäärinen relaatio R on ekvivalenssirelaatio, mikäli. Jos R on ekvivalenssirelaatio ja a A, niin joukkoa

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

pitkittäisaineistoissa

1.1. Määritelmiä ja nimityksiä

f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))

pitkittäisaineistoissa

Tietorakenteet ja algoritmit - syksy

Koodausteoria, Kesä 2014

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

HELIA 1 (17) Outi Virkki Tiedonhallinta

TUTKIMUSAINEISTON ANALYYSI. LTKY012 Timo Törmäkangas

3 Lineaariset yhtälöryhmät ja Gaussin eliminointimenetelmä

Evolutiivisesti stabiilin strategian oppiminen

1 Logiikkaa. 1.1 Logiikan symbolit

Transkriptio:

Assosiaatiosäännöt ja niiden etsintä datasta Wilhelmiina Hämäläinen 6. helmikuuta 2007 1 Mitä on tiedon louhinta? Tiedonlouhinnan (Data mining) tavoitteena on löytää kiinnostavia hahmoja datasta. hahmo=osittaismalli (kuvaa vain osan datasta) vs. (globaali) malli=kuvaa koko dataa esim. Useimmat opiskelijat, jotka ovat hyviä Tietorakenteissa, ovat hyviä myös Laskennateoriassa. Ei kerro mitään opiskelijoista, jotka huonoja Tietorakenteissa. Juuret tilastotieteessä (erit. Exploratory data analysis) ja koneoppimisessa (Machine learning). Menetelmiä algoritmiikasta ja tietokannoista. Nykyisin alan asiantuntijat puhuvat mieluummin tietämyksen muodostuksesta (Knowledge discovery, KDD), joka on laajempi prosessi: 1. Understanding domain 2. Preprocessing data 3. Discovering patterns 4. Postprocessing results 5. Application (3. askel = varsinainen data mining) 1

Data mining vs. Machine learning Klassisia eroja: Data mining Machine learning Oletus: Data ensisijaista, ei sisällä Data on allaolevan mallin välttämättä mitään tuottamaa rakennetta Tavoite: Löytää kaikki kiinnostavat Oppia yksi malli, jolla voidaan hahmot, jotka kuvaavat dataa ennustaa tulevaisuuden tapahtumia Mallit: Yksinkertaisia malleja tai Melko monimutkaisia, globaaleja paikallisia hahmoja malleja Korostus: Koko KDD prosessi Vain oppimisaskel Datan alkuperä: Usein jonkun toisen projektin Valittu kyseistä tehtävää sivutuotteena varten (opetusjoukko) Datan määrä: Valtavan suuria, jopa miljoonia Vain satoja tai tuhansia rivejä. rivejä Nykyisin raja hämärtynyt! Käyttävät samoja mallinnusparadigmoja, mutta eri tavoite: DM: datan kuvaus, uuden informaation löytyminen ML: globaalin mallin oppiminen ennustustarkoituksiin Ennemmin kannattaisi puhua deskriptiivisestä ja prediktiivisestä mallinnuksesta! 2

2 Notaatiot A Attribuutin eli muuttujan nimi Dom(A) Attribuutin arvoalue. Esim. Dom(A 1 ) = {0, 1}. A i = a i Attribuutin arvo R = {A 1,..., A k } Relaatioskeema kertoo attribuuttien nimet. Näihin liittyvät arvoalueet Dom(A 1 ),..., Dom(A k ). t = [t(a 1 ), t(a 2 ),..., t(a k )] Monikko eli rivi, joka kiinnittää attribuuttien arvot. t(a i ) = a i Attribuutin A i arvo monikossa t. r = {t 1,..., t n } Relaatio, joukko rivejä skeeman R mukaan. r Dom(A 1 )... Dom(A k ). r = n Relaation koko, sen rivien lukumäärä. m(a i = a i ) Rivien lukumäärä, joilla A i = a i. Ts. (A i = a i ):n absoluuttinen frekvenssi. P (A i = a i ) = m(a i=a i ) (A n i = a i ):n suhteellinen frekvenssi relaatiossa, sen estimoitu todennäköisyys. Huom! Assosiaatiosäännöissä tarkastelemme usein attribuuttijoukkoa X R, X = {A i1, A i2,...a il }, l k. A i1 = a i1,..., A il = a vastaa loogista konjunktiolauseketta, jossa kukin A ij = a ij on propositio (pilkku vastaa konjunktiota ). Nyt m(a i1 = a i1,..., A il = a il ) = {t r t(a i1 ) = a i1... t(a il ) = a il }. Huom.2: Jos kaikki attribuutit ovat binaarisia ts. Dom(A i ) = {0, 1} i = 1,..., k, voimme käyttää loogisia merkintöjä A (A = 1) ja A (A = 0). 3 Assosiaatiosäännöt Muotoa Asiakkaat, jotka ostavat olutta ja makkaraa, ostavat yleensä myös sinappia olevia osittaisriippuvuuksia. Alkujaan [AIS93], hyvä esitys [Toi96] Määritelmä 1 (Assosiaatiosääntö) Olkoon R joukko kategorisia muuttujia ja r R:n mukainen relaatio. Olkoon X = {X 1,..., X l } R ja Y R, Y / X. Merkitään arvokombinaatiota (X 1 = x 1 ),..., (X l = x l ), x i Dom(X i ), X = x:llä. Tällöin säännön (X = x) (Y = y) kondenssi on cf(x = x Y = y) = P (X = x, Y = y) P (X = x) 3 = P (Y = y X = x)

ja sen frekvenssi on fr(x = x Y = y) = P (X = x, Y = y). Annettuna raja-arvot min cf, min fr [0, 1], sääntö (X = x) (Y = y) on assosiaatiosääntö r:ssä, jos (i) cf(x = x Y = y) min cf, ja (ii) fr(x = x Y = y) min fr. Ehto (i) edellyttää, että sääntö on tarpeeksi vahva ja ehto (ii), että se on tarpeeksi yleinen. Huom! Kun kaikki attribuutit ovat binäärisiä eikä olla kiinnostuneita attribuuttien negaatioita, merkitään sääntöä (X 1 = 1, X 2 = 1,..., X l = 1) Y = 1 usein lyhyesti X 1 X 2... X l Y. Esimerkki 1 Olkoon TKTL:n kurssisuoritustietokannassa 1000 opiskelijaa. Löydämme assosiaatiosäännön 90% opiskelijoista, jotka ovat suorittaneet Tiedonlouhinta-kurssin, on suorittanut myös Opetusteknologia-kurssin. Säännön kondenssi on siis 0.90. Jos vain 10 oppilasta 1000:sta on suorittanut Tiedonlouhinta-kurssin, on 9 suorittanut Opetusteknologia-kurssin ja sääntö hyvin harvinainen (frekvenssillä 9/1000 = 0.009). Jos sen sijaan 600 oppilasta on suorittanut Tiedonlouhintakurssin, on 540 oppilasta suorittanut myös Opetusteknologia-kurssin, mikä on jo merkittävä havainto (frekvenssillä 540/1000 = 0.54). Täytyy siis huomioida sekä säännön yleisyys (frekvenssi) että voimakkuus (kondenssi)! Huom.2! Tietokantojen yhteydessä puhutaan usein funktionaalisista riippuvuuksista, joita merkitään samaan tapaan X Y. Funktionaalinen riippuvuus merkitsee kuitenkin eri asiaa: X Y on funktionaalinen riippuvuus relaatiossa r jos ja vain jos t 1 [Y ] = t 2 [Y ] kaikilla t 1, t 2 r, joilla t 1 [X] = t 2 [X]. Riippuvuus pätee kaikkien X:n ja Y :n arvojen välillä. Riippuvuutta vastaa siis joukko assosiaatiosääntöjä! (Jos X = 1, Y = 1 ja X ja Y binäärisiä, niin kaksi sääntöä: X = 0 Y = y 1 ja X = 1 Y = y 2, missä y 1, y 2 {0, 1}.) Kunkin säännön kondenssi on aina cf = 1, mutta frekvenssistä ei olla kiinnostuneita. 4

4 Sovelluksia 4.1 Ostoskoridatan analyysi Assosiaatiosääntöjen tunnetuin sovellus on asiakkaiden ostotottumusten analysointi ostoskoridatasta. Tulosten perusteella kauppias voi esim. päättää, miten tuotteet kannattaa sijoitella kaupassa. Ostoskoridatan attribuutit A 1,..., A k ovat tuotenimiä. Koska tuotteita on valtavasti, voi k olla useita tuhansia. Kukin A i on binaarinen: tuote joko esiintyy ostoskorissa tai ei esiinny. Relaation rivit vastaavat ostoskoreja (kokoelma tuotteita, jotka on maksettu kassalla). Data on hyvin harvaa! Usein alle 5% ostoskorin attribuuteista on 1-arvoisia. Tavallisesti tutkitaan vain korissa esiintyviä tuotteita, ei niistä puuttuvia (joita on valtavasti!) Samaan tapaan voi analysoida esim. opintosuoritusrekisteristä kurssien välisisä osittaisriippuvuuksia ( suositukset, missä järjestyksessä suorittaa kursseja) tai etsiä tekstistä yhdessä esiintyviä sanoja (kukin lause vastaa riviä ja sana attribuuttia). Huom! Omissa kokeiluissasi voit käyttää esim. weka-ohjelmaa [Wek]. 4.2 Assosiaatiosäännöt luokittelun apuna Luokittelusääntö on assosiaatiosääntö X = x C = c, missä C on luokkamuuttuja. Esimerkki 2 Mushroom-datajoukossa [NHBM98] jokainen sieni on luokiteltu joko syötäväksi (edible) tai myrkylliseksi (poisonous). Muut attribuutit kuvaavat mm. sienen hatun muotoa, pintaa ja väriä, varren muotoa, renkaiden lukumäärää jne. Joukosta löytyvät mm. seuraavat luokittelusäännöt: Odor=none,Gill-size=broad,Stalk-shape=tapering Edible f r = 0.31, cf = 1.00 Odor=none,Gill-size=broad,Stalk-surface-above-ring=smooth Edible f r = 0.33, cf = 0.97 5

Bruises=false,Population=several Poisonous f r = 0.31, cf = 0.92 Luokittelussa käytettävä päätöspuu (decision tree on vanhempi keksintö (ks. esim. [Mit97][52-80], [HMS02][343-347]), mutta voidaan kuvata joukkona assosiaatiosääntöjä. Esimerkki 3 Ohjelmointi1-kurssin harjoitustehtävät on jaettu kolmeen ryhmään: A=Ohjelmoinnin perusrakenteet B=Silmukat ja taulukot C=Appletit Kussakin ryhmässä opiskelija on saanut joko vähän (little) tai paljon (lot) pisteitä. Näiden perusteella on pyritty ennustamaan kurssin lopputulokset F R1 {0, 1} ts. läpäiseekö opiskelija kurssin. B lot little FR1=1 little A lot FR1=0 little C lot FR1=0 FR1=1 Rule Freq. Conf. B = lot F R1 = 1 73/125=0.58 0.92 B = little A = little F R1 = 0 12/125=0.10 0.86 B = little A = lot C = little F R1 = 0 18/125=0.14 0.60 B = little A = lot C = lot F R1 = 1 2/125=0.02 1.00 Huom! Päätöspuu on globaali malli! Ei voida aettaa minimifrekvenssiä, sillä katettava kaikki mahdolliset tapaukset. 6

Päätöspuun oppimiseen omat algoritmit (esim. C4.5 [Qui93]). Varoitus: Päätöspuut tuottavat epäluotettavia tuloksia, ellei mallia ole opittu tarpeeksi suuresta datajoukosta (useita tuhansia rivejä, riippuen attribuuttien lkm:stä ja arvoalueiden koosta). Monia päätöspuun hyvyysmittoja sovellettu assosiaatiosääntöjen kiinnostavuuden arviointiin. Huom! Assosiaatiosääntöjä voi käyttää apuna myös Bayes-verkon rakenteen määrittelyssä tai niiden avulla voi suorittaa suoraan luokittelua (huomioiden myös frekvenssit) [LHM98]. 4.3 Kokonaistodennäköisyysjakauman johtaminen Säännöllisistä joukoista voi johtaa datan kokonaistodennäköisyysjakauman. Idea [PMS00]: 1. säännölliset joukot muodostavat joukon eheysehtoja 2. käydään läpi kaikki yhteensopivat kokonaistodennäköisyysjakaumat ja valitaan se, jolla maksimientropia Raskas algoritmi! Toimii vain, kun attribuuttien lukumäärä suhteellisen pieni. 5 Assosiaatiosääntöjen etsintä Tavallisesti assosiaatiosäännöt etsitään kahdessa vaiheessa 1 : 1. Etsitään kaikki säännölliset joukot (frequent sets) X = x, X R, joilla fr(x = x) min fr. 2. Käydään läpi kaikki säännölliset joukot X = x ja testataan kaikilla (X i = x i ) ( X i X, x i Dom(X i )), onko cf((x 1 = x 1 ),..., (X i 1 = x i 1 ), (X i+1 = x i+1 ),..., (X l = x l ) (X i = x i )) min cf. 1Muistutus: attribuuttien arvokombinaatiota X 1 = x 1,..., X l = x l merkittiin X = x:lla 7

5.1 Apriori-algoritmi Säännölliset joukot voidaan löytää klassisella Apriori-algoritmilla (ks. tarkemmin esim. [Toi96]). kehitetty alkujaan ostoskoridatalle oletus: binääridataa, eikä attribuuttien negaatioista olla kiinnostuneita. tehokas kun hyvin harvaa dataa, mutta ei toimi tiheällä datalla Idea: etsitään ensin säännölliset yhden attribuutin joukot, sitten näiden pohjalta kaikki säännölliset kahden attribuutin joukot, jne. Haussa hyödynnetään frekvenssin monotonisuutta! Jos joukko X on frekventti, myös kaikki Y X ovat frekventtejä. Jos jokin Y X ei ole frekventti, ei X voi olla frekventti. A B C D AB AC AD BC CD BD ABC ABD ACD BCD ABCD 5.2 Laskennallinen vaativuus Laskenta on hyvin raskasta, jos tutkimme myös negaatiot tai jos attribuutit ovat moniarvoisia! 8

Jos kaikilla attribuuteilla X i R, i = 1,..., k, on v arvoa, niin pahimmillaan voi olla (1 + v) k frekventtiä arvokombinaatiota (frekventtiä joukkoa). Jos v = 2 ja emme ole kiinnostuneita negaatioista, on säännöllisiä joukkoja maksimissaan 2 k = 2 8 = 256. Esimerkkejä säännöllisten joukkojen maksimilukumääristä: k v Rajoitus S-joukkojen lkm 8 2 Ei negaatioita 2 8 = 256 8 2 3 8 = 6561 8 3 4 8 = 65536 20 2 Ei negaatioita 2 2 0 = 1048576 20 2 3 2 0 > 3.48 10 9 Assosiaatiosääntöjen muodostus säännöllisistä joukoista paljon kevyempää: Säännöllisestä joukosta X, X = l voi muodostaa maksimissaan l erilaista assosiaatiosääntöä. 5.3 Laajennokset Apriorista erilaisia variaatioita, jotka esim. hyödyntävät erilaisia tietorakenteita välitulosten tehokkaaseen talletukseen. Käytännössä ei isoja eroja! Apriori-algoritmi soveltuu sellaisenaan myös negaatioita sisältävien joukkojen sekä moniarvoisista attribuuteista koostuvien joukkojen etsintään. Rajoitus: laskennallinen raskaus! Numeerinen data on ensin diskretoitava jollain tavalla ks. esim. [RS01, SA96] Disjunktioita sisältävät säännöt esim. Henkilö, joka ostaa olutta tai siideriä, ostaa yleensä myös tupakkaa tai Lääke A aiheuttaa tavallisesti pahoinvointia tai huimausta kiinnostavia mutta vaikeita etsiä! (ks. esim. [NCJK01]) Ongelma: frekvenssin monotonisuusominaisuus ei päde disjunktioille! Joukko A B on aina frekventti, jos A tai B on frekventti. Ei-frekventin joukon lisäys saattaa kuitenkin kasvattaa kondenssia ja tuottaa kiinnostavia sääntöjä. 9

Esim. Laske sääntöjen A C, B C ja (A B) C frekvenssit ja kondenssit annetusta relaatiosta! Rivien lukumäärä on n = 100. X m(x) A, B, C 10 A, B, C 0 A, B, C 10 A, B, C 0 A, B, C 10 A, B, C 20 A, B, C 40 A, B, C 10 6 Kiinnostavien sääntöjen valinta Apriorin ongelma: kaikilla säännöllisillä joukoilla sama minimifrekvenssi riippumatta attribuuttien lukumäärästä. Jos min fr liian pieni, löytyy valtavasti triviaaleja sääntöjä. Jos min fr suuri, ei löydetä spesifejä sääntöjä, vaikka olisivat tilastollisesti merkittäviä. Kuinka valita kiinnostavat tai tilastollisesti merkittävät säännöt?? Kiinnostavuus on subjektiivinen ominaisuus! Useita heuristisia mittoja kiinnostavien sääntöjen valitsemiseen. Mitat perustuvat yleensä säännön frekvenssiin ja kondenssiin (valitsevat assosiaatiosäännöt, joilla suuri frekvenssi ja poikkeuksellisen suuri/pieni kondenssi). (ks. esim. [RBA99]) Tilastollisten merkittävyystestien ongelma: DM:ssa testataan systemaattisesti kaikki mahdolliset säännöt. Jos merkittävyystaso esim. 0.01 ja testataan 1000 sääntöä, niin löydetään keskimäärin 10 virheellisesti merkittävää sääntöä. 6.1 Informaatioteoreettiset mitat Mutual information (ks. esim. [DHS00][632]) I(X, Y ) mittaa, kuinka paljon informaatiota muuttujat X ja Y jakavat. Jos X ja Y ovat riippumattomia, ei X sisällä lainkaan informaatiota Y :stä ja päinvastoin, ja I(X, Y ) = 0. 10

Jos X ja Y ovat identtiset, ne jakavat kaiken informaation. Määritelmä 2 (Mutual information) Olkoon R joukko attribuutteja ja X R ja Y R kategorisia muuttujia. X:n ja Y :n mutual information on I(X, Y ) = Σ x Σ y P (X = x, Y = y) log P (X = x, Y = y) P (X = x)p (Y = y). Huom! Saman voi ilmaista ekvivalentisti entropian avulla: missä H(Z) on Z:n entropia: H(Z) = z Dom(Z) I(X, Y ) = H(X) + H(Y ) H(X, Y ), P (Z = z) log P (Z = z) = z Dom(Z) P (Z = z) log Jos X ja Y jakavat kaiken informaation, on I(X, Y ) = H(X) = H(Y ). 1 P (Z = z). Säännön X Y J-mitta [SG92] on sääntöjen X Y and X Y informaatiosisältöjen summa. (Muistutus: P ( Y X) = 1 P (Y X)) [ P (Y X) J(X Y ) = P (X) P (Y X) log + P ( Y ) log P (Y ) = fr(x Y ) log cf(x Y ) fr(y ) + fr(x Y ) log ] P ( Y X) = P ( Y ) cf(x Y ) fr( Y ) Huomioi sekä säännön että sen komplementtisäännön frekvenssin että kondenssin! Alkujaan luokittelusäännöille toimiiko yhtä hyvin assosiaatiosäännöillä? 6.2 χ 2 -mitta Assosiaatiosäännöt voidaan pistää kiinnostavuusjärjestykseen niiden χ 2 -arvojen perusteella [BMS97]. Säännön X Y χ 2 -arvo on χ 2 = 1 1 (m(x = i, Y = j) m(x = i)m(y = j)/n) 2 i=0 j=0 m(x = i)m(y = j)/n 11

Rajoitus: frekvenssien oletusarvojen tulee olla riittävän suuria, jotta esioletukset täyttyisivät. Esim. ostoskoridata liian harvaa! Ongelma: Mittaa X:n ja Y :n välistä riippuvuutta, mutta assosiaatiosäännöt ovat osittaisriippuvuuksia. Ei välttämättä havaita kiinnostavaa sääntöä, jos pätee vain tiettyjen arvojen välillä? Ehdotus: huomioidaan vain sääntöä vastaava termi Viitteet (m(x,y ) m(x)m(y )/n)2 m(x)m(y )/n. [AIS93] R. Agrawal, T. Imielinski, and A.N. Swami. Mining association rules between sets of items in large databases. In P. Buneman and S. Jajodia, editors, Proceedings of the 1993 ACM SIGMOD International Conference on Management of Data, pages 207 216, Washington, D.C., 2628 1993. [BMS97] S. Brin, R. Motwani, and C. Silverstein. Beyond market baskets: Generalizing association rules to correlations. In J. Peckham, editor, Proceedings ACM SIGMOD International Conference on Management of Data, pages 265276. ACM Press, 1997. [DHS00] R.O. Duda, P.E. Hart, and D.G. Stork. Pattern Classication. Wiley-Interscience Publication, New Yor, 2nd edition, 2000. [HMS02] D. Hand, H. Mannila, and P. Smyth. Principles of Data Mining. MIT Press, Cambridge, Massachussetts, USA, 2002. [LHM98] B. Liu, W. Hsu, and Y. Ma. Integrating classication and association rule mining. In Proceedings of Fourth International Conference on Knowledge Discovery and Data Mining (KDD- 98), pages 8086. AAAI Press, 1998. [Mit97] T.M. Mitchell. Machine Learning. McGraw-Hill Companies, New York, NY, USA, 1997. [NCJK01] A.A. Nanavati, K.P. Chitrapura, S. Joshi, and R. Krishnapuram. Mining generalised disjunctive association rules. In Proceedings of the tenth International Conference on Information and Knowledge Management (CIKM'01), pages 482489, New York, NY, USA, 2001. ACM Press. [NHBM98] D.J. Newman, S. Hettich, C.L. Blake, and C.J. Merz. UCI repository of machine learning databases, 1998. http://www.ics. uci.edu/~mlearn/mlrepository.html. 12

[PMS00] [Qui93] [RBA99] [RS01] [SA96] [SG92] [Toi96] [Wek] D. Pavlov, H. Mannila, and P. Smyth. Probabilistic models for query approximation with large sparse binary data sets. In Proceedings of the 16th Conference on Uncertainty in Articial Intelligence (UAI'00), pages 465472, San Francisco, CA, USA, 2000. Morgan Kaufmann Publishers Inc. J.R. Quinlan. C4.5: programs for machine learning. Morgan Kaufmann, 1993. Jr. R.J. Bayardo and R. Agrawal. Mining the most interesting rules. In Proceedings of the fth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD'99), pages 145154, New York, NY, USA, 1999. ACM Press. R. Rastogi and K. Shim. Mining optimized support rules for numeric attributes. Information Systems, 26(6):425444, 2001. R. Srikant and R. Agrawal. Mining quantitative association rules in large relational tables. In H.V. Jagadish and I.S. Mumick, editors, Proceedings of the 1996 ACM SIGMOD International Conference on Management of Data, pages 112, Montreal, Quebec, Canada, 4-6 1996. P. Smyth and R.M. Goodman. An information theoretic approach to rule induction from databases. IEEE Transactions on Knowledge and Data Engineering, 4(4):301316, 1992. H. Toivonen. Discovery of Frequent Patterns in Large Data Collections. PhD thesis, Department of Computer Science, University of Helsinki, 1996. Weka3. Data mining software in java. http://www.cs.waikato. ac.nz/ml/weka/. Retrieved 1.1. 2006. 13