【机器学习】机器学习的基本分类-强化学习-策略梯度(Policy Gradient,PG)

Policy Gradient(策略梯度)是强化学习中基于策略的优化方法,通过直接优化策略函数来最大化累积回报。与基于值的强化学习方法(如 Q-Learning 或 DQN)不同,Policy Gradient 不显式地学习状态值函数 V(s) 或动作值函数 Q(s, a),而是直接优化策略 的参数 θ。


核心思想

直接建模策略
  • 策略 是一个概率分布函数,描述了在状态 s 下采取动作 a 的概率。
  • 策略函数可以是任何可微的函数(如神经网络)。
目标函数
  • 目标是最大化累积期望回报 J(θ):

  • 通过梯度上升更新策略参数 θ。

策略梯度定理
  • 策略梯度的形式:

  • 其中 是从时间步 t 开始的累积回报,用于指导更新方向。


策略梯度算法

基本步骤
采样轨迹
  • 通过当前策略 与环境交互,生成一批轨迹(状态、动作、奖励序列)。
计算回报
  • 对每条轨迹计算累积回报 ,例如:

计算梯度
  • 对于每个状态-动作对,计算策略梯度:

更新策略参数
  • 使用梯度上升(或梯度下降的负值)更新策略参数 θ:


伪代码

python 复制代码
Initialize policy network with random weights θ

for episode in range(max_episodes):
    Generate trajectories by interacting with the environment using policy πθ
    Compute returns G_t for each step in the trajectories
    Compute policy gradient:
        ∇θ J(θ) = (1/N) * Σ [∇θ log πθ(a_t | s_t) * G_t]
    Update policy network:
        θ ← θ + α * ∇θ J(θ)

优势与不足

优势
连续动作空间适用性
  • 可直接处理连续动作空间,而基于值的方法需要离散化动作空间。
策略随机性
  • 随机策略可以自然地处理探索与利用的权衡问题。
易于扩展
  • 可以扩展到 Actor-Critic 方法(结合值函数的策略梯度)。
不足
高方差
  • 策略梯度估计的方差较高,需要大量采样来稳定更新。
收敛性较慢
  • 对于复杂环境,单纯的策略梯度方法收敛较慢。
数据利用效率低
  • 每次更新策略仅利用采样到的轨迹,未充分使用历史数据。

改进方法

REINFORCE
  • 使用完整的累积回报 代替真实环境奖励。
基线(Baseline)
  • 减少梯度方差的一种方法是引入基线函数 b(s),更新规则变为:

Actor-Critic
  • 结合值函数,使用 Q(s,a) 或 V(s) 来引导策略梯度更新。
Trust Region Policy Optimization (TRPO)
  • 限制策略更新的幅度,防止策略更新过大导致性能退化。
Proximal Policy Optimization (PPO)
  • 提高更新效率的同时,确保策略更新的稳定性。

应用场景

机器人控制
  • 连续动作控制问题,如机械臂操作和移动机器人导航。
游戏 AI
  • 策略梯度适用于具有复杂动作的游戏场景。
推荐系统
  • 动态地为用户提供推荐,优化长期回报。
金融交易
  • 策略优化股票交易中的买卖时机。
相关推荐
放羊郎1 小时前
训练中常见的运动强度分类
分类·运动·跑步·强度·摄氧量
技术程序猿华锋1 小时前
Void:免费且隐私友好的 AI 编码利器,挑战 Cursor 地位?
c++·人工智能·mfc
奔跑吧邓邓子2 小时前
DeepSeek 赋能自动驾驶仿真测试:解锁高效精准新范式
人工智能·机器学习·自动驾驶·仿真测试·deepseek
深兰科技2 小时前
深兰科技陈海波率队考察南京,加速AI医诊大模型区域落地应用
人工智能·深兰科技·陈海波
Fuliy963 小时前
【自然语言处理】——基于与训练模型的方法【复习篇1】
人工智能·自然语言处理
项目管理打工人3 小时前
高端装备制造企业如何选择适配的项目管理系统提升项目执行效率?附选型案例
大数据·人工智能·驱动开发·科技·硬件工程·团队开发·制造
江苏泊苏系统集成有限公司3 小时前
集成电路制造设备防震基座选型指南:为稳定护航-江苏泊苏系统集成有限公司
人工智能·深度学习·目标检测·机器学习·制造·材料工程·精益工程
吹风看太阳3 小时前
机器学习03-色彩空间:RGB、HSV、HLS
人工智能·机器学习
Ronin-Lotus3 小时前
深度学习篇---Pytorch框架下OC-SORT实现
人工智能·pytorch·python·深度学习·oc-sort
雾迟sec4 小时前
TensorFlow 的基本概念和使用场景
人工智能·python·tensorflow