我正在设计一个DQN模型的奖励函数,这是深层强化学习中最棘手的部分。我参考了几个案例,并注意到通常奖励会在- 1,1。考虑到如果负性奖励被触发的次数较少,与正奖赏相比“稀疏”,则肯定奖励可能低于1。
我想知道为什么我总是把奖励设定在这个范围内(有时可以是0,1,其他时候可以是-1,0或简单-1)?范围背后的理论或原理是什么?
我通过了this answer,它提到将500设置为正奖励,-1设置为负奖励将破坏网络。但它会如何摧毁模型呢?
我能模糊地理解这与梯度下降有关,实际上是奖励之间的差距,而不是符号或绝对值。但我仍然没有明确的暗示,它如何能够摧毁,以及为什么在这样的范围内。
此外,我应该在什么时候使用奖励,如0,1或只使用负奖励?我的意思是,在给定的时间内,这两种方法似乎都能促使代理人找到最高的总报酬。只有在这样的情况下,我才想让代理人尽快到达终点,负奖励似乎比正面奖励更合适。
是否有衡量奖励设计是否合理的标准?像用和
发布于 2020-08-06 03:55:40
我想知道为什么我总是试图在这个范围内设置奖励(有时可以是0,1,其他时候可以是-1,0或者简单的-1)?
本质上,如果您在0,1或-1,0范围内定义奖励函数,则本质上是一样的。它只会导致你的行为价值观是积极的或消极的,但它不会影响你的神经网络的收敛。
我完成了这个答案,它提到设置500作为正奖励和-1作为负奖励将破坏网络。但它会如何摧毁模型呢?
我不太同意这个答案。这样的奖励函数不会“破坏”模型,但是它不能为代理人的行为提供平衡的正负报酬。它提供了激励的代理人不崩溃,但并不鼓励它切断对手。
另外,我应该在什么时候使用0,1之类的奖励,或者只使用负奖励?
正如前面提到的,不管你是使用积极的还是消极的奖励。重要的是你报酬的相对性。例如,正如您所说的,如果您希望代理尽快到达终端状态,从而引入负面奖励,则只有在节目期间没有正面奖励的情况下,它才能工作。如果经纪人能在节目中途获得积极的奖励,就不会鼓励他们尽快结束这一事件。因此,相对论才是最重要的。
发布于 2020-10-08 14:14:20
设计DQN的奖励函数的原则是什么?
正如您所说,这是RL的棘手部分。在我看来,奖励是引导你的系统达到你最看重的(状态,行动)对的“公正”方式。所以,如果你认为一对(状态,动作)比另一对大500倍,为什么不呢?
关于价值范围..。假设你知道所有可以分配的奖励,因此你知道了值的范围,你可以很容易地将它正常化,比如说0,1。所以,这个范围对很多人来说并不重要,但是你所分配的值说明了很多。
关于负报酬价值。总的来说,我发现它的目标是尽量减少成本的问题。例如,如果你有一个有目标的机器人,一定要在房间里收集垃圾,他必须不时地给自己充电才能继续完成这项任务。你可能对电池消耗有负面的回报,而你的目标是尽量减少它。另一方面,在许多比赛中,目标是得到越来越多的分数,所以可以自然地分配积极的价值。
https://stackoverflow.com/questions/63233562
复制相似问题