Much of this content is based on lecture slides from slides from Professor David Barber at University College London: resources relating to this can be found at: www.cs.ucl.ac.uk/staff/D.Barber/brml
The K-means algorithm
The K-means algorithm is one of the simplest unsupervised learning* algorithms. The aim of the K-means algorithm is, given a set of observations , to group these observations into K different groups in the best way possible (‘best way’ here refers to minimising a loss/cost/objective function).
This is a clustering algorithm, where we want to assign each observation to a group that has other similar observations in it. This could be useful, for example, to split Facebook users into groups that will each be shown a different advertisement.
* unsupervised learning is performed on data without labels, i.e. we have a group of data points (scalar or vector) and we want to find something out about how this data is structured.…