Advanced AI Deep Reinforcement Learning in Python
This course is all about the application of AI Deep Reinforcement Learning in Python.
If you’ve taken my first reinforcement learning class, then you know that reinforcement learning is on the bleeding edge of what we can do with Artificial intelligence.
Specifically, deep learning with reinforcement learning has led to AlphaGo beating a world champion in the strategy game Go. It has led to self-driving cars, and it has led to machines that can play video games at a superhuman level.
Reinforcement learning has been around since the 70s, but none of this has been possible until now.
The world is changing at a breakneck pace. The state of California is changing its regulations so that self-driving car companies can test their cars without a human in the car to supervise.
We’ve seen that reinforcement learning is an entirely different kind of machine learning than supervised and unsupervised learning.
Supervised and unsupervised machine learning algorithms are for analyzing and making predictions about data. In contrast, reinforcement learning is about training an agent to interact with an environment and maximize its reward.
Unlike supervised and unsupervised learning algorithms, reinforcement learning agents have an impetus – they want to reach a goal.
This is such a fascinating perspective; it can even make supervised/unsupervised machine learning and “data science” seem boring in hindsight. Why train a neural network to learn about the data in a database to train a neural network to interact with the real world?
While deep reinforcement learning and Artificial intelligence have many potentials, it also carries with it a huge risk.
Bill Gates and Elon Musk have made public statements about some of the risks that Artificial intelligence poses to economic stability and even our existence.
As we learned in my first reinforcement learning course, one of the main principles of training reinforcement learning agents is unintended consequences when training Artificial intelligence.
AIs don’t think like humans, so they come up with novel and non-intuitive solutions to reach their goals, often in ways that surprise domain experts – humans who are the best at what they do.
OpenAI is a non-profit founded by Elon Musk, Sam Altman (Y Combinator), and others to ensure that Artificial intelligence progresses in a beneficial way rather than harmful.
Part of the motivation behind Open Artificial intelligence is the existential risk that Artificial intelligence poses to humans. They believe that open collaboration is one of the keys to mitigating that risk.
One of the great things about OpenAI is that they have a platform called the OpenAI Gym, which we’ll be making heavy use of in this course.
It allows anyone, anywhere in the world, to train their reinforcement learning agents in standard environments.
In this course, we’ll build upon what we did in the last course by working with more complex environments, specifically, those provided by the OpenAI Gym:
- Mountain Car
- Atari games
To train effective learning agents, we’ll need new techniques.
We’ll extend our knowledge of temporal difference learning by looking at the TD Lambda algorithm, we’ll look at a special type of neural network called the RBF network, we’ll look at the policy gradient method, and we’ll end the course by looking at Deep Q-Learning (DQN) and A3C (Asynchronous Advantage Actor-Critic).
Thanks for reading, and I’ll see you in class!
“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 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…
- College-level math is helpful (calculus, probability)
- Object-oriented programming
- Python coding: if/else, loops, lists, dicts, sets
- Numpy coding: matrix and vector operations
- Linear regression
- Gradient descent
- Know how to build ANNs and CNNs in Theano or TensorFlow
- Markov Decision Processes (MDPs)
- Know how to implement Dynamic Programming, Monte Carlo, and Temporal Difference Learning to solve MDPs.
WHAT ORDER SHOULD I TAKE YOUR COURSES IN?:
- Check out the lecture “Machine Learning and Artificial intelligence Prerequisite Roadmap” (available in the FAQ of any of my courses, including the free Numpy course)
Who this course is for:
- Professionals and students with strong technical backgrounds who wish to learn state-of-the-art Artificial intelligence techniques
What Will You Learn?
- Build various deep learning agents (including DQN and A3C)
- Apply a variety of advanced reinforcement learning algorithms to any problem
- Q-Learning with Deep Neural Networks
- Policy Gradient Methods with Neural Networks
Advanced AI Deep Reinforcement Learning in Python
Introduction and Logistics Advance AI Deep Reinforcement Learning Python (Part1)21:19
Background Advanced AI Deep Reinforcement Learning In Python Part 200:00
Advance AI In Python Part 3 (OpenAI Gym and Basic Reinforcement Learning Techniques)58:29
Advanced AI Deep Reinforcement Learning in Python (Part 4 TD Lambda)00:00
Advanced AI Deep Reinforcement Learning in Python (Part 5 Policy Gradients)01:03:23
Advanced AI Deep Reinforcement Learning in Python (Part 6 Deep Q Learning)51:43
Advanced AI Deep Reinforcement Learning In Python (Part 7 A3C)01:02:52
Advanced AI Deep Reinforcement Learning in Python (Part 8 Theano and Tensorflow Basics Review)00:00
Advanced AI Deep Reinforcement Learning in Python (Part 9 Appendix Python in AI)00:00