Keras Rl

Deep Reinforcement Learning for Keras.
Alternatives To Keras Rl
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
Keras59,44557816 hours ago80June 27, 202398apache-2.0Python
Deep Learning for humans
Data Science Ipython Notebooks25,242
3 months ago34otherPython
Data science Python notebooks: Deep learning (TensorFlow, Theano, Caffe, Keras), scikit-learn, Kaggle, big data (Spark, Hadoop MapReduce, HDFS), matplotlib, pandas, NumPy, SciPy, Python essentials, AWS, and various command lines.
Netron24,082469a day ago587August 01, 202324mitJavaScript
Visualizer for neural network, deep learning, and machine learning models
100 Days Of Ml Code20,187
a year ago9mitJupyter Notebook
D2l En18,967
a month ago2November 13, 202295otherPython
Interactive deep learning book with multi-framework code, math, and discussions. Adopted at 500 universities from 70 countries including Stanford, MIT, Harvard, and Cambridge.
Ncnn17,978118 hours ago24November 28, 20221,046otherC++
ncnn is a high-performance neural network inference framework optimized for the mobile platform
Onnx15,604148394a day ago29May 04, 2023313apache-2.0Python
Open standard for machine learning interoperability
Best Of Ml Python14,484
a day ago18cc-by-sa-4.0
🏆 A ranked list of awesome machine learning Python libraries. Updated weekly.
Screenshot To Code14,121
a year ago17otherHTML
A neural network that transforms a design mock-up into a static website.
Horovod13,57720112 days ago77June 12, 2023360otherPython
Distributed training framework for TensorFlow, Keras, PyTorch, and Apache MXNet.
Alternatives To Keras Rl
Select To Compare

Alternative Project Comparisons

Deep Reinforcement Learning for Keras

Build Status Documentation License Join the chat at

What is it?

keras-rl implements some state-of-the art deep reinforcement learning algorithms in Python and seamlessly integrates with the deep learning library Keras.

Furthermore, keras-rl works with OpenAI Gym out of the box. This means that evaluating and playing around with different algorithms is easy.

Of course you can extend keras-rl according to your own needs. You can use built-in Keras callbacks and metrics or define your own. Even more so, it is easy to implement your own environments and even algorithms by simply extending some simple abstract classes. Documentation is available online.

What is included?

As of today, the following algorithms have been implemented:

  • [x] Deep Q Learning (DQN) [1], [2]
  • [x] Double DQN [3]
  • [x] Deep Deterministic Policy Gradient (DDPG) [4]
  • [x] Continuous DQN (CDQN or NAF) [6]
  • [x] Cross-Entropy Method (CEM) [7], [8]
  • [x] Dueling network DQN (Dueling DQN) [9]
  • [x] Deep SARSA [10]
  • [ ] Asynchronous Advantage Actor-Critic (A3C) [5]
  • [ ] Proximal Policy Optimization Algorithms (PPO) [11]

You can find more information on each agent in the doc.


  • Install Keras-RL from Pypi (recommended):
pip install keras-rl
  • Install from Github source:
git clone
cd keras-rl
python install


If you want to run the examples, you'll also have to install:

For atari example you will also need:

  • Pillow: pip install Pillow
  • gym[atari]: Atari module for gym. Use pip install gym[atari]

Once you have installed everything, you can try out a simple example:

python examples/

This is a very simple example and it should converge relatively quickly, so it's a great way to get started! It also visualizes the game during training, so you can watch it learn. How cool is that?

Some sample weights are available on keras-rl-weights.

If you have questions or problems, please file an issue or, even better, fix the problem yourself and submit a pull request!

External Projects

You're using Keras-RL on a project? Open a PR and share it!

Visualizing Training Metrics

To see graphs of your training progress and compare across runs, run pip install wandb and add the WandbLogger callback to your agent's fit() call:

from rl.callbacks import WandbLogger

..., nb_steps=50000, callbacks=[WandbLogger()])

For more info and options, see the W&B docs.


If you use keras-rl in your research, you can cite it as follows:

    author = {Matthias Plappert},
    title = {keras-rl},
    year = {2016},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{}},


  1. Playing Atari with Deep Reinforcement Learning, Mnih et al., 2013
  2. Human-level control through deep reinforcement learning, Mnih et al., 2015
  3. Deep Reinforcement Learning with Double Q-learning, van Hasselt et al., 2015
  4. Continuous control with deep reinforcement learning, Lillicrap et al., 2015
  5. Asynchronous Methods for Deep Reinforcement Learning, Mnih et al., 2016
  6. Continuous Deep Q-Learning with Model-based Acceleration, Gu et al., 2016
  7. Learning Tetris Using the Noisy Cross-Entropy Method, Szita et al., 2006
  8. Deep Reinforcement Learning (MLSS lecture notes), Schulman, 2016
  9. Dueling Network Architectures for Deep Reinforcement Learning, Wang et al., 2016
  10. Reinforcement learning: An introduction, Sutton and Barto, 2011
  11. Proximal Policy Optimization Algorithms, Schulman et al., 2017
Popular Keras Projects
Popular Deep Learning Projects
Popular Machine Learning Categories
Related Searches

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.
Machine Learning
Neural Network
Reinforcement Learning