DeepLearning.AI and Stanford Online
Machine Learning Specialization
Learn the core ideas and practice of machine learning in Python with Andrew Ng, for beginners.
Taught by Andrew Ng, Eddy Shyu and 2 more at DeepLearning.AI and Stanford OnlineFreeCertificateVerified
- From Introduction to Machine Learning to Reinforcement learning
- 10 weeks
- What it uses
- NumPy, scikit-learn and TensorFlow
- Before you startBasic coding (for loops, functions, if/else statements) and high school math (arithmetic, algebra).
- Beginner level
- 3 courses, about 10 weeks at 5 hours a week
- Self-paced
What you’ll learn
- Build and train linear and logistic regression models in Python with NumPy and scikit-learn.
- Build and train a neural network with TensorFlow for multi-class classification.
- Build decision trees and tree ensembles such as random forests and boosted trees.
- Use good practice, like checking bias and variance, so models work on real data.
- Use clustering, anomaly detection, recommender systems and deep reinforcement learning.
Skills you’ll gain
Tools it uses
NumPy, scikit-learn and TensorFlow.
Details to know
- Certificate of completionNeeds a DeepLearning.AI Pro plan
- Assessments11 labs
- Taught in EnglishNo other languages listed
- Recently updatedSeptember 2026
Lessons
3 courses, about 10 weeks at 5 hours a week
The Machine Learning Specialization is a beginner program of three courses from DeepLearning.AI and Stanford Online, taught by Andrew Ng. It rebuilds his original machine learning course in Python, and you only need basic coding and high school math to start.
Every topic opens with a visual explanation, then walks through the code, with the underlying math in optional videos. Each week mixes video lessons, practice quizzes, ungraded code notebooks with interactive graphs, and a practice lab.
Across 3 courses and 10 weeks, you will:
- Supervised Machine Learning: Regression and Classification: Build linear and logistic regression models, train them with gradient descent and spot overfitting.
- Advanced Learning Algorithms: Train neural networks in TensorFlow, diagnose bias and variance, and build decision trees and tree ensembles.
- Unsupervised Learning, Recommenders, Reinforcement Learning: Cluster data, detect anomalies, build recommender systems and train a deep reinforcement learning model.
Applied learning project
Most weeks end with a practice lab where you code the week's algorithm in Python, after ungraded notebooks that show sample code and graphs. The graded assignments that count toward the certificate need the Pro plan.
- Linear regression: Implement linear regression with several input features.
- Logistic regression: Build a logistic regression classifier.
- Neural networks: Build and train networks in TensorFlow and in plain Python.
- Model diagnosis: Use bias and variance checks to decide how to improve a model.
- Decision trees: Build a decision tree and choose the features it splits on.
- Clustering and anomalies: Group unlabeled data and flag unusual examples in two labs.
- Recommenders: Build a collaborative filtering recommender and a content-based one with deep learning.
- Reinforcement learning: Train a deep reinforcement learning model in the final lab.
By the end, you can build, train and tune the main kinds of machine learning models in Python and check whether they will hold up on real data.
Introduction to Machine LearningWeek 1 • 4 lessonsWeek details
What you’ll learn
- Tell supervised from unsupervised learning, with examples of each.
- Build a linear regression model that predicts a number.
- Train the model with gradient descent.
Lessons
- 1.1Overview of Machine Learning
- 1.2Supervised vs. Unsupervised Machine Learning
- 1.3Regression Model
- 1.4Train the model with gradient descent
Regression with multiple input variablesWeek 2 • 3 lessonsWeek details
What you’ll learn
- Extend linear regression to many input features.
- Make gradient descent work well in practice.
- Implement linear regression in the week's practice lab.
Lessons
- 2.1Multiple linear regression
- 2.2Gradient descent in practice
- 2.3Week 2 practice lab: Linear regression
ClassificationWeek 3 • 6 lessonsWeek details
What you’ll learn
- Sort examples into two classes with logistic regression.
- Set up its cost function and train it with gradient descent.
- Recognize overfitting and reduce it.
- Build a logistic regression model in the practice lab.
Lessons
- 3.1Classification with logistic regression
- 3.2Cost function for logistic regression
- 3.3Gradient descent for logistic regression
- 3.4The problem of overfitting
- 3.5Week 3 practice lab: logistic regression
- 3.6Conversations with Andrew (Optional)
Neural NetworksWeek 4 • 7 lessonsWeek details
What you’ll learn
- Build intuition for how layers of neurons turn inputs into predictions.
- Implement a neural network in TensorFlow, then again in plain Python.
- Hear Andrew's thoughts on artificial general intelligence.
Lessons
- 4.1Neural networks intuition
- 4.2Neural network model
- 4.3TensorFlow implementation
- 4.4Neural network implementation in Python
- 4.5Speculations on artificial general intelligence (AGI)
- 4.6Vectorization(optional)
- 4.7Practice Lab: Neural networks
Neural network trainingWeek 5 • 6 lessonsWeek details
What you’ll learn
- Train a neural network in TensorFlow and choose its activation functions.
- Handle problems with more than two classes using multiclass classification.
- Learn, in an optional lesson, how backpropagation computes the gradients.
Lessons
- 5.1Neural Network Training
- 5.2Activation Functions
- 5.3Multiclass Classification
- 5.4Additional Neural Network Concepts
- 5.5Back Propagation (Optional)
- 5.6Practice Lab: Neural network training
Advice for applying machine learningWeek 6 • 4 lessonsWeek details
What you’ll learn
- Evaluate a model and decide what to try next when it falls short.
- Diagnose high bias or high variance.
- Follow the machine learning development process, with optional advice on skewed datasets.
Lessons
- 6.1Bias and variance
- 6.2Machine learning development process
- 6.3Skewed datasets (optional)
- 6.4Practice Lab: Advice for applying machine learning
Decision treesWeek 7 • 4 lessonsWeek details
What you’ll learn
- Build decision trees and choose which features to split on.
- Combine trees into ensembles such as random forests and boosted trees with XGBoost.
- Code a decision tree in the practice lab.
Lessons
- 7.1Decision tree learning
- 7.2Tree ensembles
- 7.3Practice Lab: Decision Trees
- 7.4Conversations with Andrew (Optional)
Unsupervised learningWeek 8 • 5 lessonsWeek details
What you’ll learn
- Group unlabeled data with clustering.
- Flag unusual examples with anomaly detection.
- Code both methods in two practice labs.
Lessons
- 8.1Welcome to the course!
- 8.2Clustering
- 8.3Practice Lab 1
- 8.4Anomaly detection
- 8.5Practice Lab 2
Recommender systemsWeek 9 • 6 lessonsWeek details
What you’ll learn
- Build a recommender with collaborative filtering.
- Build a content-based recommender with a deep learning method.
- Reduce data to fewer dimensions with principal component analysis.
Lessons
- 9.1Collaborative filtering
- 9.2Recommender systems implementation detail
- 9.3Practice lab 1
- 9.4Content-based filtering
- 9.5Practice lab 2
- 9.6Principal Component Analysis
Reinforcement learningWeek 10 • 6 lessonsWeek details
What you’ll learn
- Frame a problem in terms of states, actions and rewards.
- Use the state-action value function to choose actions.
- Train a deep reinforcement learning model for a task with continuous states.
Lessons
- 10.1Reinforcement learning introduction
- 10.2State-action value function
- 10.3Continuous state spaces
- 10.4Practice Lab: Reinforcement Learning
- 10.5Summary and thank you
- 10.6Conversations with Andrew (Optional)
FAQs
Do I get a certificate?
Yes. Certificate once you pass the graded work on a paid DeepLearning.AI Pro plan; free auditing gives none.
What do I need before I start?
Basic coding (for loops, functions, if/else statements) and high school math (arithmetic, algebra).
How long is it?
3 courses, about 10 weeks at 5 hours a week; you take it at your own pace.
See the lessonsWhich tools does it teach?
NumPy, scikit-learn and TensorFlow.
Who makes it?
Taught by Andrew Ng, Eddy Shyu, Aarti Bagul and Geoff Ladwig at DeepLearning.AI and Stanford Online. Recaply lists 1 course from DeepLearning.AI and Stanford Online.




