Neural Networks In Python From Scratch. Build step by step! (Udemy.com)
Understand machine learning and deep learning by building linear regression and gradient descent from the ground up.
Created by: Loek van den Ouweland
Last updated January 2026
What you will learn
- The basic functions for any neural network, by coding linear regression, cost functions and back propagation
- Understand the properties of neural networks by adjusting learning rates and biases
- Train a network by implementing a gradient descent algorithm
- Normalizing inputs for multi-input networks
- Create classification networks by implementing multiple output neurons and activation
- Improve network accuracy by implementing hidden layers for non-linear data
Course Description
You will learn how to build Neural Networks with Python. Without the need for any library, you will see how a simple neural network from 4 lines of code, evolves into a artificial intelligence network that is able to recognize handwritten digits.
During this process, you will learn concepts like: Feed forward, Cost functions, Back propagation, Hidden layers, Linear regression, Gradient descent and Matrix multiplication. And all this with plain Python.
Target audience
Developers who especially benefit from this course, are:
Developer who want to learn the mechanics of neural networks
Developers who want to avoid using neural network libraries and frameworks
Or developers who use frameworks but want to learn the meaning of the individual network parameters
Challenges
Many tutorials claim to start from scratch, but import external libraries or rapidly type in code and before executing even once, you are looking at 50 lines of code. When finally the code is run, you are totally lost and still stuck trying to understand line 3.
This causes many students to give up learning Neural Networks.
This course is different! It starts with the absolute beginning and each topic is a continuation of a previous example. This way, you will learn neural networks from the ground up, step by step.
What can you do after this course?
You understand neural network concepts and ideas, like back propagation and gradient descent.
You are able to build a neural network in any programming language of choice, without the help of frameworks and libraries.
You understand how to better configure the network by plugging in different cost functions and adding hidden layers.
Topics
Linear regression
Cost functions
Bias
Multiple inputs
Normalisation
Gradient descent
Classification
Activation
Multi-class classification
Non-linear data
Hidden layers
Duration
3 hour video time. This course has no exercises.
The teacher
This course is taught by Loek van den Ouweland, a senior software engineer with 25 years of professional experience. Loek is the creator of Wunderlist for windows, Microsoft To-do and Mahjong for Windows and loves to teach software engineering.
Students of this course tell me:
* * * * * “Great, simple explanations. Perfect for beginners that have little pre knowledge of the topic.”
* * * * * “Straight to the point starting with the foundations.”
* * * * * “Clearly explained step by step how Neural Networks work and can be developed in a pure development language of choice without the usage of any external package..”
Instructor Details
- 4.5 Rating
440 Reviews
Loek van den Ouweland
Loek van den Ouweland (Wunderlist, Microsoft Todo) is a born teacher. Right from the start of his career, he was told that a programmer helps his customers best when he shows what his products can do and how they are built.
He worked in many companies as programmer and trainer and enjoys to share the secrets of programming with others.
Loek has 30 years of experience training people with different backgrounds, all ages, working in branches ranging from medical systems to manufacturing and academics to aerospace.
More courses by Loek van den Ouweland
Object Oriented Programming (OOP) with Python for beginners (2026)
4.8 (531 Reviews)
Provider: Udemy
Time: 2.3h
$64.99
More Deep Learning courses
A deep understanding of deep learning (with Python intro) (2026)
4.8 (6,559 Reviews)
Provider: Udemy
Time: 57.3h
$109.99
Deep Learning Prerequisites: Logistic Regression in Python (2026)
4.8 (4,922 Reviews)
Provider: Udemy
Time: 6.9h
$109.99
Data Science: Transformers for Natural Language Processing (2026)
4.8 (3,034 Reviews)
Provider: Udemy
Time: 19.1h
$79.99
Complete Tensorflow 2 and Keras Deep Learning Bootcamp (2022)
4.7 (8,938 Reviews)
Provider: Udemy
Time: 19.2h
$16.99
Deep Learning: Advanced Computer Vision (GANs, SSD, +More!) (2026)
4.7 (7,132 Reviews)
Provider: Udemy
Time: 17.2h
$124.99
Reviews
By Abidal Joel on 5/16/2025
Loek is a great teacher. I had already applied deep learning using the Keras API, but I must admit that I was a bit stuck in fine-tuning the networks based only on simple personal recipes alternating the tweaking of epochs and learning rate. Learning to implement networks from scratch, including the cost and activation functions, is really helpful even for using APIs. Don't rely on the length of the course, there really is plenty of stuff that are consistent and keep you busy. And the progression is logical, adding new elements as you go along at the right pace, but you only benefit from it if you are very active in rebuilding things (like to redo everything in numpy).
By Carsten Breum on 2/6/2025
If you really want to understand the basic behind Machine Learning and Neural Networks this course give you the foundation without all the Numpy and SKLearn and bla bla imports other uses. Loek van den Ouweland does a fantastic job of explaining what in reality is complex material in a simple easy to understandable way. He doesn't cut corners in 80% of the course. Only in the final section he "cheat" by having the code printed probably by a script while saying nothing. It's matter of taste. I would have preferred a simple copy/paste and then a quick explanation of the lines. It can be quick since we already learning the meaning of it all (if one can remember :-) ). I certainly highly recommend this course to anyone starting out in this field. I am one of them who bought a course by Lazyprogrammer only to get frustrated by not understanding what the heck went on. I normally work with C#, typescript, javascript, C++ etc and never touched Python. Yes, I have avoided Python because I didn't like the syntax, but I quickly picked it up. An improvement to the order of things would be to move the Q&A from Section 8 to section 2. I came a little late but from Loek van den Ouweland's explanations during the course I figured out what the syntax meant. This is just the way a course should be build. It's a fantastic job. Thanks Loek van den Ouweland!!
By Harm van der Haas on 11/5/2024
This is an excellent resource for anyone eager to understand the fundamentals of neural networks through practical coding. Its emphasis on using pure Python and mathematical concepts provides a clear and engaging learning experience. By building neural networks incrementally, participants not only gain a solid foundation in the subject but also develop valuable coding skills applicable to real-world problems. This course is highly recommended for both beginners and those looking to deepen their understanding of machine learning.
By Alaa E on 7/29/2024
This course is not teaching anything that you can not get free from anywhere else. He said that he will teach from scratch, but he just provided scratch and that is it. I do not know how does some body teach neural network with just one hidden layer, it is not even deep learning, Quote from GPT "A neural network with only one hidden layer is generally not considered deep learning ", he does not bother himself to generalize feed forward for example, because he only has 2 sets of weights and biases and programing them one by one "not practical" who everybody can do. sucks, I which if I did not wasted my time and money on this nonsense.
By Spas Stoimenov on 1/3/2024
The course was very useful, especially compared to other content I have used such as YouTube videos. With very limited experience on the topic, I was able to understand all the details of the process. I do think it is a very good decision that all the code is done in vanilla Python with no libraries, it was very beneficial to my understanding of the specifics of the process. There is a lot of information packed into every section and personally, it took me around five days to fully absorb all the information and complete the course. Definitely would recommend it.
By Brian Brooks on 1/2/2024
Very interesting seeing the basics of how neural networks work. The course would benefit from a bit more explanation/illustration of what's happening when matrices are being multiplied, and perhaps a little more on how the Python matrix processing commands are working (nested within nested). Also, it would be good to have the final code available as a resource; I have one example typed in that works, and gives values close to those shown in the video, but I can't see where my code differs! Also, perhaps the same code but using the Numpi libraries. But overall, a good intro to a complex subject - my interest is whetted, I'm now looking for a follow-on course!
By Nils Kraschienski on 10/25/2023
- The trainer gives concise and understandable explanations. - The pace is quite high, but actually this is good because either you get it on the first run and don't loose time with lengthy explanations, or you don't get it on the first time and just watch it again. - The choice of not using any libraries makes sense to me, because like this you really understand the underlying concepts. If you don't want / need this, just choose another course on Udemy. :) - The examples are well chosen in my opinion. - The English is well understandable. - Answers in the Q&A section are very good too. Quite some times when I had a question in my head I directly found it answered there. - What I didn't like is that the explanations given regarding the Python code are quite short. Experienced programmers will appreciate this but I was quite lost sometimes. Decide for yourself if you need more explanations (maybe choose a different course?) or are ok with googling and doing research on all the used python funcitons, syntax and concept yourself. However, as this course is not a Python introduction but an introduction to neural networks using Python only as a tool ... it's fine :D
By Lewis Wakeford on 10/17/2023
As a programmer that found other introductions to neural networks too purely mathmatical or too academic to digest easily, this was exactly what I needed as starting point to break through the ice. It's clear, conscise, and well paced. I am not particularly familiar with python, but nothing stepped too far into language specifics that I couldn't understand. My only mild critisicsm was lots of video time in the later videos was spent re-typing code that could have been copy-pasted and adjusted.
By Turki AlBakr on 7/7/2023
This is one of the greatest courses that I have taken. It takes you step by step until you get good understanding of the whole topic. After I have completed the course I can say that this course is essential for those who want to understand the basics fo neural networks. This course will provide you with the neccessary knowledge to proceed in the field of neural network. However, I think I still need to practice a lot in order to master neural networks. Many thanks for the corse instructor which I believe had put lots of efforts to implement the course
By Branislav Valacsay on 6/11/2023
This course is absolutely fantastic for anyone that is looking to start to meddle with neural networks. What I was looking for is to build own Neural Network from scratch, no frameworks + reasonable lenght, just to get a hint of it - a baseline on which to build upon. This is THE course. I have over dozen trainings here on Udemy for the topic (some in wishlist), I have seen some youtube videos, tutorials at sites like w3schools. None of those are as good and explanation-friendly as this course. Here, you will get explained everything with its actual purpose in the Neural Network construct, not just "use this command and let's move on". Teacher speaks slowly and clearly with good accent for me, as non-native English speaker. - Very good pace of the training. After Softmax lesson, you will need to go through some lectures several times, but that is normal, do not worry - Great explanation, information make sense and topics are connected. - Finally, someone explained to me hidden layer, its construction and purpose - Teacher focuses also on potential issues you might face and fixes them - Solution works ! - Python - it won't get any easier Overall, this course is a must-have and I am happy and grateful that I was able to get my hands on it. Thank you.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 90 / 100







