Chapter 7

advertisement
Algorithms and Application for
spatial data mining
Ronnie Bathoorn
Inhoud
Spatial data mining
 Framework
 Spatial clustering algorithms
 Spatial characterization
 Spatial trend detection
 Spatial classification

Spatial data mining: Waarom?

Handmatige interpretatie onmogelijk
Door:
– Grote hoeveelheid data
– Continue groei in de hoeveelheid data
Spatial data mining: Wat?

Het vinden van
– Onregelmatigheden
– Regels
– Patronen
In spatiële databases

Voortgekomen uit KDD (Knowledge
discovery in databases)
Wat is een spatiële database?

Bevat objecten gekenmerkt door
– Spatiele locatie / extentie
– Meerdere niet-spatiele attributen
Wat is KDD?
The non-trivial process of discovering
valid, novel, potentially usefull and
ultimately understandable patterns from
data
- Fayyad et al. 1996
Spatial data mining: Hoe?
Gebruik maken van neighbourhood van
objecten
 Waarde attributen buren kan invloed
hebben op waarde attributen object

Spatial data mining
1.
2.
3.
4.
Spatial clustering
Spatial characterization
Spatial trend detection
Spatial classification
Framework voor spatial data mining
Gebaseerd op:
 Neighbourhood relations
 Neighbourhood graphs
 Neighbourhood paths
Waarom een Framework?
Versnelt de ontwikkeling
 Maakt algoritmes portable
 Gebruik beter index structuren versnelt
alle algoritmen die framework gebruiken
 Integratie in comerciele DBMSen

Spatial neighbourhood relations
Topologisch
 Afstand
 Richting
 En combinaties

Topologische relaties

Disjoint
 Overlap
 Equals
 Covers

Coverd by
 Contains
 Inside
Distance en Direction
Distance
 A distance>2 B
Direction
 B northeast A
B
A
B
A
Spatial neighbourhood graphs
Definition
DB
 Gneighbour = (N,E)
Nodes N = DB
Edges E subset_of N x N
edge e = (n1,n2) exists iff
neighbour(n1,n2) holds
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
KDD en paths
Paths geven een mogelijkheid om de
ruimte af te zoeken
 Kunnen gebruikt worden om de
zoekruimte te beperken
 Beperken met filters

Filters

Geven restricties op de mogelijke paden
vanaf een start object
Starlike
Variable-Starlike
Vertical-Starlike
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
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
Neighbourhood index
Object-ID Neighbour
Distance Direction
Topology
A
B
2.7
SouthWest
Disjoint
A
C
0
NorthWest
Overlap
…
…
…
…
…
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

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
Spatial clustering: GDBSCAN
GDBSCAN(DB,NPred,MinWeight)
DB zijn de spatiële objecten
 NPred is de neighbourhood relation
 MinWeight is de ‘density’ threshold

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
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
Spatial clustering: toepassing 2
Detecteren van
 Methode
‘influence regions’ in
– Detecteer ‘influence
regions’
Economisch
– Zoek maximale
geografische data
neighbourhood die lijkt
over Duitsland
op het centrale object
van de cluster
– Vergelijk met
theoretische waarde
voor het vinden van
afwijkingen
Spatial characterization
Vinden van compacte beschrijving van
een subset uit een database
 beschrijving bestaat uit spatial
association rules

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%)
Spatial Apriori

Maakt gebruik van de realieve
frequentie van waarden in de database
ten opzichte van de subset
DB
ƒtargets(prop)=
Freqtargets(prop)
freqDB(prop)
Card(targets)
Card(DB)
Spatial characterization
Het vinden van alle eigenschappen
waarvoor geldt:
DB
ƒ (prop) ≥ significance
nh(subset)
voor ten minste min_confidence
objecten
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
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

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
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
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
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

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
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
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

Download