About this Course
66,667 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 42 hours to complete

Suggested: 7 weeks of study, 5-8 hours/week...


Subtitles: English, Korean, Arabic

Skills you will gain

Logistic RegressionStatistical ClassificationClassification AlgorithmsDecision Tree

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 42 hours to complete

Suggested: 7 weeks of study, 5-8 hours/week...


Subtitles: English, Korean, Arabic

Syllabus - What you will learn from this course

1 hour to complete


Classification is one of the most widely used techniques in machine learning, with a broad array of applications, including sentiment analysis, ad targeting, spam detection, risk assessment, medical diagnosis and image classification. The core goal of classification is to predict a category or class y from some inputs x. Through this course, you will become familiar with the fundamental models and algorithms used in classification, as well as a number of core machine learning concepts. Rather than covering all aspects of classification, you will focus on a few core techniques, which are widely used in the real-world to get state-of-the-art performance. By following our hands-on approach, you will implement your own algorithms on multiple real-world tasks, and deeply grasp the core techniques needed to be successful with these approaches in practice. This introduction to the course provides you with an overview of the topics we will cover and the background knowledge and resources we assume you have.

8 videos (Total 27 min), 3 readings
8 videos
What is this course about?6m
Impact of classification1m
Course overview3m
Outline of first half of course5m
Outline of second half of course5m
Assumed background3m
Let's get started!45s
3 readings
Important Update regarding the Machine Learning Specialization10m
Slides presented in this module10m
Reading: Software tools you'll need10m
2 hours to complete

Linear Classifiers & Logistic Regression

Linear classifiers are amongst the most practical classification methods. For example, in our sentiment analysis case-study, a linear classifier associates a coefficient with the counts of each word in the sentence. In this module, you will become proficient in this type of representation. You will focus on a particularly useful type of linear classifier called logistic regression, which, in addition to allowing you to predict a class, provides a probability associated with the prediction. These probabilities are extremely useful, since they provide a degree of confidence in the predictions. In this module, you will also be able to construct features from categorical inputs, and to tackle classification problems with more than two class (multiclass problems). You will examine the results of these techniques on a real-world product sentiment analysis task.

18 videos (Total 78 min), 2 readings, 2 quizzes
18 videos
Intuition behind linear classifiers3m
Decision boundaries3m
Linear classifier model5m
Effect of coefficient values on decision boundary2m
Using features of the inputs2m
Predicting class probabilities1m
Review of basics of probabilities6m
Review of basics of conditional probabilities8m
Using probabilities in classification2m
Predicting class probabilities with (generalized) linear models5m
The sigmoid (or logistic) link function4m
Logistic regression model5m
Effect of coefficient values on predicted probabilities7m
Overview of learning logistic regression models2m
Encoding categorical inputs4m
Multiclass classification with 1 versus all7m
Recap of logistic regression classifier1m
2 readings
Slides presented in this module10m
Predicting sentiment from product reviews10m
2 practice exercises
Linear Classifiers & Logistic Regression10m
Predicting sentiment from product reviews24m
2 hours to complete

Learning Linear Classifiers

Once familiar with linear classifiers and logistic regression, you can now dive in and write your first learning algorithm for classification. In particular, you will use gradient ascent to learn the coefficients of your classifier from data. You first will need to define the quality metric for these tasks using an approach called maximum likelihood estimation (MLE). You will also become familiar with a simple technique for selecting the step size for gradient ascent. An optional, advanced part of this module will cover the derivation of the gradient for logistic regression. You will implement your own learning algorithm for logistic regression from scratch, and use it to learn a sentiment analysis classifier.

18 videos (Total 83 min), 2 readings, 2 quizzes
18 videos
Intuition behind maximum likelihood estimation4m
Data likelihood8m
Finding best linear classifier with gradient ascent3m
Review of gradient ascent6m
Learning algorithm for logistic regression3m
Example of computing derivative for logistic regression5m
Interpreting derivative for logistic regression5m
Summary of gradient ascent for logistic regression2m
Choosing step size5m
Careful with step sizes that are too large4m
Rule of thumb for choosing step size3m
(VERY OPTIONAL) Deriving gradient of logistic regression: Log trick4m
(VERY OPTIONAL) Expressing the log-likelihood3m
(VERY OPTIONAL) Deriving probability y=-1 given x2m
(VERY OPTIONAL) Rewriting the log likelihood into a simpler form8m
(VERY OPTIONAL) Deriving gradient of log likelihood8m
Recap of learning logistic regression classifiers1m
2 readings
Slides presented in this module10m
Implementing logistic regression from scratch10m
2 practice exercises
Learning Linear Classifiers12m
Implementing logistic regression from scratch16m
2 hours to complete

Overfitting & Regularization in Logistic Regression

As we saw in the regression course, overfitting is perhaps the most significant challenge you will face as you apply machine learning approaches in practice. This challenge can be particularly significant for logistic regression, as you will discover in this module, since we not only risk getting an overly complex decision boundary, but your classifier can also become overly confident about the probabilities it predicts. In this module, you will investigate overfitting in classification in significant detail, and obtain broad practical insights from some interesting visualizations of the classifiers' outputs. You will then add a regularization term to your optimization to mitigate overfitting. You will investigate both L2 regularization to penalize large coefficient values, and L1 regularization to obtain additional sparsity in the coefficients. Finally, you will modify your gradient ascent algorithm to learn regularized logistic regression classifiers. You will implement your own regularized logistic regression classifier from scratch, and investigate the impact of the L2 penalty on real-world sentiment analysis data.

13 videos (Total 66 min), 2 readings, 2 quizzes
13 videos
Review of overfitting in regression3m
Overfitting in classification5m
Visualizing overfitting with high-degree polynomial features3m
Overfitting in classifiers leads to overconfident predictions5m
Visualizing overconfident predictions4m
(OPTIONAL) Another perspecting on overfitting in logistic regression8m
Penalizing large coefficients to mitigate overfitting5m
L2 regularized logistic regression4m
Visualizing effect of L2 regularization in logistic regression5m
Learning L2 regularized logistic regression with gradient ascent7m
Sparse logistic regression with L1 regularization7m
Recap of overfitting & regularization in logistic regression58s
2 readings
Slides presented in this module10m
Logistic Regression with L2 regularization10m
2 practice exercises
Overfitting & Regularization in Logistic Regression16m
Logistic Regression with L2 regularization16m
2 hours to complete

Decision Trees

Along with linear classifiers, decision trees are amongst the most widely used classification techniques in the real world. This method is extremely intuitive, simple to implement and provides interpretable predictions. In this module, you will become familiar with the core decision trees representation. You will then design a simple, recursive greedy algorithm to learn decision trees from data. Finally, you will extend this approach to deal with continuous inputs, a fundamental requirement for practical problems. In this module, you will investigate a brand new case-study in the financial sector: predicting the risk associated with a bank loan. You will implement your own decision tree learning algorithm on real loan data.

13 videos (Total 47 min), 3 readings, 3 quizzes
13 videos
Intuition behind decision trees1m
Task of learning decision trees from data3m
Recursive greedy algorithm4m
Learning a decision stump3m
Selecting best feature to split on6m
When to stop recursing4m
Making predictions with decision trees1m
Multiclass classification with decision trees2m
Threshold splits for continuous inputs6m
(OPTIONAL) Picking the best threshold to split on3m
Visualizing decision boundaries5m
Recap of decision trees56s
3 readings
Slides presented in this module10m
Identifying safe loans with decision trees10m
Implementing binary decision trees10m
3 practice exercises
Decision Trees22m
Identifying safe loans with decision trees14m
Implementing binary decision trees14m
2 hours to complete

Preventing Overfitting in Decision Trees

Out of all machine learning techniques, decision trees are amongst the most prone to overfitting. No practical implementation is possible without including approaches that mitigate this challenge. In this module, through various visualizations and investigations, you will investigate why decision trees suffer from significant overfitting problems. Using the principle of Occam's razor, you will mitigate overfitting by learning simpler trees. At first, you will design algorithms that stop the learning process before the decision trees become overly complex. In an optional segment, you will design a very practical approach that learns an overly-complex tree, and then simplifies it with pruning. Your implementation will investigate the effect of these techniques on mitigating overfitting on our real-world loan data set.

8 videos (Total 40 min), 2 readings, 2 quizzes
8 videos
Overfitting in decision trees5m
Principle of Occam's razor: Learning simpler decision trees5m
Early stopping in learning decision trees6m
(OPTIONAL) Motivating pruning8m
(OPTIONAL) Pruning decision trees to avoid overfitting6m
(OPTIONAL) Tree pruning algorithm3m
Recap of overfitting and regularization in decision trees1m
2 readings
Slides presented in this module10m
Decision Trees in Practice10m
2 practice exercises
Preventing Overfitting in Decision Trees22m
Decision Trees in Practice28m
1 hour to complete

Handling Missing Data

Real-world machine learning problems are fraught with missing data. That is, very often, some of the inputs are not observed for all data points. This challenge is very significant, happens in most cases, and needs to be addressed carefully to obtain great performance. And, this issue is rarely discussed in machine learning courses. In this module, you will tackle the missing data challenge head on. You will start with the two most basic techniques to convert a dataset with missing data into a clean dataset, namely skipping missing values and inputing missing values. In an advanced section, you will also design a modification of the decision tree learning algorithm that builds decisions about missing data right into the model. You will also explore these techniques in your real-data implementation.

6 videos (Total 25 min), 1 reading, 1 quiz
6 videos
Strategy 1: Purification by skipping missing data4m
Strategy 2: Purification by imputing missing data4m
Modifying decision trees to handle missing data4m
Feature split selection with missing data5m
Recap of handling missing data1m
1 reading
Slides presented in this module10m
1 practice exercise
Handling Missing Data14m
463 ReviewsChevron Right


started a new career after completing these courses


got a tangible career benefit from this course


got a pay increase or promotion

Top reviews from Machine Learning: Classification

By SSOct 16th 2016

Hats off to the team who put the course together! Prof Guestrin is a great teacher. The course gave me in-depth knowledge regarding classification and the math and intuition behind it. It was fun!

By CJJan 25th 2017

Very impressive course, I would recommend taking course 1 and 2 in this specialization first since they skip over some things in this course that they have explained thoroughly in those courses



Carlos Guestrin

Amazon Professor of Machine Learning
Computer Science and Engineering

Emily Fox

Amazon Professor of Machine Learning

About University of Washington

Founded in 1861, the University of Washington is one of the oldest state-supported institutions of higher education on the West Coast and is one of the preeminent research universities in the world....

About the Machine Learning Specialization

This Specialization from leading researchers at the University of Washington introduces you to the exciting, high-demand field of Machine Learning. Through a series of practical case studies, you will gain applied experience in major areas of Machine Learning including Prediction, Classification, Clustering, and Information Retrieval. You will learn to analyze large and complex datasets, create systems that adapt and improve over time, and build intelligent applications that can make predictions from data....
Machine Learning

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.