(Microsoft PowerPoint - Hled\341n\355 prostorov\375ch asocia\350n
Transkript
Hledání prostorových asociačních pravidel v prostorových databázích Lukáš Janák Zdroj: „Discovery of Spatial Association Rules in Geographic Information Databases Krzysztof Koperski, Jiawei Han Simon Fraser University Burnaby. B.C., Canada V5A 1S6 e-mail: {koperski,han}@cs.sfu.ca Obsah prezentace • Základní pojmy – – – – • • • • • GIS Data mining Asociační pravidla Víceúrovňová asociační pravidla Prostorová asociační pravidla Příklad (+ aproximační algoritmy) Asociace v praxi GRASS a asociace Závěr Základní pojmy I • GIS „soubor nástrojů pro sběr, ukládání, vyhledávání, transformaci a zobrazování prostorových dat z reálného světa pro jednotlivé účely“ • Prostorová data „data, která se vztahují k určitým místům v prostoru, a pro která jsou na potřebné úrovni rozlišení známé lokalizace těchto míst“ • Geografická data „druh prostorových dat. Známá geografická poloha místa na Zemi, ke kterému se data vztahují“ • Prostorová databáze (v širším smyslu) Databáze s prostorovými daty Základní pojmy II • Geoprvek – – – – „základní prostorová entita popisovaná prostorovými daty“ Např. řeka, důl, studna… Odkazujeme se jedinečným identifikátorem – adresa, kód. Popis geoprvku – 5 složek: Geometrická - poloha + geometrické vlastnosti Popisná – negeometrické vlastnosti (atributy) Časová… Vztahová... Funkční... – Jak to implementovat? Základní pojmy III • Vektorový datový model (zjednodušeně) – Pro geoprvky je odděleně vedena geometrická (prostorová databáze) a popisná složka (relační databáze) – Spojeno přes jedinečný identifikátor – Geoprvky znázorněny pomocí geometrických prvků: bod, linie, plocha Příklad: Bod (id_bod, x, y) Plocha (id_plocha, id_linie:multi) Linie (id_linie, id_plocha_p, id_ plocha_l, id_bod:multi) Parcela (id_parcela, id_majitel, rozloha, id_plocha) Rybník (id_rybník, id_majitel, rozloha, id_plocha) ∧ Data Minig I • Data Minig – Integrovaný obor matematiky, ekonomie a informatiky – Česky : „dolování znalostí z dat“ – Obor vznikl jako reakce na myšlenku využít dlouhodobě ukládaná data (do archivů… ) nejen ke svému původnímu účelu, ale i k získání dalších poznatků – Využití: • Podpora strategické rozhodování ve firmě • Nové poznatky socilogie, politologie, biologie … – Definice: „Dolováním znalostí nazýváme proces netriviálního získávání implicitní, dříve neznámé a potencionálně užitečné informace z dat“ ∧ Data Minig II • Metody dolování: – – – – – – – – statistických charakteristiky, korelační a regresní analýza, multidimenzionální statistické metody, diskriminační a faktorovou analýzu, hledání asociací, shlukovou analýzu, konstrukce rozhodovacích stromů, a mnoho dalších (fantazii se meze nekladou) • SQL pouze jako pomocný prostředek ∧ Asociace I • Asociace – Hledání vztahů mezi některými podmnožinami atributů – Pro atributy A a B mohl být vztah například typu: • „jestliže A=1, pak B=5“ (implikace) • „A=1 právě tehdy, když B=5“ (asociace) • „hodnoty A korelují s B“ (korelace) • Pojmy: – Výraz typu A = y nazveme formule (predikát), označíme F Např.: F1 = věk (30-40), F2 = plat (10 000 - 20 000) – Složená formule: ¬F1 , F1 ∧ F2 , F1 ∨ F2, …. – Sentence (pravidlo): F1 ⇒ F2 antecedent ⇒ sukcedent – Př.: věk (30-40) ⇒ plat (10 000 - 20 000) ∧ Asociace II • Pojmy: – s ... spolehlivost… určuje „sílu“ implikace – p ... podpora … určuje „významnost“ implikace • Příklad kompletního pravidla „věk (30-40) ⇒ plat (10 000 - 20 000) s(66,7%) p(33,3%)” „kouření ⇒ infarkt ∨ rakovina_plic s(80,0%) p(25,0%)” • Spolehlivost pravidla F1 ⇒ F2 je pravděpodobnost toho, že jeden objekt vyhovuje predikátům z antecedentu a zároveň sukcedentu . • Podpora pravidla F1 ⇒ F2, je podíl počtu objektů, které vyhovují formuli antecedentu i sukcedentu ku celkovému počtu objektů . • V praxi máme zdanou dolní mez pro s i pro p a hledáme pouze silná pravidla ∧ Asociace III • Hledání asociací – Triviální algoritmus Postupné generování všechny možné kombinace predikátů na levé i pravé straně pravidla a testovat v datech, je-li výsledkem silné asociační pravidlo. Exponenciální časová složitostí. – Apriori algoritmus Nejprve jsou vyhledány kombinace antecedentu, které dosahují minimální stanovené hodnoty podpory a z nich jsou generovány silné asociace (takové, které navíc dosahují i minimální spolehlivosti). ∧ Asociace - Příklad Úprava DB (kategorizace) • Vstup Věk Plat Typ Datum 41 20 000 A 150 01.01.2005 25 30 000 C 230 05.03.2005 35 25 000 A 160 CDI 03.01.2005 51 25 000 A 150 08.09.2005 31 27 000 C 230 25.11.2005 32 36 000 E 420 CDI 26.05.2005 33 27 000 A 160 CDI 11.11.2005 42 42 000 E 420 CDI 18.04.2005 41 50 000 SL 600 09.01.2005 39 20 000 A 150 21.06.2005 27 31 000 C 230 11.07.2005 31 25 000 A 160 CDI 20.04.2005 43 25 000 A 150 13.10.2005 33 27 000 C 230 24.10..2005 33 35 000 E 420 CDI 06.05.2005 18 22 000 A 160 CDI 16.02.2005 40 37 000 E 420 CDI 27.08.2005 39 61 000 SL 600 18.11.2005 • Věk: 20 - 30… 1 30 - 40 … 2 40 – 50 … 3 50 - 60 … 4 • Plat(tis.): 20 – 30 … 1 30 – 40 … 2 40 – …3 • Typ: A150, A 160 … 1 C230, E420 … 2 SL600 … 3 • Datum: kvartály 1 - 4 ∧ Asociace - Příklad • Upravený vstup Věk Plat Typ Datum 3 1 1 1 1 2 2 1 2 1 1 1 4 1 1 3 2 1 2 4 2 2 2 2 2 1 1 4 3 3 2 2 3 3 3 1 2 1 1 2 1 2 2 3 2 1 1 2 3 1 1 4 2 1 2 4 2 2 2 2 1 1 1 1 3 2 2 2 3 3 • Ptáme se: – – – – Jaký je Jaký je Jaký je Jaký je vztah vztah vztah vztah mezi věkem a platem? mezi platem a typem? mezi věkem a typem? mezi datem a typem? • Vztah věk a plat: Věk / plat 1 2 3 1 1 2 0 2 6 2 1 3 3 2 1 2 4 4 1 0 0 ∧ Asociace - Příklad • Vztah věk a plat (pokr.): Věk /plat 1 2 3 1 1 2 0 2 6 2 1 3 2 1 2 4 1 0 0 „věk (30-40) ⇒ plat (20 000 - 30 000) s(67%) p(33%)” • Další: „plat (20 000 - 30 000) ⇒ typ (A 150, A 160) s(80%) p(44%)“ „plat (30 000 - 40 000) ⇒ typ (C 230, E 420) s(100%) p(28%)” „plat nad 40 000 ⇒ typ (SL 600) s(67%) p(11%)” „datum (4. - 6.) ⇒ typ (C 230, E 420) s(60%) p(17%)” „věk (30 - 40) ⇒ typ (A150, A160) s(44%) p(22%)” „věk (30-40) a plat (20 000- 30 000) ⇒ typ (A 150, A 160) s(67%) p (22%)” Asociace IV • Víceúrovňová asociační pravidla – Pracuje se na různých konceptuálních úrovních – Různý způsob kategorizace: Typ: A150, A160 … 1 C230, E420 … 2 Typ: A150, A 160 … 1 C230, E420, SL600 … 2 SL600 … 3 – Důsledek – jiná pravidla: „plat nad 40 000 ⇒ typ (C 230, E 420) s(33%) p(11%)” „plat nad 40 000 ⇒ typ (SL 600) s(67%) p(11%)” „plat nad 40 000 ⇒ typ (C 230, E 420, SL 600) s(100%) p(11%)” Asociace IV • Víceúrovňová asociační pravidla (pokr.) – Kategorie lze uspořádat hiearchycky Typ 1 A150, A 160 Levnější 1 A150, A 160 Levný 2 C230, E420, SL600 Dražší 2 C230, E420 Středně d. 3 SL600 Drahý (Typ (Levnější (A150,A160), (Dražší (Středně d. (C320,E420),Drahý(SL600))))) Prostorová asociační pravidla • Co chceme najít? Pravidla typu: Neboli: „92% měst v Britské Kolumbii na břehu vodní plochy je blízko USA“ • Odkud? Prostorová databáze • Jak? Postup založený na využití poznatků z postupů dolování různých typů asociačních pravidel (víceúrovňová pravidla…) u jiných typů dat a prostorové analýze Prostorová asociační pravidla • Definice: „Prostorové asociační pravidlo je asociační pravidlo, které obsahuje alespoň jeden prostorový predikát“ • Prostorový predikát – protíná, je_uvnitř, je_vně, sousedí, pokrývá, je_pokryt – severně-, jižně- , západně- , východně položeno – je_blízko, je_daleko Příklad je (X, dům) a je_blízko (X, pláž) →je_drahý (X) 3 typy predikátů!!! Příklad – zadání úkolu • Zdroj dat Geografická databáze s údaji o Britské Kolumbii (CAN) se strukturou: město (název, typ, počet_obyvatel, geo, …) komunikace (název, typ, geo, …) voda (název, typ, geo, …) důl (název, typ, geo, …) hranice (název, typ, administrativní_oblast_1, administrativní_oblast_2, geo, …). • GeoMiner Příklad – konceptuální hierarchie • Nutné pro získávání více-úrovňových asociačních pravidel • Konceptuální hierarchie pro voda (3 úrovně): (voda (moře (průliv(Georgia_Strait,…), záliv (…),…), řeka (velká_řeka (Fraser_River,…), …), jezero (velké_jezero(Okanagan_Lake,…),…) ,…) ,…) • Podobně lze organizovat i prostorové predikáty (topologické vztahy). Např. predikát je_poblíž pokrývá množinu predikátů protíná, sousedí, obsahuje a je_blízko. • A také popisné predikáty… Příklad – zadání úkolu • Cíle analýzy Předpokládejme, že uživatel má zájem nalézt na mapě Britské Kolumbie silné prostorové vztahy mezi velkými městy a „blízkými“ objekty – doly, hranicemi států, vodními plochami a významnými komunikacemi. • Dotaz pro GeoMiner discover spatial association rules inside British Columbia from komunikace K, voda V, důl D, hranice H in relevance to město M where je_poblíž (M.geo, X.geo) and X in {K,V,D,H} and M.typ=“velkoměsto“ and K.typ in {dálnice} and V.typ in {moře, oceán, velké jezero, velká řeka} and H.administrativní_oblast_1 in “B.C.“ and H.administrativní_oblast_2 in “U.S.A.“ Příklad – zpracování dotazu 1. Vyhledání objektů relevantních k dotazu 1. velkoměsta (v B.C. splňuje 40 měst) 2. 3. 4. 5. dálnice moře, oceány, velká jezera a velké řeky doly hranice B.C. a USA komunikace (název, typ, geo, …) 2. Nalezení objektů z množin 2 – 5, které jsou vůči nalezeným velkoměstům v množině 1 ve vztahu je_poblíž. Příklad – zpracování dotazu 2. Nalezení objektů… (pokr.) • • 1. Nutno implementovat efektivně vzhledem k počtu objektů ale zároveň stačí aproximace Možná řešení: MBR, plane sweeping, R*-stromy MBR (MOO) • 2. Aproximace geoprvku obdélníku Plane sweeping (metoda pohyblivé přímky) • • • • • • Preparata & Shamos, 1985 obecná metoda používaná při řešení rovinných problémů posunování vertikální přímky, kterou horizontálně po rovině přímka postupně zasahuje jeden po druhém objekty v rovině když dojde k takovéto události, je vyřešen dílčí problém na přímce použití: – Vyhledávání průsečíků přímek (O(n log n + k)) – Vyhledání průsečíku hran polygonů -> průnik polygonů – Vyhledávaní průniků obdélníků (MBR,MOO) Příklad – zpracování dotazu 2. Plane sweeping - příklad Příklad – zpracování dotazu 3. R*- stromy • DS pro zachycení prostorových vztahů • • Varianta R-stromů Vnitřní uzly obsahují záznamy tvaru (I, ukazatel), • • • • • • List obsahuje ukazatel na prostorový objekt Problém: MBR se mohou překrývat -> složité vyhledávání Řešení: optimalizace při konstrukci R-stromu R-stromy: • • ukazatel ukazuje na podstrom v R-stromu I pokrývá všechny MBR, které se vyskytují v podstromě minimalizovat objem odpovídající oblasti I R*-stromy: • • • optimalizace velikosti ohraničujícího prostoru velikosti okraje I velikosti překrytí těchto prostorů Příklad – zpracování dotazu 3. R*- stromy – příklad • • Aplikace R*-stromů na zjišťování průniků p. objektů Aproximace objektu lichoběžníky -> vybudování R*-stromu pro 1 objekt Příklad – zpracování dotazu 3. R*- stromy – vyhledávaní průniků • • • Hledám 2 lichoběžníky v průniku Pokud nemají průnik 2 MMO, tak nemohou mít ani žádné jimi pokryté lichoběžníky Nutno projít 2 R*-stromy v čase O(n1 + n2) Příklad – zpracování dotazu Velkoměsto Voda Victoria Juan_de_Fuca_Strait Saanich Juan_de_Fuca_Strait Prince_George Pentincton … Komunikace Hranice highway_1, highway_17 highway_1, highway_17 Důl US US highway_97 Okanagan_Lake highway_97 US … … … je (X, velkoměsto) → je_poblíž (X, voda) (80%) (nejvyšší konceptuální úroveň dat a predikátů) Alalla … Příklad – zpracování dotazu 3. Upřesňující výpočet pro predikáty. Každý predikát je_poblíž je nahrazen konkrétním predikátem (protíná, sousedí, obsahuje a je_blízko) Juan_de_Fuca_Strait <sousedí, J.Fuca_Strait> Velkoměsto Voda Victoria <sousedí, J.Fuca_Strait> <protíná, highway_1> <je_blízko , US> <protíná, highway_17> Saanich <sousedí, J.Fuca_Strait> <protíná, highway_1> <je_blízko , US> <protíná, highway_17> Prince_George Pentincton Komunikace Hranice <protíná, highway_97> <sousedí,Okanagan_Lake> <protíná, highway_97> <je_blízko , US> Příklad – zpracování dotazu • Z předchozí tabulky získáme: k Frekventované množiny k-predikátů Počet 1 <sousedí, voda> 32 1 <protíná, dálnice> 29 1 <je_blízko, dálnice> 29 1 <je_blízko, us_hranice> 28 2 <sousedí, voda>, <protíná, dálnice> 25 2 <sousedí, voda>, <je_blízko, us_hranice> 23 2 <je_blízko, us_hranice>, <protíná, dálnice> 26 3 <sousedí, voda>, <je_blízko, us_hranice>, <protíná, dálnice> 22 je (X, velkoměsto) → je_blízko (X, dálnice) (73%) je (X, velkoměsto) ∧ protíná (X, dálnice) → sousedí (X,voda) (86%) ∧ (nejvyšší konceptuální úroveň dat a zpřesnění predikátů) Příklad – zpracování dotazu 4. Upřesňující výpočet pro data – dle konceptuální hierarchie. Druhá úroveň a) k Frekventované množiny k-predikátů Počet 1 <sousedí, moře> 21 1 <sousedí, řeka> 11 1 <je_blízko, us_hranice> 28 1 <protíná, provincial_highway> 21 1 < je_blízko, provincial_highway> 24 2 <sousedí, moře>, <je_blízko, us_hranice> 15 2 <je_blízko, us_hranice>, <protíná, provincial_highway> 19 2 <sousedí, moře>, < je_blízko, provincial_highway> 11 2 <je_blízko, us_hranice>, < je_blízko, provincial_highway> 22 3 <sousedí, voda>, <je_blízko, us_hranice>, <protíná, dálnice> 10 Příklad – zpracování dotazu b) Třetí úroveň k Frekventované množiny k-predikátů Počet 1 <sousedí, georgia_strait> 9 1 <sousedí, fraser_river> 10 1 <je_blízko, us_hranice> 28 2 <sousedí, georgia_strait>, <je_blízko, us_hranice> je (X, velkoměsto) → sousedí (X, moře) 7 (53%) (2. konceptuální úroveň dat a zpřesnění predikátů) je (X, velk.) ∧sousedí (X, georgia_st) → je_blízko (X, us) (78%) (3. konceptuální úroveň dat a zpřesnění predikátů) Algoritmus • Vstup 1. 2. 3. Prostorová databáze s popisnou složkou a množina konceptuálních hierarchií Dotaz nad bází dat Dva numerické parametry pro každou konceptuální úroveň: • • • minimální podpora minimální spolehlivost Výstup Silná víceúrovňová prostorová asociační pravidla pro množinu relevantních objektů a vztahů. • Popis algoritmu Raději ne… Asociace v praxi • • • Projekt GeoMiner pravděpodobně zastaven, nebo alespoň přerušen ??? (záhada č.1) Projekt SPIN! – zaměřený na nové možnosti pro analýzu prostorových dat – implementaci platformy pro data mining prostorových dat – subsystém SPADA – http://www.ais.fraunhofer.de/KD/SPIN/ Existuje software (komerční i free), které s funkcemi, které lze zařadit do metod DM: – – – shlukování statistické analýzy (modelování, korelace, regrese) v podstatě jde o aplikaci DM metod nad popisnou složkou GIS + rozšíření o možnosti vizualizace výsledků GRASS a asociace • GRASS lze rozšířit o rozhraní pro statistickou analýzu dat a grafickou prezentaci výsledku – R – http://www.geog.uni-hannover.de/grass/statsgrass/grass_geostats.html • Systém R poskytuje širokou škálu statistických technik a algoritmů strojového učení, např. klasifikace, shlukováni, lineární a nelineární modelováni, asociační pravidla apod. • Tomáš Buk, Petr Kuba, Luboš Popelinský : GRR (záhada č.2) – je systém pro dolování v geografickém informačním systému GRASS – grafické uživatelské rozhraní – rozhraní pro komunikaci se systémem R – rozhraní pro komunikaci s vlastním geografickým informačním systémem. – http://gis.vsb.cz/GISEngl/Publications/GIS_Ova/2003/Referaty/popeli nsky.htm Závěr • Možnosti využití – – – – – Geografie Biologie Energetika Ochrana životního prostředí jiné oblasti (záleží na fantazii…) Bonus Děkuji za pozornost
Podobné dokumenty
Program kina Máj Uherský BROD / srpen 2014
proč ne? - natočit si video, ve kterém během nepřerušeného tříhodinového natáčení
vyzkoušejí všechny pozice z knihy o sexu. Zdá se to jako skvělý nápad – než zjistí, že
jejich nejsoukromější nahráv...
Porovnání aplikace GeoMedia Web Map a Framme Field View v
procesorem podle zásad transformačního stylu. V průběhu tvorby atlasu došlo podobně jako v případě XSLT ke změně verze XPath – nyní je v souboru _atlas.xsl používán XPath 2.0.
XLink (XML Linking La...
Asociační pravidla
Jednou možností, jak se vypořádat s otázkou různé podpory na různých úrovních hierarchie je
dynamicky měnit minimální požadovanou podporu v závislosti na úrovni hierarchie dané kombinace
tak jak to...
Sborník "Banka dat a modelů ekonomiky ČR"
Dalším krokem bylo vytvoření databáze některých časových řad a výsledků jejich analýz
a prezentace údajů z této databáze na serveru BADAME. Data byla převzata ze statistických
ročenek a z dalších p...
Stáhnout ve formátu PDF
být prozkoumán ještě třetí, kontext soutěžení (context of pursuit): „(…) mezi
momentem objevu a momentem justifikace je podteoretizovaný „kontext soutěžení“, v němž jsou seřazovány vzájemně soutěží...
Podnikatelské baroko //0// //1//
Pojem kýč se objevuje teprve v 19. století. V roce 1939 vyšla esej C. Greenberga Avant-Garde and Kitsch[1] v níž autor staví avantgardu do opozice
kýče. Ten pak ztotožňuje s akademismem: “All kitsc...