Cluster Analysis and Unsupervised Machine Learning in Python
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Cluster Analysis and Unsupervised Machine Learning in Python
Included with
Ask Coursera
Recommended experience
Recommended experience
What you'll learn
Master key clustering techniques like K-Means, hierarchical clustering, and Gaussian Mixture Models.
Implement and evaluate clustering algorithms using Python, with hands-on exercises and real-world applications.
Understand the mathematical foundations of clustering and learn methods to optimize and assess models.
Explore practical applications in Natural Language Processing, Computer Vision, and data analysis.
Skills you'll gain
Tools you'll learn
Details to know
See how employees at top companies are mastering in-demand skills
There are 9 modules in this course
Updated in May 2025.
This course now features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Master the art of unsupervised machine learning with this in-depth course on clustering techniques. Begin by understanding the fundamental concepts of unsupervised learning and how clustering is applied in real-world scenarios. You'll gain insights into key algorithms such as K-Means, hierarchical clustering, and Gaussian Mixture Models, while also learning practical implementation in Python. The course is structured to guide you through various clustering techniques, starting with K-Means clustering. Through a combination of theory, hands-on exercises, and visual walkthroughs, you'll learn how to implement these algorithms, evaluate their effectiveness, and overcome their limitations. Next, you'll dive into hierarchical clustering, exploring its applications in data visualization and real-world contexts, such as evolutionary studies and social media analysis. The final sections cover advanced techniques like Gaussian Mixture Models and Expectation-Maximization, alongside practical comparisons with other methods like K-Means. You'll also explore tools for setting up your environment, coding basics for beginners, and effective learning strategies to optimize your experience in machine learning. Designed for data enthusiasts, analysts, and aspiring machine learning practitioners, this course is ideal for learners with basic Python knowledge who want to deepen their expertise in clustering algorithms. Whether you're a beginner or looking to expand your machine learning toolkit, this course has something for everyone.
In this module, we will introduce you to the course on Cluster Analysis and Unsupervised Machine Learning in Python. You'll gain insight into the course objectives, an overview of the topics covered, and an exclusive bonus offer designed to enhance your learning experience.
What's included
3 videos1 reading
3 videos•Total 11 minutes
- Introduction•5 minutes
- Course Outline•5 minutes
- Special Offer•1 minute
1 reading•Total 10 minutes
- Full Course Resource•10 minutes
In this module, we will guide you on how to access the course code and supplementary resources. You'll ensure your environment is ready for practical learning and become acquainted with the tools you'll use throughout the course.
What's included
1 video1 assignment
1 video•Total 5 minutes
- Where to get the code•5 minutes
1 assignment•Total 15 minutes
- Getting Set Up - Assessment•15 minutes
In this module, we will delve into the foundations of unsupervised learning, exploring its applications and significance in various domains. You’ll learn why clustering is a powerful tool for identifying hidden patterns in data and its role in enhancing data-driven decisions.
What's included
2 videos1 assignment
2 videos•Total 15 minutes
- What is unsupervised learning used for?•6 minutes
- Why Use Clustering?•9 minutes
1 assignment•Total 15 minutes
- Unsupervised Learning - Assessment•15 minutes
In this module, we will take a deep dive into K-Means clustering, starting with a beginner-friendly introduction and progressing to advanced coding exercises and theoretical insights. You’ll explore the algorithm’s functionality, practical applications, and visualization techniques. Additionally, we’ll address common pitfalls, evaluation methods, and real-world use cases in diverse fields like Natural Language Processing and Computer Vision.
What's included
23 videos1 assignment
23 videos•Total 152 minutes
- An Easy Introduction to K-Means Clustering•7 minutes
- Hard K-Means: Exercise Prompt 1•9 minutes
- Hard K-Means: Exercise 1 Solution•11 minutes
- Hard K-Means: Exercise Prompt 2•5 minutes
- Hard K-Means: Exercise 2 Solution•7 minutes
- Hard K-Means: Exercise Prompt 3•7 minutes
- Hard K-Means: Exercise 3 Solution•16 minutes
- Hard K-Means Objective: Theory•13 minutes
- Hard K-Means Objective: Code•5 minutes
- Visual Walkthrough of the K-Means Clustering Algorithm (Legacy)•3 minutes
- Soft K-Means•6 minutes
- The K-Means Objective Function•2 minutes
- Soft K-Means in Python Code•10 minutes
- How to Pace Yourself•3 minutes
- Visualizing Each Step of K-Means•2 minutes
- Examples of where K-Means can fail•8 minutes
- Disadvantages of K-Means Clustering•2 minutes
- How to Evaluate a Clustering (Purity, Davies-Bouldin Index)•7 minutes
- Using K-Means on Real Data: MNIST•5 minutes
- One Way to Choose K•5 minutes
- K-Means Application: Finding Clusters of Related Words•9 minutes
- Clustering for NLP and Computer Vision: Real-World Applications•7 minutes
- Suggestion Box•3 minutes
1 assignment•Total 15 minutes
- K-Means Clustering - Assessment•15 minutes
In this module, we will explore hierarchical clustering, focusing on the agglomerative approach. You'll gain a clear understanding of how this method works through visual walkthroughs and practical coding examples in Python. We’ll also delve into real-world applications, from evolutionary studies to analyzing social media data, and learn how to interpret dendrograms to reveal data insights.
What's included
5 videos1 assignment
5 videos•Total 43 minutes
- Visual Walkthrough of Agglomerative Hierarchical Clustering•3 minutes
- Agglomerative Clustering Options•4 minutes
- Using Hierarchical Clustering in Python and Interpreting the Dendrogram•5 minutes
- Application: Evolution•14 minutes
- Application: Donald Trump vs. Hillary Clinton Tweets•19 minutes
1 assignment•Total 15 minutes
- Hierarchical Clustering - Assessment•15 minutes
In this module, we will dive deep into Gaussian Mixture Models (GMMs), a powerful unsupervised learning technique. You'll learn how the GMM algorithm works, implement it in Python, and tackle practical issues. We'll also explore the Expectation-Maximization algorithm in detail and compare GMM with K-Means and Bayes classifiers. Additionally, you'll discover how Kernel Density Estimation complements these methods in modeling complex data distributions.
What's included
10 videos1 assignment
10 videos•Total 97 minutes
- Gaussian Mixture Model (GMM) Algorithm•16 minutes
- Write a Gaussian Mixture Model in Python Code•19 minutes
- Practical Issues with GMM•9 minutes
- Comparison between GMM and K-Means•4 minutes
- Kernel Density Estimation•6 minutes
- GMM vs Bayes Classifier (pt 1)•9 minutes
- GMM vs Bayes Classifier (pt 2)•12 minutes
- Expectation-Maximization (pt 1)•12 minutes
- Expectation-Maximization (pt 2)•2 minutes
- Expectation-Maximization (pt 3)•8 minutes
1 assignment•Total 15 minutes
- Gaussian Mixture Models (GMMs) - Assessment•15 minutes
In this module, we will focus on setting up your environment to ensure a smooth learning experience. You’ll check your system readiness, configure the Anaconda environment, and install critical Python libraries required for the course.
What's included
3 videos1 assignment
3 videos•Total 42 minutes
- Pre-Installation Check•4 minutes
- Anaconda Environment Setup•20 minutes
- How to install Numpy, Scipy, Matplotlib, Pandas, and Tensorflow•18 minutes
1 assignment•Total 15 minutes
- Setting Up Your Environment (Appendix) - Assessment•15 minutes
In this module, we will support beginners with extra Python coding help. You’ll start with essential coding concepts, practice through guided examples, and understand the parallels between Jupyter Notebook and other environments. Additionally, you’ll receive an introduction to GitHub and tips to refine your coding skills.
What's included
4 videos1 assignment
4 videos•Total 49 minutes
- How to Code Yourself (part 1)•16 minutes
- How to Code Yourself (part 2)•9 minutes
- Proof that using Jupyter Notebook is the same as not using it•12 minutes
- How to use Github & Extra Coding Tips (Optional)•11 minutes
1 assignment•Total 15 minutes
- Extra Help With Python Coding for Beginners (Appendix) - Assessment•15 minutes
In this module, we will provide effective strategies to enhance your learning experience. You'll receive comprehensive advice on succeeding in this course, determine its suitability based on your goals and expertise, and explore the optimal sequence of courses to follow. This guidance will help you tailor your learning approach for maximum impact.
What's included
4 videos3 assignments
4 videos•Total 60 minutes
- How to Succeed in this Course (Long Version)•10 minutes
- Is this for Beginners or Experts? Academic or Practical? Fast or slow-paced?•22 minutes
- What order should I take your courses in? (part 1)•11 minutes
- What order should I take your courses in? (part 2)•16 minutes
3 assignments•Total 90 minutes
- Effective Learning Strategies for Machine Learning (Appendix) - Assessment•15 minutes
- Full Course Assessment•60 minutes
- Full Course Practice Assessment•15 minutes
Instructor
Explore more from Machine Learning
- Status: Free Trial
Course
- Status: Free TrialU
University of Michigan
Course
- Status: Preview
Why people choose Coursera for their career
Frequently asked questions
Yes, you can preview the first video and view the syllabus before you enroll. You must purchase the course to access content not included in the preview.
If you decide to enroll in the course before the session start date, you will have access to all of the lecture videos and readings for the course. You’ll be able to submit assignments once the session starts.
Once you enroll and your session begins, you will have access to all videos and other resources, including reading items and the course discussion forum. You’ll be able to view and submit practice assessments, and complete required graded assignments to earn a grade and a Course Certificate.
More questions
Financial aid available,
