繁体   English   中英

一个简单游戏的深度强化学习参数和训练时间

[英]deep reinforcement learning parameters and training time for a simple game

我想了解深度强化算法的工作原理以及在任何给定环境下训练自己需要多长时间。 我想出了一个非常简单的环境示例:

有一个计数器保存 0 到 100 之间的整数。计数到 100 是它的目标。

有一个参数direction其值可以是 +1 或 -1。 它只是显示移动的方向。

out 神经网络将此方向作为输入,将 2 个可能的动作作为输出。

  1. 改变方向
  2. 不要改变方向

第一个动作将简单地翻转方向(+1 => -1 或 -1 =>+1)。 第二个动作将保持方向不变。

我在后端使用 python,前端使用 javascript。 这似乎花费了太多时间,但它仍然是非常随机的。 我使用了 4 层感知器。 0.001 的训练率。 批量 100 的记忆学习。代码是 Udemy 人工智能教程,工作正常。

我的问题是,完成和每个状态的奖励应该是什么? 像那样训练简单的例子需要多少时间?

在强化学习中,下划线的奖励函数定义了游戏。 不同的奖励函数导致不同的游戏具有不同的最优策略。

在您的情况下,有几种不同的可能性:

  1. 达到 100 时给予 +1,然后才给予。
  2. 为达到 100 给 +1,对于不是 100 的每个时间步长给 -0.001。
  3. 上升 +1 表示下降 -1 表示下降。

第三种情况太容易了,没有涉及长期规划。 在第一种情况下,智能体只有在意外达到 100 并发现它很好时才会开始学习。 但是在第一种情况下,一旦它学会了上升,到达那里需要多长时间都无关紧要。 第二个是最有趣的地方,它需要尽快到达那里。

对于使用什么奖励没有正确的答案,但最终你选择的奖励决定了你正在玩的游戏。

注意:这个问题的 4 层感知器是Big Time Overkill 一层应该就够了(这个问题很简单)。 您是否尝试过OpenAI 健身房的强化学习环境? 强烈推荐它,它们有所有“经典”强化学习问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM