真实面经题目 · 原创解析
DQN 有哪些常见优化版本,DDQN、Dueling DQN、PER 与 PPO 在调参和训练速度上有什么差异?
DQN 是基于值函数的 off-policy 强化学习方法,DDQN、Dueling DQN 和 PER 分别缓解 Q 值过估计、状态价值与动作优势混合、经验采样效率低等问题。PPO 是 on-policy 策略优化方法,调参重点、样本复用和训练速度与 DQN 系列明显不同。
真实面经题目 · 原创解析
DQN 是基于值函数的 off-policy 强化学习方法,DDQN、Dueling DQN 和 PER 分别缓解 Q 值过估计、状态价值与动作优势混合、经验采样效率低等问题。PPO 是 on-policy 策略优化方法,调参重点、样本复用和训练速度与 DQN 系列明显不同。
我会先把 DQN 定位成基于 Q 值的 off-policy 方法,适合离散动作空间,核心组件是经验回放、target network 和 TD 目标。DDQN 主要解决 DQN 中 max 操作带来的 Q 值过估计:用在线网络选动作、目标网络估值。Dueling DQN 把 Q 分解成状态价值 V 和动作优势 A,让很多动作价值接近时也能更好学习状态好坏。PER 按 TD error 优先采样更有学习价值的经验,提高样本利用率,但要用重要性采样修正偏差。PPO 则是 on-policy actor-critic 方法,用 clipped objective 限制策略更新幅度,适合直接优化随机策略。调参上 DQN 更关注 replay buffer、epsilon 探索、target update、Q loss 和 reward scale;PPO 更关注 clip range、GAE、entropy、actor/critic 学习率和每批数据更新轮数。训练速度上 DQN 可复用历史经验,样本效率通常更高;PPO 每轮需要新策略采样,样本复用较少但更新更稳定、并行采样友好。
DQN 用神经网络近似 Q(s,a),通过 Bellman 目标学习每个状态动作的长期回报。经验回放打散样本相关性,target network 稳定 TD 目标,epsilon-greedy 负责探索。它通常适合离散动作空间,训练数据可以 off-policy 复用。
普通 DQN 目标里对下一状态动作取 max,容易把估值噪声最大的动作选出来,造成 Q 值系统性过估计。DDQN 解耦动作选择和动作估值:在线网络选择 argmax 动作,目标网络计算该动作价值,从而降低过估计。
Dueling DQN 把 Q(s,a) 拆成状态价值 V(s) 和动作优势 A(s,a)。在很多动作差异不明显的状态下,模型可以先学会这个状态本身好不好,再学习具体动作相对优势,提升价值估计的泛化和收敛稳定性。
Prioritized Experience Replay 认为不是所有 transition 的学习价值相同,TD error 大的样本更值得被采样。它能加快关键经验的学习,但会改变样本分布,所以需要重要性采样权重修正偏差,并控制优先级指数防止只盯着噪声样本。
PPO 是策略梯度类 actor-critic 方法,直接优化策略概率并用 clip 限制新旧策略差异。它通常是 on-policy,每批数据来自当前或近似当前策略,样本复用不如 DQN 自由,但对连续动作、随机策略和稳定更新更友好。
DQN 调参常围绕 replay buffer 大小、batch size、target update 频率、epsilon 衰减、学习率、reward clipping 和 TD loss;PPO 常围绕 clip range、GAE λ、entropy bonus、value loss 权重、rollout 长度和 update epochs。速度要区分样本效率和墙钟时间:DQN 样本可复用,PPO 可大规模并行采样但需要不断采新数据。
它用在线网络选择下一状态动作,用目标网络估计该动作价值,避免同一个带噪网络同时完成 max 选择和价值估计,从而降低估值偏高。
高 TD error 样本被频繁采样会改变训练分布,也可能放大噪声样本影响,所以需要重要性采样权重、优先级平滑和采样概率下限。
DQN 原生更适合离散动作,因为要输出或比较各动作 Q 值;PPO 直接参数化策略分布,更自然支持连续动作和随机策略。
PPO 用 clipped objective 限制新旧策略概率比,避免单次更新把策略推得太远,同时配合 value baseline、GAE 和 entropy 控制方差与探索。