优先经验回放
概述
优先经验回放(PER,Schaul et al., DeepMind, ICLR 2016)针对 DQN 均匀采样的低效性,以 TD 误差绝对值为优先级指标,优先从回放缓冲区中采样高学习价值的 transition。配合重要性采样修正(IS Correction)消除分布偏移引入的偏差,使用 SumTree 数据结构实现 O(log N) 采样效率。
关键内容
-
核心问题:DQN 均匀采样假设所有 transition 学习价值相等,实际上 TD 误差大的 transition(信息量更大)应被更频繁采样,类似监督学习中的"难例挖掘"。
-
优先级定义:
p_i = |δ_i| + ε,其中 δ_i 是 TD 误差,ε 是避免优先级为 0 的小常数。 -
采样概率:
P(i) = p_i^α / Σ_k p_k^α -
α = 0:退化为均匀采样;α = 1:完全按优先级采样;典型值 α = 0.6
-
重要性采样修正(IS Correction):非均匀采样引入分布偏移,破坏梯度无偏性。通过权重
w_i = (1/(N·P(i)))^β修正,β 从 β₀=0.4 线性退火至 1.0(训练初期允许偏差以降低方差,后期恢复无偏)。 -
SumTree 高效实现:线段树结构,叶节点存储 p_i^α,内部节点存储子树和。更新优先级和按优先级采样均为 O(log N),远优于朴素 O(N)。
-
新样本优先级:初始赋予当前最大优先级,确保每个 transition 至少被采样一次。
-
实验结果:DQN + PER 相对 DQN 提升 +46%;Double DQN + PER 提升 +97%(协同效应显著);三改进相互正交,均被 Rainbow 采用。
-
变体——基于排名:
P(i) ∝ rank(i)^{-α},对异常 TD 误差更鲁棒,但实现更复杂。
来源
- rl_02_double_dueling_per — Prioritized Experience Replay (arXiv:1511.05952, ICLR 2016)
相关
- DQN — extends
- 强化学习 — part_of
- Double DQN — compares_to
- Dueling DQN — compares_to