Teaching computers to play games
We've all seen the headlines of "AI beats professional Go player" or something similar. Many of us have looked at this and wondered how does this even work? Some went a step further and started looking into how exactly computers learn, but found themselves confused by terms like deep learning, CNNs, policy gradients, Qlearning and reinforcement learning.
This tutorial is designed to cut straight through the confusion and show you the ways in which computers learn is simultaneously much simpler, elegant, and harder than you thought.
We will take you from being a complete novice in the field to (near) state of the art understanding, and we'll dive into all of the mathematical details while placing them in the context of a bigger picture.
If you're as excited to get started as I am, then join me in Q Learning/Taxi Problem/, where we'll get you writing your first intelligent program in no time!
Prerequisites
Throughout this tutorial series, we'll be assuming a basic understanding of python, including, but not limited to:
- Standard syntax
- Object Oriented Programming
- Some familiarity with numpy
- A basic understanding of datatypes
Since people with vastly different mathematical backgrounds are interested in machine learning, we've made every attempt to link appropriate resources for the mathematics needed in each tutorial.