Clustering is the poster child of unsupervised learning methods. It is usually our first choice when we need to add meaning to unlabeled data. In an e-commerce website, the marketing team may ask you to put your users into a few buckets so that they can tailor the messages they send to each group of them. If no one has labeled those millions of users for you, then clustering is your only way to put these users into buckets. When dealing with a large number of documents, videos, or web pages, and there are no categories assigned to this content, and you are not willing to ask Marie Kondo for help, then clustering is your only way to declutter this mess.
Since this is our first chapter about supervised learning algorithms, we will start with some theoretical background about clustering. Then, we will have a look at three commonly used clustering algorithms, in addition to...