如何使用基于规则的'expert'进行模仿学习?
How to use a rule-based 'expert' for imitation learning?
我目前正在训练 PPO 模型进行模拟。
PPO模型无法理解某些条件会导致没有奖励。
这些没有奖励的条件是非常简单的规则。
我试图使用这些规则来创建 PPO 模型可用于模仿学习的 'expert'。
基于专家的规则示例:
如果资源 A 不可用,则不要 select 该资源。
如果“X”和“Y”不匹配,则不要select那些。
带有模仿库的示例
我正在查看“模仿”python 库。
那里的例子显示了一个专家是一个迭代次数更多的PPO模型。
https://github.com/HumanCompatibleAI/imitation/blob/master/examples/1_train_bc.ipynb
问题:
有没有办法将简单的“基于规则的”专家转换为可用于模仿学习的 PPO 模型?
或者在模仿学习中使用“基于规则”的专家是否有不同的方法?
看看行为克隆是如何实现的:
from imitation.algorithms import bc
bc_trainer = bc.BC(
observation_space=env.observation_space,
action_space=env.action_space,
demonstrations=transitions,
)
您只需创建演示即可。您甚至不需要编写“代理”本身。只需使用基于规则的机器人与您的环境交互生成序列,仅此而已。
我目前正在训练 PPO 模型进行模拟。 PPO模型无法理解某些条件会导致没有奖励。
这些没有奖励的条件是非常简单的规则。 我试图使用这些规则来创建 PPO 模型可用于模仿学习的 'expert'。
基于专家的规则示例:
如果资源 A 不可用,则不要 select 该资源。
如果“X”和“Y”不匹配,则不要select那些。
带有模仿库的示例
我正在查看“模仿”python 库。 那里的例子显示了一个专家是一个迭代次数更多的PPO模型。
https://github.com/HumanCompatibleAI/imitation/blob/master/examples/1_train_bc.ipynb
问题:
有没有办法将简单的“基于规则的”专家转换为可用于模仿学习的 PPO 模型?
或者在模仿学习中使用“基于规则”的专家是否有不同的方法?
看看行为克隆是如何实现的:
from imitation.algorithms import bc
bc_trainer = bc.BC(
observation_space=env.observation_space,
action_space=env.action_space,
demonstrations=transitions,
)
您只需创建演示即可。您甚至不需要编写“代理”本身。只需使用基于规则的机器人与您的环境交互生成序列,仅此而已。