My motivation behind this post is to fully understand the beauty behind Neural Networks, which is harder to see using libraries such as PyTorch or Tensorflow, and also share my knowledge in the most accessible way. After reading this post you will understand in depth how the Deep Learning models work and how to train handwritten digits classifier with 90% accuracy.

Table of contents



3.Training Process


5.Code Implementation



Neural Network is a collection of neurons (computing units), put in the structure of layers and modeled in the same way as the human brain makes it computation. …

Q-Learning is the most basic form of Reinforcement Learning, which doesn’t take advantage of any neural network but instead uses Q-table to find the best possible action to take at a given state.

Background information

  1. Environment
The goal

A CartPole-v0 is a simple playground provided by OpenAI to train and test Reinforcement Learning algorithms. The agent is the cart, which is controlled by two possible actions +1, -1 pointing on moving left or right. The reward +1 is given at every timestep if the pole remains upright. The goal is to prevent the pole from falling over(maximize total reward) as in GIF above. After…

This(GAN), and the variations that are now being proposed is the most interesting idea in the last 10 years in ML, in my opinion.

— Yann LeCun, Former Facebook’s AI Research Director

In this post, I would like to introduce the idea and capabilities of GAN to generate new images of sneakers based on the MNIST-Fashion dataset using Tensorflow.


Generative Adversarial Network has been introduced in 2014 in Generative Adversarial Nets paper by Ian Goodfellow also know as GANfather. The striking idea came up when he went drinking with his mates to celebrate college’s graduation. Back then deep learning models…

In the first tutorial, I introduced the most basic Reinforcement learning method called Q-learning to solve the CartPole problem. Because of its computational limitations, it is working in simple environments, where the number of states and possible actions is relatively small. Calculating, storing, and updating Q-values for each action in the more complex environment is either impossible or highly inefficient. This is where the Deep Q-Network comes into play.

Background Information

The Deep Q-Learning has been introduced in 2013 in Playing Atari with Deep Reinforcement Learning paper by the DeepMind team. The first similar approach was made in 1992 using TD-gammon. The…

Maciej Balawejder

Free spirited artificial intelligence enthusiast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store