强化学习笔记:noisy DQN
Posted UQI-LIUWJ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了强化学习笔记: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 做出的预测都应该比较合理。
以上是关于强化学习笔记:noisy DQN的主要内容,如果未能解决你的问题,请参考以下文章