简要回答
Q(s,a) 表示在状态 s 做动作 a 的期望累积回报;用 TD 误差更新 Q 表,策略取 argmax_a Q(s,a),需 ε-greedy 探索。
标准回答
核心更新
Q-Learning 学习动作价值 Q(s,a),即在状态 s 执行动作 a 后按最优策略行动的期望累积回报。每步用 TD 误差迭代更新:
Q(s,a) ← Q(s,a) + α[r + γ max_a' Q(s',a') - Q(s,a)]
其中 α 是学习率,γ 是折扣因子,方括号内即 TD 误差。
为何是 off-policy 且 model-free
目标用 max_a' Q(s',a') 构造,对应 greedy 目标策略;而采集数据可用 ε-greedy 等任意行为策略,二者解耦,故称 off-policy,直接学到最优 Q*。更新只需样本 (s,a,r,s'),无需环境转移模型,故 model-free。
适用与扩展
- 表格型 Q-Learning 仅适用于状态-动作空间较小、可枚举的场景
- 高维(如 Atari 像素)用 DQN:神经网络近似 Q,配合经验回放与目标网络稳定训练
- 探索常用 ε-greedy(ε 随训练衰减),也可用 UCB、Thompson Sampling
常见误区
⚠️ 常见踩坑
把更新式里的 max_a' Q(s',a') 误写成实际下一步动作的 Q(那是 SARSA,会让 Q-Learning 退化为 on-policy);误以为 off-policy 就等于离线/不与环境交互(off-policy 仍可在线采样,只是行为与目标策略不同)。
追问
追问 1:SARSA 和 Q-Learning 区别?
题库专题:SARSA 等时序差分方法与蒙特卡洛方法有何区别?Q-Learning 是 off-policy,更新用 max Q(s',a');SARSA 是 on-policy,用实际采取的 a' 更新。SARSA 更保守,在悬崖行走等场景更安全。
题库延伸:与本追问相关的专题题 → SARSA 等时序差分方法与蒙特卡洛方法有何区别?
追问 2:什么是 Double DQN?
题库专题:什么是 DQN 中的经验回放?为什么重要?标准 DQN 用同一网络既选动作又估 Q 值,易高估(max 操作带来正偏差)。Double DQN 用在线网络选 a*,用目标网络估 Q(s',a*),解耦选择与评估,显著缓解 Q 值过估计。
题库延伸:与本追问相关的专题题 → 什么是 DQN 中的经验回放?为什么重要?
延伸学习
与本题相关的知识库文章、术语、工具与行业资讯。
📰 AI 资讯
🛠️ AI 工具