从 DQN 估计的 Q 值是否与具有相同层数和过滤器的决斗 DQN 不同?

人工智能 机器学习 强化学习 q学习 dqn 深度学习
2021-10-29 10:12:43

我对决斗深度 Q 网络 (DQN) 的 Q 值感到困惑。据我所知,决斗 DQN 有 2 个输出

  1. 优势:处于特定状态有多好s

  2. 价值:选择特定行动的优势a

我们可以将这两个输出变成 Q 值(选择特定动作的奖励a处于状态时s) 通过将它们加在一起。

然而,在 DQN 中,我们从网络的单个输出层获得 Q 值。

现在,假设我在输入层和隐藏层中使用相同权重的相同 DQN 模型,并更改输出层,从而为我们提供 Q 值以获取优势和值输出。然后,在训练过程中,如果我将它们加在一起,假设我的两个算法的所有参数除了输出层之外,它是否会给我相同的 Q 值?

1个回答

Dueling-DQN 与 vanilla DQN 相比具有不同的网络架构,所以我认为您的版本不会像 Dueling 架构那样工作。

来自Wang 等人,2016 年,Dueling Network Architectures for Deep Reinforcement Learning

另一方面,由于我们只有目标 Q 值,将 Q 值分离为状态值和优势会导致可识别性问题。那就是网络可能会简单地学习V(s)=0,A(s,a)=Q(s,a)对于每个州。

为了解决这个问题,我们应该对优势估计施加额外的约束。我们可以简单地使用论文中提到的下面的等式,即在结合状态值之前对各个动作的优势进行归一化。

Q(s,a;θ,α,β)=V(s;θ,β)+(A(s,a;θ,α)1|A|aA(s,a;θ,α))