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

从Actor Critic到PPO算法

首先我们从策略梯度说起,
强化学习的目标是调整模型参数,改变模型决策,最大化期望回报J(θ)
image
策略梯度定理告诉我们
image
最原始的reinforce算法,直接用一整条轨迹的回报Gt作为估计
image
但是这种方法要求 每次更新都依赖完整的轨迹,并且方差大
于是我们引入了评估网络,也就是Actor Critic算法

Actor Critic算法有actor和critic两个网络,
actor网络负责输出动作的概率(和策略梯度算法没差别)
critic网络则用价值函数代替策略梯度中的完整回报
image
其中优势函数At为,
image
在AC算法中,我们通常使用TD误差作为优势
image
这样,AC算法不仅显著降低了方差,而且可以基于单步TD误差进行更新,不用等到轨迹结束。
但是AC算法还存在一个问题,如果优势函数At估计很大,那么策略的更新可能会非常剧烈,导致策略更新不稳定,于是我们在策略更新的时候引入了clip,也就是PPO算法。

PPO算法相比于AC,核心在于修改了策略更新的损失函数
PPO首先定义了新旧策略概率比rt
image
并且定义了目标函数:
image
当At>0时,希望增大动作概率,也就是让rt增大,但是由于目标函数的限制,rt最多增加到1+ϵ,当rt>1+ϵ,目标函数J(θ)=(1+ϵ)At,这是一个常数,对θ求导后梯度为0,抑制rt继续增大;
同理,At<0时,rt也存在下域值1-ϵ
(PPO对所有的动作都设置了rt​∈[1−ϵ,1+ϵ],但只有当 At>0 时,梯度让概率增大,此时上界会生效;当 At<0 时,梯度让概率减小,此时下界会生效)
这样,PPO就实现了将模型更新的比率rt控制在[1-ϵ,1+ϵ],使得策略更新过程不会剧烈偏移,训练更平滑

http://www.jsqmd.com/news/432918/

相关文章:

  • 最小二乘问题详解12:三角化中的非线性优化
  • 数据库事务机制
  • 【第1章·第20节】H无穷控制器MATLAB建模与仿真2——建模与仿真
  • Spring Boot接口防抖秘籍:告别“手抖”,守护数据一致性
  • 新ubuntu服务器常用软件包的安装配置
  • php方案 config.m4编译配置
  • 开发者必看:2026跨端生态白皮书发布,PC流量新红利在哪里?
  • php方案 内存分配策略(emalloc/pemalloc)
  • php方案 自定义对象handlers
  • 2026年3月反渗透膜厂家推荐,产能专利环保三维数据透视 - 品牌鉴赏师
  • 系统架构设计中的 15 个关键取舍 - 智慧园区
  • 多线程的事务你知道怎么回滚吗
  • 讲讲为什么索引可以让查询变快
  • 探索永磁同步电机双矢量模型预测控制的魅力
  • 2026年3月空气能大型热水器厂商推荐,精准检测与稳定性能深度解析 - 品牌鉴赏师
  • 论服务网格(Service Mesh)的应用
  • 2026年3月空气能热水器商用厂家推荐,批量采购优质供应商 - 品牌鉴赏师
  • Python做一个记事本
  • Python json serialize write 100M items to json via batch
  • 分享1个盈利初步优秀的图片 SaaS AI 套壳站 和 一个关键词一个页面
  • RustFS性能调优实战:把对象存储性能压榨到极致!
  • MiniRAG + LLM (三)
  • DeepSeek新论文“双通道”,让AI服务器的闲置带宽重新活过来了
  • 2026大专国际经济与贸易学数据分析的价值分析
  • Docker实操全解析:常用镜像安装+自定义镜像构建
  • 新手 Java 编程学习日志(Ai生成内容,用于学习和测试 mcp 服务)
  • 用于编程、写作与研究的Agent趋势
  • 第一章
  • KV Cache管理架构演进:从连续分配到统一混合内存架构
  • 新手 Java 编程学习日志(Ai生成内容,用于测试 mcp 服务)