Download 07 - Emory Math/CS Department

Document related concepts

Human genetic clustering wikipedia , lookup

Nonlinear dimensionality reduction wikipedia , lookup

Nearest-neighbor chain algorithm wikipedia , lookup

K-means clustering wikipedia , lookup

Cluster analysis wikipedia , lookup

Transcript
Data Mining:
Concepts and Techniques
Cluster Analysis
Li Xiong
Slide credits: Jiawei Han and Micheline Kamber
Tan, Steinbach, Kumar
April 29, 2017
Data Mining: Concepts and Techniques
1
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other Methods
 Outlier analysis
 Summary
April 29, 2017
Data Mining: Concepts and Techniques
2
What is Cluster Analysis?


Finding groups of objects (clusters)
 Objects similar to one another in the same group
 Objects different from the objects in other groups
Unsupervised learning
Inter-cluster
distances are
maximized
Intra-cluster
distances are
minimized
April 29, 2017
Data Mining: Concepts and Techniques
3
Clustering Applications

Marketing research

Social network analysis
April 29, 2017
Li Xiong
4
Clustering Applications

WWW: Documents and search results clustering
April 29, 2017
Data Mining: Concepts and Techniques
5
Clustering Applications

Earthquake studies
April 29, 2017
Li Xiong
6
Clustering Applications

Biology: plants and animals

Bioinformatics: microarray data, genes and sequences
April 29, 2017
Li Xiong
Time:
Time X
Time Y
Time Z
Gene 1
10
8
10
Gene 2
10
0
9
Gene 3
4
8.6
3
Gene 4
7
8
3
Gene 5
1
2
3
7
Requirements of Clustering

Scalability

Ability to deal with different types of attributes

Ability to handle dynamic data

Ability to deal with noise and outliers

Ability to deal with high dimensionality

Minimal requirements for domain knowledge to
determine input parameters

Incorporation of user-specified constraints

Interpretability and usability
April 29, 2017
Data Mining: Concepts and Techniques
8
Quality: What Is Good Clustering?

Agreement with “ground truth”

A good clustering will produce high quality clusters with

Homogeneity - high intra-class similarity

Separation - low inter-class similarity
Intra-cluster
distances are
minimized
April 29, 2017
Data Mining: Concepts and Techniques
Inter-cluster
distances are
maximized
9
Bad Clustering vs. Good Clustering
Similarity or Dissimilarity between Data Objects
 x11

 ...
x
 i1
 ...
x
 n1

...
x1f
...
...
...
...
xif
...
...
...
...
... xnf
...
...
x1p 

... 
xip 

... 
xnp 

Euclidean distance
d (i, j)  (| x  x |2  | x  x |2 ... | x  x |2 )
i1 j1
i2
j2
ip
jp

Manhattan distance
d (i, j) | x  x |  | x  x | ... | x  x |
i1 j1 i2 j 2
i p jp

Minkowski distance
d (i, j)  q (| x  x |q  | x  x |q ... | x  x |q )
i1 j1
i2
j2
ip
jp

Weighted
April 29, 2017
Li Xiong
11
Other Similarity or Dissimilarity Metrics
 x11

 ...
x
 i1
 ...
x
 n1
...
x1f
...
...
...
...
xif
...
...
...
...
... xnf
...
...
( X
x1p 

... 
xip 

... 
xnp 

 X i )( X j  X j )

Pearson correlation

X X
i j
Cosine measure
|| X |||| X ||
i
j

KL divergence, Bregman divergence, …
April 29, 2017
i
( p  1) X i  X j
Li Xiong
12
Different Attribute Types

To compute | xif  x jf |
 f is continuous




Normalization if necessary
Logarithmic transformation for ratio-scaled values
x  AeBt y  log( x )
if
if
if
f is ordinal
zif
 Mapping by rank
f is categorical

r 1
M 1
if
f
Mapping function
| x  x | = 0 if x = x , or 1 otherwise
if
jf
if
jf
 Hamming distance (edit distance) for strings

April 29, 2017
Data Mining: Concepts and Techniques
13
Clustering Approaches

Partitioning approach:

Construct various partitions and then evaluate them by some criterion,
e.g., minimizing the sum of square errors


Typical methods: k-means, k-medoids, CLARANS
Hierarchical approach:

Create a hierarchical decomposition of the set of data (or objects) using
some criterion



Typical methods: Diana, Agnes, BIRCH, ROCK, CAMELEON
Density-based approach:

Based on connectivity and density functions

Typical methods: DBSACN, OPTICS, DenClue
Others
April 29, 2017
Data Mining: Concepts and Techniques
14
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other Methods
 Outlier analysis
 Summary
April 29, 2017
Data Mining: Concepts and Techniques
15
Partitioning Algorithms: Basic Concept

Partitioning method: Construct a partition of a database D of n objects
into a set of k clusters, s.t., the sum of squared distance is minimized
ik1 pCi ( p  mi )2

Given a k, find a partition of k clusters that optimizes the chosen
partitioning criterion

Global optimal: exhaustively enumerate all partitions

Heuristic methods: k-means and k-medoids algorithms

k-means (MacQueen’67): Each cluster is represented by the center
of the cluster

k-medoids or PAM (Partition around medoids) (Kaufman &
Rousseeuw’87): Each cluster is represented by one of the objects
in the cluster
April 29, 2017
Data Mining: Concepts and Techniques
16
K-Means Clustering: Lloyd Algorithm




Given k, and randomly choose k initial cluster centers
Partition objects into k nonempty subsets by assigning
each object to the cluster with the nearest centroid
Update centroid, i.e. mean point of the cluster
Go back to Step 2, stop when no more new
assignment
April 29, 2017
Data Mining: Concepts and Techniques
17
The K-Means Clustering Method

Example
10
10
9
9
8
8
7
7
6
6
5
5
10
9
8
7
6
5
4
4
3
2
1
0
0
1
2
3
4
5
6
7
8
K=2
Arbitrarily choose K
object as initial
cluster center
9
10
Assign
each
objects
to most
similar
center
3
2
1
0
0
1
2
3
4
5
6
7
8
9
10
4
3
2
1
0
0
1
2
3
4
5
6
reassign
10
10
9
9
8
8
7
7
6
6
5
5
4
2
1
0
0
1
2
3
4
5
6
7
8
7
8
9
10
reassign
3
April 29, 2017
Update
the
cluster
means
9
10
Update
the
cluster
means
Data Mining: Concepts and Techniques
4
3
2
1
0
0
1
2
3
4
5
6
7
8
9
10
18
K-means Clustering – Details




Initial centroids are often chosen randomly.
The centroid is (typically) the mean of the points in the
cluster.
‘Closeness’ is measured by Euclidean distance, cosine
similarity, correlation, etc.
Most of the convergence happens in the first few
iterations.


Often the stopping condition is changed to ‘Until relatively few
points change clusters’
Complexity is O(tkn)
n is # objects, k is # clusters, and t is # iterations.
Comments on the K-Means Method


Strength

Simple and works well for “regular” disjoint clusters

Relatively efficient and scalable (normally, k, t << n)
Weakness

Need to specify k, the number of clusters, in advance

Depending on initial centroids, may terminate at a local optimum



Potential solutions
Unable to handle noisy data and outliers
Not suitable for clusters of
 Different sizes
 Non-convex shapes
April 29, 2017
Data Mining: Concepts and Techniques
20
Importance of Choosing Initial Centroids – Case 1
Iteration 1
Iteration 2
Iteration 3
2.5
2.5
2.5
2
2
2
1.5
1.5
1.5
y
3
y
3
y
3
1
1
1
0.5
0.5
0.5
0
0
0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
-2
-1.5
-1
-0.5
x
0
0.5
1
1.5
2
-2
Iteration 4
Iteration 5
2.5
2
2
2
1.5
1.5
1.5
1
1
1
0.5
0.5
0.5
0
0
0
-0.5
0
x
0.5
1
1.5
2
0
0.5
1
1.5
2
1
1.5
2
y
2.5
y
2.5
y
3
-1
-0.5
Iteration 6
3
-1.5
-1
x
3
-2
-1.5
x
-2
-1.5
-1
-0.5
0
x
0.5
1
1.5
2
-2
-1.5
-1
-0.5
0
x
0.5
Importance of Choosing Initial Centroids – Case 2
Iteration 1
Iteration 2
2.5
2.5
2
2
1.5
1.5
y
3
y
3
1
1
0.5
0.5
0
0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
-2
-1.5
-1
-0.5
x
0
Iteration 3
2.5
2
2
2
1.5
1.5
1.5
1
1
1
0.5
0.5
0.5
0
0
0
-0.5
0
x
0.5
1
1.5
2
y
2.5
y
2.5
y
3
-1
1.5
Iteration 5
3
-1.5
1
Iteration 4
3
-2
0.5
x
2
-2
-1.5
-1
-0.5
0
x
0.5
1
1.5
2
-2
-1.5
-1
-0.5
0
x
0.5
1
1.5
2
Limitations of K-means: Differing Sizes
Original Points
K-means (3 Clusters)
Limitations of K-means: Non-convex Shapes
Original Points
K-means (2 Clusters)
Overcoming K-means Limitations
Original Points
K-means Clusters
Overcoming K-means Limitations
Original Points
K-means Clusters
Variations of the K-Means Method


A few variants of the k-means which differ in

Selection of the initial k means

Dissimilarity calculations

Strategies to calculate cluster means
Handling categorical data: k-modes (Huang’98)

Replacing means of clusters with modes

Using new dissimilarity measures to deal with categorical objects

Using a frequency-based method to update modes of clusters

A mixture of categorical and numerical data: k-prototype method
April 29, 2017
Data Mining: Concepts and Techniques
27
What Is the Problem of the K-Means Method?

The k-means algorithm is sensitive to outliers !

Since an object with an extremely large value may
substantially distort the distribution of the data.

K-Medoids: Instead of taking the mean value of the object
in a cluster as a reference point, medoids can be used,
which is the most centrally located object in a cluster.
10
10
9
9
8
8
7
7
6
6
5
5
4
4
3
3
2
2
1
1
0
0
0
April 29, 2017
1
2
3
4
5
6
7
8
9
10
0
1
2
3
Data Mining: Concepts and Techniques
4
5
6
7
8
9
10
28
The K-Medoids Clustering Method
PAM (Kaufman and Rousseeuw, 1987)

Arbitrarily select k objects as medoid

Assign each data object in the given data set to most similar
medoid.

Randomly select nonmedoid object O’

Compute total cost, S, of swapping a medoid object to O’ (cost as
total sum of absolute error)

If S<0, then swap initial medoid with the new one

Repeat until there is no change in the medoid.
k-medoids and (n-k) instances pair-wise comparison
April 29, 2017
Data Mining: Concepts and Techniques
29
A Typical K-Medoids Algorithm (PAM)
Total Cost = 20
10
10
10
9
9
9
8
8
8
Arbitrary
choose k
object as
initial
medoids
7
6
5
4
3
2
Assign
each
remaining
object to
nearest
medoids
7
6
5
4
3
2
1
1
0
0
0
1
2
3
4
5
6
7
8
9
0
10
1
2
3
4
5
6
7
8
9
10
7
6
5
4
3
2
1
0
0
K=2
Until no
change
10
3
4
5
6
7
8
9
10
10
Compute
total cost of
swapping
9
9
Swapping O
and Oramdom
8
If quality is
improved.
5
5
4
4
3
3
2
2
1
1
7
6
0
8
7
6
0
0
April 29, 2017
2
Randomly select a
nonmedoid object,Orandom
Total Cost = 26
Do loop
1
1
2
3
4
5
6
7
8
9
10
Data Mining: Concepts and Techniques
0
1
2
3
4
5
6
7
8
9
10
30
What Is the Problem with PAM?


Pam is more robust than k-means in the presence of
noise and outliers
Pam works efficiently for small data sets but does not
scale well for large data sets.

Complexity? O(k(n-k)2t)
n is # of data,k is # of clusters, t is # of iterations
Sampling based method,
CLARA(Clustering LARge Applications)
April 29, 2017
Data Mining: Concepts and Techniques
31
CLARA (Clustering Large Applications) (1990)


CLARA (Kaufmann and Rousseeuw in 1990)
It draws multiple samples of the data set, applies PAM on
each sample, and gives the best clustering as the output

Strength: deals with larger data sets than PAM

Weakness:


Efficiency depends on the sample size
A good clustering based on samples will not
necessarily represent a good clustering of the whole
data set if the sample is biased
April 29, 2017
Data Mining: Concepts and Techniques
32
CLARANS (“Randomized” CLARA) (1994)

CLARANS (A Clustering Algorithm based on Randomized
Search) (Ng and Han’94)

The clustering process can be presented as searching a
graph where every node is a potential solution, that is, a
set of k medoids

PAM examines neighbors for local minimum

CLARA works on subgraphs of samples

CLARANS examines neighbors dynamically

April 29, 2017
If local optimum is found, starts with new randomly selected
node in search for a new local optimum
Data Mining: Concepts and Techniques
33
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods and graph-based methods
 Density-based methods
 Other Methods
 Outlier analysis
 Summary
April 29, 2017
Data Mining: Concepts and Techniques
34
Hierarchical Clustering


Produces a set of nested clusters organized as a
hierarchical tree
Can be visualized as a dendrogram
 A tree like diagram representing a hierarchy of nested
clusters
 Clustering obtained by cutting at desired level
5
6
0.2
4
3
0.15
4
2
5
2
0.1
1
0.05
3
0
1
3
2
5
4
6
1
Strengths of Hierarchical Clustering


Do not have to assume any particular number of
clusters
May correspond to meaningful taxonomies
Hierarchical Clustering

Two main types of hierarchical clustering
 Agglomerative:



Start with the points as individual clusters
At each step, merge the closest pair of clusters until only one
cluster (or k clusters) left
Divisive:


Start with one, all-inclusive cluster
At each step, split a cluster until each cluster contains a point
(or there are k clusters)
Agglomerative Clustering Algorithm
1.
2.
3.
4.
5.
6.
Compute the proximity matrix
Let each data point be a cluster
Repeat
Merge the two closest clusters
Update the proximity matrix
Until only a single cluster remains
Starting Situation

Start with clusters of individual points and a
p1 p2
p3
p4 p5
proximity matrix
...
p1
p2
p3
p4
p5
.
.
Proximity Matrix
.
...
p1
p2
p3
p4
p9
p10
p11
p12
Intermediate Situation
C1
C2
C3
C4
C5
C1
C2
C3
C3
C4
C4
C5
Proximity Matrix
C1
C2
C5
...
p1
p2
p3
p4
p9
p10
p11
p12
How to Define Inter-Cluster Similarity
p1
p2
p3
p4 p5
p1
p2
Similarity?
p3
p4
p5
.
.
.
Proximity Matrix
...
Distance Between Clusters

Single Link: smallest distance between

Complete Link: largest distance between

Average Link: average distance between

Centroid: distance between centroids
points
points
points
Hierarchical Clustering: MIN
1
5
3
5
0.2
2
1
2
3
0.15
6
0.1
0.05
4
4
Nested Clusters
0
3
6
2
5
Dendrogram
4
1
MST (Minimum Spanning Tree)



Start with a tree that consists of any point
In successive steps, look for the closest pair of points (p,
q) such that one point (p) is in the current tree but the
other (q) is not
Add q to the tree and put an edge between p and q
Min vs. Max vs. Group Average
1
5
4
3
5
5
2
MIN
2
5
1
2
1
3
MAX
2
3
6
3
4
1
4
4
1
5
2
5
2
3
3
6
1
4
4
6
Group Average
Strength of MIN
Original Points
• Can handle non-elliptical shapes
Two Clusters
Limitations of MIN
Original Points
• Sensitive to noise and outliers
Two Clusters
Strength of MAX
Original Points
• Less susceptible to noise and outliers
Two Clusters
Limitations of MAX
Original Points
•Tends to break large clusters
•Biased towards globular clusters
Two Clusters
Hierarchical Clustering: Group Average



Compromise between Single and Complete
Link
Strengths
 Less susceptible to noise and outliers
Limitations
 Biased towards globular clusters
Hierarchical Clustering: Major Weaknesses

Do not scale well (N: number of points)
 Space complexity: O(N2)
 Time complexity:
O(N3)
O(N2 log(N)) for some cases/approaches


Cannot undo what was done previously
Quality varies in terms of distance measures


MIN (single link): susceptible to noise/outliers
MAX/GROUP AVERAGE: may not work well with nonglobular clusters
Recent Hierarchical Clustering Methods




BIRCH (1996): uses CF-tree and incrementally adjusts the
quality of sub-clusters
CURE(1998): uses representative points for inter-cluster
distance
ROCK (1999): clustering categorical data by neighbor and
link analysis
CHAMELEON (1999): hierarchical clustering using dynamic
modeling
April 29, 2017
Data Mining: Concepts and Techniques
52
Birch


Birch: Balanced Iterative Reducing and Clustering using
Hierarchies (Zhang, Ramakrishnan & Livny, SIGMOD’96)
Main ideas:
 Use in-memory clustering feature to summarize
data/cluster


Use hierarchical clustering for microclustering and
other clustering methods (e.g. partitioning) for
macroclustering


Minimize database scans and I/O cost
Fix the problems of hierarchical clustering
Features:


Scales linearly: single scan and improves the quality
with a few additional scans
handles only numeric data, and sensitive to the order
of the data record.
April 29, 2017
Data Mining: Concepts and Techniques
53
Cluster Statistics
Given a cluster of instances
Centroid:
Radius: average distance from member points to
centroid
Diameter: average pair-wise distance within a cluster
April 29, 2017
54
Intra-Cluster Distance
Given two clusters
Centroid Euclidean distance:
Centroid Manhattan distance:
Average distance:
April 29, 2017
55
Clustering Feature (CF)
CF = (5, (16,30),(54,190))
10
9
8
7
6
5
4
3
2
1
0
April 29, 2017
0
1
2
3
4
5
6
56
7
8
9
10
(3,4)
(2,6)
(4,5)
(4,7)
(3,8)
Properties of Clustering Feature

CF entry is more compact



Stores significantly less then all of the data
points in the sub-cluster
A CF entry has sufficient information to
calculate statistics about the cluster and
intra-cluster distances
Additivity theorem allows us to merge subclusters incrementally & consistently
April 29, 2017
57
Hierarchical CF-Tree

A CF tree is a height-balanced tree that stores the
clustering features for a hierarchical clustering



A nonleaf node in a tree has descendants or “children”
The nonleaf nodes store sums of the CFs of their
children
A CF tree has two parameters


Branching factor: specify the maximum number of
children.
threshold: max diameter of sub-clusters stored at the
leaf nodes
April 29, 2017
Data Mining: Concepts and Techniques
58
The CF Tree Structure
Root
CF1
CF2 CF3
CF6
child1
child2 child3
child6
Non-leaf node
CF1
CF2 CF3
CF5
child1
child2 child3
child5
Leaf node
prev CF1 CF2
April 29, 2017
CF6 next
Leaf node
prev CF1 CF2
Data Mining: Concepts and Techniques
CF4 next
59
CF-Tree Insertion



Traverse down from root, find the appropriate
leaf
 Follow the "closest"-CF path, w.r.t. intracluster distance measures
Modify the leaf
 If the closest-CF leaf cannot absorb, make a
new CF entry.
 If there is no room for new leaf, split the
parent node
Traverse back & up
 Updating CFs on the path or splitting nodes
April 29, 2017
60
BIRCH Overview
April 29, 2017
61
The Algorithm: BIRCH

Phase 1: Scan database to build an initial inmemory CF-tree


Subsequent phases become fast, accurate, less order
sensitive
Phase 2: Condense data (optional)
Rebuild the CF-tree with a larger T
Phase 3: Global clustering
 Use existing clustering algorithm on CF entries
 Helps fix problem where natural clusters span nodes



Phase 4: Cluster refining (optional)

Do additional passes over the dataset & reassign data
points to the closest centroid from phase 3
April 29, 2017
62
CURE



CURE: An Efficient Clustering Algorithm for Large
Databases (1998) Sudipto Guha, Rajeev Rastogi, Kyuscok
Shim
Main ideas:
 Use representative points for inter-cluster distance
 Random sampling and partitioning
Features:
 Handles non-spherical shapes and arbitrary sizes
better
CURE: Cluster Points

Uses a number of points to represent a cluster




Representative points are found by selecting a constant
number of points from a cluster and then “shrinking”
them toward the center of the cluster
 How to shrink?
Cluster similarity is the similarity of the closest pair of
representative points from different clusters
Experimental Results: CURE
Picture from CURE, Guha, Rastogi, Shim.
Experimental Results: CURE
(centroid)
(single link)
Picture from CURE, Guha, Rastogi, Shim.
CURE Cannot Handle Differing Densities
Original Points
CURE
Clustering Categorical Data: The ROCK Algorithm



ROCK: RObust Clustering using linKs
 S. Guha, R. Rastogi & K. Shim, ICDE’99
Major ideas
 Use links to measure similarity/proximity
 Sampling-based clustering
Features:
 More meaningful clusters
 Emphasizes interconnectivity but ignores proximity
April 29, 2017
Data Mining: Concepts and Techniques
68
Similarity Measure in ROCK



Market basket data clustering
T1  T2
Jaccard co-efficient-based similarity function: Sim(T1 , T2 ) 
T1  T2
Example: Two groups (clusters) of transactions

C1. <a, b, c, d, e>

{a, b, c}, {a, b, d}, {a, b, e}, {a, c, d}, {a, c, e}, {a, d, e}, {b, c, d}, {b, c,
e}, {b, d, e}, {c, d, e}
C2. <a, b, f, g>


{a, b, f}, {a, b, g}, {a, f, g}, {b, f, g}
Let T1 = {a, b, c}, T2 = {c, d, e}, T3 = {a, b, f}
Jaccard co-efficient may lead to wrong clustering result


Sim (T 1, T 2 ) 
Sim (T1 , T3 ) 
April 29, 2017
{c}
1

 0.2
{a , b, c, d , e}
5
{c, f }
2

 0.5
{a , b, c, f }
4
Data Mining: Concepts and Techniques
69
Link Measure in ROCK
Sim( P1 , P3 )  

Neighbor:

Links: # of common neighbors

Example:

link(T1, T2) = 4, since they have 4 common neighbors


link(T1, T3) = 3, since they have 3 common neighbors

April 29, 2017
{a, c, d}, {a, c, e}, {b, c, d}, {b, c, e}
{a, b, d}, {a, b, e}, {a, b, g}
Data Mining: Concepts and Techniques
70
Rock Algorithm
1.
2.
3.
4.
Obtain a sample of points from the data set
Compute the link value for each set of points,
from the original similarities (computed by
Jaccard coefficient)
Perform an agglomerative hierarchical clustering
on the data using the “number of shared
neighbors” as similarity measure
Assign the remaining points to the clusters that
have been found
April 29, 2017
Data Mining: Concepts and Techniques
71
CHAMELEON: Hierarchical Clustering Using
Dynamic Modeling (1999)

CHAMELEON: by G. Karypis, E.H. Han, and V. Kumar’99

Basic ideas:

A graph-based clustering approach

A two-phase algorithm:



Agglomerative hierarchical clustering: repeatedly combine these subclusters
Measures the similarity based on a dynamic model


Partitioning: cluster objects into a large number of relatively small subclusters
interconnectivity and closeness (proximity)
Features:

Handles clusters of arbitrary shapes, sizes, and density

Scales well
April 29, 2017
Data Mining: Concepts and Techniques
72
Graph-Based Clustering



Uses the proximity graph
 Start with the proximity matrix
 Consider each point as a node in a graph
 Each edge between two nodes has a weight
which is the proximity between the two points
Fully connected proximity graph
 MIN (single-link) and MAX (complete-link)
Sparsification
 Clusters are connected components in the
graph
 CHAMELEON
Overall Framework of CHAMELEON
Construct
Partition the Graph
Sparse Graph
Data Set
Merge Partition
Final Clusters
April 29, 2017
Data Mining: Concepts and Techniques
74
Chameleon: Steps


Preprocessing Step:
Represent the Data by a Graph
 Given a set of points, construct the k-nearest-neighbor
(k-NN) graph to capture the relationship between a
point and its k nearest neighbors
 Concept of neighborhood is captured dynamically
(even if region is sparse)
Phase 1: Use a multilevel graph partitioning algorithm on
the graph to find a large number of clusters of wellconnected vertices
 Each cluster should contain mostly points from one
“true” cluster, i.e., is a sub-cluster of a “real” cluster
Chameleon: Steps …

Phase 2: Use Hierarchical Agglomerative Clustering to
merge sub-clusters
 Two clusters are combined if the resulting cluster
shares certain properties with the constituent clusters

Two key properties used to model cluster similarity:


Relative Interconnectivity: Absolute interconnectivity of two
clusters normalized by the internal connectivity of the clusters
Relative Closeness: Absolute closeness of two clusters
normalized by the internal closeness of the clusters
Cluster Merging: Limitations of Current Schemes

Existing schemes are static in nature
 MIN or CURE:


merge two clusters based on their closeness (or
minimum distance)
GROUP-AVERAGE or ROCK:

merge two clusters based on their average
connectivity
Limitations of Current Merging Schemes
(a)
(b)
(c)
(d)
Closeness
schemes will
merge (a) and (b)
Average connectivity
schemes will merge (c)
and (d)
Chameleon: Clustering Using Dynamic Modeling


Adapt to the characteristics of the data set to find the
natural clusters
Use a dynamic model to measure the similarity between
clusters



Main property is the relative closeness and relative interconnectivity of the cluster
Two clusters are combined if the resulting cluster shares certain
properties with the constituent clusters
The merging scheme preserves self-similarity
CHAMELEON (Clustering Complex Objects)
April 29, 2017
Data Mining: Concepts and Techniques
80
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other methods
 Cluster evaluation
 Outlier analysis
 Summary
April 29, 2017
Data Mining: Concepts and Techniques
81
Density-Based Clustering Methods



Clustering based on density
Major features:
 Clusters of arbitrary shape
 Handle noise
 Need density parameters as termination condition
Several interesting studies:
 DBSCAN: Ester, et al. (KDD’96)
 OPTICS: Ankerst, et al (SIGMOD’99).
 DENCLUE: Hinneburg & D. Keim (KDD’98)
 CLIQUE: Agrawal, et al. (SIGMOD’98) (more grid-based)
April 29, 2017
Data Mining: Concepts and Techniques
82
DBSCAN: Basic Concepts




Density = number of points within a specified radius
core point: has high density
border point: has less density, but in the
neighborhood of a core point
noise point: not a core point or a border point.
Core point
border point
noise point
DBScan: Definitions

Two parameters:

Eps: radius of the neighbourhood

MinPts: Minimum number of points in an Epsneighbourhood of that point

NEps(p):
{q belongs to D | dist(p,q) <= Eps}

core point: |NEps (q)| >= MinPts
p
q
April 29, 2017
MinPts = 5
Eps = 1 cm
Data Mining: Concepts and Techniques
84
DBScan: Definitions



Directly density-reachable: p belongs
to NEps(q)
p
q
Density-reachable: if there is a chain
of points p1, …, pn, p1 = q, pn = p
such that pi+1 is directly densityreachable from pi
Density-connected: if there is a point
o such that both, p and q are densityreachable from o w.r.t. Eps and
MinPts = 5
Eps = 1 cm
p
p1
q
p
q
o
MinPts
Data Mining: Concepts and Techniques
85
DBSCAN: Cluster Definition

A cluster is defined as a maximal set of density-connected
points
Outlier
Border
Eps = 1cm
Core
April 29, 2017
MinPts = 5
Data Mining: Concepts and Techniques
86
DBSCAN: The Algorithm





Arbitrary select a point p
Retrieve all points density-reachable from p w.r.t. Eps
and MinPts.
If p is a core point, a cluster is formed.
If p is a border point, no points are density-reachable
from p and DBSCAN visits the next point of the database.
Continue the process until all of the points have been
processed.
April 29, 2017
Data Mining: Concepts and Techniques
87
DBSCAN: Determining EPS and MinPts


Basic idea:

For points in a cluster, their kth nearest neighbors
are at roughly the same distance

Noise points have the kth nearest neighbor at
farther distance
Plot sorted distance of every point to its kth nearest
neighbor
DBSCAN: Sensitive to Parameters
April 29, 2017
Data Mining: Concepts and Techniques
89
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other methods
 Clustering by mixture models: mixed Gaussian model
 Conceptual clustering: COBWEB
 Neural network approach: SOM
 Cluster evaluation
 Outlier analysis
 Summary
April 29, 2017
Data Mining: Concepts and Techniques
90
Model-Based Clustering


Attempt to optimize the fit between the given data and
some mathematical model
Typical methods
 Statistical approach


Machine learning approach


EM (Expectation maximization)
COBWEB
Neural network approach

April 29, 2017
SOM (Self-Organizing Feature Map)
Data Mining: Concepts and Techniques
91
Clustering by Mixture Model

Assume data are generated by a mixture of probabilistic
model
 Each cluster can be represented by a probabilistic
model, like a Gaussian (continuous) or a Poisson
(discrete) distribution.
April 29, 2017
Data Mining: Concepts and Techniques
92
Expectation Maximization (EM)


Starts with an initial estimate of the parameters of the
mixture model
Iteratively refine the parameters using EM method
 Expectation step: computes expectation of the likelihood
of each data point Xi belonging to cluster Ci

Maximization step: computes maximum likelihood
estimates of the parameters
April 29, 2017
Data Mining: Concepts and Techniques
93
Conceptual Clustering


Conceptual clustering
 Generates a concept description for each concept (class)
 Produces a hierarchical category or classification scheme
 Related to decision tree learning and mixture model
learning
COBWEB (Fisher’87)
 A popular and simple method of incremental conceptual
learning
 Creates a hierarchical clustering in the form of a
classification tree
 Each node refers to a concept and contains a
probabilistic description of that concept
April 29, 2017
Data Mining: Concepts and Techniques
94
COBWEB Classification Tree
April 29, 2017
Data Mining: Concepts and Techniques
95
COBWEB: Learning the Classification Tree




Incrementally builds the classification tree
Given a new object
 Search for the best node at which to
incorporate the object or add a new node for
the object
 Update the probabilistic description at each
node
Merging and splitting
Use a heuristic measure - Category Utility – to
guide construction of the tree
April 29, 2017
Data Mining: Concepts and Techniques
96
COBWEB: Comments

Limitations


The assumption that the attributes are independent of
each other is often too strong because correlation may
exist
Not suitable for clustering large database – skewed tree
and expensive probability distributions
April 29, 2017
Data Mining: Concepts and Techniques
97
Neural Network Approach

Neural network approach for unsupervised learning



Involves a hierarchical architecture of several units (neurons)
Two modes
 Training: builds the network using input data
 Mapping: automatically classifies a new input vector.
Typical methods
 SOM (Soft-Organizing feature Map)
 Competitive learning
April 29, 2017
Data Mining: Concepts and Techniques
98
Self-Organizing Feature Map (SOM)


SOMs, also called topological ordered maps, or Kohonen Self-Organizing
Feature Map (KSOMs)
Produce a low-dimensional (typically two) representation of the highdimensional input data, called a map

The distance and proximity relationship (i.e., topology) are
preserved as much as possible

Visualization tool for high-dimensional data

Clustering method for grouping similar objects together

Competitive learning

believed to resemble processing that can occur in the brain
April 29, 2017
Data Mining: Concepts and Techniques
99
Learning SOM

Network structure – a set of units associated with a weight vector

Training – competitive learning



The unit whose weight vector is closest to the current object
becomes the winning unit
The winner and its neighbors learn by having their weights
adjusted
Demo: http://www.sis.pitt.edu/~ssyn/som/demo.html
April 29, 2017
Data Mining: Concepts and Techniques
100
Web Document Clustering Using SOM

The result of
SOM clustering
of 12088 Web
articles

The picture on
the right: drilling
down on the
keyword
“mining”
April 29, 2017
Data Mining: Concepts and Techniques
101
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other methods
 Cluster evaluation
 Outlier analysis
April 29, 2017
Data Mining: Concepts and Techniques
102
Cluster Evaluation





Determine clustering tendency of data, i.e.
distinguish whether non-random structure exists
Determine correct number of clusters
Evaluate how well the cluster results fit the data
without external information
Evaluate how well the cluster results are
compared to externally known results
Compare different clustering algorithms/results
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
y
Random
Points
y
Clusters found in Random Data
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0.2
0.4
0.6
0.8
0
1
DBSCAN
0
0.2
0.4
x
1
1
0.9
0.9
0.8
0.8
0.7
0.7
0.6
0.6
0.5
0.5
y
y
K-means
0.4
0.4
0.3
0.3
0.2
0.2
0.1
0.1
0
0
0.2
0.4
0.6
x
0.6
0.8
1
x
0.8
1
0
Complete
Link
0
0.2
0.4
0.6
x
0.8
1
Measures of Cluster Validity

Unsupervised (internal indices): Used to measure the
goodness of a clustering structure without respect to
external information.


Supervised (external indices): Used to measure the extent
to which cluster labels match externally supplied class
labels.


Sum of Squared Error (SSE)
Entropy
Relative: Used to compare two different clustering results

Often an external or internal index is used for this function, e.g., SSE
or entropy
Internal Measures: Cohesion and Separation



Cluster Cohesion: how closely related are objects in a
cluster
Cluster Separation: how distinct or well-separated a
cluster is from other clusters
Example: Squared Error

Cohesion: within cluster sum of squares (SSE)
WSS    ( x  mi )2

i xC i
Separation: between cluster sum of squares
BSS   ( mi  m j )
i
j
2
Cohesion
separation
Internal Measures: SSE

SSE is good for comparing two clusterings
Can also be used to estimate the number of clusters
10
6
9
8
4
7
2
6
SSE

0
5
4
-2
3
2
-4
1
-6
5
10
15
0
2
5
10
15
K
20
25
30
Internal Measures: SSE

Another example of a more complicated data set
1
2
6
3
4
5
7
SSE of clusters found using K-means
Statistical Framework for SSE
Statistics framework for cluster validity



More “atypical” -> likely valid structure in the data
Use values resulting from random data as baseline
Example



Clustering: SSE = 0.005
SSE of three clusters in 500 sets of random data points
1
50
0.9
45
0.8
40
0.7
35
30
Count
y
0.6
0.5
0.4
20
0.3
15
0.2
10
0.1
0
25
5
0
0.2
0.4
0.6
x
0.8
1
0
0.016 0.018
0.02
0.022
0.024
0.026
SSE
0.028
0.03
0.032
0.034
External Measures



Compare cluster results with “ground truth” or manually
clustering
Classification-oriented measures: entropy, purity,
precision, recall, F-measures
Similarity-oriented measures: Jaccard scores
External Measures: Classification-Oriented Measures



Entropy: the degree to which each cluster consists of
objects of a single class
Precision: the fraction of a cluster that consists of objects
of a specified class
Recall: the extent to which a cluster contains all objects
of a specified class
External Measure: Similarity-Oriented Measures
Given a reference clustering T and clustering S

f00: number of pair of points belonging to different clusters in both T
and S

f01: number of pair of points belonging to different cluster in T but
same cluster in S

f10: number of pair of points belonging to same cluster in T but
different cluster in S

f11: number of pair of points belonging to same clusters in both T and
S
Rand 
f 00  f11
f 00  f 01  f10  f11
Jaccard 
f11
f 01  f10  f11
T
April 29, 2017
Li Xiong
S
112
Chapter 7. Cluster Analysis
 Overview
 Partitioning methods
 Hierarchical methods
 Density-based methods
 Other methods
 Cluster evaluation
 Outlier analysis
April 29, 2017
Data Mining: Concepts and Techniques
113
What Is Outlier Discovery?



What are outliers?
 The set of objects are considerably dissimilar from the
remainder of the data
Problem: Define and find outliers in large data sets
Applications:
 Credit card fraud detection
 Telecom fraud detection
 Customer segmentation
 Medical analysis
April 29, 2017
Data Mining: Concepts and Techniques
114
Outlier Discovery:
Statistical Approaches



Assume a model underlying distribution that generates
data set (e.g. normal distribution)
Use discordancy tests depending on
 data distribution
 distribution parameter (e.g., mean, variance)
 number of expected outliers
Drawbacks
 most tests are for single attribute
 In many cases, data distribution may not be known
April 29, 2017
Data Mining: Concepts and Techniques
115
Outlier Discovery: Distance-Based Approach



Introduced to counter the main limitations imposed by
statistical methods
 We need multi-dimensional analysis without knowing
data distribution
Distance-based outlier: A DB(p, D)-outlier is an object O
in a dataset T such that at least a fraction p of the objects
in T lies at a distance greater than D from O
Algorithms for mining distance-based outliers
 Index-based algorithm
 Nested-loop algorithm
 Cell-based algorithm
April 29, 2017
Data Mining: Concepts and Techniques
116
Density-Based Local
Outlier Detection





Distance-based outlier detection
is based on global distance
distribution
It encounters difficulties to
identify outliers if data is not
uniformly distributed
Ex. C1 contains 400 loosely
distributed points, C2 has 100
tightly condensed points, 2
outlier points o1, o2
Distance-based method cannot
identify o2 as an outlier
Need the concept of local outlier
April 29, 2017

Local outlier factor (LOF)
 Assume outlier is not
crisp
 Each point has a LOF
Data Mining: Concepts and Techniques
117
Outlier Discovery: Deviation-Based Approach



Identifies outliers by examining the main characteristics
of objects in a group
Objects that “deviate” from this description are
considered outliers
Sequential exception technique


simulates the way in which humans can distinguish
unusual objects from among a series of supposedly
like objects
OLAP data cube technique

uses data cubes to identify regions of anomalies in
large multidimensional data
April 29, 2017
Data Mining: Concepts and Techniques
118
Chapter 7. Cluster Analysis
1. What is Cluster Analysis?
2. Types of Data in Cluster Analysis
3. A Categorization of Major Clustering Methods
4. Partitioning Methods
5. Hierarchical Methods
6. Density-Based Methods
7. Grid-Based Methods
8. Model-Based Methods
9. Clustering High-Dimensional Data
10. Constraint-Based Clustering
11. Outlier Analysis
12. Summary
April 29, 2017
Data Mining: Concepts and Techniques
119
Summary





Cluster analysis groups objects based on their similarity
and has wide applications
Measure of similarity can be computed for various types
of data
Clustering algorithms can be categorized into partitioning
methods, hierarchical methods, density-based methods,
grid-based methods, and model-based methods
Outlier detection and analysis are very useful for fraud
detection, etc. and can be performed by statistical,
distance-based or deviation-based approaches
There are still lots of research issues on cluster analysis
April 29, 2017
Data Mining: Concepts and Techniques
120
Problems and Challenges


Considerable progress has been made in scalable
clustering methods

Partitioning: k-means, k-medoids, CLARANS

Hierarchical: BIRCH, ROCK, CHAMELEON

Density-based: DBSCAN, OPTICS, DenClue

Grid-based: STING, WaveCluster, CLIQUE

Model-based: EM, Cobweb, SOM

Frequent pattern-based: pCluster

Constraint-based: COD, constrained-clustering
Current clustering techniques do not address all the
requirements adequately, still an active area of research
April 29, 2017
Data Mining: Concepts and Techniques
121
References (1)

R. Agrawal, J. Gehrke, D. Gunopulos, and P. Raghavan. Automatic subspace clustering of high
dimensional data for data mining applications. SIGMOD'98

M. R. Anderberg. Cluster Analysis for Applications. Academic Press, 1973.

M. Ankerst, M. Breunig, H.-P. Kriegel, and J. Sander. Optics: Ordering points to identify the
clustering structure, SIGMOD’99.

P. Arabie, L. J. Hubert, and G. De Soete. Clustering and Classification. World Scientific, 1996

Beil F., Ester M., Xu X.: "Frequent Term-Based Text Clustering", KDD'02

M. M. Breunig, H.-P. Kriegel, R. Ng, J. Sander. LOF: Identifying Density-Based Local Outliers.
SIGMOD 2000.

M. Ester, H.-P. Kriegel, J. Sander, and X. Xu. A density-based algorithm for discovering clusters in
large spatial databases. KDD'96.

M. Ester, H.-P. Kriegel, and X. Xu. Knowledge discovery in large spatial databases: Focusing
techniques for efficient class identification. SSD'95.

D. Fisher. Knowledge acquisition via incremental conceptual clustering. Machine Learning, 2:139172, 1987.

D. Gibson, J. Kleinberg, and P. Raghavan. Clustering categorical data: An approach based on
dynamic systems. VLDB’98.
April 29, 2017
Data Mining: Concepts and Techniques
122
References (2)










V. Ganti, J. Gehrke, R. Ramakrishan. CACTUS Clustering Categorical Data Using Summaries. KDD'99.
D. Gibson, J. Kleinberg, and P. Raghavan. Clustering categorical data: An approach based on
dynamic systems. In Proc. VLDB’98.
S. Guha, R. Rastogi, and K. Shim. Cure: An efficient clustering algorithm for large databases.
SIGMOD'98.
S. Guha, R. Rastogi, and K. Shim. ROCK: A robust clustering algorithm for categorical attributes. In
ICDE'99, pp. 512-521, Sydney, Australia, March 1999.
A. Hinneburg, D.l A. Keim: An Efficient Approach to Clustering in Large Multimedia Databases with
Noise. KDD’98.
A. K. Jain and R. C. Dubes. Algorithms for Clustering Data. Printice Hall, 1988.
G. Karypis, E.-H. Han, and V. Kumar. CHAMELEON: A Hierarchical Clustering Algorithm Using
Dynamic Modeling. COMPUTER, 32(8): 68-75, 1999.
L. Kaufman and P. J. Rousseeuw. Finding Groups in Data: an Introduction to Cluster Analysis. John
Wiley & Sons, 1990.
E. Knorr and R. Ng. Algorithms for mining distance-based outliers in large datasets. VLDB’98.
G. J. McLachlan and K.E. Bkasford. Mixture Models: Inference and Applications to Clustering. John
Wiley and Sons, 1988.

P. Michaud. Clustering techniques. Future Generation Computer systems, 13, 1997.

R. Ng and J. Han. Efficient and effective clustering method for spatial data mining. VLDB'94.
April 29, 2017
Data Mining: Concepts and Techniques
123
References (3)

L. Parsons, E. Haque and H. Liu, Subspace Clustering for High Dimensional Data: A Review ,
SIGKDD Explorations, 6(1), June 2004

E. Schikuta. Grid clustering: An efficient hierarchical clustering method for very large data sets.
Proc. 1996 Int. Conf. on Pattern Recognition,.

G. Sheikholeslami, S. Chatterjee, and A. Zhang. WaveCluster: A multi-resolution clustering
approach for very large spatial databases. VLDB’98.

A. K. H. Tung, J. Han, L. V. S. Lakshmanan, and R. T. Ng. Constraint-Based Clustering in Large
Databases, ICDT'01.

A. K. H. Tung, J. Hou, and J. Han. Spatial Clustering in the Presence of Obstacles , ICDE'01

H. Wang, W. Wang, J. Yang, and P.S. Yu. Clustering by pattern similarity in large data
sets, SIGMOD’ 02.

W. Wang, Yang, R. Muntz, STING: A Statistical Information grid Approach to Spatial Data Mining,
VLDB’97.

T. Zhang, R. Ramakrishnan, and M. Livny. BIRCH : an efficient data clustering method for very
large databases. SIGMOD'96.
April 29, 2017
Data Mining: Concepts and Techniques
124
www.cs.uiuc.edu/~hanj
Thank you !!!
April 29, 2017
Data Mining: Concepts and Techniques
125
Clustering: Rich Applications and
Multidisciplinary Efforts

Pattern Recognition

Spatial Data Analysis


Create thematic maps in GIS by clustering feature
spaces
Detect spatial clusters or for other spatial mining tasks

Image Processing

Economic Science (especially market research)

WWW


Document clustering
Cluster Weblog data to discover groups of similar access
patterns
April 29, 2017
Data Mining: Concepts and Techniques
126
Major Clustering Approaches (II)


Grid-based approach:

based on a multiple-level granularity structure

Typical methods: STING, WaveCluster, CLIQUE
Model-based:

A model is hypothesized for each of the clusters and tries to find the best
fit of that model to each other



Typical methods: EM, SOM, COBWEB
Frequent pattern-based:

Based on the analysis of frequent patterns

Typical methods: pCluster
User-guided or constraint-based:

Clustering by considering user-specified or application-specific constraints

Typical methods: COD (obstacles), constrained clustering
April 29, 2017
Data Mining: Concepts and Techniques
127
Measure the Quality of Clustering





Dissimilarity/Similarity metric: Similarity is expressed in
terms of a distance function, typically metric: d(i, j)
There is a separate “quality” function that measures the
“goodness” of a cluster.
The definitions of distance functions are usually very
different for interval-scaled, boolean, categorical, ordinal
ratio, and vector variables.
Weights should be associated with different variables
based on applications and data semantics.
It is hard to define “similar enough” or “good enough”

the answer is typically highly subjective.
April 29, 2017
Data Mining: Concepts and Techniques
128
Interval-valued variables

Standardize data

Calculate the mean absolute deviation:
sf  1
n (| x1 f  m f |  | x2 f  m f | ... | xnf  m f |)
where

m f  1n (x1 f  x2 f
 ... 
xnf )
.
Calculate the standardized measurement (z-score)
xif  m f
zif 
sf

Using mean absolute deviation is more robust than using
standard deviation
April 29, 2017
Data Mining: Concepts and Techniques
129
Similarity and Dissimilarity Between
Objects (Cont.)

If q = 2, d is Euclidean distance:
d (i, j)  (| x  x |2  | x  x |2 ... | x  x |2 )
i1
j1
i2
j2
ip
jp

Properties





d(i,j)  0
d(i,i) = 0
d(i,j) = d(j,i)
d(i,j)  d(i,k) + d(k,j)
Also, one can use weighted distance, parametric
Pearson product moment correlation, or other
disimilarity measures
April 29, 2017
Data Mining: Concepts and Techniques
130
Data Structures


Data matrix
 (two modes)
 x11

 ...
x
 i1
 ...
x
 n1
Dissimilarity matrix
 (one mode)
April 29, 2017
...
x1f
...
...
...
...
xif
...
...
...
...
... xnf
...
...
 0
 d(2,1)
0

 d(3,1) d ( 3,2) 0

:
:
 :
d ( n,1) d ( n,2) ...
Data Mining: Concepts and Techniques
x1p 

... 
xip 

... 
xnp 







... 0
131
Type of data in clustering analysis

Interval-scaled variables

Binary variables

Nominal, ordinal, and ratio variables

Variables of mixed types
April 29, 2017
Data Mining: Concepts and Techniques
132
Similarity or Dissimilarity Metrics


Distances are normally used to measure the similarity or
dissimilarity between two data objects
Some popular ones include: Minkowski distance:
d (i, j)  q (| x  x |q  | x  x |q ... | x  x |q )
i1 j1
i2
j2
ip
jp
where i = (xi1, xi2, …, xip) and j = (xj1, xj2, …, xjp) are
two p-dimensional data objects, and q is a positive
integer

If q = 1, d is Manhattan distance
d (i, j) | x  x |  | x  x | ... | x  x |
i1 j1 i2 j 2
i p jp
April 29, 2017
Data Mining: Concepts and Techniques
133
Similarity and Dissimilarity Between
Objects (Cont.)

If q = 2, d is Euclidean distance:
d (i, j)  (| x  x |2  | x  x |2 ... | x  x |2 )
i1
j1
i2
j2
ip
jp

Properties





d(i,j)  0
d(i,i) = 0
d(i,j) = d(j,i)
d(i,j)  d(i,k) + d(k,j)
Also, one can use weighted distance, parametric
Pearson product moment correlation, or other
disimilarity measures
April 29, 2017
Data Mining: Concepts and Techniques
134
Binary Variables
Object j


1
0
A contingency table for binary
1
a
b
Object i
data
0
c
d
sum a  c b  d
Distance measure for
symmetric binary variables:

Distance measure for
asymmetric binary variables:

Jaccard coefficient (similarity
measure for asymmetric
d (i, j) 
d (i, j) 
April 29, 2017
bc
a bc  d
bc
a bc
simJaccard (i, j) 
binary variables):
Data Mining: Concepts and Techniques
sum
a b
cd
p
a
a b c
135
Dissimilarity between Binary Variables

Example
Name
Jack
Mary
Jim



Gender
M
F
M
Fever
Y
Y
Y
Cough
N
N
P
Test-1
P
P
N
Test-2
N
N
N
Test-3
N
P
N
Test-4
N
N
N
gender is a symmetric attribute
the remaining attributes are asymmetric binary
let the values Y and P be set to 1, and the value N be set to 0
01
 0.33
2 01
11
d ( jack , jim ) 
 0.67
111
1 2
d ( jim , mary ) 
 0.75
11 2
d ( jack , mary ) 
April 29, 2017
Data Mining: Concepts and Techniques
136
Nominal Variables


A generalization of the binary variable in that it can take
more than 2 states, e.g., red, yellow, blue, green
Method 1: Simple matching

m: # of matches, p: total # of variables
m
d (i, j)  p 
p

Method 2: use a large number of binary variables

creating a new binary variable for each of the M
nominal states
April 29, 2017
Data Mining: Concepts and Techniques
137
Ordinal Variables

An ordinal variable can be discrete or continuous

Order is important, e.g., rank

Can be treated like interval-scaled


replace xif by their rank
map the range of each variable onto [0, 1] by replacing
i-th object in the f-th variable by
zif

rif {1,...,M f }
rif 1

M f 1
compute the dissimilarity using methods for intervalscaled variables
April 29, 2017
Data Mining: Concepts and Techniques
138
Ratio-Scaled Variables


Ratio-scaled variable: a positive measurement on a
nonlinear scale, approximately at exponential scale,
such as AeBt or Ae-Bt
Methods:


treat them like interval-scaled variables—not a good
choice! (why?—the scale can be distorted)
apply logarithmic transformation
yif = log(xif)

treat them as continuous ordinal data treat their rank
as interval-scaled
April 29, 2017
Data Mining: Concepts and Techniques
139
Distance between Attributes


A database may contain all the six types of variables
 symmetric binary, asymmetric binary, nominal,
ordinal, interval and ratio
One may use a weighted formula to combine their
effects
 pf  1 ij( f ) d ij( f )
d (i, j) 
 pf  1 ij( f )
 f is binary or nominal:
dij(f) = 0 if xif = xjf , or dij(f) = 1 otherwise
 f is interval-based: use the normalized distance
 f is ordinal or ratio-scaled
 compute ranks rif and
r 1
z

if
 and treat zif as interval-scaled
M 1
if
f
April 29, 2017
Data Mining: Concepts and Techniques
140
Vector Objects


Vector objects: keywords in documents, gene
features in micro-arrays, etc.
Broad applications: information retrieval, biologic
taxonomy, etc.

Cosine measure

A variant: Tanimoto coefficient
April 29, 2017
Data Mining: Concepts and Techniques
141
Typical Alternatives to Calculate the Distance
between Clusters

Single link: smallest distance between an element in one cluster
and an element in the other, i.e., dis(Ki, Kj) = min(tip, tjq)

Complete link: largest distance between an element in one cluster
and an element in the other, i.e., dis(Ki, Kj) = max(tip, tjq)

Average: avg distance between an element in one cluster and an
element in the other, i.e., dis(Ki, Kj) = avg(tip, tjq)

Centroid: distance between the centroids of two clusters, i.e.,
dis(Ki, Kj) = dis(Ci, Cj)

Medoid: distance between the medoids of two clusters, i.e., dis(Ki,
Kj) = dis(Mi, Mj)

Medoid: one chosen, centrally located object in the cluster
April 29, 2017
Data Mining: Concepts and Techniques
142
Centroid, Radius and Diameter of a
Cluster (for numerical data sets)


Centroid: the “middle” of a cluster
ip
)
N
Radius: square root of average distance from any point of the
cluster to its centroid

Cm 
iN 1(t
 N (t  cm ) 2
Rm  i 1 ip
N
Diameter: square root of average mean squared distance between
all pairs of points in the cluster
 N  N (t  t ) 2
Dm  i 1 i 1 ip iq
N ( N 1)
April 29, 2017
Data Mining: Concepts and Techniques
143
PAM (Partitioning Around Medoids) (1987)

PAM (Kaufman and Rousseeuw, 1987), built in Splus

Use real object to represent the cluster



Select k representative objects arbitrarily
For each pair of non-selected object h and selected
object i, calculate the total swapping cost TCih
For each pair of i and h,



If TCih < 0, i is replaced by h
Then assign each non-selected object to the most
similar representative object
repeat steps 2-3 until there is no change
April 29, 2017
Data Mining: Concepts and Techniques
144
PAM Clustering: Total swapping cost TCih=jCjih
10
10
9
9
t
8
7
7
6
5
i
4
3
j
6
h
4
5
h
i
3
2
2
1
1
0
0
0
1
2
3
4
5
6
7
8
9
10
Cjih = d(j, h) - d(j, i)
0
1
2
3
4
5
6
7
8
9
10
Cjih = 0
10
10
9
9
h
8
8
7
j
7
6
6
i
5
5
i
4
h
4
t
j
3
3
t
2
2
1
1
0
0
0
April 29, 2017
j
t
8
1
2
3
4
5
6
7
8
9
10
0
1
2
3
4
5
6
7
8
9
CjihTechniques
= d(j, h) - d(j, t)
Cjih = d(j, t) - d(j, i) Data Mining: Concepts and
10
145
Hierarchical Clustering

Use distance matrix as clustering criteria. This method
does not require the number of clusters k as an input,
but needs a termination condition
Step 0
a
Step 1
Step 2 Step 3 Step 4
agglomerative
(AGNES)
ab
b
abcde
c
cde
d
de
e
Step 4
April 29, 2017
Step 3
Step 2 Step 1 Step 0
Data Mining: Concepts and Techniques
divisive
(DIANA)
146
AGNES (Agglomerative Nesting)

Introduced in Kaufmann and Rousseeuw (1990)

Implemented in statistical analysis packages, e.g., Splus

Use the Single-Link method and the dissimilarity matrix.

Merge nodes that have the least dissimilarity

Go on in a non-descending fashion

Eventually all nodes belong to the same cluster
10
10
10
9
9
9
8
8
8
7
7
7
6
6
6
5
5
5
4
4
4
3
3
3
2
2
2
1
1
1
0
0
0
1
2
3
April 29, 2017
4
5
6
7
8
9
10
0
0
1
2
3
4
5
6
7
8
9
10
Data Mining: Concepts and Techniques
0
1
2
3
4
5
6
7
8
9
10
147
Dendrogram: Shows How the Clusters are Merged
Decompose data objects into a several levels of nested
partitioning (tree of clusters), called a dendrogram.
A clustering of the data objects is obtained by cutting the
dendrogram at the desired level, then each connected
component forms a cluster.
April 29, 2017
Data Mining: Concepts and Techniques
148
DIANA (Divisive Analysis)

Introduced in Kaufmann and Rousseeuw (1990)

Implemented in statistical analysis packages, e.g., Splus

Inverse order of AGNES

Eventually each node forms a cluster on its own
10
10
10
9
9
9
8
8
8
7
7
7
6
6
6
5
5
5
4
4
4
3
3
3
2
2
2
1
1
1
0
0
0
0
1
2
April 29, 2017
3
4
5
6
7
8
9
10
0
1
2
3
4
5
6
7
8
9
10
Data Mining: Concepts and Techniques
0
1
2
3
4
5
6
7
8
9
10
149
Sparsification in the Clustering Process



Keep the connections to the most similar
(nearest) neighbors of a point
Reduces the impact of noise and outliers and
sharpens the distinction between clusters.
Facilitates the use of graph partitioning
algorithms
Characteristics of Spatial Data Sets
• Clusters are defined as densely populated
regions of the space
• Clusters have arbitrary shapes, orientation,
and non-uniform sizes
• Difference in densities across clusters and
variation in density within clusters
• Existence of special artifacts (streaks) and
noise
The clustering algorithm must address
the above characteristics and also
require minimal supervision.
DBSCAN: Core, Border, and Noise Points
OPTICS: A Cluster-Ordering Method (1999)

OPTICS: Ordering Points To Identify the Clustering
Structure
 Ankerst, Breunig, Kriegel, and Sander (SIGMOD’99)
 Produces a special order of the database wrt its
density-based clustering structure
 This cluster-ordering contains info equiv to the densitybased clusterings corresponding to a broad range of
parameter settings
 Good for both automatic and interactive cluster analysis,
including finding intrinsic clustering structure
 Can be represented graphically or using visualization
techniques
April 29, 2017
Data Mining: Concepts and Techniques
153
OPTICS: Some Extension from
DBSCAN

Index-based:
 k = number of dimensions
 N = 20
 p = 75%
 M = N(1-p) = 5

D
Complexity: O(kN2)

Core Distance
p1

Reachability Distance
o
p2
Max (core-distance (o), d (o, p))
r(p1, o) = 2.8cm. r(p2,o) = 4cm
April 29, 2017
o
MinPts = 5
e = 3 cm
Data Mining: Concepts and Techniques
154
Reachability
-distance
undefined
e
e‘
April 29, 2017
e
Data Mining: Concepts and Techniques
Cluster-order
of the objects
155
Density-Based Clustering: OPTICS & Its Applications
April 29, 2017
Data Mining: Concepts and Techniques
156
Denclue: Technical Essence





Uses grid cells but only keeps information about grid
cells that do actually contain data points and manages
these cells in a tree-based access structure
Influence function: describes the impact of a data point
within its neighborhood
Overall density of the data space can be calculated as
the sum of the influence function of all data points
Clusters can be determined mathematically by
identifying density attractors
Density attractors are local maximal of the overall
density function
April 29, 2017
Data Mining: Concepts and Techniques
157
Density Attractor
April 29, 2017
Data Mining: Concepts and Techniques
158
Center-Defined and Arbitrary
April 29, 2017
Data Mining: Concepts and Techniques
159
Different Aspects of Cluster Validation
1.
2.
3.
Determining the clustering tendency of a set of data, i.e.,
distinguishing whether non-random structure actually exists in the
data.
Comparing the results of a cluster analysis to externally known
results, e.g., to externally given class labels.
Evaluating how well the results of a cluster analysis fit the data
without reference to external information.
- Use only the data
4.
5.
Comparing the results of two different sets of cluster analyses to
determine which is better.
Determining the ‘correct’ number of clusters.
For 2, 3, and 4, we can further distinguish whether we want to
evaluate the entire clustering or just individual clusters.
Using Similarity Matrix for Cluster Validation
1
0.9
500
1
2
0.8
6
0.7
1000
3
0.6
4
1500
0.5
0.4
2000
0.3
5
0.2
2500
0.1
7
3000
DBSCAN
500
1000
1500
2000
2500
3000
0
Framework for Cluster Validity

Need a framework to interpret any measure.


For example, if our measure of evaluation has the value, 10, is that
good, fair, or poor?
Statistics provide a framework for cluster validity


The more “atypical” a clustering result is, the more likely it represents
valid structure in the data
Can compare the values of an index that result from random data or
clusterings to those of a clustering result.



If the value of the index is unlikely, then the cluster results are valid
These approaches are more complicated and harder to understand.
For comparing the results of two different sets of cluster
analyses, a framework is less necessary.

However, there is the question of whether the difference between two
index values is significant
DENCLUE: Using Statistical Density
Functions

DENsity-based CLUstEring by Hinneburg & Keim (KDD’98)

Using statistical density functions:
f Gaussian ( x, y)  e
f

D
Gaussian
f
Major features
( x) 
d ( x , y )2
2 2

N
i 1

e
d ( x , xi ) 2
2
2
( x, xi )  i 1 ( xi  x)  e
D
Gaussian

Solid mathematical foundation

Good for data sets with large amounts of noise


N

d ( x , xi ) 2
2 2
Allows a compact mathematical description of arbitrarily shaped
clusters in high-dimensional data sets

Significant faster than existing algorithm (e.g., DBSCAN)

But needs a large number of parameters
April 29, 2017
Data Mining: Concepts and Techniques
163
Clustering High-Dimensional Data


Clustering high-dimensional data

Many applications: text documents, DNA micro-array data

Major challenges:

Many irrelevant dimensions may mask clusters

Distance measure becomes meaningless—due to equi-distance

Clusters may exist only in some subspaces
Methods

Feature transformation: only effective if most dimensions are relevant


Feature selection: wrapper or filter approaches


PCA & SVD useful only when features are highly correlated/redundant
useful to find a subspace where the data have nice clusters
Subspace-clustering: find clusters in all the possible subspaces

April 29, 2017
CLIQUE, ProClus, and frequent pattern-based clustering
Data Mining: Concepts and Techniques
164
The Curse of Dimensionality
(graphs adapted from Parsons et al. KDD Explorations 2004)




Data in only one dimension is relatively
packed
Adding a dimension “stretch” the
points across that dimension, making
them further apart
Adding more dimensions will make the
points further apart—high dimensional
data is extremely sparse
Distance measure becomes
meaningless—due to equi-distance
April 29, 2017
Data Mining: Concepts and Techniques
165
Why Subspace Clustering?
(adapted from Parsons et al. SIGKDD Explorations 2004)
April 29, 2017

Clusters may exist only in some subspaces

Subspace-clustering: find clusters in all the subspaces
Data Mining: Concepts and Techniques
166
CLIQUE (Clustering In QUEst)



Agrawal, Gehrke, Gunopulos, Raghavan (SIGMOD’98)
Automatically identifying subspaces of a high dimensional data space
that allow better clustering than original space
CLIQUE can be considered as both density-based and grid-based




It partitions each dimension into the same number of equal length
interval
It partitions an m-dimensional data space into non-overlapping
rectangular units
A unit is dense if the fraction of total data points contained in the
unit exceeds the input model parameter
A cluster is a maximal set of connected dense units within a
subspace
April 29, 2017
Data Mining: Concepts and Techniques
167
CLIQUE: The Major Steps



Partition the data space and find the number of points that
lie inside each cell of the partition.
Identify the subspaces that contain clusters using the
Apriori principle
Identify clusters



Determine dense units in all subspaces of interests
Determine connected dense units in all subspaces of
interests.
Generate minimal description for the clusters
 Determine maximal regions that cover a cluster of
connected dense units for each cluster
 Determination of minimal cover for each cluster
April 29, 2017
Data Mining: Concepts and Techniques
168
40
50
20
30
40
50
age
60
Vacation
=3
30
Vacation
(week)
0 1 2 3 4 5 6 7
Salary
(10,000)
0 1 2 3 4 5 6 7
20
age
60
30
50
age
April 29, 2017
Data Mining: Concepts and Techniques
169
Strength and Weakness of CLIQUE

Strength


automatically finds subspaces of the highest
dimensionality such that high density clusters exist in
those subspaces
 insensitive to the order of records in input and does not
presume some canonical data distribution
 scales linearly with the size of input and has good
scalability as the number of dimensions in the data
increases
Weakness
 The accuracy of the clustering result may be degraded
at the expense of simplicity of the method
April 29, 2017
Data Mining: Concepts and Techniques
170
Frequent Pattern-Based Approach

Clustering high-dimensional space (e.g., clustering text documents,
microarray data)

Projected subspace-clustering: which dimensions to be projected
on?


CLIQUE, ProClus

Feature extraction: costly and may not be effective?

Using frequent patterns as “features”

“Frequent” are inherent features

Mining freq. patterns may not be so expensive
Typical methods

Frequent-term-based document clustering

Clustering by pattern similarity in micro-array data (pClustering)
April 29, 2017
Data Mining: Concepts and Techniques
171
Clustering by Pattern Similarity (p-Clustering)

Right: The micro-array “raw” data
shows 3 genes and their values in a
multi-dimensional space


Difficult to find their patterns
Bottom: Some subsets of dimensions
form nice shift and scaling patterns
April 29, 2017
Data Mining: Concepts and Techniques
172
Why p-Clustering?

Microarray data analysis may need to

Clustering on thousands of dimensions (attributes)

Discovery of both shift and scaling patterns

Clustering with Euclidean distance measure? — cannot find shift patterns

Clustering on derived attribute Aij = ai – aj? — introduces N(N-1) dimensions

Bi-cluster using transformed mean-squared residue score matrix (I, J)

1
d 
d
ij | J |  ij
jJ
d

1
 d
| I | i  I ij
d

1
d

| I || J | i  I , j  J ij

Where

A submatrix is a δ-cluster if H(I, J) ≤ δ for some δ > 0
Ij
IJ
Problems with bi-cluster

No downward closure property,

Due to averaging, it may contain outliers but still within δ-threshold
April 29, 2017
Data Mining: Concepts and Techniques
173
p-Clustering: Clustering
by Pattern Similarity

Given object x, y in O and features a, b in T, pCluster is a 2 by 2
matrix
d xa d xb 
pScore( 
) | (d xa  d xb )  (d ya  d yb ) |

d ya d yb 


A pair (O, T) is in δ-pCluster if for any 2 by 2 matrix X in (O, T),
pScore(X) ≤ δ for some δ > 0
Properties of δ-pCluster




Downward closure
Clusters are more homogeneous than bi-cluster (thus the name:
pair-wise Cluster)
Pattern-growth algorithm has been developed for efficient mining
d
/d
ya
For scaling patterns, one can observe, taking logarithmic on xa

d xb / d yb
will lead to the pScore form
April 29, 2017
Data Mining: Concepts and Techniques
174
Chapter 6. Cluster Analysis
1. What is Cluster Analysis?
2. Types of Data in Cluster Analysis
3. A Categorization of Major Clustering Methods
4. Partitioning Methods
5. Hierarchical Methods
6. Density-Based Methods
7. Grid-Based Methods
8. Model-Based Methods
9. Clustering High-Dimensional Data
10. Constraint-Based Clustering
11. Outlier Analysis
12. Summary
April 29, 2017
Data Mining: Concepts and Techniques
175
Grid-Based Clustering Method

Using multi-resolution grid data structure

Several interesting methods


STING (a STatistical INformation Grid approach) by Wang,
Yang and Muntz (1997)
WaveCluster by Sheikholeslami, Chatterjee, and Zhang
(VLDB’98)


A multi-resolution clustering approach using wavelet
method
CLIQUE: Agrawal, et al. (SIGMOD’98)

April 29, 2017
On high-dimensional data (thus put in the section of clustering
high-dimensional data
Data Mining: Concepts and Techniques
176
STING: A Statistical Information Grid Approach



Wang, Yang and Muntz (VLDB’97)
The spatial area area is divided into rectangular cells
There are several levels of cells corresponding to different
levels of resolution
April 29, 2017
Data Mining: Concepts and Techniques
177
The STING Clustering Method






Each cell at a high level is partitioned into a number of
smaller cells in the next lower level
Statistical info of each cell is calculated and stored
beforehand and is used to answer queries
Parameters of higher level cells can be easily calculated from
parameters of lower level cell
 count, mean, s, min, max
 type of distribution—normal, uniform, etc.
Use a top-down approach to answer spatial data queries
Start from a pre-selected layer—typically with a small
number of cells
For each cell in the current level compute the confidence
interval
April 29, 2017
Data Mining: Concepts and Techniques
178
Comments on STING




Remove the irrelevant cells from further consideration
When finish examining the current layer, proceed to the
next lower level
Repeat this process until the bottom layer is reached
Advantages:



Query-independent, easy to parallelize, incremental
update
O(K), where K is the number of grid cells at the lowest
level
Disadvantages:
 All the cluster boundaries are either horizontal or
vertical, and no diagonal boundary is detected
April 29, 2017
Data Mining: Concepts and Techniques
179
WaveCluster: Clustering by Wavelet Analysis (1998)



Sheikholeslami, Chatterjee, and Zhang (VLDB’98)
A multi-resolution clustering approach which applies wavelet
transform to the feature space
How to apply wavelet transform to find clusters

Summarizes the data by imposing a multidimensional grid
structure onto data space

These multidimensional spatial data objects are represented in a
n-dimensional feature space

Apply wavelet transform on feature space to find the dense
regions in the feature space

Apply wavelet transform multiple times which result in clusters at
different scales from fine to coarse
April 29, 2017
Data Mining: Concepts and Techniques
180
Wavelet Transform



Wavelet transform: A signal processing technique that
decomposes a signal into different frequency sub-band
(can be applied to n-dimensional signals)
Data are transformed to preserve relative distance
between objects at different levels of resolution
Allows natural clusters to become more distinguishable
April 29, 2017
Data Mining: Concepts and Techniques
181
The WaveCluster Algorithm




Input parameters
 # of grid cells for each dimension
 the wavelet, and the # of applications of wavelet transform
Why is wavelet transformation useful for clustering?
 Use hat-shape filters to emphasize region where points cluster,
but simultaneously suppress weaker information in their
boundary
 Effective removal of outliers, multi-resolution, cost effective
Major features:
 Complexity O(N)
 Detect arbitrary shaped clusters at different scales
 Not sensitive to noise, not sensitive to input order
 Only applicable to low dimensional data
Both grid-based and density-based
April 29, 2017
Data Mining: Concepts and Techniques
182
Quantization
& Transformation

First, quantize data into m-D grid
structure, then wavelet transform
 a) scale 1: high resolution
 b) scale 2: medium resolution
 c) scale 3: low resolution
April 29, 2017
Data Mining: Concepts and Techniques
183
Chapter 7. Cluster Analysis
1. What is Cluster Analysis?
2. Types of Data in Cluster Analysis
3. A Categorization of Major Clustering Methods
4. Partitioning Methods
5. Hierarchical Methods
6. Density-Based Methods
7. Grid-Based Methods
8. Model-Based Methods
9. Clustering High-Dimensional Data
10. Constraint-Based Clustering
11. Outlier Analysis
12. Summary
April 29, 2017
Data Mining: Concepts and Techniques
184
Why Constraint-Based Cluster Analysis?


Need user feedback: Users know their applications the best
Less parameters but more user-desired constraints, e.g., an
ATM allocation problem: obstacle & desired clusters
April 29, 2017
Data Mining: Concepts and Techniques
185
A Classification of Constraints in Cluster Analysis


Clustering in applications: desirable to have user-guided
(i.e., constrained) cluster analysis
Different constraints in cluster analysis:
 Constraints on individual objects (do selection first)


Constraints on distance or similarity functions


Weighted functions, obstacles (e.g., rivers, lakes)
Constraints on the selection of clustering parameters


Cluster on houses worth over $300K
# of clusters, MinPts, etc.
Semi-supervised: giving small training sets as
“constraints” or hints

April 29, 2017
Pair-wise constraints
Data Mining: Concepts and Techniques
186
Clustering with User-Specified Constraints



Example: Locating k delivery centers, each serving at least
m valued customers and n ordinary ones
Proposed approach
 Find an initial “solution” by partitioning the data set into
k groups and satisfying user-constraints
 Iteratively refine the solution by micro-clustering
relocation (e.g., moving δ μ-clusters from cluster Ci to
Cj) and “deadlock” handling (break the microclusters
when necessary)
 Efficiency is improved by micro-clustering
How to handle more complicated constraints?
 E.g., having approximately same number of valued
customers in each cluster?! — Can you solve it?
April 29, 2017
Data Mining: Concepts and Techniques
187
Clustering With Obstacle Objects

K-medoids is more preferable since
k-means may locate the ATM center
in the middle of a lake

Visibility graph and shortest path

Triangulation and micro-clustering

Two kinds of join indices (shortestpaths) worth pre-computation


VV index: indices for any pair of
obstacle vertices
MV index: indices for any pair of
micro-cluster and obstacle
indices
April 29, 2017
Data Mining: Concepts and Techniques
188
An Example: Clustering With Obstacle Objects
Not Taking obstacles into account
April 29, 2017
Taking obstacles into account
Data Mining: Concepts and Techniques
189
Internal Measures Based on Proximity Graph

A proximity graph based approach can also be used for
cohesion and separation.


Cluster cohesion is the sum of the weight of all links within a cluster.
Cluster separation is the sum of the weights between nodes in the cluster
and nodes outside the cluster.
cohesion
separation