k means clustering
K-means clustering is an unsupervised learning algorithm which means that there are no labeled data to train on. The algorithm perform clustering on similar data and creates clusters with that data. The data points can only belong in one group or cluster and not into multiple clusters. The K term represents the number of the clusters in the given dateset. For example, if $K=2$ this means that in the given dataset there are 2 clusters. Thus, the $KMean$ algorithm tries to create clusters as homogeneous as possible and at the same time to differentiate one cluster from one another, where it achieves it by keeping the clusters as far as possible.