-
Book Overview & Buying
-
Table Of Contents
-
Feedback & Rating

Machine Learning for OpenCV
By :

K-means clustering is but one concrete application of a more general algorithm known as expectation-maximization. In short, the algorithm works as follows:
Here, the expectation step is so named because it involves updating our expectation of which cluster each point in the dataset belongs to. The maximization step is so named because it involves maximizing a fitness function that defines the location of the cluster centers. In the case of k-means, maximization is performed by taking the arithmetic mean of all the data points in a cluster.
This should become clearer with the following figure:
Expectation-maximization step by step
In the preceding image, the algorithm works from left to right. Initially, all data points are...