LLMs基础学习(八)强化学习专题(3)
文章目录
- LLMs基础学习(八)强化学习专题(3)
- 非马尔可夫处理与 n 步价值函数
- 解决方法
- n 步价值函数更新与期望方差
- 小结
- On - policy 与 Off - policy 区别解析
- On - policy 详解
- Off - policy 详解
- 对比总结
视频链接:https://www.bilibili.com/video/BV1MQo4YGEmq/?spm_id_from=333.1387.upload.video_card.click&vd_source=57e4865932ea6c6918a09b65d319a99a
非马尔可夫处理与 n 步价值函数
强化学习中,理想的马尔可夫性质是 “下一状态仅由当前状态决定”。但实际任务里,数据流常不满足(下一状态与历史状态相关),直接用当前状态决策会削弱策略泛化能力。
解决方法
1. 状态表征增强
通过补充历史信息,让状态近似满足马尔可夫性质:
- RNN/LSTM:用循环神经网络学习历史序列,压缩过去多步状态为当前状态的补充信息(如 LSTM 捕捉时序依赖)。
- 注意力机制:动态聚焦关键历史状态(如 Transformer 用自注意力抓取长距离依赖,筛选对当前决策重要的历史片段)。
- 滑动窗口拼接:拼接最近 k 步的状态、动作、奖励作为新状态(适配短期依赖场景)。
2. 模型结构改进
设计适配非马尔可夫性的算法:
- 记忆增强网络:引入外部记忆模块(如神经图灵机),支持智能体存储、检索长期历史信息。
- 分层强化学习:拆分任务为 “高层(规划长期目标)+ 底层(执行具体动作)”,由高层处理非马尔可夫性。
3. 转换马尔可夫决策过程
若环境本具备马尔可夫性但观测不全,重建 MDP:
- 延迟奖励分配:将多步延迟奖励拆解到相关状态(如蒙特卡洛回溯完整轨迹的奖励影响)。
- 状态聚合:用聚类算法合并转移规律相似的非马尔可夫状态,归为同一抽象状态。
n 步价值函数更新与期望方差
1. n 步价值函数更新公式
在 n 步 TD 学习 中:
-
价值函数更新: V ( S t ) ← V ( S t ) + α [ G t ( n ) − V ( S t ) ] V(S_t) \leftarrow V(S_t) + \alpha \left[ G_t^{(n)} - V(S_t) \right] V(St)←V(St)+α[Gt(n)−V(St)] 说明:
-
- V ( S t ) V(S_t) V(St):时刻 t 状态 S t S_t St 的价值函数。
- α \alpha α:学习率(控制更新幅度)。
- G t ( n ) G_t^{(n)} Gt(n):n 步回报(融合前 n 步实际奖励与第 n 步后状态价值估计)。
-
n 步回报定义: G t ( n ) = R t + 1 + γ R t + 2 + ⋯ + γ n − 1 R t + n + γ n V ( S t + n ) G_t^{(n)} = R_{t+1} + \gamma R_{t+2} + \dots + \gamma^{n-1} R_{t+n} + \gamma^n V(S_{t+n}) Gt(n)=Rt+1+γRt+2+⋯+γn−1Rt+n+γnV(St+n) 说明:
-
- γ \gamma γ:折扣因子(降低远期奖励权重)。
- 组成:前 n 步实际奖励( R t + 1 … R t + n R_{t+1} \dots R_{t+n} Rt+1…Rt+n ,按 γ \gamma γ 衰减) + 第 n 步后状态的价值估计( V ( S t + n ) V(S_{t+n}) V(St+n) ,按 γ n \gamma^n γn 衰减)。
2. n 增大时,期望和方差的变化
- 期望:n 越大,价值函数期望越接近真实值(偏差减小)。 原因:n 步回报包含更多实际奖励,减少对后续状态估计值的依赖,降低偏差。
- 方差:n 越大,方差越大。 原因:n 步回报需累加更多随机变量(每一步奖励),即使有 γ \gamma γ 衰减,随机性累积仍会增大方差。
3. 偏差 - 方差权衡
典型案例:
- 蒙特卡洛( n → ∞ n \to \infty n→∞ ):无偏差但方差高(需完整轨迹,奖励随机性累积多)。
- TD(0)( n = 1 n=1 n=1 ):有偏差但方差低(仅依赖一步,估计快速但粗糙 )。
小结
- 非马尔可夫数据流:通过状态表征增强、模型结构改进、转换 MDP 应对,让策略利用历史信息。
- n 步价值函数:更新公式融合 “n 步实际奖励 + 未来状态估计”;n 增大时,期望更准(偏差小)、方差更大 ,体现强化学习的偏差 - 方差权衡。
On - policy 与 Off - policy 区别解析
以 “皇帝了解民情” 类比强化学习策略:
- On - policy:皇帝微服出巡,自身(行为策略 = 目标策略) 亲自收集民情数据,基于这些一手信息直接调整决策(如政策)。
- Off - policy:皇帝派遣官员(行为策略)走访民间收集信息,自己(目标策略)在宫中分析汇报内容,间接优化决策。
行为策略 & 目标策略
- 行为策略(Behavior Policy):与环境交互、生成数据的策略(如 “官员跑腿探索民情” ),侧重探索。
- 目标策略(Target Policy):用行为策略产生的数据学习、优化,最终用于决策的策略(如 “皇帝基于民情做政策决策” ),侧重利用。
策略分离的意义
平衡强化学习的 探索(exploration,尝试新情况) 与 利用(exploitation,用已知最优策略) :行为策略负责多样化探索,目标策略专注数据利用与优化。
On - policy 详解
-
核心逻辑:行为策略 ≡ 目标策略,算法用当前策略生成的数据直接更新自身。
-
特点:
-
- 数据与策略强绑定:需持续用最新策略采样新数据(如皇帝每次微服都要去新区域,否则数据过时 )。
- 优缺点:
-
-
- 优点:逻辑简单,数据即采即用,直接优化策略。
-
-
-
- 缺点:难平衡探索与利用,易陷入局部最优(如皇帝长期停留熟悉区域,看不到全面民情,政策优化受限 )。
-
Off - policy 详解
-
核心逻辑:行为策略 ≠ 目标策略,算法用其他策略(历史策略、随机策略等)生成的数据优化目标策略(如官员跑腿的数据供皇帝决策 )。
-
特点:
-
- 数据复用与策略分离:行为策略专注探索(如官员走访多样区域 ),目标策略专注利用数据优化(如皇帝分析汇总信息 )。
- 优缺点:
-
-
- 优点:样本效率高(可复用历史数据,无需持续采新数据 ),支持全局最优(数据来源广,探索更充分 )。
-
-
-
- 难点:不同策略生成的数据存在分布偏差,需用 重要性采样(Importance Sampling) 校正(如官员汇报的 “二手信息” 需处理偏差 )。
-
对比总结
对比维度 | On - Policy(同策略) | Off - Policy(异策略) |
---|---|---|
策略一致性 | 行为策略 = 目标策略 | 行为策略 ≠ 目标策略(相互独立) |
数据生成 | 必须用当前策略实时采新数据 | 可复用历史数据 / 其他策略生成的数据 |
探索与利用 | 探索和利用绑定(如 ε - greedy 直接优化) | 行为策略负责探索,目标策略专注利用 |
样本效率 | 低(需持续采新数据) | 高(支持经验回放、数据复用) |
算法复杂度 | 简单(无需处理策略差异) | 复杂(需处理分布偏移,如重要性采样) |
收敛稳定性 | 较稳定(数据和策略同步更新) | 可能因策略差异导致方差大(数据偏差难处理) |
一句话总结:
On - policy 是 “自己探索 + 自己优化”,简单但易局部最优;Off - policy 是 “别人探索 + 自己优化”,灵活高效但需处理数据偏差。核心差异在于 行为策略与目标策略是否分离,及数据使用方式 。