RLlib 训练一次迭代中的时间步数

Posted

技术标签:

【中文标题】RLlib 训练一次迭代中的时间步数【英文标题】:Number of time steps in one iteration of RLlib training 【发布时间】:2020-09-22 20:45:41 【问题描述】:

我是强化学习的新手,我正在使用 RLlib 在 OpenAI gym 中研究自定义环境的 RL。创建自定义环境时,是否需要在__init__()方法中指定剧集数?另外,当我用

训练代理时
for _ in range(10):
     trainer.train()

在一次迭代中采取了多少时间步长?它是否等于自定义环境中定义的剧集数?谢谢你。

【问题讨论】:

【参考方案1】:

我发现 Ray 只有在您的环境设置为“完成/_终止”时才会终止剧集。在其他框架上运行时,算法通常有一个用于 num_steps 等的超参数。我发现这一点是因为如果我的代理卡住了,它会永远坐在那里,所以我需要在环境本身中添加一个最大时间步数检查。

不过,剧集的数量是在环境之外设置的。

【讨论】:

【参考方案2】:

我认为你需要为一集中的最大步数设置的是超参数 `horizo​​n'

【讨论】:

以上是关于RLlib 训练一次迭代中的时间步数的主要内容,如果未能解决你的问题,请参考以下文章

神经网络中的Epoch、Iteration、Batchsize

Deeplearning4j 中的时期和迭代

机器学习中常用的变量名

在每次迭代训练模型时打印输入

如何评估在 rllib (Ray) 中自定义环境中训练的演员?

Map 在 React 中的第一次迭代后停止迭代