【强化学习/gym】(二)一些强化学习的框架或代码

说在前面

  • 测试环境:windows10
  • 基础框架:torch(th)tensorflow(tf)
  • 说明:博主对本文所涉及的框架以及代码都进行了一定的尝试或者接触,但是并不是所有都在自定义环境中运行过。

Keras(tf)

  • keras rl
  • Keras文档中有四篇关于强化学习的例子,涉及的算法是Actor CriticDDPGDQNPPO
  • 这几个例子代码都比较简洁,并且有清晰明了的说明,便于学习。

TensorFlow(tf)

  • AC
  • tensorflow的官方教程中也有一个强化学习的例子,它是用Jupyter Notebooks写的,优点是你可以直接在colab中运行。

TensorFlow Agents(tf)

  • tfagents
  • tensorflowrl的一个封装。
  • 但是说实话,用起来感觉不是特别舒服。就env它就封装了两层(gym.envpyenvtfenv,可能是因为我从gym.env上手的吧)
  • offline rl可能支持
  • imitation learning:好像只有behavior cloning
  • 算法
    【强化学习/gym】(二)一些强化学习的框架或代码_第1张图片

Ray(tf&th)

  • Ray
  • Ray的主要目的是分布式。
  • 它里面有个rllib的库,初步看来功能强大,实际接触后一大堆配置。
  • offline rl:支持
  • imitation learning:目前没看到相关资料
  • 算法
    一大堆,具体看这里

Stable Baselines(tf1.x)

  • stable-baselines
  • 源自OpenAI Stable Baselines,目前仅支持tf1.x
  • offline rl:目前没看到相关资料
  • imitation learning:支持
  • 算法
    【强化学习/gym】(二)一些强化学习的框架或代码_第2张图片

Stable Baselines3(th)

  • stable-baselines3
  • Stable Baselines的下一个主版本
  • offline rl:目前没看到相关资料
  • imitation learning:支持
  • 算法
    【强化学习/gym】(二)一些强化学习的框架或代码_第3张图片

d3rlpy(th)

  • d3rlpy
  • 一个专门用于offline rl的库,也支持online
  • offline rl:当然支持
  • imitation learning:目前只看到behavior cloning
  • 算法
    这里

tf2rl(tf2.x)

  • tf2rl

  • 一些使用tensorflow2实现的强化学习算法

  • offline rl:本身没有相关说明

  • imitation learning:支持

  • 算法

    Algorithm Dicrete action Continuous action Support Category
    VPG, PPO GAE Model-free On-policy RL
    DQN (including DDQN, Prior. DQN, Duel. DQN, Distrib. DQN, Noisy DQN) - ApeX Model-free Off-policy RL
    DDPG (including TD3, BiResDDPG) - ApeX Model-free Off-policy RL
    SAC ApeX Model-free Off-policy RL
    CURL, SAC-AE - - Model-free Off-policy RL
    MPC, ME-TRPO - Model-base RL
    GAIL, GAIfO, VAIL (including Spectral Normalization) - Imitation Learning

Coach

  • intel coach
  • 这个库我只是看了下,没有尝试(因为只能在ubuntu上用)。看起来很强大。
  • 算法选择,这个页面可以为选择算法提供一些帮助。
  • offline rl:支持
  • imitation learning:支持
  • 算法
    【强化学习/gym】(二)一些强化学习的框架或代码_第4张图片

PARL

  • parl
  • 百度家的强化学习库,目前还没有试过

待续…

你可能感兴趣的:(机器学习,深度学习,人工智能)