1202年了,现在大家都在用哪些主流的DRL框架呢?它们的性能优点是什么呢?欢迎讨论分享~
alexfrom0815
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.
官网链接:https://docs.ray.io/en/master/rllib.html
两个简介明了单文件,没有过多依赖的方法
clearnrl https://github.com/vwxyzjn/cleanrl
CORL (Clean Offline Reinforcement Learning) :https://github.com/corl-team/CORL.git
spinningup适合入门
我推荐曾伊言的ElegantRL(https://github.com/Yonv1943/ElegantRL),代码优雅,方便魔改。
https://github.com/kaixindelele/DRL-tensorflow 如果学过TensorFlow1.x的话,且以spinning up做代码入门的,可以关注一下我的这个库,将spinup的代码做了类封装,适合快速跑自己的环境。 并且,加了sac-auto-alpha,per等的功能
从个人角度也总结一下,欢迎大家拍砖!
最后放下自己磨洋工的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 这框架 但凡要自己修改部分代码 就难用的一批。代码质量真的很差
hijkzzz 如果想要多进程训练,用哪个框架容易上手。rlib太复杂了
Stable-Baselines3
TensorLet
赞同楼主,推荐使用Costa Huang的 clearrl:https://github.com/vwxyzjn/cleanrl
知乎Trinkle哥的tianshou(https://github.com/thu-ml/tianshou)也值得推荐,老哥参与了chatgpt的研发,目前就职于openai