Book Image

Applied Unsupervised Learning with Python

By : Benjamin Johnston, Aaron Jones, Christopher Kruger
Book Image

Applied Unsupervised Learning with Python

By: Benjamin Johnston, Aaron Jones, Christopher Kruger

Overview of this book

Unsupervised learning is a useful and practical solution in situations where labeled data is not available. Applied Unsupervised Learning with Python guides you in learning the best practices for using unsupervised learning techniques in tandem with Python libraries and extracting meaningful information from unstructured data. The book begins by explaining how basic clustering works to find similar data points in a set. Once you are well-versed with the k-means algorithm and how it operates, you’ll learn what dimensionality reduction is and where to apply it. As you progress, you’ll learn various neural network techniques and how they can improve your model. While studying the applications of unsupervised learning, you will also understand how to mine topics that are trending on Twitter and Facebook and build a news recommendation engine for users. Finally, you will be able to put your knowledge to work through interesting activities such as performing a Market Basket Analysis and identifying relationships between different products. By the end of this book, you will have the skills you need to confidently build your own models using Python.
Table of Contents (12 chapters)
Applied Unsupervised Learning with Python
Preface

DBSCAN Versus k-means and Hierarchical Clustering


Now that you've reached an understanding of how DBSCAN is implemented and how many different hyperparameters you can tweak to drive performance, let's survey how it compares to the clustering methods we covered in Chapter 1, Introduction to Clustering and Chapter 2, Hierarchical Clustering.

You may have noticed in Activity 5, Comparing DBSCAN with k-means and Hierarchical Clustering, that DBSCAN can be a bit finnicky when it comes to finding the optimal clusters via silhouette score. This is a downside of the neighborhood approach – k-means and hierarchical clustering really excel when you have some idea regarding the number of clusters in your data. In most cases, this number is low enough that you can iteratively try a few different numbers and see how it performs. DBSCAN, instead, takes a more bottom-up approach by working with your hyperparameters and finding the clusters it views as important. In practice, it is helpful to consider DBSCAN...