Consider yourself to be in a conversation with the Chief Marketing Officer of your organization. The organization wants to understand the customers better with the help of data so that it can help its business goals and deliver a better experience to the customers. Now, this is one of the scenarios where clustering comes to the rescue.
Table of Contents
What is Clustering?
Clustering is a type of unsupervised learning method of machine learning. In the unsupervised learning method, the inferences are drawn from the data sets which do not contain labelled output variable. It is an exploratory data analysis technique that allows us to analyze the multivariate data sets.
Clustering is a task of dividing the data sets into a certain number of clusters in such a manner that the data points belonging to a cluster have similar characteristics. Clusters are nothing but the grouping of data points such that the distance between the data points within the clusters is minimal.
In other words, the clusters are regions where the density of similar data points is high. It is generally used for the analysis of the data set, to find insightful data among huge data sets and draw inferences from it. Generally, the clusters are seen in a spherical shape, but it is not necessary as the clusters can be of any shape. Learn about clustering and more data science concepts in our data science online course.
It depends on the type of algorithm we use which decides how the clusters will be created. The inferences that need to be drawn from the data sets also depend upon the user as there is no criterion for good clustering.
What are the types of Clustering Methods?
Clustering itself can be categorized into two types viz. Hard Clustering and Soft Clustering. In hard clustering, one data point can belong to one cluster only. But in soft clustering, the output provided is a probability likelihood of a data point belonging to each of the pre-defined numbers of clusters.
In this method, the clusters are created based upon the density of the data points which are represented in the data space. The regions that become dense due to the huge number of data points residing in that region are considered as clusters.
The data points in the sparse region (the region where the data points are very less) are considered as noise or outliers. The clusters created in these methods can be of arbitrary shape. Following are the examples of Density-based clustering algorithms:
DBSCAN (Density-Based Spatial Clustering of Applications with Noise)
DBSCAN groups data points together based on the distance metric and criterion for a minimum number of data points. It takes two parameters – eps and minimum points. Eps indicates how close the data points should be to be considered as neighbors. The criterion for minimum points should be completed to consider that region as a dense region.
OPTICS (Ordering Points to Identify Clustering Structure)
It is similar in process to DBSCAN, but it attends to one of the drawbacks of the former algorithm i.e. inability to form clusters from data of arbitrary density. It considers two more parameters which are core distance and reachability distance. Core distance indicates whether the data point being considered is core or not by setting a minimum value for it.
Reachability distance is the maximum of core distance and the value of distance metric that is used for calculating the distance among two data points. One thing to consider about reachability distance is that its value remains not defined if one of the data points is a core point.
HDBSCAN (Hierarchical Density-Based Spatial Clustering of Applications with Noise)
HDBSCAN is a density-based clustering method that extends the DBSCAN methodology by converting it to a hierarchical clustering algorithm.
Hierarchical Clustering groups (Agglomerative or also called as Bottom-Up Approach) or divides (Divisive or also called as Top-Down Approach) the clusters based on the distance metrics. In Agglomerative clustering, each data point acts as a cluster initially, and then it groups the clusters one by one.
Divisive is the opposite of Agglomerative, it starts off with all the points into one cluster and divides them to create more clusters. These algorithms create a distance matrix of all the existing clusters and perform the linkage between the clusters depending on the criteria of the linkage. The clustering of the data points is represented by using a dendrogram. There are different types of linkages: –
o Single Linkage: – In single linkage the distance between the two clusters is the shortest distance between points in those two clusters.
o Complete Linkage: – In complete linkage, the distance between the two clusters is the farthest distance between points in those two clusters.
o Average Linkage: – In average linkage the distance between the two clusters is the average distance of every point in the cluster with every point in another cluster.
In fuzzy clustering, the assignment of the data points in any of the clusters is not decisive. Here, one data point can belong to more than one cluster. It provides the outcome as the probability of the data point belonging to each of the clusters. One of the algorithms used in fuzzy clustering is Fuzzy c-means clustering.
This algorithm is similar in process to the K-Means clustering and it differs in the parameters that are involved in the computation like fuzzifier and membership values.
This method is one of the most popular choices for analysts to create clusters. In partitioning clustering, the clusters are partitioned based upon the characteristics of the data points. We need to specify the number of clusters to be created for this clustering method. These clustering algorithms follow an iterative process to reassign the data points between clusters based upon the distance. The algorithms that fall into this category are as follows: –
o K-Means Clustering: – K-Means clustering is one of the most widely used algorithms. It partitions the data points into k clusters based upon the distance metric used for the clustering. The value of ‘k’ is to be defined by the user. The distance is calculated between the data points and the centroids of the clusters.
The data point which is closest to the centroid of the cluster gets assigned to that cluster. After an iteration, it computes the centroids of those clusters again and the process continues until a pre-defined number of iterations are completed or when the centroids of the clusters do not change after an iteration.
It is a very computationally expensive algorithm as it computes the distance of every data point with the centroids of all the clusters at each iteration. This makes it difficult for implementing the same for huge data sets.
PAM (Partitioning Around Medoids)
This algorithm is also called as k-medoid algorithm. It is also similar in process to the K-means clustering algorithm with the difference being in the assignment of the center of the cluster. In PAM, the medoid of the cluster has to be an input data point while this is not true for K-means clustering as the average of all the data points in a cluster may not belong to an input data point.
o CLARA (Clustering Large Applications): – CLARA is an extension to the PAM algorithm where the computation time has been reduced to make it perform better for large data sets. To accomplish this, it selects a certain portion of data arbitrarily among the whole data set as a representative of the actual data. It applies the PAM algorithm to multiple samples of the data and chooses the best clusters from a number of iterations.
Also Read: Data Mining Algorithms You Should Know
In grid-based clustering, the data set is represented into a grid structure which comprises of grids (also called cells). The overall approach in the algorithms of this method differs from the rest of the algorithms.
They are more concerned with the value space surrounding the data points rather than the data points themselves. One of the greatest advantages of these algorithms is its reduction in computational complexity. This makes it appropriate for dealing with humongous data sets.
After partitioning the data sets into cells, it computes the density of the cells which helps in identifying the clusters. A few algorithms based on grid-based clustering are as follows: –
o STING (Statistical Information Grid Approach): – In STING, the data set is divided recursively in a hierarchical manner. Each cell is further sub-divided into a different number of cells. It captures the statistical measures of the cells which helps in answering the queries in a small amount of time.
o WaveCluster: – In this algorithm, the data space is represented in form of wavelets. The data space composes an n-dimensional signal which helps in identifying the clusters. The parts of the signal with a lower frequency and high amplitude indicate that the data points are concentrated. These regions are identified as clusters by the algorithm. The parts of the signal where the frequency high represents the boundaries of the clusters. For more details, you can refer to this paper.
o CLIQUE (Clustering in Quest): – CLIQUE is a combination of density-based and grid-based clustering algorithm. It partitions the data space and identifies the sub-spaces using the Apriori principle. It identifies the clusters by calculating the densities of the cells.
In this article, we saw an overview of what clustering is and the different methods of clustering along with its examples. This article was intended to serve you in getting started with clustering.
These clustering methods have their own pros and cons which restricts them to be suitable for certain data sets only. It is not only the algorithm but there are a lot of other factors like hardware specifications of the machines, the complexity of the algorithm, etc. that come into the picture when you are performing analysis on the data set.
As an analyst, you have to make decisions on which algorithm to choose and which would provide better results in given situations. One algorithm fits all strategy does not work in any of the machine learning problems. So, keep experimenting and get your hands dirty in the clustering world.
If you are curious to learn data science, check out our IIIT-B and upGrad’s Executive PG Programme in Data Science which is created for working professionals and offers 10+ case studies & projects, practical hands-on workshops, mentorship with industry experts, 1-on-1 with industry mentors, 400+ hours of learning and job assistance with top firms.
What are the different types of clustering methods used in business intelligence?
Clustering is an undirected technique used in data mining for identifying several hidden patterns in the data without coming up with any specific hypothesis. The reason behind using clustering is to identify similarities between certain objects and make a group of similar ones.
There are two different types of clustering, which are hierarchical and non-hierarchical methods.
1. Non-hierarchical Clustering
In this method, the dataset containing N objects is divided into M clusters. In business intelligence, the most widely used non-hierarchical clustering technique is K-means.
2. Hierarchical Clustering
In this method, a set of nested clusters are produced. In these nested clusters, every pair of objects is further nested to form a large cluster until only one cluster remains in the end.
When is Clustering used?
The primary function of clustering is to perform segmentation, whether it is store, product, or customer. Customers and products can be clustered into hierarchical groups based on different attributes.
Another usage of clustering technique is seen for detecting anomalies like fraud transactions. Here, a cluster with all the good transactions is detected and kept as a sample. This is said to be a normal cluster. Whenever something is out of the line from this cluster, it comes under the suspect section. This method is found to be really useful in detecting the presence of abnormal cells in the body.
Other than that, clustering is widely used to break down large datasets to create smaller data groups. This enhances the efficiency of assessing the data.
What are the advantages of Clustering?
Clustering is said to be more effective than random sampling of the given data due to several reasons. The two major advantages of clustering are:
1. Requires fewer resources
A cluster creates a group of fewer resources from the entire sample. Due to this, there is a lesser requirement of resources as compared to random sampling. Random sampling will require travel and administrative expenses, but this is not the case over here.
2. Feasible option
Here, every cluster determines an entire set of the population as homogeneous groups are created from the entire population. With this, it becomes easy to include more subjects in a single study.