强化学习笔记:noisy DQN
噪声网络 (Noisy Net) 是一种非常简单的方法,可以显著提高 DQN 的表现。 噪声网络的应用不局限于 DQN ,它可以用于几乎所有的强化学习方法。
1 噪声网络的原理
- 把神经网络中的参数 w 替换成 µ+σ◦ξ。
- 此处的 µ、σ、ξ 的形状与 w 完全相同。
- µ、σ 分别表示均值和标准差,它们是神经网络的参数,需要从经验中学习。
- ξ 是随机噪声,它的每个元素独立从标准正态分布 N (0, 1) 中随机抽取。
- 符号“◦”表示逐项乘积。

2 noisy DQN
噪声网络可以用于 DQN 。 标准的 DQN 记作 Q ( s, a ; w ) ,其中的 w 表示参数。把 w 替换成 µ + σ ◦ ξ ,得到噪声 DQN :![]()
- 其中的 µ 和 σ 是参数,一开始随机初始化,然后从经验中学习;
- 而 ξ 则是随机生成,每 个元素都从 N (0, 1) 中抽取。
- ——>噪声 DQN 的参数数量比标准 DQN 多一倍。
在之前的DQN中(包括带target network的、Double DQN、Dueling Network),我们为了一定的采样随机性,使用ε-Greedy作为行为策略
但对于noisy DQN来说,其本身就有一定的随机性,可以进行exploration,所以可以不用ε-Greedy,直接
2.1 Q-learning 方法
- TD目标:

- TD损失函数

- 同样地进行梯度下降更新参数

注:j+1时刻和j时刻的是不一样的,每次都需要随机生成新的
2.2 noisy DQN进行决策
- 做完训练之后,可以用噪声 DQN 做决策。
- 做决策的时候不再需要噪声,因此可以把参数 σ 设置成全零,只保留参数 µ。
- 这样一来,噪声 DQN 就变成标准的 DQN

3 noisy DQN的好处
- 在训练的时候往 DQN 的参数中加入噪声,不仅有利于探索,还能增强鲁棒性。
- 鲁棒性意思是即使参数被扰动,DQN 也能对动作价值 Q⋆ 做出可靠的估计。
- 假设在训练的过程中不加入噪声。
- 把学出的参数记作 µ。当参数严格等于 µ 的时候, DQN 可以对最优动作价值做出较为准确的估计。
- 但是对 µ 做较小的扰动,就可能会让DQN 的输出偏离很远。
- 噪声 DQN 训练的过程中,参数带有噪声: w = µ + σ ◦ ξ 。
- 训练迫使 DQN 在参数带噪声的情况下最小化 TD 误差,也就是迫使 DQN 容忍对参数的扰动。
- 训练出的 DQN 具有鲁棒性:参数不严格等于 µ 也没关系,只要参数在 µ 的邻域内, DQN 做出的预测都应该比较合理。
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!



