阅读时间约 5 分钟

强化学习基础与主流算法综述(以PPO为核心)

强化学习理论与 PPO 应用综述

Posted by LuckyE on July 2, 2025
强化学习 PPO

强化学习基础与主流算法综述(以PPO为核心)

理论

找到一个策略去最大化 奖励

image.png

马尔科夫决策过程

小写为已发生,大写为未来

image.png

Return

image.png

随机性与期望

image.png

Top-Down框架

image.png

时序差分Temporal Difference (TD)

image.png

SARSA & Q-learning

image.png

行为策略和目标策略相同为同策略,不同为异策略

Policy Gradient

策略梯度算法🌟

策略网络

image.png

image.png

image.png

image.png

  • 如何计算$q_t$ $≈$$Q_π(s_t,a_t)$?

image.png

image.png

Reinforce & Actor Critic & Baseline

image.png

存在的问题—设定学习率

image.png

Trust Region Policy Optimization—TRPO可信域策略优化

image.png

Proximal Policy Optimization—PPO近端策略优化

改进TRPO—使求解更加方便

image.png

Generalized Advantage Estimation—广义优势估计—$\hat{A}$—对优势函数的改进— GAE方法

image.png

应用

PPO训练过程

image.png

1.svg

1. 数据收集阶段(左上角)

  • 使用当前的旧策略(old policy)与环境交互
  • 收集一系列的状态-动作-奖励序列:$(s₁,a₁,r₁), (s₂,a₂,r₂), …, (sₙ,aₙ,rₙ)$
  • 这些数据构成了训练的经验池

2. 优势函数计算(右侧部分)

  • 计算每个状态-动作对的优势函数 A(s,a)
  • 优势函数衡量在当前状态下选择某个动作相比平均水平的好坏程度
  • 公式:$Aₜ(sₜ,aₜ) = rₜ + γV(sₜ₊₁) - V(sₜ)$
  • 使用GAE(Generalized Advantage Estimation)**来减少方差

3. PPO核心机制(中心公式)

PPO的关键创新是概率比例裁剪

  • 计算新旧策略的概率比例:$rₜ(θ) = π_θ(aₜ \mid sₜ) / π_{θ_{\text{old}}}(aₜ \mid sₜ)$
  • 使用clip函数将比例限制在 $[1-ε, 1+ε]$ 范围内
  • 目标函数:$min(rₜ(θ)Âₜ, clip(rₜ(θ), 1-ε, 1+ε)Âₜ)$

4. 网络更新

  • Actor网络(策略网络):根据PPO目标函数更新参数,输出动作概率分布
  • Critic网络(价值网络):通过最小化价值函数预测误差来更新,估计状态价值V(s)

5. 训练循环

整个过程不断迭代:收集数据 → 计算优势 → 更新网络 → 收集新数据…

PPO的核心优势

  1. 稳定性:裁剪机制防止策略更新幅度过大,避免性能崩塌
  2. 样本效率:可以对同一批数据进行多次更新
  3. 实现简单:相比TRPO等方法,PPO实现更简单高效
  4. 通用性:适用于连续和离散动作空间

LLM

image.png

如何训练一个奖励模型?

image.png

在LLM中的PPO训练过程

image.png

Group Relative Policy Optimization—GRPO

image.png

对比PPO&GRPO

image.png

RL_tutorial_by_ZhangXin.pdf

RL_tutorial_by_ZhangXin-02bc2f67f907.pptx



Testimonials

What readers say

先看读者反馈,再直接在当前页面继续讨论。公共留言需要 Waline 服务端;配置后访客只填昵称即可发布。

这类长文如果结构清楚,我会一路读到底。这里最好的地方是把概念、公式和代码示例放在同一篇里。

L
Lin 算法读者

数据库和工程文档的风格很实用,截图、SQL 和说明都能直接拿去复盘项目。

M
Mia 工程笔记党

强化学习相关文章密度很高,但排版如果更清楚,回看体验会更好。这个新版方向是对的。

R
Ryo 深夜学习者

我更喜欢能快速扫到标签、修改时间和文章重点的首页,现在这种卡片视图会比纯列表更容易选读。

C
Chen 知识整理控

代码块只要语言标识和层级做好,技术博客的专业感会立刻上来。

A
Ava 前端同行

评论区不用社交账号强绑定会更愿意留言,尤其是这种偏学习记录的网站。

N
Noah 匿名访客

Quick Identity

Pick a preset and leave a note

留言方式:先选择一个预设身份,再在下方输入评论。当前若显示“需要配置 Waline”,说明站点还缺少可写评论后端。

当前未选择预设身份

Live Discussion Waline 配置完成后,真实评论会加载在下方,移动端和主题切换会同步处理。
WALINE
Loading comments…