23得票1回答
OpenAI Gym环境'CartPole-v0'和'CartPole-v1'之间的区别是什么?

我找不到关于OpenAI Gym环境'CartPole-v0'和'CartPole-v1'之间差异的确切描述。 这两个环境都有专门的官方网站(请参见1和2),尽管我只能在gym的github存储库中找到一个没有版本标识的代码(请参见3)。我还通过调试器检查了确切加载了哪些文件,它们似乎都加载...

22得票2回答
最佳的epsilon(ϵ-greedy)值

ϵ-贪心策略 我知道Q学习算法应该在探索和利用之间取得平衡。由于我是这个领域的新手,所以我想实现一个简单版本的探索/利用行为。 最佳ϵ值 我的实现使用了ϵ-贪心策略,但是当决定epsilon值时我很困惑。epsilon是否应该受到算法访问给定(状态,动作)对的次数的限制,或者应该受到执行...

22得票2回答
DQN - Q-Loss不收敛

我正在使用DQN算法在一个汽车控制环境中训练智能体,具体如下: 智能体通过选择离散动作(向左、向右、向上、向下)来驾驶汽车 目标是以期望速度行驶而不撞上其他汽车 状态包括智能体汽车和周围汽车的速度和位置 奖励:撞上其他车辆为-100分,相对期望速度的绝对差距越小得到的正奖励越多(如果以期望...

20得票3回答
列出所有 OpenAI Gym 环境的 id。

如何列出openai gym中所有当前已注册的环境ID(这些ID用于创建环境)? 有一些安装了插件的上下文,它们具有惯用的ID,例如atari、超级马里奥、毁灭等。 请勿与atari-py的游戏名称混淆。

20得票1回答
了解梯度策略推导

我正在尝试重新创建Policy Gradient的非常简单的示例,源自Andrej Karpathy博客。在那篇文章中,你会发现一个使用CartPole和权重列表以及Softmax激活的Policy Gradient示例。这是我重新创建的非常简单的CartPole策略梯度示例,完美运行。 i...

19得票2回答
如何有效利用GPU进行强化学习?

最近我研究了强化学习,有一个问题一直困扰着我,我找不到答案:使用GPU如何有效地进行培训?据我所知,需要与环境进行不断的交互,这对我来说似乎是一个巨大的瓶颈,因为这个任务通常是非数学/不可并行化的。然而,例如Alpha Go使用多个TPU / GPU。那他们是如何做到的?

19得票1回答
SQuAD挑战赛中的EM分数

SQuAD挑战赛将结果按F1和EM分数排名。关于F1分数(准确率和召回率的函数)有很多信息。但是EM分数会是什么呢?

18得票1回答
net.zero_grad()与optim.zero_grad()的区别在PyTorch中。

这里提到了在训练时需要包含optim.zero_grad()来将参数梯度归零。我的问题是:我是否可以使用net.zero_grad(),并且是否有相同的效果?或者必须使用optim.zero_grad()。此外,如果两个都使用会发生什么?如果都不使用,则梯度会累积,但这具体意味着什么?它们被添...

18得票3回答
Epsilon贪心算法中的Epsilon和学习率衰减

我了解epsilon标记控制着探索与开发之间的权衡。在开始时,希望epsilon值高,这样可以大步跨进并学习新事物。随着对未来回报的了解,epsilon应该逐渐减小,这样可以利用您发现的更高Q值。 然而,在随机环境下,我们的学习率是否也会随时间而减小?我看到的SO帖子只讨论epsilon的衰...

18得票2回答
如何使用Keras手动更新权重。

我正在使用Keras构建一个LSTM,并通过使用外部代价函数进行梯度下降来进行调整。因此,权重将被更新为:weights := weights + alpha* gradient(cost) 我知道可以用keras.getweights()获取权重,但如何进行梯度下降并更新所有权重以及相应地更...