VPG算法

VPG算法

前言

首先来看经典的策略梯度REINFORCE算法:

在REINFORCE中,每次采集一个episode的轨迹,计算每一步动作的回报 G t G_t Gt,与动作概率对数相乘,作为误差反向传播,有以下几个特点:

  • 每个时间步更新一次参数
  • 只有策略网络,没有价值网络
  • 计算 G G G时,仅仅采样了一条轨迹
  • 一般来说,计算 G G G时,从最后的时间步开始往前计算,这是为了节省计算量
  • G G G实际上类似于 Q Q Q函数,因为 Q Q Q函数就是动作价值回报的期望

VPG算法

全称:Vanilla Policy Gradient,但是属于Actor-Critic算法,因为它既有策略网络,又有价值网络

  • 每个episode更新一次参数
  • 上述伪代码中,计算 G G G时,采样了多个轨迹
  • 一般来说,计算 G G G时,从最后的时间步开始往前计算,这是为了节省计算量
  • Reward-to-go:即折扣因子 γ = 1 \gamma=1 γ=1, G t = R ^ t = r t + r t + 1 + ... + r T G_t=\hat{R}t=r_t+r{t+1}+\ldots+r_T Gt=R^t=rt+rt+1+...+rT, T T T为episode的长度
  • 通常为 A ^ t \hat{A}_t A^t引入baseline,以减小方差,提升训练稳定性

A ^ t = R ^ t − V ϕ k \hat{A}_t=\hat{R}t-V{\phi_k} A^t=R^t−Vϕk

比较

/ REINFORCE VPG
价值网络
参数更新 每个时间步 每个episode
回报 有折扣 无折扣
采样轨迹 一条 多条
baseline
相关推荐
幻影123!10 小时前
AlphaZero 五子棋实战(一):单卡从零自举,我的v36 最终版配置
人工智能·强化学习·马尔科夫·决策过程
幻影123!11 小时前
AlphaZero 五子棋实战(五):评估工具 —— 学会在错误的地方掉头
人工智能·机器学习·强化学习·alpha zero
爱听歌的周童鞋15 小时前
强化学习的数学原理 | 赵世钰 | 西湖大学 | 笔记 | Lecture 7 | Part 3 | 时序差分方法(TD 算法收敛性、与 MC 的比较)
强化学习·rm·td learning·收敛性·mc 对比
CV山月4 天前
《DPO 算法详解:不训练奖励模型,如何让大模型直接学会人类偏好?》
人工智能·经验分享·python·大模型·强化学习·研究生
xingxiliang4 天前
从 Bellman-Ford 到 DQN:为什么 Target 值比当前 Q 值更值得信?
强化学习
CV山月5 天前
大模型强化学习对齐:从 RLHF 框架到 PPO 算法原理
人工智能·python·大模型·强化学习·多模态·研究生
机器学习之心7 天前
基于强化学习的股票价格预测与智能交易实战
强化学习·股票价格预测
XLYcmy7 天前
Self-Adapting Language Models论文分享
自然语言处理·llm·微调·sft·论文笔记·强化学习·自进化
指掀涛澜天下惊8 天前
强化学习进阶篇八 策略梯度算法
深度学习·学习·算法·强化学习
盼小辉丶8 天前
PyTorch强化学习实战——融合人类示范数据的高效强化学习
人工智能·pytorch·python·深度学习·强化学习