Welcome! This repository contains all of the code, notebooks, images and other materials related to the Zero to Mastery Machine Learning Course on Udemy and zerotomastery.io.
- 🎥 Watch the first 10 hours of the course on YouTube.
- 📚 Read the materials of the course in a beautiful online book.
- 🤔 Found something wrong with the code? Leave an issue.
- ❓ Got a question? Post a discussion (see the question template).
- 30 October 2024 - Add course book version of Milestone Project 2: Bulldozer Price Regression (updated for 2025 onwards)
- 12 September 2024 - Working on updating the materials for 2025, see progress in #105
- 12 October 2023 - Created an online book version of the course materials, see: https://dev.mrdbourke.com/zero-to-mastery-ml/
The following contents are listed in suggested chronological order.
But feel free to mix in match in anyway you feel fit.
Note: All of the datasets we use in the course are available in the
data/
folder.
Section | Resource | Description |
---|---|---|
00 | A 6 step framework for approaching machine learning projects | A guideline for different kinds of machine learning projects and how to break them down into smaller steps. |
01 | Introduction to NumPy | NumPy stands for Numerical Python. It's one of the most used Python libraries for numerical processing (which is what much of data science and machine learning is). |
02 | Introduction to pandas | pandas is a Python library for manipulating and analysing data. You can imagine pandas as a programmatic form of an Excel spreadsheet. |
03 | Introduction to Matplotlib | Matplotlib helps to visualize data. You can create plots and graphs programmatically based on various data sources. |
04 | Introduction to Scikit-Learn | Scikit-Learn or sklearn is full of data processing techniques as well as pre-built machine learning algorithms for many different tasks. |
05 | Milestone Project 1: End-to-end Heart Disease Classification | Here we'll put together everything we've gone through in the previous sections to create a machine learning model that is capable of classifying if someone has heart disease or not based on their health characteristics. We'll start with a raw dataset and work through performing an exploratory data analysis (EDA) on it before trying out several different machine learning models to see which performs best. |
06 | Milestone Project 2: End-to-end Bulldozer Price Prediction | In this project we'll work with an open-source dataset of bulldozer sales information. We'll use this data to build a machine learning model capable of predicting the sales price of a bulldozer based on several input parameters such as size and brand. Since this dataset isn't perfect, we'll work through several data preprocessing steps before building a model. And since we'll be working towards predicting a number (price of bulldozers), this project is known as regression project. |
07 | Milestone Project 3: Introduction to TensorFlow/Keras and Deep Learning | TensorFlow/Keras are deep learning frameworks written in Python. Originally created by Google and are now open-source. These frameworks allow you to build and train neural networks, one of the most powerful kinds of machine learning models. In this section we'll learn about deep learning and TensorFlow/Keras by building Dog Vision 🐶👁️, a neural network to identify dog breeds in images. |
08 | Communicating your work | One of the most important parts of machine learning and any software project is communicating what you've found/done. This module takes the learnings from the previous sections and gives tips and tricks on how you can communicate your work to others. |
- Create a framework for working through problems (6 step machine learning modelling framework)
- Find tools to fit the framework
- Targeted practice = use tools and framework steps to work on end-to-end machine learning modelling projects
- Section 1 - Getting your mind and computer ready for machine learning (concepts, computer setup)
- Section 2 - Tools for machine learning and data science (pandas, NumPy, Matplotlib, Scikit-Learn)
- Section 3 - End-to-end structured data projects (classification and regression)
- Section 4 - Neural networks, deep learning and transfer learning with TensorFlow 2.0
- Section 5 - Communicating and sharing your work
Some students have taken and shared extensive notes on this course, see them below.
If you'd like to submit yours, leave a pull request.