Skip to content
UdemyMachine LearningPaid courseBeginner levelCertificate

Data Science: Supervised Machine Learning in Python (Udemy.com)

Full Guide to Implementing Classic Machine Learning Algorithms in Python and with Scikit-Learn

Created by: Lazy Programmer Team

Last updated August 2026

Our take

Based on the ratings of 3,555 students and a sample of their written reviews. No course pays to be reviewed.

This is a short course, about 6.4 hours, that builds four classic algorithms by hand in Python: K-Nearest Neighbors, Naive Bayes and general Bayes classifiers, decision trees and the perceptron. After that it moves to hyperparameters, cross-validation, feature selection, a comparison with deep learning, scikit-learn and a small web service that serves predictions. The label says Beginner, but the requirements ask for Python, NumPy, Pandas, basic probability and strong algorithm-writing skills. Think of it as a course for people who already code.

Across 3,555 reviews the course averages 4.7. Happy reviewers say Lazy Programmer explains the math and the code clearly, and one likes that learning each algorithm and then coding it leads to better choices and more respect for tools like scikit-learn. Another calls the videos dense with information and suggests knowing calculus. The complaints are consistent. Lower-star reviews, mostly from 2017 to 2020, want more visuals, real-world examples and specific tasks instead of a theory lecture followed by go implement it yourself. One says the web service section is very minimal, and another notes that only classification is covered, not regression.

The course was last updated in 2026, which is recent. At 6.4 hours it is a quick way to see how these methods work underneath. Reviewers who wanted more guided tasks and a fuller web service may come away wanting extra material. We would pair it with a broader machine learning course for newcomers, and pick it up once Python is comfortable and the goal is from-scratch understanding.

Best forPython users who want to build classic ML algorithms from scratch and understand the math behind them.
Skip it ifYou want polished real-world projects, lots of visuals, or a gentle first step into machine learning.

Pros

  • Builds KNN, Bayes classifiers, decision trees and the perceptron from scratch in Python
  • Explains the math alongside the code, and reviewers call the teaching clear
  • Compact at 6.4 hours, with videos reviewers describe as dense with information
  • Moves on to cross-validation, feature selection and scikit-learn after the from-scratch work

Cons

  • Labeled Beginner, but it expects Python, NumPy, Pandas, probability and some calculus
  • Classification only, with no regression cases, according to one reviewer
  • Few visuals and specific exercises, and the web service section is thin
This was a very good course. I like the fact that we learned all of the algorithms and then coded them.
Steven Miller, a student

Suits coders comfortable with NumPy and basic probability, not true beginners, despite the Beginner label.

icon
What you will learn

  • Understand and implement K-Nearest Neighbors in Python
  • Understand the limitations of KNN
  • User KNN to solve several binary and multiclass classification problems
  • Understand and implement Naive Bayes and General Bayes Classifiers in Python
  • Understand the limitations of Bayes Classifiers
  • Understand and implement a Decision Tree in Python
  • Understand and implement the Perceptron in Python
  • Understand the limitations of the Perceptron
  • Understand hyperparameters and how to apply cross-validation
  • Understand the concepts of feature extraction and feature selection
  • Understand the pros and cons between classic machine learning methods and deep learning
  • Use Sci-Kit Learn
  • Implement a machine learning web service

How it compares

Against the other 155 rated Udemy courses in Machine Learning on CourseDuck:

  • Rating4.7 out of 5higher than 93% of them
  • Reviews3,555#27 of 156 by number of reviews
  • Length6.4 hoursshorter than 54% of them
  • Last updatedAugust 2026more recently than 90% of them

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 94 / 100

icon
Course Description

In recent years, we've seen a resurgence in AI, or artificial intelligence, and machine learning.

Machine learning has led to some amazing results, like being able to analyze medical images and predict diseases on-par with human experts.

Google's AlphaGo program was able to beat a world champion in the strategy game go using deep reinforcement learning.

Machine learning is even being used to program self driving cars, which is going to change the automotive industry forever. Imagine a world with drastically reduced car accidents, simply by removing the element of human error.

Google famously announced that they are now "machine learning first", meaning that machine learning is going to get a lot more attention now, and this is what's going to drive innovation in the coming years. It's embedded into all sorts of different products.

Machine learning is used in many industries, like finance, online advertising, medicine, and robotics.

It is a widely applicable tool that will benefit you no matter what industry you're in, and it will also open up a ton of career opportunities once you get good.

Machine learning also raises some philosophical questions. Are we building a machine that can think? What does it mean to be conscious? Will computers one day take over the world?

In this course, we are first going to discuss the K-Nearest Neighbor algorithm. It’s extremely simple and intuitive, and it’s a great first classification algorithm to learn. After we discuss the concepts and implement it in code, we’ll look at some ways in which KNN can fail.

It’s important to know both the advantages and disadvantages of each algorithm we look at.

Next we’ll look at the Naive Bayes Classifier and the General Bayes Classifier. This is a very interesting algorithm to look at because it is grounded in probability.

We’ll see how we can transform the Bayes Classifier into a linear and quadratic classifier to speed up our calculations.

Next we’ll look at the famous Decision Tree algorithm. This is the most complex of the algorithms we’ll study, and most courses you’ll look at won’t implement them. We will, since I believe implementation is good practice.

The last algorithm we’ll look at is the Perceptron algorithm. Perceptrons are the ancestor of neural networks and deep learning, so they are important to study in the context of machine learning.

One we’ve studied these algorithms, we’ll move to more practical machine learning topics. Hyperparameters, cross-validation, feature extraction, feature selection, and multiclass classification.

We’ll do a comparison with deep learning so you understand the pros and cons of each approach.

We’ll discuss the Sci-Kit Learn library, because even though implementing your own algorithms is fun and educational, you should use optimized and well-tested code in your actual work.

We’ll cap things off with a very practical, real-world example by writing a web service that runs a machine learning model and makes predictions. This is something that real companies do and make money from.

All the materials for this course are FREE. You can download and install Python, Numpy, and Scipy with simple commands on Windows, Linux, or Mac.

This course focuses on "how to build and understand", not just "how to use". Anyone can learn to use an API in 15 minutes after reading some documentation. It's not about "remembering facts", it's about "seeing for yourself" via experimentation. It will teach you how to visualize what's happening in the model internally. If you want more than just a superficial look at machine learning models, this course is for you.


"If you can't implement it, you don't understand it"

  • Or as the great physicist Richard Feynman said: "What I cannot create, I do not understand".

  • My courses are the ONLY courses where you will learn how to implement machine learning algorithms from scratch

  • Other courses will teach you how to plug in your data into a library, but do you really need help with 3 lines of code?

  • After doing the same thing with 10 datasets, you realize you didn't learn 10 things. You learned 1 thing, and just repeated the same 3 lines of code 10 times...


Suggested Prerequisites:

  • calculus (for some parts)

  • probability (continuous and discrete distributions, joint, marginal, conditional, PDF, PMF, CDF, Bayes rule)

  • Python coding: if/else, loops, lists, dicts, sets

  • Numpy, Scipy, Matplotlib


WHAT ORDER SHOULD I TAKE YOUR COURSES IN?:

  • Check out the lecture "Machine Learning and AI Prerequisite Roadmap" (available in the FAQ of any of my courses, including the free Numpy course)


UNIQUE FEATURES

  • Every line of code explained in detail - email me any time if you disagree

  • No wasted time "typing" on the keyboard like other courses - let's be honest, nobody can really write code worth learning about in just 20 minutes from scratch

  • Not afraid of university-level math - get important details about algorithms that other courses leave out

icon
Udemy Discount

The discount is applied through our link. Open the course from here and Udemy's current promotional price is applied at checkout on most courses, no code to type.

Some courses are excluded from Udemy's promotions. If the price does not drop, clear your browser cookies and use the button again.

icon
Instructor Details

Lazy Programmer Team

The Lazy Programmer is a seasoned online educator with an unwavering passion for sharing knowledge. With over 10 years of experience, he has revolutionized the field of data science and machine learning by captivating audiences worldwide through his comprehensive courses and tutorials.


Equipped with a multidisciplinary background, the Lazy Programmer holds a remarkable duo of master's degrees. His first foray into academia led him to pursue computer engineering, with a specialized focus on machine learning and pattern recognition. Undeterred by boundaries, he then ventured into the realm of statistics, exploring its applications in financial engineering.


Recognized as a trailblazer in his field, the Lazy Programmer quickly embraced the power of deep learning when it was still in its infancy. As one of the pioneers, he fearlessly embarked on instructing one of the first-ever online courses on deep learning, catapulting him to the forefront of the industry.


icon
More courses by Lazy Programmer Team

$79.99

$29.99

$29.99

$29.99

Free

$29.99

icon
Reviews

4.7

3,555 ratings on Udemy

Select a bar to show only those reviews.Select the bar again to show every rating.

By Pravin Ajabrao Thakre on 6/29/2024

Because this course is nicely designed for the beginners. Instructors were so good to explain. This course really helped me out to acquire new the skills.Only thing is that I have been doing programming using Jupyter note book but in this course the codes are written on different platform so much more time is required. Any ways I have done coding looking towards the screen while doing this course. Eventually it was my wonderful experience to take this course.

By Rylee White on 2/7/2022

Whether you want to learn a new skill or take on a role as a data scientist, this course is strongly recommended. Lazy Programmer's teaching style is engaging and the course will challenge you in a multitude of ways. It gives you a real understanding of what machine learning is all about.

By Odai Aldawoud on 9/15/2020

The instructor goes above and beyond. All of the slides are completely relevant, and the material is equivalent to a college level course from top universities. The instructor has a very nice way of teaching, which is to give you material and ask you to pause and think about a problem on your own. Then, gives you the solution for your verification. In addition, the code is made readily available and requires no work to get!! This course is not a class on "How to code these algorithms" which can be very tough, but rather "The intuition on why these algorithms work the way they do" for very simple cases, built up to real world, practical examples. Thank you for this...

By Josefine Svegborn on 2/4/2020

This course delivers on its promises. The teacher goes straight to the point and explains complex theory in a concise way without leaving too many stones unturned. My only issue is the fact that the teacher expects the student to figure out all associated setup by themselves and the same expectations are shown in his QA-answers (where he points to resources rather than providing direct answers). This seem to be his teaching philosophy however, which he had good arguments for (in the Appendix). It's just not my favourite approach as I think it's more time-consuming than useful at times. The course is well worth the price!

By Brian Tang on 12/23/2019

This is the perfect course for anyone who read some blogs or youtube videos about machine learning and wants to know how they really work. I get disappointed seeing course after course only covering how to use scikit learn and this course finally has the intricate level of detail I've been seeking. Every example is completed using only the basic libraries so you are building from a blank state. Even if you don't have a mathematical background the intuition is enough to get started.

By Adam DeJans Jr. on 6/12/2019

Overall this is an okay course at best. Although it goes over some basic machine learning techniques there is quite a bit you can do with these simple techniques. Bayes classifiers are presented using mathematics and all algorithms in this course are coded from scratch - this is a great skill to have. This course also discusses the complexities of implementations and provides some food for thought on implementation. "Building a Machine Learning Web Service" is very minimal and not what I expected (would like to see it deployed to a web-page). In fact you can Google ML & web-apps and get a much more insightful tutorial for free. This course goes over the machine-learning algorithms and not so much of the process a data-scientist would go through.

By Zachary Fitzpatrick on 11/14/2018

Another great course by this content creator. The challenge feels about right and the level of depth is appropriate. The course is quite instructional and descriptive, where the methods referenced within are competently explained. It also very apparent that much of the course feels approachable but hints at a lot of future content which is much deeper which I find very motivating.

By Caspar Thomas on 10/24/2017

Very high quality. The subject matter is explained well and thoroughly. Crucially, compared to some courses in data science and machine learning, the mathematical derivations behind the code are covered in depth. This means the lectures can be challenging, however the insight gained is well worth the effort. These are not only the best courses I have taken to date on Udemy - these are among the most interesting lectures I have ever followed, period.

By Rémi Connesson | Python - Data Science - on 9/13/2017

Just finished it (btw don't let yourself fooled by the 3.5h of videos, implementing the code in the lectures will keep you busy a couple of days). My opininion : very good value right there. Instructor is present to answer questions and this class goes beyond simple intuition to give good practical knowledge (like the hand implementation of decision tree algorithm). Prerequisites are indeed important and not explained during the course, this make the course really fluid are interesting. Bonus: Implementation of a simple web-app is pretty cool stuff too.

By Dru Zod on 4/30/2017

Another great course! The initial Perceptron lectures were a little confusing for someone who had never heard about them before. But after watching a YouTube video by Bert Huang from V. Tech on Perceptrons everything made a lot more sense. This course as a guide plus other online resources (eg Youtube) is a powerful combination. Excited to continue through the rest of these courses!

By Jeramie Goodwin

Most of the course (so far) has been conceptual with little examples

By Ricardo Zaragoza

Very interesting lectures, materials are explained in an engaging manner. I liked all the exercises especially building a machine learning web service. It's a great course for learning the end to end concepts of ML.

Showing 12 of 99 reviews