1202年了,现在大家都在用哪些主流的DRL框架呢?它们的性能优点是什么呢?欢迎讨论分享~
好用的深度强化学习框架有哪些?
RLlib: Scalable Reinforcement Learning
RLlib is an open-source library for reinforcement learning that offers both high scalability and a unified API for a variety of applications. RLlib natively supports TensorFlow, TensorFlow Eager, and PyTorch, but most of its internals are framework agnostic.
spinningup适合入门
我推荐曾伊言的ElegantRL(https://github.com/Yonv1943/ElegantRL),代码优雅,方便魔改。
- 已编辑
https://github.com/kaixindelele/DRL-tensorflow
如果学过TensorFlow1.x的话,且以spinning up做代码入门的,可以关注一下我的这个库,将spinup的代码做了类封装,适合快速跑自己的环境。
并且,加了sac-auto-alpha,per等的功能
- 已编辑
从个人角度也总结一下,欢迎大家拍砖!
SpinningUp
- OpenAI开发的,学习向的教程
- 学习教程地址
- 从基础入门到算法核心思想,代码和文档对新手很友好!
Baselines
- OpenAI Baselines is a set of high-quality implementations of reinforcement learning algorithms.
- 恰如起名,通常用它来跑对比实验。
Stable Baselines
- 其他人基于openai的baselines做的稳定版开发, 适合全面学习。
- 主页文档
- Unified structure for all algorithms
- PEP8 compliant (unified code style)
- Documented functions and classes
- More tests & more code coverage
- Additional algorithms: SAC and TD3 (+ HER support for DQN, DDPG, SAC and TD3)
PARL
- 百度基于飞浆开发的,基本的model-free算法都有,百度的Ai studio上有很多实现博客
- PARL团队成员视频教程-世界冠军带你从零实践强化学习
- 精简版Ray,结核飞桨使用听说很不错。
Ray
- UCB基于RLlib开源的算法库,很全面和精深
- 学起来非常难,比较偏向工业界?
Acme
- DeepMind
- 主打分布式强化学习
最后放下自己磨洋工的pytorch版DRL代码[https://github.com/Taospirit/Light_RL],结构简单,代码友好,适合新手入门学习和使用,后续逐步完善ing
- 已编辑
自荐下持续魔改、持续重构的TF2.x强化学习训练框架RLs[https://github.com/StepNeverStop/RLs]。
我用的Tensorflow自己团队搞的tf_agents这个项目:https://www.tensorflow.org/agents
spinningup应该最好用,
还有一些比如英特尔的Coach,伯克利的rllib比较经典,其他的相对来说代码量比较大,入手比较麻烦
最近新发现的一个RL框架,还挺好用,https://github.com/opendilab/DI-engine,可以试下,算法库挺全的,还有一些rl+创新应用(自动驾驶、游戏之类的),里面的技术人员还挺重视使用体验,上回提了个issue还一直跟进,我感觉这点不错,提issue响应方面也比较快,体验了几个月了,整体还ok
Khaiiiiiiiii 这框架 但凡要自己修改部分代码 就难用的一批。代码质量真的很差
Stable-Baselines3
两个简介明了单文件,没有过多依赖的方法
clearnrl https://github.com/vwxyzjn/cleanrl
CORL (Clean Offline Reinforcement Learning) :https://github.com/corl-team/CORL.git
- 已编辑
知乎Trinkle哥的tianshou(https://github.com/thu-ml/tianshou)也值得推荐,老哥参与了chatgpt的研发,目前就职于openai