Download - Algorithms and Application for spatial data mining

Transcript
Page 1: Algorithms and Application for spatial data mining

Algorithms and Application for spatial data mining

Ronnie Bathoorn

Page 2: Algorithms and Application for spatial data mining

Inhoud

Spatial data mining Framework Spatial clustering algorithms Spatial characterization Spatial trend detection Spatial classification

Page 3: Algorithms and Application for spatial data mining

Spatial data mining: Waarom?

Handmatige interpretatie onmogelijk

Door:– Grote hoeveelheid data– Continue groei in de hoeveelheid data

Page 4: Algorithms and Application for spatial data mining

Spatial data mining: Wat?

Het vinden van– Onregelmatigheden– Regels– Patronen

In spatiële databases Voortgekomen uit KDD (Knowledge

discovery in databases)

Page 5: Algorithms and Application for spatial data mining

Wat is een spatiële database?

Bevat objecten gekenmerkt door– Spatiele locatie / extentie– Meerdere niet-spatiele attributen

Page 6: Algorithms and Application for spatial data mining

Wat is KDD?

The non-trivial process of discovering valid, novel, potentially usefull and ultimately understandable patterns from data

- Fayyad et al. 1996

Page 7: Algorithms and Application for spatial data mining

Spatial data mining: Hoe?

Gebruik maken van neighbourhood van objecten

Waarde attributen buren kan invloed hebben op waarde attributen object

Page 8: Algorithms and Application for spatial data mining

Spatial data mining

1. Spatial clustering

2. Spatial characterization

3. Spatial trend detection

4. Spatial classification

Page 9: Algorithms and Application for spatial data mining

Framework voor spatial data mining

Gebaseerd op: Neighbourhood relations Neighbourhood graphs Neighbourhood paths

Page 10: Algorithms and Application for spatial data mining

Waarom een Framework?

Versnelt de ontwikkeling Maakt algoritmes portable Gebruik beter index structuren versnelt

alle algoritmen die framework gebruiken Integratie in comerciele DBMSen

Page 11: Algorithms and Application for spatial data mining

Spatial neighbourhood relations

Topologisch Afstand Richting En combinaties

Page 12: Algorithms and Application for spatial data mining

Topologische relaties

Disjoint Overlap Equals Covers

Coverd by Contains Inside

Page 13: Algorithms and Application for spatial data mining

Distance en Direction

Distance A distance>2 B

Direction B northeast A

A B

A

B

Page 14: Algorithms and Application for spatial data mining

Spatial neighbourhood graphs

Definition G = (N,E)

Nodes N = DB

Edges E subset_of N x N

edge e = (n1,n2) exists iff neighbour(n1,n2) holds

DB

neighbour

Page 15: Algorithms and Application for spatial data mining

Spatial neighbourhood paths

Definition Neighbourhood path of length k is a

sequence [n1,n2,…,nk]

where neighbour(ni,ni+1) holds for all nodes with 1 ≤ i < k

Page 16: Algorithms and Application for spatial data mining

KDD en paths

Paths geven een mogelijkheid om de ruimte af te zoeken

Kunnen gebruikt worden om de zoekruimte te beperken

Beperken met filters

Page 17: Algorithms and Application for spatial data mining

Filters

Geven restricties op de mogelijke paden vanaf een start object

Starlike Variable-Starlike Vertical-Starlike

Page 18: Algorithms and Application for spatial data mining

Extra neighbourhood operations

Neighbours:

Graph x Object x Predicate → Sets_of_Objects

Paths:

Sets_of_Objects x Int → Sets_of_Paths

Extensions:Graph x s_of_p x Int x Predicate → Sets_of_Paths

Page 19: Algorithms and Application for spatial data mining

DBMS ondersteuning

Neighbourhood index – Maximum distance voor relaties om aantal

object paren te beperken

– Voor alle relatie types (topologisch, afstand, richting) worden de concrete relaties opgeslagen

Page 20: Algorithms and Application for spatial data mining

Neighbourhood index

Object-ID Neighbour Distance Direction Topology

A B 2.7 South-West

Disjoint

A C 0 North-West

Overlap

… … … … …

Page 21: Algorithms and Application for spatial data mining

Spatial clustering

Groepeer objecten in clusters Objecten in een cluster lijken zoveel

mogelijk op elkaar Objecten uit verschillende clusters

verschillen zo veel mogelijk betekenis clusters staat niet vast

Page 22: Algorithms and Application for spatial data mining

Spatial clustering

Density based algoritme Voor elk punt in een cluster geldt:

– Eps-neighbourhood bevat minstens een vastgesteld aantal punten

– ‘density’ in dit gebied moet boven een threshold liggen

Page 23: Algorithms and Application for spatial data mining

Spatial clustering: GDBSCAN

GDBSCAN(DB,NPred,MinWeight)

DB zijn de spatiële objecten NPred is de neighbourhood relation MinWeight is de ‘density’ threshold

Page 24: Algorithms and Application for spatial data mining

Spatial clustering: GDBSCAN

Berekent de neighbourhood van elk object

Als ‘density’ (neigbourhood) > threshold– Maak hier een cluster van– Bereken neighbourhood van alle

toegevoegde objecten– Laat cluster groeien zolang ‘density’ >

threshold

Page 25: Algorithms and Application for spatial data mining

Spatial clustering: toepassing 1

Verdeel 5-D featurespace verkregen uit verschillende satteliet foto’s van Californië in classen

Methode

GDBSCAN met– NPred(X,Y) =

dist(X,Y) < 1.42– MinWeight(N) =

cardinality(N) ≥ 20

Objecten in classen waarscheinlijk van zelfde type grond

Page 26: Algorithms and Application for spatial data mining

Spatial clustering: toepassing 2

Detecteren van ‘influence regions’ in Economisch geografische data over Duitsland

Methode– Detecteer ‘influence

regions’– Zoek maximale

neighbourhood die lijkt op het centrale object van de cluster

– Vergelijk met theoretische waarde voor het vinden van afwijkingen

Page 27: Algorithms and Application for spatial data mining

Spatial characterization

Vinden van compacte beschrijving van een subset uit een database

beschrijving bestaat uit spatial association rules

Page 28: Algorithms and Application for spatial data mining

Spatial association rules

Beschrijven van associaties door middel van spatiële neighbourhood relaties

Is_a(X,town) → close_to(X,Y) and is_a(Y,water) (80%)

Page 29: Algorithms and Application for spatial data mining

Spatial Apriori

Maakt gebruik van de realieve frequentie van waarden in de database ten opzichte van de subset

ƒ (prop)=DB

targets

Freqtargets(prop)

Card(targets)

freqDB(prop)

Card(DB)

Page 30: Algorithms and Application for spatial data mining

Spatial characterization

Het vinden van alle eigenschappen waarvoor geldt:

ƒ (prop) ≥ significance

voor ten minste min_confidence objecten

DB

nh(subset)

Page 31: Algorithms and Application for spatial data mining

Spatial characterization: Toepassing

Vinden van spatial characterization van economische kracht van een gemeenschap

Methode– Vergroot de regio om

de start subset– Kies eigenschappen

in deze regio die meest informatie bevatten

– Genereer spatial rules die deze regio beschrijven

Page 32: Algorithms and Application for spatial data mining

Spatial trend detection

Spatial trend is gelijkmatige verandering van 1 of meer attributen wanneer je afstand neemt van startobject O

Gelijkmatigheid wordt beschreven door regressie op de attributen van objecten in een neighbourhood path

Page 33: Algorithms and Application for spatial data mining

Spatial trend detection: Algoritme

Lineare Regressie– Start vanuit een source object O1

– Bepaal de afstand to object O2 op een neighbourhood path vanuit O1

– Bepaal het verschil in niet-spatiële attributen tussen de 2 objecten

– Er is een trend wanneer er genoeg correlatie tussen deze 2 waarden is

Page 34: Algorithms and Application for spatial data mining

Spatial trend detection

Detecteren globale trend– Breath-first search op all neighbourhood

paths vanuit O1

Detecteren locale trend– Depth-first search op all neighbourhood

paths vanuit O1

Page 35: Algorithms and Application for spatial data mining

Spatial trend detection: Toepassing

Detecteer trends in de economische welvaart van communities in Duitsland

Methode Lineare regressie 0.6 < Correlatie < 0.8

op ‘gemiddelde huur’ Filter = vertical-starlike 4 < Path lengte < 7

Page 36: Algorithms and Application for spatial data mining

Spatial Classification

Ken object toe aan classe Mogelijke classen zijn gegeven Toekenning gebasseerd op waarde van

attributen Waarde van attributen van buren

kunnen ook van invloed zijn

Page 37: Algorithms and Application for spatial data mining

Spatial classification: Algoritme

Decision tree algorithm Uitbreiding op ID3

– Generalized attributes

lijst met alle waardes van dit atribuut op een neighbourhood path

– Lengte paden is begrenst omdat invloed van verre buren kleiner is

Page 38: Algorithms and Application for spatial data mining

Spatial classification: Algoritme

Nearest neighbour Nearest hit en nearest miss gebruikt om

kenmerkende eigenschappen van classe te vinden

Decision tree wordt gemaakt met kenmerkende attributen

Boom gemaakt met geaggregeerde data

Page 39: Algorithms and Application for spatial data mining

Conclusie

Door gebruik te maken van neighbourhood graphs en paths kunnen mining algoritmen efficient uitgevoerd worden op commerciële DBMSen

Het model kan uitgebreidt worden met de tijd-dimensie om analyse op historische gegevens mogelijk te maken