Pybrain 强化学习示例
Pybrain Reinforcement Learning Example
正如问题所述,我正在寻找一个很好的 explanation/example 用于 pybrain 中的强化学习,因为这方面的文档让我无休止地困惑,我可以让它工作,但我不知道如何应用它对其他事情。
谢谢
汤姆
不幸的是,pybrain 的 rl classes 文档令人失望。我发现 this blog 很有用。
综上所述,您需要确定以下组件(有关实现细节,请参阅 link 上的教程):
- 一个环境:
env = Environment(...)
- 一个任务 -->
task = Task(env)
- 一个控制器,它是一个模块(类似于 table),用于保存您的操作值信息 -->
controller = Module(...)
- 一个学习者 -->
learner = SARSA()
--> 您也可以向学习者添加一个 Explorer。默认值为 epsilon-greedy,epsilon = 0.3,衰减 = 0.9999。
- 集成控制器和学习器的代理 -->
agent = Agent(controller, learner)
- 集成任务和代理并进行实际迭代的实验 -->
experiment = Experiment(task, agent)
每个大写的 classes 都应替换为 PyBrain.Then 中相应的 class,您只需 运行 一个 do-while 循环来执行迭代和学习。请注意,用户可以设置多个选项,在实际问题中,您很可能需要编写子 classes 来概括 pybrain 的基本 classes,但这些步骤将和这里一样。
正如问题所述,我正在寻找一个很好的 explanation/example 用于 pybrain 中的强化学习,因为这方面的文档让我无休止地困惑,我可以让它工作,但我不知道如何应用它对其他事情。
谢谢 汤姆
不幸的是,pybrain 的 rl classes 文档令人失望。我发现 this blog 很有用。
综上所述,您需要确定以下组件(有关实现细节,请参阅 link 上的教程):
- 一个环境:
env = Environment(...)
- 一个任务 -->
task = Task(env)
- 一个控制器,它是一个模块(类似于 table),用于保存您的操作值信息 -->
controller = Module(...)
- 一个学习者 -->
learner = SARSA()
--> 您也可以向学习者添加一个 Explorer。默认值为 epsilon-greedy,epsilon = 0.3,衰减 = 0.9999。 - 集成控制器和学习器的代理 -->
agent = Agent(controller, learner)
- 集成任务和代理并进行实际迭代的实验 -->
experiment = Experiment(task, agent)
每个大写的 classes 都应替换为 PyBrain.Then 中相应的 class,您只需 运行 一个 do-while 循环来执行迭代和学习。请注意,用户可以设置多个选项,在实际问题中,您很可能需要编写子 classes 来概括 pybrain 的基本 classes,但这些步骤将和这里一样。