我想了解深层强化算法是如何工作的,以及在任何特定环境下训练自己需要多长时间。我想出了一个非常简单的环境例子:
有一个计数器,它保存0到100之间的整数。计算到100是它的目标。
有一个参数direction的值可以是+1或-1。它只是指明了移动的方向。
输出神经网络以这个方向作为输入,以两个可能的动作作为输出。
第一个动作只需翻转方向(+1 => -1或-1 =>+1)。第二步行动将保持原来的方向。
我使用python作为后端,javascript用于前端。它似乎花费了太多的时间,但它仍然是相当随机的。我使用了4层感知器。训练率为0.001。记忆学习与批次100。代码是Udemy的人工智能教程,并且工作正常。
我的问题是,完成和每个州的回报应该是什么?要花多少时间培养这样简单的例子呢?
发布于 2017-10-29 01:15:31
在强化学习中,下划线奖励函数定义了游戏。不同的报酬函数导致不同的博弈,具有不同的最优策略。
在您的例子中,有几种不同的可能性:
第三种情况太容易了,不涉及长期计划。在第一种情况下,代理只会在意外地达到100并且看到它是好的时候才会开始学习。但在第一种情况下,一旦它学会了上升,它就不需要多长时间才能到达那里。第二个是最有趣的地方,它需要尽快到达那里。
对于使用什么奖励没有正确的答案,但最终您选择的奖励决定了您正在玩的游戏。
注意:针对这个问题的4层感知器是“大时间过度杀伤”。一个层就足够了(这个问题非常简单)。你试过在OpenAI健身房的强化学习环境吗?强烈推荐,他们有所有的“经典”强化学习问题。
https://stackoverflow.com/questions/46979986
复制相似问题