Chapter 8.
Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
General Applications of Clustering
Pattern Recognition
Spatial Data Analysis
create thematic maps in GIS by clustering
feature spaces
detect spatial clusters and explain them in
spatial data mining
Image Processing
Economic Science (especially market research)
WWW
Document classification
Cluster Weblog data to discover groups of similar
access patterns
May 23, 2016
Data Mining: Concepts and Techniques
Examples of Clustering
Applications
Marketing: Help marketers discover distinct groups in
their customer bases, and then use this knowledge to
develop targeted marketing programs
Land use: Identification of areas of similar land use in
an earth observation database
Insurance: Identifying groups of motor insurance
policy holders with a high average claim cost
City-planning: Identifying groups of houses according
to their house type, value, and geographical location
Earth-quake studies: Observed earth quake epicenters
should be clustered along continent faults
May 23, 2016
Data Mining: Concepts and Techniques
What Is Good Clustering?
A good clustering method will produce high quality
clusters with
high intra-class similarity
low inter-class similarity
The quality of a clustering result depends on both the
similarity measure used by the method and its
implementation.
The quality of a clustering method is also measured
by its ability to discover some or all of the hidden
patterns.
May 23, 2016
Data Mining: Concepts and Techniques
Requirements of Clustering in Data
Mining
Scalability
Ability to deal with different types of attributes
Discovery of clusters with arbitrary shape
Minimal requirements for domain knowledge to
determine input parameters
Able to deal with noise and outliers
Insensitive to order of input records
High dimensionality
Incorporation of user-specified constraints
Interpretability and usability
May 23, 2016
Data Mining: Concepts and Techniques
Chapter 8. Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
Data Structures
Data matrix
(two modes)
x11
...
x
i1
...
x
n1
...
x1f
...
x1p
...
...
...
...
xif
...
...
xip
...
...
... xnf
...
...
...
xnp
d(2,1)
0
Dissimilarity matrix
d(3,1) d ( 3,2) 0
(one mode)
:
:
:
d ( n,1) d ( n,2) ...
May 23, 2016
Data Mining: Concepts and Techniques
... 0
8
Measure the Quality of
Clustering
Dissimilarity/Similarity metric: Similarity is expressed
in terms of a distance function, which is 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 and ratio 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.
May 23, 2016
Data Mining: Concepts and Techniques
Type of data in clustering analysis
Interval-scaled variables:
Binary variables:
Nominal, ordinal, and ratio variables:
Variables of mixed types:
May 23, 2016
Data Mining: Concepts and Techniques
10
Interval-valued variables
Standardize data
Calculate the mean absolute deviation:
s f 1n (| x1 f m f | | x2 f m f | ... | xnf m f |)
where
...
xnf )
Calculate the standardized measurement (zscore)
m f 1n (x1 f x2 f
xif m f
zif
sf
Using mean absolute deviation is more robust than
using standard deviation
May 23, 2016
Data Mining: Concepts and Techniques
11
Similarity and Dissimilarity
Between Objects
Distances are normally used to measure the
similarity or dissimilarity between two data
objects
q
q
Some popular
d (i, j) q (| ones
x x |include:
| x x Minkowski
| q ... | x x |distance:
)
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 isd (iManhattan
, j) | x x | |distance
x x | ... | x x |
May 23, 2016
i1
j1
i2
j2
Data Mining: Concepts and Techniques
ip
jp
12
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.
May 23, 2016
Data Mining: Concepts and Techniques
13
Binary Variables
A contingency table for binary data
Object j
Object i
1
0
1
a
c
0
b
d
sum a c b d
sum
a b
cd
p
Simple matching coefficient (invariant, if the
bc
a bc d
Jaccard coefficient (noninvariant if the binary
binary variable is symmetric):
d (i, j)
variable is asymmetric):
d (i, j)
May 23, 2016
bc
a bc
Data Mining: Concepts and Techniques
14
A binary variable is symmetric if both of its
states are equally valuable, that is, there is
no preference on which outcome should be
coded as 1.
A binary variable is asymmetric if the
outcome of the states are not equally
important, such as positive or negative
outcomes of a disease test.
Similarity that is based on symmetric binary
variables is called invariant similarity.
May 23, 2016
Data Mining: Concepts and Techniques
15
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
setdto
0 , mary ) 0 1 0.33
( jack
2 01
11
d ( jack , jim )
0.67
111
1 2
d ( jim , mary )
0.75
11 2
May 23, 2016
Data Mining: Concepts and Techniques
16
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
May 23, 2016
Data Mining: Concepts and Techniques
17
Ordinal Variables
An ordinal variable can be discrete or continuous
order is important, e.g., rank
Can be treated like interval-scaled
rif {1,..., M f }
replacing x
if by their rank
map the range of each variable onto [0, 1] by
replacing i-th object in the f-th variable by
rif 1
zif
M f 1
compute the dissimilarity using methods for
interval-scaled variables
May 23, 2016
Data Mining: Concepts and Techniques
18
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
apply logarithmic transformation
yif = log(xif)
treat them as continuous ordinal data treat their
rank as interval-scaled.
May 23, 2016
Data Mining: Concepts and Techniques
19
Variables of Mixed
Types
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.
p
(f)
(f)
f 1 ij dij
d (i, j )
pf 1 ij( f )
f is binary or nominal:
dij(f) = 0 if xif = xjf , or dij(f) = 1 o.w.
f is interval-based: use the normalized distance
f is ordinal or ratio-scaled
compute ranks r and
if
r 1
May 23, 2016
zif
if
and treat zif as interval-scaled
M
Data Mining: Concepts and Techniques
20
Chapter 8. Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
21
Major Clustering Approaches
Partitioning algorithms: Construct various partitions and
then evaluate them by some criterion
Hierarchy algorithms: Create a hierarchical decomposition
of the set of data (or objects) using some criterion
Density-based: based on connectivity and density
functions
Grid-based: based on a multiple-level granularity structure
Model-based: A model is hypothesized for each of the
clusters and the idea is to find the best fit of that model to
each other
May 23, 2016
Data Mining: Concepts and Techniques
22
Chapter 8. Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
23
Partitioning Algorithms: Basic
Concept
Partitioning method: Construct a partition of a database
D of n objects into a set of k clusters
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 (MacQueen67): Each cluster is represented
by the center of the cluster
k-medoids or PAM (Partition around medoids)
(Kaufman & Rousseeuw87): Each cluster is
represented by one of the objects in the cluster
May 23, 2016
Data Mining: Concepts and Techniques
24
The K-Means Clustering Method
Given k, the k-means algorithm is implemented
in 4 steps:
Partition objects into k nonempty subsets
Compute seed points as the centroids of the
clusters of the current partition. The
centroid is the center (mean point) of the
cluster.
Assign each object to the cluster with the
nearest seed point.
Go back to Step 2, stop when no more new
assignment.
May 23, 2016
Data Mining: Concepts and Techniques
25
The K-Means Clustering Method
Example
10
10
0
0
10
10
10
10
0
0
May 23, 2016
10
Data Mining: Concepts and Techniques
10
26
Comments on the K-Means Method
Strength
Relatively efficient: O(tkn), where n is # objects, k is
# clusters, and t is # iterations. Normally, k, t << n.
Often terminates at a local optimum.
Weakness
Applicable only when mean is defined, then what
about categorical data?
Need to specify k, the number of clusters, in
advance
Unable to handle noisy data and outliers
Not suitable to discover clusters with non-convex
shapes
May 23, 2016
Data Mining: Concepts and Techniques
27
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 (Huang98)
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: kprototype method
May 23, 2016
Data Mining: Concepts and Techniques
28
The K-Medoids Clustering Method
Find representative objects, called medoids, in clusters
PAM (Partitioning Around Medoids, 1987)
starts from an initial set of medoids and iteratively
replaces one of the medoids by one of the nonmedoids if it improves the total distance of the
resulting clustering
PAM works effectively for small data sets, but does
not scale well for large data sets
CLARA (Kaufmann & Rousseeuw, 1990)
CLARANS (Ng & Han, 1994): Randomized sampling
Focusing + spatial data structure (Ester et al., 1995)
May 23, 2016
Data Mining: Concepts and Techniques
29
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
May 23, 2016
Data Mining: Concepts and Techniques
30
PAM Clustering: Total swapping cost
TCih=jCjih
10
10
8
7
6
5
4
3
6
5
h
i
4
3
0
0
10
Cjih = d(j, h) - d(j, i)
Cjih = 0
0
10
10
10
7
6
5
7
6
4
3
Cjih = d(j, t) - d(j, i)
0
May 23, 2016
10
Cjih = d(j, h) - d(j, t)
0
Data Mining: Concepts and Techniques
10
31
CLARA (Clustering Large Applications)
(1990)
CLARA (Kaufmann and Rousseeuw in 1990)
Built in statistical analysis packages, such as S+
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
May 23, 2016
Data Mining: Concepts and Techniques
32
CLARANS (Randomized CLARA)
(1994)
CLARANS (A Clustering Algorithm based on Randomized
Search) (Ng and Han94)
CLARANS draws sample of neighbors dynamically
The clustering process can be presented as searching a
graph where every node is a potential solution, that is, a
set of k medoids
If the local optimum is found, CLARANS starts with new
randomly selected node in search for a new local optimum
It is more efficient and scalable than both PAM and CLARA
Focusing techniques and spatial access structures may
further improve its performance (Ester et al.95)
May 23, 2016
Data Mining: Concepts and Techniques
33
Chapter 8. Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
34
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
b
Step 1
Step 2 Step 3 Step 4
ab
abcde
cde
de
e
Step 4
May 23, 2016
agglomerative
(AGNES)
Step 3
Step 2 Step 1 Step 0
Data Mining: Concepts and Techniques
divisive
(DIANA)
35
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
10
10
10
Eventually all nodes belong to the same cluster
0
0
May 23, 2016
10
0
0
10
Data Mining: Concepts and Techniques
10
36
A Dendrogram Shows How the
Clusters are Merged Hierarchically
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.
May 23, 2016
Data Mining: Concepts and Techniques
37
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
0
0
May 23, 2016
10
0
0
10
Data Mining: Concepts and Techniques
10
38
Agglomerative Clustering
Algorithm
Basic algorithm is straightforward
1. Compute the proximity matrix
2. Let each data point be a cluster
3. Repeat
4. Merge the two closest clusters
5. Update the proximity matrix
6. Until only a single cluster remains
May 23, 2016
Data Mining: Concepts and Techniques
39
More on Hierarchical Clustering
Methods
Major weakness of agglomerative clustering methods
do not scale well: time complexity of at least O(n2),
where n is the number of total objects
can never undo what was done previously
Integration of hierarchical with distance-based
clustering
BIRCH (1996): uses CF-tree and incrementally
adjusts the quality of sub-clusters
CURE (1998): selects well-scattered points from the
cluster and then shrinks them towards the center of
the cluster by a specified fraction
CHAMELEON (1999): hierarchical clustering using
dynamic modeling
May 23, 2016
Data Mining: Concepts and Techniques
40
Chapter 8. Cluster Analysis
What is Cluster Analysis?
Types of Data in Cluster Analysis
A Categorization of Major Clustering Methods
Partitioning Methods
Hierarchical Methods
Density-Based Methods
Grid-Based Methods
Model-Based Clustering Methods
Outlier Analysis
Summary
May 23, 2016
Data Mining: Concepts and Techniques
41
Density-Based Clustering
Methods
Clustering
based on density (local cluster criterion),
such as density-connected points
Major features:
Discover clusters of arbitrary shape
Handle noise
One scan
Need density parameters as termination
condition
Several interesting studies:
DBSCAN: Ester, et al. (KDD96)
OPTICS: Ankerst, et al (SIGMOD99).
DENCLUE: Hinneburg & D. Keim (KDD98)
CLIQUE: Agrawal, et al. (SIGMOD98)
May 23, 2016
Data Mining: Concepts and Techniques
42
Density-Based Clustering:
Background
Two parameters:
Eps: Maximum 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}
Directly density-reachable: A point p is directly
density-reachable from a point q wrt. Eps, MinPts if
1) p belongs to NEps(q)
2) core point condition:
p
q
MinPts = 5
Eps = 1 cm
|NEps (q)| >= MinPts
May 23, 2016
Data Mining: Concepts and Techniques
43
Density-Based Clustering:
Background (II)
Density-reachable:
Density-connected
A point p is density-reachable
from a point q wrt. Eps, MinPts if
there is a chain of points p1, ,
pn, p1 = q, pn = p such that pi+1 is
directly density-reachable from pi
A point p is density-connected to
a point q wrt. Eps, MinPts if there
is a point o such that both, p and
q are density-reachable from o
wrt. Eps and MinPts.
May 23, 2016
p1
Data Mining: Concepts and Techniques
q
o
44
DBSCAN: Density Based Spatial
Clustering of Applications with
Noise
Relies on a density-based notion of cluster: A
cluster is defined as a maximal set of densityconnected points
Discovers clusters of arbitrary shape in spatial
databases with noise
Outlier
Border
Eps = 1cm
Core
May 23, 2016
MinPts = 5
Data Mining: Concepts and Techniques
45
DBSCAN: The Algorithm
Arbitrary select a point p
Retrieve all points density-reachable from p wrt
Eps and MinPts.
If p is a core point, a cluster is formed.
If p is a border point, no points are densityreachable from p and DBSCAN visits the next
point of the database.
Continue the process until all of the points have
been processed.
May 23, 2016
Data Mining: Concepts and Techniques
46
OPTICS: A Cluster-Ordering Method
(1999)
OPTICS: Ordering Points To Identify the Clustering
Structure
Ankerst, Breunig, Kriegel, and Sander (SIGMOD99)
Produces a special order of the database wrt its
density-based clustering structure
This cluster-ordering contains info equiv to the
density-based 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
May 23, 2016
Data Mining: Concepts and Techniques
47
OPTICS: Some Extension from
DBSCAN
Index-based:
k = number of dimensions
N = 20
p = 75%
M = N(1-p) = 5
Complexity: O(kN2)
Core Distance
Reachability Distancep2
Max (core-distance (o), d (o, p))
r(p1, o) = 2.8cm. r(p2,o) = 4cm
May 23, 2016
p1
o
o
MinPts = 5
= 3 cm
Data Mining: Concepts and Techniques
48
Reachability
-distance
undefined
May 23, 2016
Data Mining: Concepts and Techniques
Cluster-order
of the objects
49
DENCLUE: using density
functions
DENsity-based CLUstEring by Hinneburg & Keim
(KDD98)
Major features
Solid mathematical foundation
Good for data sets with large amounts of noise
Allows a compact mathematical description of
arbitrarily shaped clusters in high-dimensional data
sets
Significant faster than existing algorithm (faster
than DBSCAN by a factor of up to 45)
But needs a large number of parameters
May 23, 2016
Data Mining: Concepts and Techniques
50
What Is Outlier Discovery?
What are outliers?
The set of objects are considerably dissimilar
from the remainder of the data
Example: Sports: Michael Jordon, Wayne
Gretzky, ...
Problem
Find top n outlier points
Applications:
Credit card fraud detection
Telecom fraud detection
Customer segmentation
Medical analysis
May 23, 2016
Data Mining: Concepts and Techniques
51
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
May 23, 2016
Data Mining: Concepts and Techniques
52