强化学习笔记6--IS、PPO、TD、DQN、Actor-Critic

📅 2026/8/5 11:18:16
强化学习笔记6--IS、PPO、TD、DQN、Actor-Critic
一、重要性采样、 PPO/TRPO一、On-policy 与 Off-policy在强化学习的策略梯度方法中根据交互策略和更新策略是否为同一个分为两类On-policy同策略与环境交互采集数据的策略和正在训练优化的策略是同一个。典型代表是基础版 Policy GradientREINFORCE。核心问题策略参数θ 每更新一次采样分布就会发生变化之前采集的样本数据就不再符合新策略的分布无法重复使用样本利用效率极低环境交互成本很高。Off-policy异策略与环境交互采集数据的策略行为策略 θ和正在训练优化的策略目标策略θ不是同一个。核心优势可以复用旧策略采集的大量数据来训练新策略大幅提升样本效率。将 On-policy 改造为 Off-policy 的核心数学工具就是重要性采样Importance Sampling。二、重要性采样原理与固有问题1. 数学定义与推导重要性采样的本质是在无法直接从目标分布采样时通过另一个采样分布的样本加权修正后估计目标分布下的期望。2. 重要性采样的致命问题分布不匹配重要性采样在数学上是无偏估计但对方差极其敏感。当p(x)和q(x)差异过大时估计结果会完全失效高权重区域采样不足目标分布 p(x) 的高概率区域可能是采样分布q(x) 的低概率区域几乎采不到样本而采到的样本大多集中在q(x) 的高概率区这些区域的权重要么极小要么极大。估计方差爆炸权重的剧烈波动会让期望估计的方差极大少量样本就能让结果严重偏离真实值甚至出现符号错误。真实分布 p(x)蓝色集中在左侧f(x)红色在左侧为负值因此真实期望为负数。采样分布 q(x)绿色集中在右侧采样点绿色圆点全部落在右侧区域f(x) 在右侧为正值。尽管左侧区域的重要性权重极大但我们几乎采不到左侧的样本最终加权估计出的期望会变成正数和真实值完全相反。这就是后续 TRPO、PPO 算法必须限制新旧策略差异的根本原因一旦策略更新幅度过大重要性采样的估计就会彻底失效。三、策略梯度的 Off-policy 改造1. 轨迹层面的改造整条轨迹2. 单步状态 - 动作层面的改造Actor-Critic 框架关键近似消去状态分布项四、分布约束算法TRPO 与 PPO为了保证 “新旧策略差异足够小” 这个前提成立学界提出了两类经典算法核心都是限制策略更新的步长。1. TRPOTrust Region Policy Optimization信任域策略优化2. PPOProximal Policy Optimization近端策略优化PPO 在 TRPO 的思想基础上做了简化把复杂的约束优化变成了简单的无约束优化同时保证了性能是目前工业界最主流的强化学习算法。PPO 有两种主流实现形式版本一PPO-PenaltyKL 惩罚版版本二PPO-Clip裁剪版即 PPO2这是最常用、最简单高效的 PPO 版本完全不需要计算 KL 散度直接对重要性比率做裁剪从根源上限制策略更新幅度。核心公式 θ为本轮更新学习的参数θ^k为获取数据使用的参数本轮更新结束后θ^k -- θ直观理解分两种情况简单来说PPO-Clip 通过一个极其简单的裁剪操作隐式地把新旧策略的差异限制在一个小区间内既保证了重要性采样的有效性又实现了极低的计算成本和极高的稳定性。五、PPO 完整算法流程六、补充说明二、TD、DNQ一、Critic评价者方法的本质在强化学习中Critic不直接决定动作而是评价“当前策略或当前状态动作有多好”。它通过估计状态价值state value或动作价值action value来实现这一评价。二、两种经典的 Critic 评价方法1. 蒙特卡洛方法MC-based2. 时序差分方法TD approach3. 同一组数据MC 与 TD 的结果可能不同假设环境只有两个状态 sa​ 和 sb且 γ1无折扣。收集到的 6 个 episode 数据三、Q-Learning从 Critic 到策略改进Q-Learning是一种典型的off-policy TD 控制算法属于 Critic 方法因为它维护的是动作价值函数 Q而非显式策略网络。1. 策略改进定理2. Q-Learning 核心更新公式四、探索与利用的平衡当直接用 aarg⁡max⁡aQ(s,a)aargmaxa​Q(s,a) 选择动作时那些从未被选中的动作的 Q 值可能一直为 0甚至未初始化好而已被选中且获得正奖励的动作会持续被选中导致永远无法探索到可能更好的动作。解决方案五、经验回放Replay Buffer六、深度 Q 网络DQN的完整算法将 Q-Learning 与深度神经网络结合时为了保证稳定性引入目标网络target network技术。网络结构损失函数为什么要用目标网络DQN 算法伪代码七、DNQ改进1. 高估问题与 Double DQNDouble DQN 的核心思想公式对比实现细节DQN 本就维护两个网络在线网络与目标网络因此 Double DQN 几乎不增加计算开销只是改变了目标值的计算方式。2. Dueling DQN架构变化网络结构示意输入s → 共享卷积/全连接层 → ├── 分支1: V(s) (标量) └── 分支2: A(s,·) (|A|维向量) 输出: Q(s,a) V (A - mean(A))3. Prioritized Experience Replay优先经验回放动机原始经验池均匀采样但某些样本如高TD误差的对学习更关键。优先回放根据TD误差绝对值决定采样概率重要样本被更频繁地回放提升数据效率。优先级定义重要性采样修正4. Multi-step Learning多步回报多步目标定义在经验池中的存储需存储连续的 nn 步转移并注意在 episode 边界截断不可跨越终止状态。5. Noisy Nets噪声网络探索方式的改进传统 ϵ-greedy 在动作空间加入无相关性的随机噪声。Noisy Nets 把噪声直接注入网络参数产生状态依赖的探索行为。噪声线性层将全连接层改造为优势6. Distributional Q-function分布型Q函数从期望到分布C51 算法分布型Bellman更新7. Rainbow集成所有改进Rainbow 将上述六项扩展整合在同一智能体中八、Q-Learing处理连续动作空间问题挑战根源无法直接求解 maxₐ Q(s,a)在离散动作空间中max操作只需遍历有限个动作的Q值但在连续动作空间如力矩、舵机角度中动作是无穷不可数的无法通过枚举求得精确最大值。因此目标值无法直接计算这是经典Q-learning在连续控制任务中的核心瓶颈。方案一采样足够动作后近似取 max原理局限与改进方案二梯度上升求解 argmax核心思想应用时的注意点方案三设计特殊网络使 argmax 可解析计算NAF其思想是强制Q函数具有一种特定形式使得最优动作和最大值可以直接从网络输出中解析获得。这实际上是归一化优势函数Normalized Advantage Functions, NAF的核心。标准 NAF 公式解析性质如何保证 P(s) 正定网络结构输入 s → 共享层 → ├── μ(s) 动作维度线性输出tanh 缩放至动作范围 ├── L(s) 下三角矩阵元素展平为一维向量 └── V(s) 标量状态价值 由 L(s) 构建 P(s) L(s)L(s)^T εI 输出 Q(s,a) V(s) - 0.5 (a-μ)^T P (a-μ)NAF 的优缺点总结三种方案的对比方案核心操作优点缺点随机采样近似采样K个动作取Q最大实现极简单无需网络结构设计近似粗糙高维失效计算随K线性增长梯度上升对输入动作做梯度上升求argmax比随机采样更精准局部最优每步多轮迭代耗时梯度计算开销大NAF 网络解析强制Q为二次型直接输出μ和Vargmax与max解析可得训练高效Q表达力受限仅适用于单峰、低维动作空间在实际应用中NAF曾用于仿真机器人控制对于复杂高维连续控制现在更常见的是DDPG、TD3、SAC等演员-评论家方法它们通过维护一个策略网络直接输出动作从根本上避开了显式的max优化。三、Actor-Critic一、基础策略梯度的方差问题带基线的蒙特卡洛策略梯度REINFORCE with baseline的梯度估计公式核心问题方差过大该公式属于蒙特卡洛MC采样的策略梯度直接用单条轨迹的采样回报Gt来估计动作的好坏。 由于环境具有随机性、策略本身也具有随机性一条轨迹的Gt)会包含从t时刻到回合结束所有步的随机波动导致梯度估计的方差非常大最终表现为训练震荡、收敛慢、不稳定。二、Actor-Critic 核心思想用期望替代采样解决方差问题的核心思路用回报的期望值替代单样本采样值消除采样带来的随机波动这就需要引入价值函数Critic来估计期望回报形成「Actor策略网络负责决策 Critic价值网络负责评估」的 Actor-Critic 框架。1. 动作价值函数 QAction Value累积回报Gt的期望就是动作价值函数2. 优势函数 Advantage3. 用 V 函数简化TD 误差替代优势如果同时维护 Q 网络和 V 网络参数量大、训练成本高。借助贝尔曼期望方程可以只用 V 网络来近似优势函数。贝尔曼期望方程含义动作价值 即时奖励 下一时刻状态价值的期望。TD 误差近似优势三、Advantage Actor-Critic (A2C) 算法1. 算法整体框架2. 梯度更新公式3. 网络参数共享Actor 和 Critic 都以状态s作为输入都需要对状态进行特征提取因此底层特征网络可以共享参数上层拆分为两个输出头Actor 头输出动作的概率分布离散动作或动作值连续动作Critic 头输出标量状态价值V(s)。该设计的优势减少整体参数量降低计算开销共享的特征表示同时被策略和价值任务监督特征学习更鲁棒在图像输入等需要复杂特征提取的场景中效果尤为显著。四、异步优势演员 - 评论家A3C1. 设计动机A2C 为单线程串行采样 更新样本效率和训练速度受限且单线程采样的样本多样性不足。 A3CAsynchronous Advantage Actor-Critic通过多线程并行异步的方式同时启动多个工作智能体Worker各自独立采样、计算梯度异步更新全局网络大幅提升训练速度与探索多样性。2. 算法流程图中的Δ应为▽代表梯度3. 核心特点异步更新各 Worker 不需要同步等待计算完梯度即可更新全局网络训练效率显著提升探索多样性不同 Worker 的策略存在差异采样的轨迹覆盖更多状态动作缓解训练陷入局部最优的问题五、Pathwise Derivative Policy GradientDDPG1. 问题背景DQN 无法处理连续动作DQN仅适用于离散动作空间当动作空间连续时如机器人关节角度、车辆油门 / 方向盘无法通过穷举找到最大值对应的动作。2. 核心原理确定性策略梯度流程3、DDPG 算法伪代码四、训练挑战处理一、稀疏奖励稀疏奖励Sparse Reward是指环境只在极少数关键状态如成功或失败时刻才给出非零奖励而在绝大多数中间步骤中奖励为零。这会导致两个严重问题一是有效学习信号极少样本效率极低二是随机探索几乎不可能偶然发现奖励导致智能体停滞不前。因此如何处理稀疏奖励是强化学习走向实际应用的核心挑战之一。下面围绕你给出的提纲对解决稀疏奖励的核心概念与方法进行系统性的补充和详解。一、奖励塑形与内在好奇心机制1. 奖励塑形2. 内在好奇心模块ICMIntrinsic Curiosity Module是奖励塑形的一种特殊形式——内在激励Intrinsic Motivation。它不依赖于任务知识而是让智能体自己产生内在奖励鼓励其探索新颖或不确定的状态。类似或扩展方法包括这些方法可以视为广义的奖励塑形通过赋予智能体“好奇心”或“陌生感”使其在没有外部信号时也能自我驱动。二、课程学习与逆向课程生成课程学习Curriculum Learning模仿人类由简入繁的学习方式让智能体先在简单任务上训练再逐步过渡到困难任务以此缓解稀疏奖励带来的探索困难。课程设计的关键在于“如何定义简单到困难的序列”。常见方法有手动设计课程由人根据领域知识逐步提升环境难度如增加障碍物、扩大目标距离、减少允许步数等。基于性能的门控当智能体在当前难度上的成功率超过阈值时自动升级到下一难度。逆向课程生成Reverse Curriculum Generation这是处理稀疏目标类任务非常有效的自动化课程方法尤其适合“到达指定状态”的问题。其流程为从目标附近开始先从目标状态或非常靠近目标的分布采样起始状态这些状态下任务极简单容易成功。收集成功轨迹在这些起始状态下训练并记录成功的轨迹。向外扩散沿着成功轨迹从末梢更远离目标的状态向外扩展起始分布产生稍难的起点。筛选仅保留那些依然能获得一定成功率的起始点确保新课仍处在可学范围内。重复以上步骤起始分布逐渐向任务原始起点逼近完成从易到难的自动课程。这种方法能让智能体首先在保证可以成功的微小区域得到正奖励学习基本策略然后一步步扩张到全状态空间在稀疏奖励环境中极为有效。其他自动课程生成技术还包括自我博弈课程Self-Play如 Pairwise OpenAI 方法或PAIRED通过对抗生成不断变难的环境。基于难度评分的学习进度训练一个“难度估计”网络动态选择进步最快的任务区间如 ALP-GMM。三、分层强化学习分层强化学习Hierarchical Reinforcement Learning, HRL通过在不同时间尺度上分解任务将稀疏的全局奖励转变为密集的内部子目标奖励从结构上缓解稀疏奖励问题。核心思路引入高层策略元控制器和低层策略控制器。高层策略以较慢的频率设定子目标如“先移动到桌子旁边”。低层策略接收子目标并以较快的频率执行动作其奖励由靠近子目标的程度来定义而非最终环境奖励。这样即使在原始任务中只有最终一步才有1的奖励低层也能通过不断追逐子目标而获得密集的学习信号。代表性方法Feudal Networks (FuN)高层产生隐式目标方向通过梯度传递低层使用一个“目标达到”内在奖励来学习子策略。HIRO (Hierarchical Reinforcement Learning with Off-policy Correction)高层输出显式子目标状态低层通过最大化与子目标的相似度或最小化距离获得奖励对非平稳低层行为做经验修正适合离线数据。HAC (Hierarchical Actor-Critic)支持多层结构低层收到的“奖励”是高层能否达成其目标层层嵌套专门解决连续控制下的长程稀疏奖励任务。Option-Critic学习时序抽象的动作选项Option每个选项有自己的策略和终止条件智能体在学习选项中自动发现子技能。分层强化学习通过时域抽象和内部奖励重标定将原始稀疏问题转化为多个相对密集的子问题不仅提升探索效率也使得技能可以复用。四、事后经验回放事后经验回放Hindsight Experience Replay, HER二、Imitation learning在强化学习中稀疏奖励的极端情况就是完全没有奖励信号——智能体无法从环境中获得任何反馈因此无法通过试错来学习。而模仿学习Imitation Learning正是在这种“零奖励”或“奖励缺失”场景下的一类重要解决方案它利用专家提供的示范轨迹来驱动策略学习相当于用专家的行为记录替代了缺失的环境奖励。下面围绕你给出的提纲对模仿学习中解决无奖励稀疏奖励极限问题的概念和方法进行系统性的补充详解并阐明其与稀疏奖励问题的内在联系。一、行为克隆与分布偏移问题1. 行为克隆2. 行为克隆的核心问题3. 缓解方案数据聚合DAggerDAggerDataset Aggregation通过在线交互主动扩充训练分布以缓解分布偏移。其流程为DAgger 将训练状态分布从“纯专家”逐渐拉向“学习器自身”使策略能见到自己容易犯错的状态并学习纠正方法大大降低了误差级联。其变体还允许使用专家在线查询、合成数据增强等方式是行为克隆向实用化演进的重要一步。二、逆强化学习从行为反推奖励当环境中完全没有奖励函数时逆强化学习Inverse Reinforcement Learning, IRL试图回答专家行为究竟优化了什么其目标是根据专家示范轨迹推断出一个潜在的奖励函数 R(s,a)使得专家策略在该奖励下是最优的。核心思想IRL 如何解决无奖励/稀疏奖励问题一旦从少量专家示范中恢复出奖励函数就可以把它当作密集的塑形信号随后使用任何标准强化学习算法进行训练。这本质上相当于利用专家数据自动构造了一个“基于势能的奖励塑形”如果满足PBRS条件或一个密集的引导奖励彻底打破了原始环境无奖励的困境。扩展与挑战IRL 本身是一个病态问题多个奖励函数可解释同一行为需要加入先验或正则化如奖励的稀疏性、状态域特征线性组合等。大量 IRL 算法需要内循环求解 MDP 或策略计算代价高昂。