具有负奖励的RL激活功能

时间:2017-12-26 14:35:57

标签: machine-learning reinforcement-learning q-learning activation-function

对于具有正面和负面奖励的环境,我有一个关于适当激活功能的问题。

在强化学习中,我认为,我们的产出应该是所有可能行动的预期回报。由于某些选项具有负面奖励,我们希望输出范围包括负数。

这将使我相信唯一合适的激活函数可以是线性的也可以是tanh。但是,我看到许多RL论文都使用了Relu。

所以有两个问题:

  1. 如果你想同时拥有负输出和正输出,你只限于tanh和线性吗?

  2. 这是一个更好的策略(如果可能的话)来扩大奖励,使它们都处于正域(即代替[-1,0,1],[0,1,2])该模型是否可以利用其他激活函数?

2 个答案:

答案 0 :(得分:2)

许多RL论文确实在大多数图层中使用Relu,但通常不用于最终输出图层。您在其中一篇评论中提到了通过深度强化学习论文和后见之明体验重播论文的人力水平控制,但这些论文都没有描述将Relu用于输出层的架构。

在Deep RL论文的人类控制,第6页(参考后),“方法”一节,关于“模型架构”的部分的最后一段提到输出层是完全的连接的线性层(不是Relu)。所以,实际上,所有隐藏层只能具有非负激活水平(因为它们都使用Relus),但如果输出层和最后隐藏层之间存在负权重,则输出层可以具有负激活水平。这确实是必要的,因为它应该创建的输出可以解释为Q值(可能是负值)。

在Hindsight Experience Replay论文中,他们不使用DQN(如上面的论文),而是使用DDPG。这是一个“Actor-Critic”算法。此架构的“批评”部分也旨在输出可能为负的值,类似于DQN架构,因此这也不能将Relu用于输出层(但它仍然可以在网络中的其他地方使用Relus)。在本文的附录A中,在“网络架构”下,还描述了actor输出层使用tanh作为激活函数。

回答您的具体问题:

  
      
  1. 如果你想同时拥有负输出和正输出,你只限于tanh和linear吗?
  2.   
  3. 这是一个更好的策略(如果可能的话)来扩大奖励,使它们都处于正域(即代替[-1,0,1],[0,1,2]),以便模型,以利用替代激活功能?
  4.   
  1. 嗯,还有其他激活(漏水relu, sigmoid ,很多其他可能)。但是,Relu确实不会导致负面产出。
  2. 可能不是100%肯定。如果你没有关于奖励(和/或回报)可能获得多大或多小的领域知识,那通常会很困难。我觉得简单地用一个完全连接的线性层结束通常会更容易。

答案 1 :(得分:1)

<块引用>

如果您确实想要同时拥有负输出和正输出,是否仅限于 tanh 和线性?

不,这是输出层激活函数的情况。对于所有其他层,这无关紧要,因为您可以拥有负权重,这意味着只有正值的神经元仍然可以将负值贡献给下一层。