May 31, 2017
Conquer Your Machine Learning Blues With K-Means Clustering
Clustering plays a crucial role in analyzing data, making predictions and controlling the anomalies in the datasets. Identical or correlated attributes in a dataset are classified as a group using reiterative techniques and tools to create Clusters.
While the concept of clustering appeared to turn tough for some with the advent of K-means clustering - or - vector quantization;. the enterprising welcomed K-means clustering because it is indeed one of the easiest unsupervised learning algorithms to solve the problem of clustering among datasets.
At its simplest, K means clustering is a process of classifying objects into different clusters so that they are as much familiar as possible within the group, but as much dissimilar as possible with the other groups.
Also known as vector quantization, it is a process that splits up in a special way, n observations into k clusters with each cluster belonging to the nearest mean. Alternately, K-means can also be seen as a way of creating a dictionary of k vectors in a way that any data vector (say x) can be plotted to a code vector to minimize errors in future reconstruction of the same dictionary.
K-means is a surprisingly useful Unsupervised Learning Algorithms (ULA) – something without which Machine Learning just can’t move any further now, as machines need to learn deep hierarchies, and K-means does help in the job by extracting facts and figures through training a model of unlabeled data.
An unsupervised learning problem doesn’t come with labels. Andrew Ng, chief scientist at Baidu and professor at Stanford University, explains the K-means algorithm by using a training set and further clustering the data into organized groups. Initializing with random cluster centroids (take k as the number of clusters that you want to find further allotting (mu) to cluster centroids), one could choose k training examples, randomly setting the value of cluster centroids equal to the value of k- assigning each training set to the nearest cluster centroid.
As a last step, move the cluster centroids to the mean of the points assigned to it. K-means algorithms converge, undoubtedly stabilizing the cluster centroids which is explained by Ng by a distortion function (in a distortion functions, the value of k should be such that distortion should remain constant even if the value of k is increased)
With this algorithm well defined, not moving on to its applications and experiments would be unfair. K-means clustering is computationally faster than traditional or hierarchical clustering while dealing with large datasets.
Some Use Cases
For example, if you are a realtor, there’s a chance that you would want to have your offices or sales teams closest to the highest-priced properties. K-means clustering can help you group these locations into clusters and define a cluster center (centroid) for each cluster, which will be the locations where you can consider opening your offices. These centroids will be at a minimum distance from all the points of a particular cluster – with locations having highest-priced properties, therefore, your properties will be at a minimum distance from all the potentially highly lucrative area within a cluster. Similarly, you can also use K-means for foot-printing locations with maximum sales action.
K-means clustering can also be applied to applications based on wireless sensor networks including landmine detection systems. Applying this algorithm in customer segmentation by assigning a real vector value to every customer and then looking at each customer separately, can be used to obtain effective results.
Lloyd’s algorithm or K-means clustering is undoubtedly one of the easiest, but also one of the most effective algorithms as well. It has the potential of solving even the more complex of clustering problems in the near future with its other subsets, e.g., parallel K-means data clustering and a lot more.
So be it IoT, artificial intelligence or even plain data science applications, K-means clustering should add to your list of skills to have, if you want to grow into bigger and more challenging roles. And remember, it’s a complicated skill that needs you to have a solid proof to show to employers that you really do know enough of the art of K-means. So just invest some time and get yourself an international data science certification.