Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer...

81
DM534 Arthur Zimek Color Histograms as Feature Spaces for Representation of Images A First Glimpse on Clustering References Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1

Transcript of Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer...

Page 1: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

ReferencesIntroduction to Computer Science

Arthur Zimek

University of Southern Denmark

DM534, fall 2020

1

Page 2: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on Clustering

2

Page 3: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Outline

Color Histograms as Feature Spaces for Representation of ImagesDistancesFeatures for ImagesSummary

A First Glimpse on Clustering

3

Page 4: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Outline

Color Histograms as Feature Spaces for Representation of ImagesDistancesFeatures for ImagesSummary

A First Glimpse on Clustering

4

Page 5: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Similarity

I Similarity (as given by some distance measure) is acentral concept in data mining, e.g.:I clustering: group similar objects in the same cluster,

separate dissimilar objects to different clustersI outlier detection: identify objects that are dissimilar (by

some characteristic) from most other objectsI definition of a suitable distance measure is often crucial

for deriving a meaningful solution in the data miningtask

I images

I CAD objects

I proteins

I texts

I . . .5

Page 6: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Spaces and Distance Functions

Common distance measure for (Euclidean) feature vectors:LP-norm

distP(p, q) =(|p1 − q1|P + |p2 − q2|P + . . .+ |pn − qn|P

) 1P

Euclidean norm(L2):

Manhattan norm(L1):

Maximum norm(L∞, also: Lmax,supremum dist.,Chebyshev dist.)

6

Page 7: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Spaces and Distance Functions

weighted Euclidean norm:dist(p, q) =

(w1|p1 − q1|2+

w2|p2 − q2|2 + . . .+ wn|pn − qn|2) 1

2

quadratic form*:dist(p, q) =((p− q)M(p− q)T)

12

*note that we assume vectors to be row vectors here

7

Page 8: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Outline

Color Histograms as Feature Spaces for Representation of ImagesDistancesFeatures for ImagesSummary

A First Glimpse on Clustering

8

Page 9: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Categories of Feature Descriptors for Images

I distribution of colorsI textureI shapes (contoures)

9

Page 10: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Color Histogram

I a histogram represents the distribution of colors overthe pixels of an image

I definition of an color histogram:I choose a color space (RGB, HSV, HLS, . . . )I choose number of representants (sample points) in the

color spaceI possibly normalization (to account for different image

sizes)

10

Page 11: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Color Space Example: RGB cube

11

Page 12: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

original images in full RGB space (2563 = 16, 777, 216)

12

Page 13: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

23 33

43 163

13

Page 14: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

23 33

43 163

14

Page 15: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

23 33

43 163

15

Page 16: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

23 33

43 163

16

Page 17: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

The histogram for each image is essentially a visualizationof a vector:(0.77, 0, 0, 0, 0.08, 0, 0.15, 0) (0.8, 0, 0, 0, 0.11, 0, 0.09, 0)(0.9, 0, 0, 0, 0.05, 0, 0.05, 0) (0.955, 0, 0, 0, 0.045, 0, 0, 0)

17

Page 18: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

17

Page 19: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Impact of Number of Representants

17

Page 20: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Distances for Color Histograms

Euclidean distance for images P and Q using the colorhistograms hP and hQ:

dist(P,Q) =√

(hP − hQ) · (hP − hQ)T

(1, 0, 0) (0, 1, 0) (0, 0, 1)

dist(RED,PINK) =√

2

dist(RED,BLUE) =√

2

dist(BLUE,PINK) =√

2

A ‘psychologic’ distance would consider that red is (in ourperception) more similar to pink than to blue.

18

Page 21: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Example for the Distance Computation ofHistograms

dist(P,Q) =√(hP − hQ) · (hP − hQ)T

dist(RED,PINK) =√

((1, 0, 0)− (0, 1, 0)) · ((1, 0, 0)− (0, 1, 0))T

=√

(1,−1, 0) · (1,−1, 0)T

=√(1 · 1 + (−1) · (−1) + 0 · 0)

=√

2

19

Page 22: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Distances for Color Histograms

Quadratic form with ‘psychological’ similarity matrix

A =

1 a12 . . .

a21 1 . . ....

. . ....

. . . 1

where aij ( ?= aji) describe the

subjective similarity of the features i and j in the colorhistogram:

distA(P,Q) =√(hP − hQ) · A · (hP − hQ)T

A′ =

1 0.9 00.9 1 00 0 1

dist(RED,PINK) =√

0.2

dist(RED,BLUE) =√

2

dist(BLUE,PINK) =√

220

Page 23: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Outline

Color Histograms as Feature Spaces for Representation of ImagesDistancesFeatures for ImagesSummary

A First Glimpse on Clustering

21

Page 24: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Your Choice of a Distance Measure

There are hundreds of distance functions [Deza and Deza,2009].I For time series: DTW, EDR, ERP, LCSS, . . .I For texts: Cosine and normalizationsI For sets – based on intersection, union, . . . (Jaccard)I For clusters (single-link, average-link, etc.)I For histograms: histogram intersection, “Earth movers

distance”, quadratic forms with color similarityI With normalization: Canberra, . . .I Quadratic forms / bilinear forms: d(x, y) := xTMy for

some positive (usually symmetric) definite matrix M.

Note that:Choosing the appropriate distance function can be seen asa part of “preprocessing”.

22

Page 25: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

Distances

Features for Images

Summary

A First Glimpse onClustering

References

Summary

You learned in this section:I distances (Lp-norms, weighted, quadratic form)I color histograms as feature (vector) descriptors for

imagesI impact of the granularity of color histograms on

similarity measures

23

Page 26: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

24

Page 27: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

25

Page 28: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Purpose of Clustering

I identify a finite number of categories (classes, groups:clusters) in a given dataset

I similar objects shall be grouped in the same cluster,dissimilar objects in different clusters

I “similarity” is highly subjective, depending on theapplication scenario

26

Page 29: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

A Dataset can be Clustered in DifferentMeaningful Ways

(Figure from Tan et al. [2006].)

27

Page 30: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

28

Page 31: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Criteria of Quality: Cohesion and Separation

I cohesion: how strong are the cluster objects connected(how similar, pairwise, to each other)?

I separation: how well is a cluster separated from otherclusters?

small within cluster distances large between cluster distances

29

Page 32: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Optimization of Cohesion

Partitional clustering algorithms partition a dataset into kclusters, typically minimizing some cost function(compactness criterion), i.e., optimizing cohesion.

30

Page 33: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Assumptions for Partitioning Clustering

Central assumptions for approaches in this family aretypically:I number k of clusters known (i.e., given as input)I clusters are characterized by their compactnessI compactness measured by some distance function

(e.g., distance of all objects in a cluster from somecluster representative is minimal)

I criterion of compactness typically leads to convex oreven spherically shaped clusters

31

Page 34: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

32

Page 35: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Construction of Central Points: Basics

I objects are points x = (x1, . . . , xd) in Euclidean vectorspace Rd, dist = Euclidean distance (L2)

I centroid µC: mean vector of all points in cluster C

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

µCi =1

|Ci| ·∑

o∈Cio

33

Page 36: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Construction of Central Points: Basics

I objects are points x = (x1, . . . , xd) in Euclidean vectorspace Rd, dist = Euclidean distance (L2)

I centroid µC: mean vector of all points in cluster C

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

µCi =1

|Ci| ·∑

o∈Cio

33

Page 37: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Construction of Central Points: Basics

I measure of compactness fora cluster C:

TD2(C) =∑p∈C

dist(p, µC)2

(a.k.a. SSQ: sum ofsquares)

I measure of compactness fora clustering

TD2(C1,C2, . . . ,Ck) =

k∑i=1

TD2(Ci)

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

34

Page 38: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Construction of Central Points: Basics

I measure of compactness fora cluster C:

TD2(C) =∑p∈C

dist(p, µC)2

(a.k.a. SSQ: sum ofsquares)

I measure of compactness fora clustering

TD2(C1,C2, . . . ,Ck) =

k∑i=1

TD2(Ci)

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

34

Page 39: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Basic Algorithm [Forgy, 1965, Lloyd, 1982]

Algorithm 2.1 (Clustering by Minimization of Variance)

I start with k (e.g., randomly selected) points as clusterrepresentatives (or with a random partition into k“clusters”)

I repeat:I assign each point to the closest representativeI compute new representatives based on the given

partitions (centroid of the assigned points)I until there is no change in assignment

35

Page 40: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means

k-means [MacQueen, 1967] is a variant of the basicalgorithm:I a centroid is immediately updated when some point

changes its assignmentI k-means has very similar properties, but the result now

depends on the order of data points in the input file

Note that:The name “k-means” is often used indifferently for anyvariant of the basic algorithm, in particular also forAlgorithm 2.1 [Forgy, 1965, Lloyd, 1982].

36

Page 41: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

37

Page 42: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

38

Page 43: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (6.0, 4.3)

µ ≈ (5.0, 6.4)

38

Page 44: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign points

38

Page 45: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (5.0, 2.7)

µ ≈ (5.6, 7.4)

38

Page 46: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign points

38

Page 47: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (4.0, 3.25)

µ ≈ (6.75, 8.0)

38

Page 48: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign points

38

Page 49: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Lloyd/Forgy Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign points

no changeconvergence!

38

Page 50: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

39

Page 51: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 Centroids

(e.g.: fromprevious iteration):

µ ≈ (6.0, 4.3)

µ ≈ (5.0, 6.4)

39

Page 52: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign first point

39

Page 53: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign second point

39

Page 54: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (5.0, 4.0)

µ ≈ (5.75, 7.25)

39

Page 55: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign third point

39

Page 56: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (4.6, 4.0)

µ ≈ (6.7, 8.3)

39

Page 57: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign fourth point

39

Page 58: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assing fifth point

39

Page 59: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (4.0, 3.25)

µ ≈ (6.75, 8.0)

39

Page 60: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign more points

39

Page 61: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign more points

possibly more iterations

39

Page 62: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen Algorithm

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reassign more points

possibly more iterationsconvergence

39

Page 63: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112

40

Page 64: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 Centroids

(e.g.: fromprevious iteration):

µ ≈ (6.0, 4.3)

µ ≈ (5.0, 6.4)

40

Page 65: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign first point

40

Page 66: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign second point

40

Page 67: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign third point

40

Page 68: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign fourth point

40

Page 69: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (4.0, 8.5)

µ ≈ (4.3, 6.2)

40

Page 70: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 assign fifth point

40

Page 71: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 recompute centroids:

µ ≈ (10.0, 1.0)

µ ≈ (4.7, 6.3)

40

Page 72: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reasign more points

40

Page 73: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reasign more points

possibly more iterations

40

Page 74: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – MacQueen AlgorithmAlternative Run – Different Order

1 2 3 4 5 6 7 8 9 10 11 12

123456789

101112 reasign more points

possibly more iterationsconvergence

40

Page 75: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Quality

1 2 3 4 5 6 7 8 9 101112

123456789

101112

1

2

3

4

5

6 7

8

µ2

µ1

SSQ(µ1, p1) = |4− 10|2 + |3.25− 1|2 = 36 + 5 116 = 41 1

16SSQ(µ1, p2) = |4− 2|2 + |3.25− 3|2 = 4 + 1

16 = 4 116

SSQ(µ1, p3) = |4− 3|2 + |3.25− 4|2 = 1 + 916 = 1 9

16SSQ(µ1, p4) = |4− 1|2 + |3.25− 5|2 = 9 + 3 1

16 = 12 116

TD2(C1) = 58 34

SSQ(µ2, p5) = |6.75− 7|2 + |8− 7|2 = 116 + 1 = 1 1

16SSQ(µ2, p6) = |6.75− 6|2 + |8− 8|2 = 9

16 + 0 = 916

SSQ(µ2, p7) = |6.75− 7|2 + |8− 8|2 = 116 + 0 = 1

16SSQ(µ2, p8) = |6.75− 7|2 + |8− 9|2 = 1

16 + 1 = 1 116

TD2(C2) = 2 34

First solution: TD2 = 61 12

Second solution: TD2 ≈ 72.68Optimal solution: TD2 = 54 2

5

Note: SSQ(µ, p) = Euclidean(µ, p)2 = L22(µ, p).

41

Page 76: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Quality

1 2 3 4 5 6 7 8 9 101112

123456789

101112

1

2

3

4

5

6 7

8

µ2

µ1

SSQ(µ1, p1) = |10− 10|2 + |1− 1|2 = 0TD2(C1) = 0

SSQ(µ2, p2) ≈ |4.7− 2|2 + |6.3− 3|2 ≈ 18.2SSQ(µ2, p3) ≈ |4.7− 3|2 + |6.3− 4|2 ≈ 8.2SSQ(µ2, p4) ≈ |4.7− 1|2 + |6.3− 5|2 ≈ 15.4SSQ(µ2, p5) ≈ |4.7− 7|2 + |6.3− 7|2 ≈ 5.7SSQ(µ2, p6) ≈ |4.7− 6|2 + |6.3− 8|2 ≈ 4.6SSQ(µ2, p7) ≈ |4.7− 7|2 + |6.3− 8|2 ≈ 8.2SSQ(µ2, p7) ≈ |4.7− 7|2 + |6.3− 9|2 ≈ 12.6TD2(C2) ≈ 72.86

First solution: TD2 = 61 12

Second solution: TD2 ≈ 72.68

Optimal solution: TD2 = 54 25

Note: SSQ(µ, p) = Euclidean(µ, p)2 = L22(µ, p).

41

Page 77: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

k-means Clustering – Quality

1 2 3 4 5 6 7 8 9 101112

123456789

101112

1

2

3

4

5

6 7

8

µ2

µ1

SSQ(µ1, p2) = |2− 2|2 + |4− 3|2 = 0 + 1 = 1SSQ(µ1, p3) = |2− 3|2 + |4− 4|2 = 1 + 0 = 1SSQ(µ1, p4) = |2− 1|2 + |4− 5|2 = 1 + 1 = 2TD2(C1) = 4

SSQ(µ2, p1) = |7.4−10|2 +|6.6−1|2 = 6 1925 +31 9

25 = 38 325

SSQ(µ2, p5) = |7.4− 7|2 + |6.6− 7|2 = 425 + 4

25 = 825

SSQ(µ2, p6) = |7.4− 6|2 + |6.6− 8|2 = 1 2425 + 1 24

25 = 3 2325

SSQ(µ2, p7) = |7.4− 7|2 + |6.6− 8|2 = 425 + 1 24

25 = 2 325

SSQ(µ2, p8) = |7.4− 7|2 + |6.6− 9|2 = 425 + 5 19

25 = 5 2325

TD2(C2) = 50 25

First solution: TD2 = 61 12

Second solution: TD2 ≈ 72.68Optimal solution: TD2 = 54 2

5

Note: SSQ(µ, p) = Euclidean(µ, p)2 = L22(µ, p).

41

Page 78: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Outline

Color Histograms as Feature Spaces for Representation of Images

A First Glimpse on ClusteringGeneral Purpose of ClusteringPartitional ClusteringAlgorithmVisualization: Algorithmic DifferencesSummary

42

Page 79: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Discussion

prosI efficient: O(k · n) per iteration, number of iterations is

usually in the order of 10.I easy to implement, thus very popular

consI k-means converges towards a local minimumI k-means (MacQueen-variant) is order-dependentI deteriorates with noise and outliers (all points are used

to compute centroids)I clusters need to be convex and of (more or less) equal

extensionI number k of clusters is hard to determineI strong dependency on initial partition (in result quality

as well as runtime)43

Page 80: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

General Purpose ofClustering

Partitional Clustering

Algorithm

Visualization:AlgorithmicDifferences

Summary

References

Summary

You learned in this section:I What is Clustering?I Basic idea for identifying “good” partitions into k clustersI selection of representative pointsI iterative refinementI local optimumI k-means variants [Forgy, 1965, Lloyd, 1982,

MacQueen, 1967]

44

Page 81: Introduction to Computer Sciencerolf/Edu/DM534/E20/DM534-2020-fall...Introduction to Computer Science Arthur Zimek University of Southern Denmark DM534, fall 2020 1 DM534 Arthur Zimek

DM534

Arthur Zimek

Color Histograms asFeature Spaces forRepresentation ofImages

A First Glimpse onClustering

References

References I

M. M. Deza and E. Deza. Encyclopedia of Distances. Springer, 3rd edition, 2009.ISBN 9783662443415.

E. W. Forgy. Cluster analysis of multivariate data: efficiency versus interpretabilityof classifications. Biometrics, 21:768–769, 1965.

S. P. Lloyd. Least squares quantization in PCM. IEEE Transactions on InformationTheory, 28(2):129–136, 1982. doi: 10.1109/TIT.1982.1056489.

J. MacQueen. Some methods for classification and analysis of multivariateobservations. In 5th Berkeley Symposium on Mathematics, Statistics, andProbabilistics, volume 1, pages 281–297, 1967.

P.-N. Tan, M. Steinbach, and V. Kumar. Introduction to Data Mining. AddisonWesley, 2006.

45