Home Learn Blog Game
Learn Reinforcement Learning

Course Structure

Basics

08 Dqn Improvements

5 min read Updated recently

DQN 改进:从偏置、方差到表示结构

DQN 的改进几乎都围绕三件事:

  • 缓解 $\max$ 引起的过估计偏置;
  • 改善样本利用与学习信号(降低方差、提速纠错);
  • 引入更合适的表示结构(让网络更易学)。

1. Double DQN:解耦“选择”与“评估”

DQN 的 TD 目标使用

$$ y = r + \eta\max_{a'} Q_{\theta^-}(s',a'), $$

其中 $\max$ 在同一估计上既选择又评估,容易产生正偏。

Double DQN 的修正:

  • 用在线网络选择动作:

$$ a^* = \arg\max_{a'} Q_\theta(s',a'), $$

  • 用目标网络评估该动作:

$$ y_{\mathrm{DDQN}} = r + \eta\, Q_{\theta^-}(s',a^*). $$

insight:把“最大化运算”从评估网络上移开,显著缓解系统性过估计。


2. Dueling Network:分解 $Q$ 的结构

Dueling 将 $Q$ 分解为状态价值与优势:

$$ Q(s,a)=V(s)+A(s,a)-\frac{1}{|\mathcal{A}|}\sum_{a'}A(s,a'). $$

insight:在许多状态里“动作差别很小”,学习 $V(s)$ 更关键;结构分解提供更好的归纳偏置。


3. Prioritized Experience Replay(PER):把算力花在更“意外”的样本上

设 TD 误差

$$ \delta = y - Q_\theta(s,a). $$

PER 用 $|\delta|$(或其变体)作为优先级,提高误差大的样本被采样概率,从而加速纠错。

由于改变了采样分布,会引入偏差,通常用重要性权重修正:

$$ w_i \propto \Big(\frac{1}{N\,p_i}\Big)^{\beta}. $$

(实现细节略,关键是理解“非均匀采样 + 偏差修正”的思想。)


4. $n$-step Return:在偏差—方差间折中

用 $n$ 步回报替代单步 bootstrap:

$$ G_t^{(n)}=\sum_{k=0}^{n-1}\eta^k r_{t+k+1}+\eta^n\max_a Q_{\theta^-}(s_{t+n},a). $$

  • $n$ 越大:更接近 MC(偏差小,方差大)。
  • $n$ 越小:更接近 TD(0)(方差小,偏差大)。

5. 实践中的组合:Rainbow 的思想

Rainbow 把 Double、Dueling、PER、n-step 等叠加,本质是同时修补:

  • 估计偏置(Double);
  • 表示瓶颈(Dueling);
  • 学习信号稀疏/慢(PER、n-step)。

理解这些组件分别解决的问题,比记住“有哪些 trick”更重要。

Previous Save as PDF

© 2025 Ze Rui Liu. Built for the future of AGI.

Classic Beige
Deep Space
Electric Violet
Matcha Latte
Cherry Blossom
High Contrast
Inter Sans
Playfair Serif
JetBrains Mono
Patrick Hand