当前位置: 首页 > news >正文

强化学习(4)策略梯度与TD Learning

这里我们会聊一下策略梯度与TD Learning的关系


策略梯度与 TD Learning 的关系:Actor-Critic 架构

在这里插入图片描述

策略梯度和 TD Learning 并不是互相排斥的,它们的关系是互补的,并且它们最常在 Actor-Critic(演员-评论家) 架构中被同时使用

简单来说:

  1. 策略梯度(Policy Gradient) 负责 行动(Actor):它直接学习 做什么动作 (π\piπ)。
  2. TD Learning 负责 评估(Critic):它学习 动作有多好 (VVVQQQ)。

1. 为什么需要结合?(TD Learning 解决策略梯度的问题)

单独使用策略梯度方法(如 REINFORCE)有一个致命的弱点:方差(Variance)太大

策略梯度的更新公式通常需要使用完整的回报 GtG_tGt(即从当前时间步到回合结束的所有奖励的折扣总和)来衡量当前动作的好坏。

梯度∝E[∇θlog⁡π(At∣St)⋅Gt]\text{梯度} \propto \mathbb{E} [\nabla_\theta \log \pi(A_t|S_t) \cdot G_t]梯度E[θlogπ(AtSt)Gt]

由于 GtG_tGt 是一个随机变量(取决于后续所有状态和动作),它的波动性很大,这使得梯度估计很不稳定,导致训练收敛慢,甚至可能发散。

TD Learning 如何解决?

TD Learning 通过估计 价值函数 V(s)V(s)V(s)Q(s,a)Q(s, a)Q(s,a),为策略梯度提供一个低方差的基准(Baseline)或优势估计(Advantage Estimate)。

优势函数 A(s,a)=Q(s,a)−V(s)\text{优势函数} \ A(s, a) = Q(s, a) - V(s)优势函数 A(s,a)=Q(s,a)V(s)

在 Actor-Critic 架构中,策略梯度的更新公式变为:

梯度∝E[∇θlog⁡π(At∣St)⋅At]\text{梯度} \propto \mathbb{E} [\nabla_\theta \log \pi(A_t|S_t) \cdot A_t]梯度E[θlogπ(AtSt)At]

这里的 AtA_tAt (优势函数)就是通过 TD Learning 实时计算和更新的。

  • 价值函数 V(s)V(s)V(s)(由 Critic 学习)充当了期望基准:它告诉 Actor 在状态 sss平均能获得多少回报。
  • 优势函数 A(s,a)A(s, a)A(s,a):它告诉 Actor 采取动作 aaa 比平均预期好多少

GtG_tGt 替换为 AtA_tAt,可以大幅减少梯度的方差,因为 TD 估计比完整的蒙特卡洛回报 GtG_tGt 稳定得多,从而使训练更稳定、更快速。

2. Actor-Critic 架构的工作流

现代高效的 RL 算法(如 A2C, A3C, PPO)都是基于这个思想:

暂时没有了解到GRPO等更先进的算法,以后补充

角色学习对象学习方法TD Learning 的作用
Actor (演员)策略 π(a∣s)\pi(a|s)π(as):决定如何行动。策略梯度利用 Critic 提供的 优势函数,指导策略朝更有利的动作方向更新。
Critic (评论家)价值函数 V(s)V(s)V(s):评估当前状态有多好。TD Learning使用 TD 误差来更新 V(s)V(s)V(s) 的估计,确保对优势函数的评估是准确的。

所以Critic(TD Learning)通过不断学习和提供准确的价值评估,来指导 **Actor(策略梯度)**进行高效且稳定的策略改进。

在这里插入图片描述
整个学习过程在一个连续的循环中进行:

步骤角色行动关系与 TD Learning
1. 观测与输入环境 & Actor/Critic智能体观测到当前状态 St,并将 St 输入给 Actor (π\piπ) 和 Critic (V) 两个网络。起始
2. 决策 (Actor)Actor (πθ\pi _ θπθ)根据策略 π\piπ 输出动作 At策略梯度的实现。
3. 评估 (Critic)Critic (VwV_wVw)根据当前状态 St 输出状态价值的估计 V(St)TD 学习的估计值。
4. 交互与反馈环境执行动作 At,环境返回即时奖励 Rt+1下一状态 St+1经验数据的获取。
5. 计算 TD 目标Critic (再次)St+1S_{t+1}St+1 输入 Critic,得到 V(St+1)V(S_{t+1})V(St+1) 的估计。准备计算 TD 目标
6. 计算误差信号TD Learning计算 TD 误差 (δt),这也是 Critic 的损失函数:δt=Rt+1+γ⋅V(St+1)−V(St)δt=R_{t+1}+\gamma · V(S_{t+1})−V(S_t)δt=Rt+1+γV(St+1)V(St)TD 学习的核心。
7. 策略更新Actor (πθ\pi _θπθ)Actor 使用 TD 误差 δt(通常作为优势函数 At 的近似)来更新其策略参数 θ。∇θ∝δt⋅∇log⁡π(At∣St)\nabla \theta \propto \delta_t \cdot \nabla \log \pi(A_t | S_t)θδtlogπ(AtSt)
8. 价值更新Critic (VwV_wVw)Critic 使用 TD 误差 δtδ_tδt 来更新其价值网络 V 的参数 w,使其对 V(St)V(S_t)V(St) 的估计更准确。TD 学习的更新,确保 Critic 评价更精确。

核心理解:双向反馈

  1. Critic 驱动 Actor: Critic 的输出 δt 直接告诉 Actor:“你这次的动作 At 比预期的好/坏了 δt 这么多!” Actor 根据这个准确的反馈调整策略,而不是依靠波动性大的完整回报 Gt。
  2. Actor 驱动 Critic: Actor 的探索会产生新的经验,Critic 利用这些新经验不断修正其 V(s) 估计,从而使自己成为一个更准确的“评论家”,为 Actor 提供更好的指导。

这就是 Actor-Critic 架构高效且稳定的原因:策略梯度负责探索,TD 学习负责稳定评估。

http://www.dtcms.com/a/415756.html

相关文章:

  • 多语言建设外贸网站中怎么做网站上下载图片的功能
  • 北京的网站建设公司有哪些怎么制作html文档
  • 资源网站平台建设方案帝国cms入门到精通企业门户网站制作建站视频教程
  • C++20中线程类std::jthread的使用
  • 拍卖行 网站建设爱奇艺的网站是用什么做的
  • 智能问答场景下的AI算力平台建设指南——从硬件选型到弹性扩展的全流程实践
  • 绍兴网站建设优化网页设计制作
  • 网站降权了怎么办天元建设集团有限公司2008年招聘
  • (二)routeros命令笔记:无线篇
  • 网站开发 高级认证专业的营销型网站企业文化
  • 富文本编辑器Tinymce的使用、图片可编辑尺寸、自定义plugin(数学公式)、自定义icons
  • [创业之路-611]:半导体行业供应链 - 半导体原材料 - 电子特气
  • DreamBoards 推出 DreamHAT+ 雷达扩展板,为树莓派带来 60GHz 毫米波雷达
  • 做旅游网站都需要的调查在哪个网站可做网络夫妻
  • Coze源码分析-资源库-删除数据库-后端源码-领域服务/数据访问层
  • 游戏网站平台大全游戏网网站团购活动页面怎么做
  • Elasticsearch 从入门到实战
  • 网站如何调用手机淘宝做淘宝客佛山品牌策划设计
  • 氛围编程有哪些成功案例?
  • 网站优化外包推荐衡水企业做网站多少钱
  • 有哪些网站程序重庆网站建设的意义
  • Android开发-应用广播
  • AI 算力加速指南:Figma AI/Canva AI 全场景优化,从 “闪退卡顿” 到 “流畅创作”(一)
  • C++/C#游戏开发引擎和2D/3D图形库
  • 企业网站建设课件商业招商网站
  • 上海网站建设sheji021抖音代运营多少钱
  • 快递网站模版建网站公司汽车六万公里是否累变速箱油
  • 搭建了虚拟局域网,飞牛NAS的防火墙还需要开吗?
  • 中小学网站建设探讨海外网络推广外包
  • 安徽网站设计流程xp系统没有lls组件可以做网站吗