跳转至

强化学习基础

强化学习的基本元素:智能体、环境、状态、动作、奖励。什么是马尔可夫决策过程(MDP)?

image.png

强化学习基本元素:

  • 智能体(Agent):学习者或决策者,通过与环境的交互来学习最优策略。

  • 环境(Environment):智能体所处的外部世界,对智能体的动作做出反应,并给出新的状态和奖励。

  • 状态(State):环境在某一时刻的完整描述,包含智能体做出决策所需的所有信息。状态空间可以是离散或连续的。

  • 动作(Action):智能体可以执行的操作集合。每个动作会引发环境状态的转移。

  • 奖励(Reward):环境对智能体动作的即时标量反馈,指示该动作的好坏。智能体的目标通常是最大化累积奖励(长期回报)。

image.png

MDP 的核心目标:找到一个策略 π:S→A(确定型)或 π(a∣s)(随机型),使得从任何初始状态出发,按照该策略执行动作,所获得的期望累积折扣奖励(称为值函数或状态价值)最大化:

image.png

MDP 的假设是环境满足马尔可夫性,这使得最优策略和值函数可以通过 Bellman 方程递归定义和求解。


基于值的方法和基于策略的方法有什么区别?Q-Learning 和 Policy Gradient 的思想。

image.png

基于值的方法 (Value-Based):

image.png

  • 代表算法:Q-Learning、Deep Q-Network (DQN)。

  • 优点:样本效率较高,通常较稳定。

  • 缺点:

  • 难以处理连续动作空间(因为需要对所有动作求最大值)。
  • 最终学到的策略是确定型的,可能不足以表达某些随机最优策略。
  • 在函数近似下,微小的 Q 值误差可能导致策略急剧变化。

基于策略的方法 (Policy-Based):

image.png

  • 代表算法:REINFORCE、PPO、A2C/A3C。

  • 优点:

  • 天然支持连续动作空间(策略输出动作分布参数,如高斯均值方差)。
  • 可以学习随机策略,这在部分可观测环境或博弈中至关重要。
  • 优化目标直接针对感兴趣的性能度量,可能收敛更好。

  • 缺点:

  • 通常样本效率较低,梯度估计方差大(需要多次采样)。
  • 容易陷入局部最优。

Q-Learning 的思想:

image.png

对比总结:基于值的方法间接通过值函数获得策略,适合离散动作和样本效率要求高的场景;基于策略的方法直接优化策略,适合连续动作和需要随机策略的场景。现代方法(Actor-Critic)将两者结合。


Q-Learning 的更新公式是什么?什么是时序差分(TD)学习?

Q-Learning 更新公式:

image.png

TD 在 Q-Learning 中的体现:Q-Learning 使用 TD(0) 思想,即单步奖励加上下一状态的最大 Q 值作为当前 Q 值的更新目标。这允许智能体在每一步后立即学习,而无需等待整个 episode 结束。


DQN 如何将深度学习与 Q-Learning 结合?经验回放和目标网络的作用。

DQN (Deep Q-Network) 由 DeepMind 在 2015 年提出,首次将深度学习成功应用于大规模强化学习问题(玩 Atari 游戏)。它使用深度神经网络来近似动作值函数 Q(s,a;θ),

结合方式:

  • 输入状态(如连续的4帧游戏画面),输出每个可能动作的 Q 值(一个输出节点对应一个动作)。

  • 使用 Q-Learning 的更新规则,但通过梯度下降最小化 TD 误差的平方(Huber 损失也常用)

image.png

经验回放 (Experience Replay):

  • 作用:打破数据之间的时序相关性,使训练数据近似独立同分布,这符合随机梯度下降的要求。

  • 实现:智能体每一步的转移 (s,a,r,s′) 被存储到一个固定大小的回放池中。训练时,从池中随机采样小批量数据来更新网络。

  • 好处:

  • 提高数据效率,每条经验可以被多次学习。
  • 平滑训练过程,避免因连续高度相关样本导致的发散或振荡。

目标网络 (Target Network):

image.png

其他 DQN 核心改进:奖励裁剪、误差裁剪、Double DQN(解决过高估计)、Dueling DQN(分离状态价值与优势)等。


Policy Gradient 的核心公式是什么?REINFORCE 算法如何工作?

Policy Gradient 核心公式:

策略梯度定理给出了期望回报梯度的表达式:

image.png

REINFORCE 算法:

  • REINFORCE 是最基础的蒙特卡洛策略梯度算法。

  • 工作流程:

image.png

尽管简单,REINFORCE 奠定了所有策略梯度方法的基础。


Actor-Critic 方法如何结合策略和值函数?A2C/A3C 的基本框架。

Actor-Critic 方法 是策略梯度与值函数方法的融合,旨在保持策略梯度的直接策略优化,同时引入值函数来降低梯度估计的方差。

image.png

A2C (Advantage Actor-Critic):

  • 同步版本:有一个全局网络,多个并行环境(workers)各自收集一小批数据,然后同步计算梯度并更新全局网络。

  • 框架:

  • 使用当前策略 πθπθ 在多个环境中并行采集 n 步经验(或固定长度片段)。
  • 对于每个经验片段,计算 n 步 TD 误差或直接用蒙特卡洛回报(结合值函数bootstrap)来估计优势:

image.png

image.png

A3C (Asynchronous Advantage Actor-Critic):

  • 异步版本:每个 worker 在各自的环境副本中独立运行,异步地将梯度更新推送到全局网络,或直接更新全局网络(Hogwild风格)。无需经验回放,因为异步交互已经起到了解相关的作用。

  • 在实践上,A2C(同步、使用GPU批处理)通常更高效且易实现,性能与A3C相当或更好。

A2C/A3C 是有效的基线算法,为后来的 PPO 等方法奠定了基础。


什么是优势函数(Advantage Function)?在 A2C 中如何减少方差?

优势函数:

image.png

  • 优势函数相当于以 V(s) 作为基线 (Baseline),减去了状态本身的价值。这移除了由于状态好坏带来的回报波动,因为好的状态下的高回报不再盲目地奖励该状态下的所有动作。

  • 数学上可以证明,引入与动作无关的基线不改变梯度期望,但显著降低方差。

  • V(s) 正是对基线的最优估计。

在 A2C 中如何估计优势:

A2C 通常不单独维护 Q 网络,而是利用 TD 误差作为优势的无偏估计(或近似)。因为:

image.png

更大的 n 减少偏差但增加方差。A2C 使用这样的优势估计驱动策略更新,实现了方差降低。


PPO 如何通过裁剪目标函数保证策略更新的稳定性?

PPO (Proximal Policy Optimization) 由 Schulman 等人在 2017 年提出,旨在解决策略梯度步长难以确定的问题,保持策略更新的稳定和高效。

核心挑战:普通的策略梯度更新可能迈出过大一步,导致策略剧烈变化,从而毁坏训练(“悬崖式”崩溃)。TRUST REGION 方法(如TRPO)通过约束KL散度来解决,但计算复杂。PPO 提供了一个更简单但同样有效的方案。

PPO 的目标函数(Clipped Surrogate Objective):

image.png

  • 这里取了裁剪后目标和未裁剪目标的最小值。

image.png

  • 这确保策略更新不会让概率比偏离1太远,相当于隐式地约束了新旧策略间的KL散度。

为何稳定:

  • 防止过大的单步策略更新,避免了策略崩溃。

  • 目标函数连续且可微,易于用标准优化器(如Adam)进行多轮小批量更新。

  • 实现简单,仅需在损失函数中加入裁剪,无需二阶优化。

PPO 因为其简单性和鲁棒性,已成为连续控制和许多任务中的首选强化学习算法。


强化学习中的探索与利用困境如何解决?ε-贪心、熵正则化。

探索与利用困境 (Exploration vs. Exploitation):

  • 利用 (Exploitation):根据已知信息选择当前认为最好的动作,以最大化短期奖励。可能导致错过更优策略。

  • 探索 (Exploration):尝试尚未充分了解或随机的动作,以收集更多信息,可能带来长期更高回报,但短期回报可能较低。

  • 智能体必须在两者之间找到平衡,这是强化学习的核心难题之一。

解决方法:

  1. ε-贪心 (ε-Greedy):

  2. 以概率 1−ϵ 选择贪心动作(利用),以概率 ϵ 随机选择动作(探索)。

  3. 通常 ϵ 初始较大(如1.0),随时间衰减至较小的值(如0.01)。

  4. 优点:简单,适用于离散动作空间。

  5. 缺点:探索盲目(对所有非贪心动作一视同仁),效率不高;在复杂环境中可能始终无法探索到关键区域。

  6. 乐观初始化 (Optimistic Initialization):

  7. 将 Q 值初始化为较高的值,促使智能体在早期去探索更多状态动作(因为预估回报都很高),随着经验增加,这些估计逐渐收敛。

  8. 熵正则化 (Entropy Regularization):

  9. 在策略优化目标中加入策略的熵项:

image.png

  • H 衡量策略的随机性。最大化熵鼓励动作分布更均匀,即保持探索。

  • 系数 β 控制探索的强度。Soft Actor-Critic (SAC) 算法基于此,取得了出色的探索和性能。

  • 上置信界 (Upper Confidence Bound, UCB):

image.png

  1. Thompson Sampling:

  2. 维护 Q 值的后验分布(如贝叶斯方法),从分布中采样选择动作,自然平衡探索与利用。

  3. 内在奖励 (Intrinsic Motivation):

  4. 给智能体提供额外的内在奖励,例如访问新奇状态(基于计数的探索)、预测误差(好奇心)或状态空间密度。

  5. 近年来基于随机网络蒸馏 (RND) 等方法在难探索游戏中取得突破。

  6. 参数空间噪声 (Parameter Space Noise):

  7. 在策略网络的参数上添加自适应噪声,从而产生一致的探索行为,而非在动作空间随机。

选择哪种方法取决于问题规模:小规模表格型问题可用 UCB 或乐观初始化;大规模深度强化学习常用 ε-贪心(DQN)或熵正则化(A2C/PPO/SAC),并可结合内在奖励。


在什么情况下适合使用强化学习?与监督学习的典型区别。

适合使用强化学习的场景:

  • 序列决策问题:当前动作影响未来状态和奖励,如机器人控制、自动驾驶、游戏AI。

  • 缺乏完整标注数据:不知道每个状态下的最优动作,只能获得对动作好坏的评价信号(奖励)。

  • 目标是通过试错与环境交互来实现长期目标:如交易系统优化、冷却系统节能等。

  • 环境可以模拟或交互成本可接受:需要大量试错,通常需要仿真环境(如游戏模拟器、数字孪生)。

  • 需要学习策略:最终产物是一个从状态到动作的映射(策略),而非预测标签。

与监督学习的典型区别:

查看内嵌表格

相互联系:深度强化学习广泛使用了监督学习中的函数近似(深度网络),许多RL算法包含监督学习环节(如 Critic 的更新就是监督式回归)。此外,模仿学习、逆强化学习等结合了监督学习与 RL。


强化学习在游戏(AlphaGo)、机器人、推荐系统等领域的应用。

  1. 游戏 AI

  2. Atari 游戏 (DQN):直接从原始像素学习玩街机游戏,端到端学会人类级别的策略。DQN 的出现是深度学习与 RL 结合的分水岭。

  3. 围棋 (AlphaGo / AlphaZero):

  4. AlphaGo 结合深度神经网络与蒙特卡洛树搜索 (MCTS),使用监督学习(从人类棋谱)和强化学习(自我对弈)训练策略网络和价值网络。
  5. AlphaZero 完全从零开始自我对弈,不依赖人类知识,在围棋、国际象棋、将棋中击败所有之前程序,展现了RL的通用性。

  6. 星际争霸 II (AlphaStar):利用多智能体训练、模仿学习和强化学习,达到宗师级水平,需要处理超大动作空间和长时规划。

  7. OpenAI Five (Dota 2):使用大规模PPO进行训练,展示了团队协作和长期策略。

  8. 机器人

  9. 运动控制:让模拟或真实机器人学习行走、奔跑、跳跃(如 DeepMind 的 locomotion 任务)。PPO、SAC等被广泛应用。

  10. 机械臂操控:抓取、堆叠、开门等任务。通常采用 Sim-to-Real 迁移,即在模拟器中训练后迁移到现实。

  11. 自主导航:机器人在未知环境中避障并到达目标,使用 RL 结合 SLAM。

  12. 挑战:真实环境样本效率低、安全风险高,因此模拟至关重要。域随机化、系统辨识等方法帮助缩小模拟与现实的差距。

  13. 推荐系统

  14. 动态用户兴趣建模:用户的兴趣和行为随推荐结果发生变化,RL 可以建模这种反馈循环,优化长期用户满意度(如停留时间、转化率)而非单一即时点击。

  15. 序列化推荐:将推荐视为序列决策过程,每一步推荐一个或多个物品,用户反馈(点击、购买)作为奖励。

  16. 使用算法:Contextual Bandit(简单形式)、Value-based DQN、Policy Gradient 等。为了处理巨大动作空间,常用离线RL、Slate RL(推荐一组物品)等。

  17. 实例:YouTube 推荐、广告投放优化、京东商品推荐等,RL 已用于提升长期指标。

  18. 其他领域

  19. 金融交易:RL 学习交易策略,在风险约束下最大化收益。

  20. 自然语言处理:RL 用于对话管理、文本生成(如 RLHF)、机器翻译中的序列级优化。

  21. 工业控制:数据中心冷却、电网调度、化学反应优化。

  22. 自动驾驶:将规划和控制问题建模为 RL 任务,处理交互决策。


强化学习与语言模型结合的前沿方向(如 RLHF、基于人类反馈的训练)。

  1. RLHF (Reinforcement Learning from Human Feedback):

  2. 动机:大语言模型(LLM)需要对齐人类偏好,生成有帮助、真实、无害的文本。传统监督学习缺乏对生成质量的直接优化。

  3. 流程:

  4. 监督微调 (SFT):收集人类指令-回答对,微调预训练LLM。
  5. 奖励模型 (RM) 训练:针对同一提示的多个回答,由人类标注偏好排序,训练奖励模型预测符合人类偏好的分数。
  6. RL 微调:使用 PPO 算法,将 LLM 作为策略,生成回答后获得 RM 的奖励,同时加入 KL 惩罚防止策略偏离太远。

  7. 影响:ChatGPT 的成功证明了 RLHF 使 LLM 输出更符合期望,显著提升了交互体验。

  8. 其他结合方向:

  9. 基于语言模型的策略:直接在 LLM 内部生成动作(如输出机器人指令),或者利用 LLM 的世界知识辅助 RL 训练(奖励设计、目标生成)。

  10. 工具使用与推理:RL 训练 LLM 学会调用外部工具(搜索引擎、计算器)或进行多步推理(ReAct 模式),通过奖励信号优化工具调用时机和推理链路。

  11. 多智能体对话:多个 LLM 相互对话、博弈,通过 RL 优化协作与竞争策略。

  12. 幻觉减少:将事实性作为奖励的一部分,通过 RL 调整模型,使其更谨慎和引用证据。

  13. 偏好优化算法的演进:如 DPO (Direct Preference Optimization),直接通过偏好对优化策略,无需显式训练奖励模型,简化了 RLHF 流程。RRHF、RAFT 等方法也在涌现。

意义:RL 为 LLM 的行为优化提供了灵活且强大的框架,使得对齐人类复杂的、难以形式化的价值观成为可能。这是大模型从“预测下一个词”走向“有用的AI助手”的关键一步。