Paikkatieto ja assosiaatiosäännöt Spatiaaliset assosiaatiosäännöt voisiko assosiaatiosääntöjä soveltaa myös paikkatietoon? kömpelö tapa: jaetaan maantieteellinen alue ruutuihin, tehdään attribuuttien arvoista ruudussa rivi ja etsitään assosiaatiosääntöjä kuten transaktioiden tapauksessa ruudun koko ja rajat vaikuttavat attribuuttien arvoihin ensimmäinen spatiaalisen assosiaatiosäännön määritelmä (Koperski ja Han 1995): P 1, P 2,..., P m Q 1, Q 2,..., Q n (c%), missä ainakin yksi predikaateista P 1, P 2,..., P m, Q 1, Q 2,..., Q n on spatiaalinen spatiaalinen predikaatti? etäisyyteen liittyviä: esim. A ja B lähellä toisiaan topologisia: A ja B vierekkäin, A ja B leikkaavat, A sijaitsee alueella B jne. maantieteelliseen sijaintiin liittyviä: A sijaitsee pohjoisempana kuin B Spatiaaliset assosiaatiosäännöt Referenssipiirre keskeinen ongelma: transaktioille ei ole luontevaa vastinetta paikkatiedon yhteydessä transaktio-tietokannassa rivit erillisiä esim. yhden ostoskorin ostokset esiintyvät vain yhdellä rivillä paikkatieto: sijainti jatkuva-arvoinen muuttuja käsitettä rivi ei ole rivien luominen usein keinotekoista (eikä se ole yksiselitteistä) luoduilla riveillä jotka vastaavat maantieteellisesti lähellä toisiaan olevia paikkoja/alueita voi olla joko suorastaan yhteisiä muuttujien arvoja tai ainakin korreloituneita käyttäjä valitsee 1. referenssipiirteen (reference feature) 2. relevantit piirteet esimerkki: referenssipiirre suuri kaupunki is_a(x, city) relevantit piirteet: sijainti Brittiläisessä Kolumbiassa, veden äärellä ja lähellä Yhdysvaltoja is_a(x, city) AND within(x, BritishColumbia) AND adjacent_to(x, water) close_to(x, U SA)(92%)
Spatiaaliset assosiaatiosäännöt merkitään E({X Q(X)}):llä niiden spatiaalisten objektien X lukumäärää, jotka täyttävät ehdon Q(X) sp. assosiaatiosäännön tuki (support): E({X P 1 (X),..., P m (X)}) luotettavuus: E({X P 1 (X),..., P m (X), Q 1 (X),..., Q n (X)}) E({X P 1 (X),..., P m (X)}) paikkaliitos g_close_to: generalized close_to = karkean resoluution läheisyys karkea taso hyödyntää R-puu-rakennetta ja minimisuorakulmiointia piirteet joiden tuki jää alle kynnysarvon poistetaan muille täsmällisen sijaintitiedon analyysi assosiaatiosäännöt haetaan Apriori-algoritmilla Laskenta Esimerkki Sp. assosiaatiosäännöt (2) discover spatial association rules inside British_Columbia from road R, water W, mines M, boundary B in relevance to town T where g_close_to(t.geo,x.geo) and X in {R,W,M,B} and T.type = large and R.type in {R,W,M,B} and W.type in {sea, ocean,large_lake,large_river} and B.admin_region_1 in B.C. and B.admin_region_2 in U.S.A. edellä kuvatut spatiaaliset assosiaatiosäännöt tarvitsevat erilaisia käsitehierarkioita esim. suurkaupungit, isot kaupungit, keskisuuret kaupungit, pikkukaupungit, kylät... topologisten relaatioiden hierarkian (esim. mitä tarkoittavat IN, INSIDE, ADJACENT_TO jne.) referenssipiirteen joka määrittää rivien muodostuksen Apriori-algoritmia varten
Kollokaatiosäännöt Kollokaatiot Kurssin loppuosa perustuu artikkeleihin S. Shekhar, Y. Huang: Discovering spatial co-location patterns: a summary of results. Proceedings of 7th International Symposium on Advances in Spatial and Temporal Databases (SSTD 2001), Redondo Beach, CA, USA, 2001. X. Zhang, N. Mamoulis, D. Cheung, Y. Shou: Fast mining of spatial collocations. Proceedings of the 10th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD 04), Seattle, August 2004 Y. Huang, H. Xiong, S. Shekhar: Mining confident co-location rules without a support threshold. Proceedings of the 2003 ACM symposium on Applied computing, Melbourne, Florida. seuraavassa esitellään malli, joka yrittää ratkaista paikkatiedon jatkuvuuden ja relaatiomallisten rivien välisen konfliktin toisella tavalla spatiaalisten objektien naapuruus objekteihin liittyy attribuutteja (piirteitä) objektien joukot, jotka ovat toistensa naapureita määrittävät rivin ei tarvita välttämättä referenssipiirrettä piirteiden binäärisyys Käytännön ohjeita Spatiaalinen objekti pelkkiä luentokalvoja lukemalla on mahdotonta selvitä tenttiin tulevasta kysymyksestä (tai kysymyksistä), vaan on omatoimisesti perehdyttävä edellä mainituista artikkeleista kahteen ensimmäiseen ei tarkoita, että asia olisi vaikea; päinvastoin, asia on suhteellisen yksinkertainen luentojen tarkoitus on antaa pohja artikkeleiden ymmärtämiselle artikkeleista oleellisin on Zhang et al. 2004 entiteetti jolla on paikkaulottuvuus (koordinaattipiste, polygoni, viiva) spatiaalisten objektien naapurusto (neighbourhood) yleensä etukäteen määritelty usein euklidinen etäisyys määrittää: Neighbours(o 1, o 2 ) distance(o 1, o 2 ) < ɛ voi toki olla muutenkin määritelty: topologiset suhteet (varsinkin alueaineisto), etäisyys maantietä pitkin jne. 0
Piirre Kollokaatiohahmo ominaisuus, joka liittyy spatiaaliseen objektiin esim. koordinaattipisteeseen (x, y) liittyvä paikannimi Ukonsaari (binääriarvoinen piirre: koordinaattipisteeseen joko liittyy nimi Ukonsaari tai ei) objektiin voi liittyä useita piirteitä (esim. nimien osat piirteinä: ukko, saari) esim. alueeseen liittyvä tieto lintulajista: binäärinen tai pesimävarmuusindeksi (0... 3) alueeseen liittyvä tieto vesipinta-alasta (reaalilukuarvoinen) referenssipiirteeseen perustuvan kollokaatiohahmon P = (f R, F rel ) muodostaa referenssipiirre f R ja joukko relevantteja spatiaalisia piirteitä F rel = {f 1,..., f k } merkitään F(o i ):llä objektin o i piirteiden joukkoa. P :n esiintymän muodostaa joukko spatiaalisia objekteja o 1,..., o n 1. joiden joukossa on vähintään yksi objekti o R jolle {f R } F(o R ) 2. o R on jokaisen objektin o 1,..., o n naapuri 3. F rel n i=1 F(o i) Binääriset piirteet Hahmon verkkoesitys seuraavassa tarkastellaan vain binäärisiä piirteitä (kuten tavallisten ass. sääntöjen yhteydessä vain binääriarvoisia attribuutteja) muuntyyppiset piirteet voidaan periaatteessa muuntaa joukoksi binäärisiä piirteitä kollokaatiohahmo on binääristen piirteiden joukko naapuruussuhdeverkko tähtirakenne esimerkkinä kuvan vasemman puolimmaisin verkko (ja alimmainen) referenssipiirre A b,c a b e e b a a,c c,d b,d
Symmetrinen hahmo Mielenkiintoisuuden mittoja symmetrisessä kollokaatiohahmossa (clique pattern) Q = {f 1,..., f k } ei ole referenssipiirrettä sen esiintymän muodostaa objektien joukko {o 1,..., o n }, 1. jotka ovat kaikki keskenään naapurustosuhteessa eli kaikille pareille (i, j), 1 i n, 1 j n, Neighbours(o i, o j ) 2. Q n i=1 F(o i) mittoja kollokaatiohahmojen (esiintymien) mielenkiintoisuudelle havaitussa aineistossa hahmon tuki (support) kattavuus hahmon hallitsevuus (prevalence tai participation index) hahmon maksimaalinen hallitsevuus (maximal participation index, myös confidence) Symmetrinen hahmo (2) Eksklusiivisuus verkkorakenne täydellinen: kaaret kaikkien solmujen välillä oikeanpuoleinen kuva (ja alimmainen) spatiaalisen piirteen f i eksklusiivisuus (participation ratio) P :n suhteen kuvaa piirteen taipumusta esiintyä hahmossa P b,c a b e e b a a,c c,d b,d pr(f i, P ) = E({f i f i P )} E(f i ) E(f i ) : f i :n esiintymien lukumäärä ehdollinen todennäköisyys: ehdolla että havaitaan f i :n esiintymä, havaitaan myös muut hahmoon P kuuluvat piirteet f i :n naapurustossa
Hallitsevuus Kollokaatiosääntö, esimerkki jos havaitaan joku hahmon P piirteistä, kuinka varmasti havaitaan muutkin? tätä hahmon implikatiivista voimaa kuvaa kollokaatiohahmon P hallitsevuus (prevalence): hallitseva hahmo sitoo piirteiden esiintymät eikä niitä juuri esiinny muualla prev(p ) = min{pr(f i, P ), f i P } P :n hallitsevuus pieni ainakin yksi P :n piirteistä esiintyy usein hahmon P esiintymien ulkopuolella hallitsevasta hahmosta voidaan generoida luotettavia kollokaatiosääntöjä A, B ukko vs. akka (1385/693) C, D, musta vs. valkoinen (5233/2213) sääntöjen luotettavuudet eri naapuruusehdoille (ɛ): ɛ (km) A B B A C D D C 0.5 0.02 0.04 0.02 0.04 1 0.04 0.07 0.06 0.13 2 0.08 0.14 0.13 0.29 4 0.17 0.30 0.31 0.61 10 0.55 0.72 0.76 0.98 Kollokaatiosääntö Kollokaatiosääntöjen etsiminen kuvaa kuinka usein piirteet esiintyvät lähietäisyydellä suhteessa toisiin piirteisiin X ja Y piirteiden joukkoja D naapurustorelaatio säännön tuki: X D Y, (θ) E(X Y) kaikkien objektien lkm säännön luotettavuus θ: ehdollinen tn sille, että ehdolla X :n esiintymä, havaitaan myös X Y:n esiintymä naapurustossa X Y ja X kollokaatiohahmoja kynnysarvot säännön tuelle ja luotettavuudelle min_support, min_conf etsi kollokaatiosäännöt, jotka toistuvia (tuki min_support) ja luotettavia (luotettavuus min_conf) luotettavien sääntöjen etsimisessä voidaan hyödyntää hahmojen hallitsevuutta
Monotonisuus Riviesiintymä P hallitseva prev(p ) min_prev hallitsevuus monotoninen kollokaatiohahmon laajentamisen suhteen: olkoot P ja Q kollokaatiohahmoja ja P Q Q hallitseva P hallitseva objektien joukko L on hahmon P (rivi)esiintymä jos 1. kaikki P :n piirteet esiintyvät L:ssä ja 2. L on minimaalinen, ts. (a) L ei sisällä sellaisia objekteja, joissa ei esiinny mitään P :n piirrettä ja (b) kaikille L L, on olemassa f P siten että f ei ole minkään L :n alkion piirre... Esimerkki asetetaan min_prev = min_conf etsitään hallitsevat hahmot monotonisuus Apriori-tyyppinen algoritmi sovellettavissa generoidaan luotettavat kollokaatiosäännöt näistä A B C D
Esimerkki Heikko monotonisuus esimerkissä hahmon {A, B} (rivi)esiintymät merkitty huomaa ero transaktioihin: 1 objekti mukana kahdessa esiintymässä riviesiintymien muodostamisen jälkeen voidaan edellä mainittujen tunnuslukujen (eksklusiivisuus, hallitsevuus) arvot laskea artikkeli Shekhar and Huang 2001 esittää apriori-tyyppisen algoritmin tähän maksimaalinen hallitsevuus ei ole monotoninen heikompi versio monotonisuudesta: olkoon P kollokaatiohahmo, jossa k piirrettä on olemassa enintään yksi k 1:n piirteen kollokaatiohahmo P s.e. P P ja conf(p ) < conf(p ) Hahmon maksimaalinen hallitsevuus Algoritmeista artikkeli Huang et al. 2003 harvinaiset piirteet saattavat olla mielenkiintoisia, jos ne implikoivat miltei poikkeuksetta joitakin yleisempiä piirteitä suuri arvo implikoi, että ainakin yksi P :n piirteistä on sellainen, ettei se juuri esiinny P :n esiintymien ulkopuolella conf(p ) = max{pr(f 1, P ), f i P } nimitetään myös hahmon luotettavuudeksi merkitys: annettuna kynnysarvo kollokaatiosäännön luotettavuudelle, luotettavasta hahmosta voidaan generoida ainakin yksi luotettava sääntö k > 1 piirrettä sisältävät mielenkiintoiset hahmot: etsi ensin k 1 piirrettä sisältävät mielenkiintoiset hahmot (apriori) tämä ei ole välttämätöntä: voidaan hyödyntää paikkatietoa tehokkaammin (Zhang et al. 2004) usean taulun paikkaliitos n datajoukkoa R 1, R 2,..., R n R i sisältää piirteen i esiintymät R i voi olla eksplisiittinen spatiaalinen relaatio paikkatietokannassa tai ominaisuus jota ei eksplisiittisenä (muodostettava paikkatietoa käyttävänä tietokantaoperaationa)
... Algoritmi (versio 1) SELECT R_a.id, R_b.id, R_c.id,R_d.id FROM R_a,R_b,R_c,R_d WHERE R_a.location close_to R_b.location AND R_a.location close_to R_c.location AND R_a.location close_to R_d.location 1. forall o i (oletetaan että o i :n piirre on f i ) 2. L(o i ) := 3. forall f j 4. if on olemassa objekti o j, joka on piirteen f j esiintymä s.e. distance(o i, o j ) ɛ 5. then L(o i ) := L(o i ) f j 6. forall I L(o i ) 7. count(f i I) := count(f i I) + 1 etäisyyden evaluoinnin kannalta järkevää on ensin järjestää objektit x-koordinaatin mukaan Algoritmi (versio 1) Versio 2 etsi kollokaatiohahmot referenssipiirteellä (tähtiverkko) käy läpi kaikki objektit (o i ) etsi maksimaaliset hahmot (L(o i )), joiden esiintymässä o i on referenssipiirteenä oletetaan, että jokaiseen objektiin liittyy vain yksi piirre naapurustoehto euklidinen etäisyys ɛ symmetriset kollokaatiohahmot: etsitään o i :n naapurit o j kuten edellä, mutta on tarkistettava myös objektien o j etäisyydet toisistaan
Esimerkki Hajautus c 1 a b 1 1 d 1 b 2 jos paljon objekteja, ei liitosoperaatiota voi ehkä tehdä yhdellä kertaa laajenna objekteja ɛ-säteiseksi ympyräksi sijoita objekti siihen ruutuun, jossa se sijaitsee hilaruudun sivu > 2ɛ kopio niihin ruutuihin, joita ympyrä leikkaa käsitellään em. algoritmeissa jokainen hilaruutu erikseen objekti huomioidaan keskipisteenä vain siinä ruudussa, jossa se sijaitsee Esimerkki Hajautus, esim. esimerkissä algoritmi on käsittelemässä objektia a 1 löytää kuvan näyttämät naapurit a 1 :lle jotta voidaan päätellä symmetriset kollokaatiohahmot, joiden esiintymissä a 1 mukana, on selvitettävä naapuriobjektien keskinäiset naapurussuhteet nekin näytetty kuvassa {a 1, b 1, c 1 } ja {a 1, b 2, d 1 } täydelliset verkot joissa a 1 mukana esimerkissä A B, A C, A D, A BC, A BD ovat säännöt, joiden laskureita kasvatetaan yhdellä (ja vain yhdellä!)