Spatial Association
Spatial Association Rule X → Y X → Y P 1 .. P m → Q1 .. Qn (c%) P 1 .. P m → Q1 .. Qn (c%) Los predicaat: 1-predicate Los predicaat: 1-predicate Set van P 1 t/m P k : k-predicate Set van P 1 t/m P k : k-predicate
Support & confidence sup(X → Y) sup(X → Y) de kans dat de implicatie voorkomt in de dataset de kans dat de implicatie voorkomt in de dataset conf(X → Y) = sup(X → Y) / sup(X) conf(X → Y) = sup(X → Y) / sup(X)
Sterkte van een regel Sterk = relaties in een regel komen vaker voor Sterk = relaties in een regel komen vaker voor Sterk = hoge support en confidence Sterk = hoge support en confidence … maar hoe hoog? … maar hoe hoog?
Minimum support/confidence Input voor mining algoritme Input voor mining algoritme Voor elk niveau in de hiërarchie Voor elk niveau in de hiërarchie minsup[l] minsup[l] minconf[l] minconf[l]
Voorbeelden (1) Spatial antecedenten, non-spatial consequent Spatial antecedenten, non-spatial consequent is_a(x, house) close_to(x, beach) → is_expensive(x) (85%) is_a(x, house) close_to(x, beach) → is_expensive(x) (85%)
Voorbeelden (2) (Non)-spatial antecedenten, spatial consequent (Non)-spatial antecedenten, spatial consequent is_a(x, gas_station) → close_to(x, highway) (50%) is_a(x, gas_station) → close_to(x, highway) (50%)
Voorbeelden (3) Combineren van support & confidence Combineren van support & confidence is_a(A, large_town) intersects(A,B) adjacent_to(A, C) → is_a(B,motorway), C!=B, is_a(C,sea)(36%,80% is_a(A, large_town) intersects(A,B) adjacent_to(A, C) → is_a(B,motorway), C!=B, is_a(C,sea)(36%,80%
Hiërarchieën (1) Data structureren in spatial hierarchy Data structureren in spatial hierarchy Efficiënter Efficiënter Processing gaat ‘top-down’ Processing gaat ‘top-down’ Progressief zoeken Progressief zoeken (road (national_highway (A27, A2, …), provincial_highway (N238, N235, …), city_street (Oudegracht, Heidelberglaan, …), …), …) (road (national_highway (A27, A2, …), provincial_highway (N238, N235, …), city_street (Oudegracht, Heidelberglaan, …), …), …)
Hiërarchieën (2) water sea river lake Rijn Noordzee Large lake Waddenzee IJsselmeer
ILP Algoritme (1) Gebaseerd op ILP Gebaseerd op ILP Inductive Logic Programming Inductive Logic Programming ‘feature extraction’ om een deductive database te krijgen ‘feature extraction’ om een deductive database te krijgen Logische variant van relational database Logische variant van relational database
ILP Algoritme (2) Spatial observations Spatial observations O[Amsterdam | Amsterdam] is_a(Amsterdam, large_town) intersects(Amsterdam, A2) intersects(Amsterdam, A10) close_to(Amsterdam, Schiphol) … O[Amsterdam | Amsterdam] is_a(Amsterdam, large_town) intersects(Amsterdam, A2) intersects(Amsterdam, A10) close_to(Amsterdam, Schiphol) …
ILP Algoritme (3) O[Schiphol | Amsterdam] is_a(Schiphol, airport) intersects(Schiphol, A4) … O[Schiphol | Amsterdam] is_a(Schiphol, airport) intersects(Schiphol, A4) … O[s] = O[s|s] O[r i |s’] O[s] = O[s|s] O[r i |s’]
ILP Algoritme (4) Twee subproblemen Twee subproblemen Find large/frequent spatial patterns Find large/frequent spatial patterns Generate strong spatial association rules Generate strong spatial association rules Prunen Prunen
Algoritme #2 (1) Vindt sterke multi-level spatial association rules Vindt sterke multi-level spatial association rules Beperking zoekruimte Beperking zoekruimte Relevant object set Relevant object set Concept hierarchies Concept hierarchies minsup/minconf minsup/minconf
Algoritme #2 (2) Predicaten berekenen op hoog niveau (lage resolutie) Predicaten berekenen op hoog niveau (lage resolutie) Prunen adhv minsup[1] Prunen adhv minsup[1] Overblijvende predicaten berekenen op lagere niveaus Overblijvende predicaten berekenen op lagere niveaus
Algoritme #2 (3) Alle k-predicates (voor alle k’s) berekenen Alle k-predicates (voor alle k’s) berekenen Prunen adhv minconf[l] Prunen adhv minconf[l]
Conclusie Veel problemen Veel problemen Schaalbaarheid Schaalbaarheid Ontbrekende data Ontbrekende data Nog veel user input nodig Nog veel user input nodig O.a. minsup/minconf O.a. minsup/minconf Aantal oplossingen Aantal oplossingen Maar niet eenduidig Maar niet eenduidig