
Reinforcement Learning beginner to master
https://www.udemy.com/course/beginner-master-rl-1/?referralCode=376738F1E8AF47CAA6F1
Advanced Reinforcement Learning in Python: from DQN to SAC
https://www.udemy.com/course/advanced-reinforcement/?referralCode=2C96ADF61C80DD7FD392
Explore Google Colab as an online programming environment for writing and running code in the cloud. Discover notebook workflow, GPU access, minimal setup, and easy sharing via Google Drive.
Identify your prior knowledge to begin advanced reinforcement learning with dqns. Start with basics like the Markov decision process, then choose leveling modules or jump to bite, lightning.
Explore the five core elements of control tasks in reinforcement learning: state, actions, rewards, agent, and environment, illustrated through chess, a robotic arm, and Pac-Man.
Define the Markov decision process as a discrete time, stochastic control process that has no memory, with state space, action space, rewards, and transition probabilities, to achieve goals.
Explore how an agent's policy maps states to actions, whether stochastic or deterministic, and how the optimal policy maximizes the discounted sum of rewards.
Define state value v(s) as the return from that state under a policy, and action value q(s,a) as the return after taking action a in state s.
Explore the Bellman equations for state value and action value, revealing their recursive structure through expected returns, rewards, and discounted future values under a policy.
Temporal difference methods learn from experience to update value estimates and guide policy, blending Monte Carlo and dynamic programming, with bootstrapping and generalized policy iteration.
Explore how temporal difference methods solve control tasks by estimating state-action values (Q), applying Bellman equations, and updating Q-values using the TD error and alpha-weighted rules.
Explore off-policy q-learning with two policies: a greedy target policy and an exploratory policy that collects experience, updating q-values to derive the optimal policy.
Represent a neural network in code as a three-layer model with three input dimensions, a six-neuron hidden layer, and two outputs to approximate the value function for each state-action pair.
Optimize a neural network to approximate Q values by tuning the W parameters to minimize mean squared error from environment samples, using reward plus discounted next Q value as target.
Master deep Q-learning by combining temporal difference with neural networks, using off-policy epsilon-greedy exploration, replay memory, and a target network to stabilize updates.
Store state transitions (state, action, reward, next state) in a replay memory. Sample a batch to compute the cost function and update the neural network.
Begin implementing your first deep learning algorithm with PyTorch Lightning, installing tools for environment rendering. Set up gym and a Lightning trainer to run on CPU or GPU.
Implement a replay buffer to store environment observations with a fixed capacity using a deck, enabling len, append, and sample, and wrap it in a PyTorch Lightning dataset.
Create the lunar lander version two environment via a gym make call. Explore its eight observation features and four actions, render episodes, and record videos for analysis.
Define a deep q-learning class extending the lightning module, configure optimizers, set up a replay buffer and data loader, and train with an epsilon policy.
Implement the forward method to compute q-values from the environment state and configure AdamW optimizer with learning rate. Create datasets and data loaders to feed training samples into training step.
Watch how the reinforcement learning Q-network learns to estimate action values and refine the policy, enabling the rocket to land between the flags after 13 minutes of training.
Optimize deep learning hyperparameters with Optuna through automated search. Define studies and trials, and use samplers and pruners to find learning rate, network size, and replay buffer capacity.
Learn to tune reinforcement learning hyperparameters with the Abdullah library by selecting gamma and learning rate, using moving averages of the last 100 episode returns to compare parameter sets.
analyze twenty deep learning runs, identify the best hyperparameters from the study results, and retrain with those values via keyword arguments to reproduce the top performance.
Explore the dueling deep q-network architecture that separates state value and action advantages to speed up reinforcement learning by focusing on when actions differ.
Apply observation normalization to stabilize learning by converting state features to zero mean and unit variance using running means and variances. Normalize rewards to emphasize above-average returns and speed training.
Solve Flappy Bird Version zero with the Pay Game Learning Environment built on gym, converting image observations to a state vector via a wrapper that enables a two-action policy.
After training, test the resulting agent for ten episodes by rendering environment frames and using the trained policy to act, demonstrating fluent play of Flappy Bird.
Explore prioritized experience replay to bias sampling by TD error, adjust with alpha and beta, and apply importance sampling to speed up learning while correcting distribution bias.
Create the Flappy Bird environment and normalize observations and rewards with wrappers. Apply max and skip, warp frames to 42 by 42 grayscale, and reorder axes for efficient input.
Launch training process by configuring a deep learning agent for Flappy Bird version zero, set epsilon, gamma, and replay buffer, and run trainer across GPUs for 3000 epochs with debugging.
This is the most complete Advanced Reinforcement Learning course on Udemy. In it, you will learn to implement some of the most powerful Deep Reinforcement Learning algorithms in Python using PyTorch and PyTorch lightning. You will implement from scratch adaptive algorithms that solve control tasks based on experience. You will learn to combine these techniques with Neural Networks and Deep Learning methods to create adaptive Artificial Intelligence agents capable of solving decision-making tasks.
This course will introduce you to the state of the art in Reinforcement Learning techniques. It will also prepare you for the next courses in this series, where we will explore other advanced methods that excel in other types of task.
The course is focused on developing practical skills. Therefore, after learning the most important concepts of each family of methods, we will implement one or more of their algorithms in jupyter notebooks, from scratch.
Leveling modules:
- Refresher: The Markov decision process (MDP).
- Refresher: Q-Learning.
- Refresher: Brief introduction to Neural Networks.
- Refresher: Deep Q-Learning.
Advanced Reinforcement Learning:
- PyTorch Lightning.
- Hyperparameter tuning with Optuna.
- Reinforcement Learning with image inputs
- Double Deep Q-Learning
- Dueling Deep Q-Networks
- Prioritized Experience Replay (PER)
- Distributional Deep Q-Networks
- Noisy Deep Q-Networks
- N-step Deep Q-Learning
- Rainbow Deep Q-Learning