Skip to content
UdemyData SciencePaid courseIntermediate levelCertificate

Data Science: Deep Learning and Neural Networks in Python (Udemy.com)

The MOST in-depth look at neural network theory for machine learning, with both pure Python and Tensorflow code

Created by: Lazy Programmer Inc.

Last updated August 2026

Our take

Based on the ratings of 10,287 students, a sample of their written reviews and the syllabus, as the course stood in August 2026. No course pays to be reviewed.

This is a theory-first course on neural networks. It starts from a single neuron, extends it to many classes with softmax, derives backpropagation, and then codes it in numpy before moving to TensorFlow. It runs about 12 hours across 90 lectures and ends with a facial expression recognition project. It suits people who want to know why training works, not just which function to call, and who can already handle some calculus and Python.

Reviewers keep praising the same thing: the math is detailed, and writing the network by hand makes backpropagation finally click. One reader said it cleared up most of what confused them in a later NLP course. Students like that Lazy Programmer Inc. pushes them to try each derivation first. The complaints are consistent too. The calculus is heavier than the prerequisites suggest, code is not always tied back to the earlier equations, and one reviewer got tired of hearing what the course is not about.

The ratings are strong. Of about 10,300 reviews, roughly 6,200 are five stars and 3,300 are four. The course was last updated in August 2026, so a 2016 release has been kept fresh. We'd point it at anyone who wants foundations first. Skip it if you only want a fast framework tour, and consider the instructor's logistic regression course beforehand if gradient descent feels shaky.

Best forPeople who want to derive and code backpropagation in numpy before touching a framework.
Skip it ifYou want a quick TensorFlow tour, or calculus derivatives make you nervous.

Pros

  • Builds the network in plain numpy, slow way then fast way, so backprop stops being a black box
  • Derives backpropagation from first principles, which reviewers say is hard to find in this detail
  • Jupyter notebooks and datasets are included so students can run the experiments themselves
  • Ends with a facial expression recognition project, plus a website user-action example along the way

Cons

  • Calculus load is heavier than the listed prerequisites suggest, according to one reviewer who struggled
  • Code is not always linked back to the earlier equations, which left some reviewers lost
  • Repeated reminders of what the course is not about wore on at least one reviewer
Serious and solid course on the nuts and bolts of deep learning, with emphasis on its backbone: backpropagation.
Charles Yamamura, a student

Intermediate fits: expect calculus derivatives, matrix math and some Python, ideally after the logistic regression course.

icon
What you will learn

  • Learn how Deep Learning REALLY works (not just some diagrams and magical black box code)
  • Learn how a neural network is built from basic building blocks (the neuron)
  • Code a neural network from scratch in Python and numpy
  • Code a neural network using Google's TensorFlow
  • Describe different types of neural networks and the different types of problems they are used for
  • Derive the backpropagation rule from first principles
  • Create a neural network with an output that has K > 2 classes using softmax
  • Describe the various terms related to neural networks, such as "activation", "backpropagation" and "feedforward"
  • Install TensorFlow
  • Understand important foundations for OpenAI ChatGPT, GPT-4, DALL-E, Midjourney, and Stable Diffusion

Course content

15 sections · 90 lectures · 12 hours of video 4 quizzes

  1. 1Welcome 1 free preview3 lectures · 22 min
  2. 2Review6 lectures · 31 min
  3. 3Preliminaries: From Neurons to Neural Networks2 lectures · 13 min
  4. 4Classifying more than 2 things at a time15 lectures · 1.8 hours
  5. 5Training a neural network16 lectures · 2.7 hours
  6. 6Practical Machine Learning10 lectures · 49 min
  7. 7TensorFlow, exercises, practice, and what to learn next6 lectures · 53 min
  8. 8Project: Facial Expression Recognition8 lectures · 1 hour
  9. 9Backpropagation Supplementary Lectures5 lectures · 30 min
  10. 10Higher-Level Discussion 1 free preview4 lectures · 39 min

Who it is for

The instructor says it suits

  • Students interested in machine learning - you'll get all the tidbits you need to do well in a neural networks course
  • Professionals who want to use neural networks in their machine learning and data science pipeline. Be able to apply more powerful models, and know its drawbacks.

What you need before you start

  • Basic math (calculus derivatives, matrix arithmetic, probability)
  • Install Numpy and Python
  • Don't worry about installing TensorFlow, we will do that in the lectures.
  • Being familiar with the content of my logistic regression course (cross-entropy cost, gradient descent, neurons, XOR, donut) will give you the proper context for this course

How it compares

Against the other 461 rated Udemy courses in Data Science on CourseDuck:

  • Rating4.7 out of 5higher than 85% of them
  • Reviews10,287#18 of 462 by number of reviews
  • Length12.2 hourslonger than 63% of them
  • Last updatedAugust 2026more recently than 88% of them

icon
Quality Score

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

Overall Score : 94 / 100

icon
Course Description

Ever wondered how AI technologies like OpenAI ChatGPT, GPT-4, DALL-E, Midjourney, and Stable Diffusion really work? In this course, you will learn the foundations of these groundbreaking applications.

This course will get you started in building your FIRST artificial neural network using deep learning techniques. Following my previous course on logistic regression, we take this basic building block, and build full-on non-linear neural networks right out of the gate using Python and Numpy. All the materials for this course are FREE.

We extend the previous binary classification model to multiple classes using the softmax function, and we derive the very important training method called "backpropagation" using first principles. I show you how to code backpropagation in Numpy, first "the slow way", and then "the fast way" using Numpy features.

Next, we implement a neural network using Google's new TensorFlow library.

You should take this course if you are interested in starting your journey toward becoming a master at deep learning, or if you are interested in machine learning and data science in general. We go beyond basic models like logistic regression and linear regression and I show you something that automatically learns features.

This course provides you with many practical examples so that you can really see how deep learning can be used on anything. Throughout the course, we'll do a course project, which will show you how to predict user actions on a website given user data like whether or not that user is on a mobile device, the number of products they viewed, how long they stayed on your site, whether or not they are a returning visitor, and what time of day they visited.

Another project at the end of the course shows you how you can use deep learning for facial expression recognition. Imagine being able to predict someone's emotions just based on a picture!

After getting your feet wet with the fundamentals, I provide a brief overview of some of the newest developments in neural networks - slightly modified architectures and what they are used for.

NOTE:

If you already know about softmax and backpropagation, and you want to skip over the theory and speed things up using more advanced techniques along with GPU-optimization, check out my follow-up course on this topic, Data Science: Practical Deep Learning Concepts in Theano and TensorFlow.

I have other courses that cover more advanced topics, such as Convolutional Neural Networks, Restricted Boltzmann Machines, Autoencoders, and more! But you want to be very comfortable with the material in this course before moving on to more advanced subjects.

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 (taking derivatives)

  • matrix arithmetic

  • probability

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

  • Numpy coding: matrix and vector operations, loading a CSV file

  • Be familiar with basic linear models such as linear regression and logistic regression


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)

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 Inc.

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 Inc.

$99.99

$149.99

$22.99

$79.99

$109.99

$99.99

icon
Reviews

4.7

10,287 ratings on Udemy

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

By Twan Wolthaus on 5/21/2024

I was exited to take this course but when I faced the Deep Learning Readiness Test, I was taken by surprise. I couldn't do a singe equation. I had read the prerequisites but this course expected a much deeper understanding about calculus than I expected. So yeah, I can write neural networks now, but I still don't understand the "why" behind the math that you tried to teach me. Throughout the whole course you said "try to do this yourself first" where I (with increasing feelings of guilt) just skipped to the answer right away every time. The math was way to much for me anyway, plus I have this deadline coming closer (I have to implement this stuff for a school assignment in a few weeks). Your teaching skills are amazing, as well as your documentation and your understanding of why people want to take your courses (i.e. explaining where the math equations come from). However, please find a way to put a Readiness Test in the prerequisites because I have actually learned very little from this course.

By Oleksandr Yanov on 10/19/2022

Very useful course. I get the skills to code my own NN from the scratch using python only. Now I am sure I can do it without looking up to this course. The author does a very good job of insisting you do things by yourself. And it is really important to fully understand a topic and acquire the skill. This course is a must for any more advanced NN course. I started from advanced NLP, and finished it but had a really hard time figuring out what is going on inside the model. This course sorted 90% out for me. What to improve some formulas conversion might be described better, I was stuck in a few places, but nothing I couldn't sort out without google.

By Mateusz B on 8/11/2022

Just ended the core part of the course. For me it was a perfect oppurtunity to learn more about basic concepts of Deep Learning that were not properly explained during my AI classes. I think the strongest side of this course was to not learn syntax and oblige to write ANN using numpy. It was totally a new experience for me and finally allowed me to understand basic concepts. My level before course: I could use several API and I knew the concept of backpropag but I was not capable of calculate this on my own.

By Dusan Perovic on 8/25/2021

This course is perfect match for those professionals that want to enter the world of deep learning from explanatory aspect. The best thing is instructor approach towards the content of the course and precise way of explaining topic with including every step in both math and programming path. This course will definitely provide some initial knowledge about how neural networks work and why are they used for. the only thing is that this basic knowledge about neural networks should be improved with further research and practice by professionals that took this course. At the end, special gratitude to the instructor for forcing me to review math (calculus) knowledge from university. It is something that does not hurt and by contrary it is only useful.

By Frederick Zhang on 4/30/2021

This is going to be the longest Udemy course review I've written thus far. The executive summary is thus as follows: I am very glad I took this course. The course is the third in the Deep Learning track after the Linear and Logistic Regression courses, so you should either have taken them or be familiar with the material before attempting this one. The core topic of this course is backward propagation, which is a fancy name for gradient descent. However, you should not underestimate the math involved -- it gets very complicated. If you are familiar with undergrad calculus, particularly how to solve for derivatives using the Chain Rule, you won't be learning too much new math. That does not mean the math you'll be doing is simple or easy. It is neither! You will be calculating gradient descent for the Sigmoid and Softmax activation functions and the instructor insists you do them by hand -- calculations that can take days for you to do correctly. It's a whole different ball game from deriving linear regression equations. A matter of uncertainty I've had for a while that this course cleared up for me is this: Sigmoid is used for binary classification, whereas Softmax is used for multiclass classification (K = 3+). If you have a job interview in a month, I'd recommend for you to review at least this course and maybe even Logistic Regression because unless you have an eidetic memory or manually calculate Softmax gradient descent on a weekly basis, there is no way you will remember how to do any of the math. Personally, though, I cannot imagine any real-world scenario in which you would actually need to unless you’re implementing your own ANN from scratch. It's mostly important that you understand the concept of what it means and how it works. That is what I learned from this course, and I'm very grateful that the instructor took the time to flesh out the math for us. With that said, if there is one component I feel missing from the course, it’s a walkthrough of Softmax derivation with a sample dataset. The instructor was kind enough to supply some supplemental materials in the appendix lectures, which are indeed very helpful, but I was so hoping for an actual walkthrough along the lines of the Feedforward in Slow Motion lectures in which we applied Sigmoid derivation on a small dataset. Given that backprop is the crux of the course and the foundation of more complicated neural networks, such as CNNs and RNNs, I feel it is super important to get the concept really drilled in with actual numbers and not just k primes and y primes. Even so, I'll probably need to review this course if I ever plan on interviewing for any Deep Learning position. Again, to sum up, this is a very good course -- perhaps the most math-intensive of any AI/ML course I've ever taken. If you're serious about learning how to build ANNs from the ground up, this course is for you. You're probably going to feel very stupid, but you'll be glad you took the time and stuck with it.

By Orlando Cortez on 2/9/2020

Definitivamente es un curso que recomendaría, sin embargo, como lo deja bien claro el autor, es necesario tomar los cursos de prerequisitos (Linear Regression y Logistic Regression, si no tienes fundamentes en programación también requieres los cursos de Python que también imparte el autor) para lograr comprender lo que aquí se aborda. A diferencia de otros cursos, no presenta las redes neuronales como una "caja negra" sino que plantea las matemáticas detrás de las redes neuronales para que puedes comprender lo que está sucediendo. Este curso no es fácil de digerir, se requiere de tiempo y muchas veces revisitar los conceptos.

By Anish Sah on 4/17/2019

This is an amazing course to kickstart your foray into Machine Learning. As LazyProgrammer himself puts it, most courses out there will merely teach you how to use APIs, but not actual Machine Learning! I am just grateful for having taken up this course and also wish that i had taken it up earlier! One suggestion(not specific to this tutor alone) - It might be more fun and also beneficial for learners if courses on Udemy also have a final project to evaluate learners. Thanks, Anish

By Frank Massoda on 12/17/2018

If You want to learn Deep Learning Come Here otherwise go away, other course teach you the API, but here we are studying Deep Learning in depth, after taking all the prerequisities and taking this course was able to write my first Deep Learning Model by my own, all in PYTHON with NO API only Numpy Stack, Thank Very Much Lazy, was Thinking Deep Learning was a hard thing to begin with, but Lazy Programmer make that thing simple as doing addition but for that you must take all the prequisities first and put time in it 5 stars++++++++ Now Next Step Modern Deep Learning==> Convo==>LSTM

By John Chu on 8/31/2018

I am so glad to have discovered the entire machine learning series worthy of my time. Admittedly, I watched several free videos and wasn't very impressed by the lack of substance. Then, I saw the advanced math prerequisites in the course outline and I decided to give it a try. And, boy, I'm glad in the investment because it is so satisfying to derive the equations and actually see results in code. I have since watched and re-watched the whole video several times, while gaining insight each and every time. The fact the course has been updated with new materials is a strong indication the lecturer cares about completeness and the content is brilliantly laid out. While you many not get it on the first go, the reward awaits those who are willing to put the time and strong perseverance. There's no free lunch here.

By Jevgenijs Kaktins on 10/13/2017

This is a great intellectual exercise for your brain for sure, it should recognize the pattern... Actually it is great if you can take the course with swiftly moving forward to grasp general concepts and then use backpropagation technique to study the details more carefully (e.g. refresh you calculus skills). I wish though more explanations were given on the way not just typing along the code, maybe taking the code still and explain what's going on would be better. It gives immense amount of complex information to think about and ideas how to implement it.

By Sumit Belwal

Theoretically a good course .

But lacks a full time practical use case.

By Nupur Somwanshi

Mathematics is not easy to understand. I want my money back.

Showing 12 of 77 reviews