We may earn an affiliate commission when you visit our partners.
Course image
Michael Scott Brown

Unsupervised learning is a category of machine learning algorithms that use unlabeled data and no prior training. Many algorithms fall into this category. This class will cover the more popular ones of K-Means, DBSCAN and Hierarchical Clustering. These algorithms can cluster data into groups. Some algorithms allow the user to decide how many groups that form, while other algorithms decide for the user. The course has weekly coding labs and ends with a capstone project. This allows students to demonstrate their understanding of the algorithms.

What's inside

Learning objectives

  • In this course students will learn the following.
  • What unsupervised learning is.
  • Uses for k-means algorithm and how to code it in python.
  • Uses for dbscan algorithm and how to code it in python.
  • Uses for hierarchical clustering algorithm and how to code it in python.

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Explores K-Means, DBSCAN, and Hierarchical Clustering, which are fundamental algorithms for grouping and understanding unlabeled data, a common task in data science
Develops coding skills in Python, a versatile language widely used in machine learning and data analysis, enabling learners to implement and experiment with clustering algorithms
Culminates in a capstone project, providing learners with an opportunity to apply their knowledge and demonstrate their proficiency in unsupervised learning techniques
Taught by the University System of Maryland and the University of Maryland Baltimore County, institutions known for their computer science and data science programs
Features weekly coding labs, which offer hands-on experience and reinforce theoretical concepts, allowing learners to build practical skills in unsupervised learning

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Unsupervised learning with practical labs

According to learners, this course offers a solid introduction to core unsupervised learning algorithms like K-Means, DBSCAN, and Hierarchical Clustering. Many students found the lectures clear and easy to follow. The course's key strength, frequently highlighted, is the inclusion of practical Python coding labs and a challenging capstone project, which provided valuable hands-on experience and helped solidify understanding. While highly recommended for beginners seeking a strong foundation, some learners with prior experience felt the course lacked depth or moved too quickly over complex concepts. A few reviewers noted that the labs might assume a certain level of prior Python knowledge, which could pose a challenge for complete novices.
Pace and depth are mixed.
"The course covers the basics but doesn't go into much depth. I have some prior ML experience, and I found the material a bit too introductory."
"While the algorithms were explained, I found the lectures moved too quickly over complex points."
"Good overview. The lectures were sometimes a bit dry but informative."
Project solidifies learning.
"The capstone project was challenging but truly solidified my understanding."
"The capstone project requires you to apply everything learned. It's a demanding project, which is good."
"The capstone project was a good test of skills."
Algorithms explained clearly.
"This course was excellent! It covered the core unsupervised learning algorithms like K-Means, DBSCAN, and Hierarchical Clustering very well."
"Fantastic course for understanding clustering algorithms. The step-by-step approach in lectures and labs worked perfectly for me."
"The course covers the basics but doesn't go into much depth."
Labs provide hands-on practice.
"The coding labs in Python were particularly helpful and provided great hands-on experience."
"The strength of the course is definitely the practical side - the coding labs are well-designed and helpful."
"The Python code examples were easy to integrate into my own practice."
"The Python labs were good, but I felt they could have been a bit more challenging or covered more real-world datasets."
Requires basic Python knowledge.
"The labs assumed more Python background than I had, making them difficult. I think clearer prerequisites or more introductory Python support would be beneficial."
"I struggled with this course... Didn't finish the capstone."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Unsupervised Learning with these activities:
Review Linear Algebra Concepts
Reviewing linear algebra concepts will help you understand the mathematical foundations of unsupervised learning algorithms.
Browse courses on Linear Algebra
Show steps
  • Review matrix operations such as addition, subtraction, multiplication, and transposition.
  • Study eigenvalues and eigenvectors and their role in dimensionality reduction.
  • Practice solving systems of linear equations.
Brush Up on Python Programming
Practicing Python programming, especially with libraries like NumPy and Scikit-learn, will make coding the algorithms in this course easier.
Browse courses on Python
Show steps
  • Practice using NumPy for numerical computations and array manipulations.
  • Review Pandas for data manipulation and analysis.
  • Familiarize yourself with Scikit-learn for machine learning tasks.
Read 'Pattern Recognition and Machine Learning'
Reading this book will provide a deeper understanding of the theoretical concepts behind unsupervised learning algorithms.
Show steps
  • Read the chapters related to clustering algorithms.
  • Work through the examples and exercises in the book.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Implement K-Means from Scratch
Implementing K-Means from scratch will solidify your understanding of the algorithm's inner workings.
Show steps
  • Write a function to initialize cluster centroids randomly.
  • Write a function to assign data points to the nearest centroid.
  • Write a function to update the centroids based on the assigned data points.
  • Iterate until convergence or a maximum number of iterations is reached.
Read 'The Elements of Statistical Learning'
Reading this book will provide a deeper understanding of the theoretical concepts behind unsupervised learning algorithms.
Show steps
  • Read the chapters related to clustering algorithms.
  • Work through the examples and exercises in the book.
Cluster Customer Data
Applying unsupervised learning to a real-world dataset will give you practical experience and improve your problem-solving skills.
Show steps
  • Find a publicly available customer dataset or create your own synthetic dataset.
  • Preprocess the data by cleaning and scaling the features.
  • Apply K-Means, DBSCAN, and Hierarchical Clustering to the data.
  • Evaluate the results and interpret the clusters.
Write a Blog Post on Unsupervised Learning
Writing a blog post will help you consolidate your knowledge and communicate your understanding of unsupervised learning to others.
Show steps
  • Choose a specific topic within unsupervised learning, such as a comparison of clustering algorithms.
  • Research the topic and gather information from various sources.
  • Write a clear and concise blog post explaining the topic.
  • Include examples and visualizations to illustrate the concepts.

Career center

Learners who complete Unsupervised Learning will develop knowledge and skills that may be useful to these careers:
Machine Learning Engineer
A machine learning engineer develops, tests, and deploys machine learning models. Unsupervised learning techniques are central to a machine learning engineer's work for discovering patterns in unlabeled data. This course provides a good foundation in popular clustering algorithms like K-Means, DBSCAN, and Hierarchical Clustering, which are frequently used in unsupervised learning. The course includes coding labs and a capstone project, providing practical experience that is crucial for success as a machine learning engineer. This class will help you understand how these algorithms work and how to implement them in Python, which is the most used language in this field.
Data Scientist
Data scientists use statistical techniques and machine learning algorithms to extract knowledge and insights from data. Unsupervised learning is an important part of the data scientist's work, enabling them to identify patterns in unlabeled data sets. This course covers key unsupervised learning algorithms like K-Means, DBSCAN, and Hierarchical Clustering. As a data scientist, you will use these algorithms to group data into meaningful clusters, which is an essential skill. The practical experience gained from coding labs and the capstone project will help you excel as a data scientist.
Research Scientist
A research scientist explores and develops new knowledge using machine learning methods, often needing an advanced degree such as a PhD. In many research fields, unsupervised learning is a vital component of data exploration and analysis. This course, which covers the K-Means, DBSCAN, and Hierarchical Clustering algorithms, will be helpful since they represent fundamental methods in this field. The class includes coding labs and a capstone project, providing practical coding experience in Python, which is important for a research scientist. This course may be useful for your research goals as you explore different avenues.
Bioinformatician
Bioinformaticians analyze biological data using computational tools and methods. Unsupervised learning is often used by a bioinformatician to analyze large datasets, like gene expression data, to discover new relationships and patterns. This course, which focuses on K-Means, DBSCAN, and Hierarchical Clustering, will be helpful because these are regularly used in bioinformatics. The coding labs and capstone project will help you to code the unsupervised algorithms used in this field, which is a vital skill for a bioinformatician. Taking this course may lead to success in your work.
Data Analyst
Data analysts interpret and present data to guide business decisions, often using data visualization and statistical techniques. While not always the primary focus, unsupervised learning can be a powerful tool for a data analyst in exploratory data analysis and identifying hidden structures in data. This course, with its coverage of K-Means, DBSCAN, and Hierarchical Clustering, may be useful for a data analyst to expand their skill set. The practical Python coding experience from the labs, coupled with the project, will aid in applying these techniques to real world problems. Taking this course may significantly improve your skills as a data analyst.
Computer Vision Engineer
Computer vision engineers create algorithms that allow computers to see and interpret images and videos. While computer vision often uses supervised learning techniques, unsupervised learning plays a role in tasks like image segmentation and anomaly detection. This course introduces K-Means, DBSCAN and Hierarchical Clustering, which can be applied to this role. The coding labs and the final project will help you develop practical Python skills which are essential for a computer vision engineer. This course may be useful to improve your understanding of computer vision.
Statistician
Statisticians develop and apply statistical theories and methods to data. While their primary method for data analysis does not usually involve unsupervised learning, these techniques may be helpful when exploring large or complex data sets. This course covers common clustering algorithms like K-Means, DBSCAN, and Hierarchical Clustering, which may be useful for a statistician. This course's coding in Python, along with the capstone project, may lead to new perspectives in statistics. This course may help you advance your understanding of the field.
Quantitative Analyst
Quantitative analysts, also called quants, use mathematical and statistical methods to solve problems in finance. Unsupervised learning may be useful to a quantitative analyst when trying to find patterns in financial data. This course covers K-Means, DBSCAN, and Hierarchical Clustering, which are common clustering algorithms. The coding labs and the capstone project can help you practically apply the algorithms to data. Taking this course may be helpful for your work as a quantitative analyst.
Robotics Engineer
Robotics engineers design, build, and program robots. Unsupervised learning may be useful in robotics to develop systems that can learn from sensory data without explicit labels. This course introduces K-Means, DBSCAN, and Hierarchical Clustering, which could be useful for a robotics engineer. The practical coding labs and the capstone project in Python will help you in developing skills in this area. Taking this course may improve your understanding of robotics.
Business Intelligence Analyst
A business intelligence analyst uses data to analyze specific business metrics. Unsupervised learning may be useful to a business intelligence analyst to find patterns in large data sets. This course presents K-Means, DBSCAN and Hierarchical Clustering. The coding labs and capstone project help a business intelligence analyst gain experience using these algorithms. Taking this course may help you learn more about your field and improve your skills as a business intelligence analyst.
Financial Analyst
Financial analysts analyze financial data and market trends to give advice to businesses and investors. Unsupervised learning may prove useful to a financial analyst in identifying patterns within financial data. This course covers K-Means, DBSCAN, and Hierarchical Clustering, which are popular clustering algorithms. The practical coding experience using Python gained in the labs, along with the capstone project, may help you in your role as a financial analyst. This course may be useful for your work.
Marketing Analyst
Marketing analysts use data to understand consumer behavior and measure the success of marketing campaigns. Unsupervised learning may be useful to a marketing analyst needing to find patterns in large customer datasets. This course teaches K-Means, DBSCAN, and Hierarchical Clustering. The coding labs and capstone project will enhance skills for data analysis in this field. This course may be beneficial for your career as a marketing analyst.
Software Developer
Software developers design, write, and test computer code. For a software developer, understanding machine learning may be useful for creating more advanced software applications. This course teaches how to implement algorithms such as K-Means, DBSCAN and Hierarchical Clustering in Python. The coding labs and project provide practical experience with these algorithms. Taking this course may help you become a more versatile software developer.
Database Administrator
Database administrators manage and maintain databases, they make sure that data is available and secure. Unsupervised learning techniques may prove useful for a database administrator to optimize data storage and retrieval. This course covers unsupervised learning algorithms, such as K-Means, DBSCAN and Hierarchical Clustering which may help in this field. Through coding labs and a capstone project, you will gain confidence in this area. This course may be useful for your career as a database administrator.
Network Engineer
Network engineers design, implement, and maintain computer networks. Unsupervised learning may be useful for a network engineer in identifying patterns in network traffic. This course covers K-Means, DBSCAN, and Hierarchical Clustering, which are common clustering algorithms. The practical coding experience gained through the labs and the capstone project may allow a network engineer to use data more effectively. This course may be helpful for this role.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Unsupervised Learning.
Provides a comprehensive overview of pattern recognition and machine learning, including unsupervised learning techniques. It covers the mathematical foundations and practical applications of various algorithms. It valuable resource for understanding the theoretical underpinnings of the algorithms covered in the course. This book is commonly used as a textbook in machine learning courses.
Provides a comprehensive overview of statistical learning, including unsupervised learning techniques. It covers the mathematical foundations and practical applications of various algorithms. It valuable resource for understanding the theoretical underpinnings of the algorithms covered in the course. This book is commonly used as a textbook in machine learning courses.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser