Neural Networks in Python from Scratch: Learning by Doing

From intuitive examples to image recognition in 3 hours – Experience neuromorphic computing & machine learning hands-on

This course is for everyone who wants to learn how neural networks work by hands-on programming!

What you’ll learn

  • Program neural networks for 3 different problems from scratch in plain Python.
  • Start simple: Understand input layer, output layer, weights, error function, accuracy, training & testing at an intuitive example.
  • Complicate the problem: Introduce hidden layers & activation functions for building more useful networks.
  • Real-life application: Use this network for image recognition.

Course Content

  • Introduction: Interpolation & Machine learning –> 3 lectures • 30min.
  • Your first neural network: Sum of two numbers –> 10 lectures • 1hr 8min.
  • Modifying the problem: Sign of the sum of two numbers –> 6 lectures • 56min.
  • Same code, different problem: Image recognition –> 4 lectures • 34min.
  • Outlook & Goodbye –> 3 lectures • 15min.
  • [Resources] –> 3 lectures • 9min.

Neural Networks in Python from Scratch: Learning by Doing


This course is for everyone who wants to learn how neural networks work by hands-on programming!

Everybody is talking about neural networks but they are hard to understand without setting one up yourself. Luckily, the mathematics and programming skills (python) required are on a basic level so we can progam 3 neural networks in just over 3 hours. Do not waste your time! This course is optimized to give you the deepest insight into this fascinating topic in the shortest amount of time possible.

The focus is fully on learning-by-doing and I only introduce new concepts once they are needed.

What you will learn

After a short introduction, the course is separated into three segments – 1 hour each:

1) Set-up the most simple neural network: Calculate the sum of two numbers.
You will learn about:

  • Neural network architecture
  • Weights, input & output layer
  • Training & test data
  • Accuracy & error function
  • Feed-forward & back-propagation
  • Gradient descent

2) We modify this network: Determine the sign of the sum.
You will be introduced to:

  • Hidden layers
  • Activation function
  • Categorization

3) Our network can be applied to all sorts of problems, like image recognition: Determine hand-written digits!
After this cool and useful real-life application, I will give you an outlook:

  • How to improve the network
  • What other problems can be solved with neural networks?
  • How to use pre-trained networks without much effort

Why me?

My name is Börge Göbel and I am a postdoc working as a scientist in theoretical physics where neural networks are used a lot.
I have refined my advisor skills as a tutor of Bachelor, Master and PhD students in theoretical physics and have other successful courses here on Udemy.

I hope you are excited and I kindly welcome you to our course!

Get Tutorial