强化学习------Policy Gradient算法公式推导

目录

    • 一、前言
    • 二、公式推导
      • 基线
    • 三、代码实现
    • 四、参考

一、前言

Policy Gradient 算法是一种基于策略的强化学习算法,与基于值的方法(如Q-learning和DQN)不同。基于值的方法主要关注于学习值函数(如状态值函数或者动作值函数),然后通过值函数来选择最优的动作。而Policy Gradient 算法则直接优化策略函数,通过梯度上升来最大化长期累积奖励。
简单来说
基于策略的算法给出了智能体在特定状态下应该采取的动作的概率分布
基于值的算法是给出智能体在特定状态下每一个动作的Q值

策略梯度(Policy Gradient)是基于策略搜索方法中最基础的方法,要理解ACDDPG需要先学习策略梯度。学习策略梯度(Policy Gradient),要明白其原理,更是离不开其公式的推导。
在这里插入图片描述

二、公式推导

主要思想是使最终的回报最大,即一个完成的交互episode(从初始状态到最终状态的一个策略τ
)。
目标:一条完整的episode的回报期望最大
在这里插入图片描述
要使该目标最大,则参数θ的更新方向为梯度上升的方向。
在这里插入图片描述
此公式中有两点需要注意:

  • 第三个等号后的常用变换为:∇f(x)=f(x)∇logf(x)
  • 最后一步一p(τ)是概率,与累加和可以看成是求后面部分的期望

下面我们来推导∇logP(τ∣θ)

策略τ产生的轨迹如下:τ = {s1,a1,r1,s2,a2,r2,⋯,sT,aT,rT}
则该轨迹的概率可以用联合概率来表示:

在这里插入图片描述
注意上式中只有 p ( a t ∣ s t , θ ) p(a_t|s_t,θ) p(atst,θ)与θ有关,其他均无关,因此对其去对数并求导可以转化为:
在这里插入图片描述
注意:我们对θ求导,不带θ的项,求导之后为0

这样我们就求出了∇logP(τ∣θ),带回到刚才的 ∇ J θ ∇J_θ Jθ中,得到:
在这里插入图片描述
注意:期望就是均值,所以下面两个公式可以当作等价
在这里插入图片描述

在这里插入图片描述
近似相等,可以理解为等价。

到此为止我们找到了误差的梯度 ∇ J θ ∇J_θ Jθ,由此来构建神经网络的误差。
在这里插入图片描述

基线

在对动作进行采样时,无法保证每个动作都能抽取到,如果R都是正值,则每个动作的概率都会增大,对每抽取到的动作不公平,将上式减去一个值,保证其均值不变,梯度如下所示:
在这里插入图片描述

三、代码实现

代码示例放在另外一篇博客里面了,需要的可以跳转查看

代码

四、参考

Policy Gradient算法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/283703.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Notepad++插件:格式化JSON

一、问题描述 最近有这么一串json字符串: 你想看吗? 是不是觉得密密匝匝滴,很不想看呢? 下面是经过处理的json字符串: 你喜欢哪种格式的json字符串展示呢? 反正我喜欢已经格式化的,也就是第二…

分享66个JavaGame源码总有一个是你想要的

分享66个JavaGame源码总有一个是你想要的 学习知识费力气,收集整理更不易。 知识付费甚欢喜,为咱码农谋福利。 游戏下载链接:https://pan.baidu.com/s/1BUVmun2RhAY4vAMJwcY0mQ?pwd6666 提取码:6666 游戏项目名称 java实现…

echarts 进度条类型柱状图

父组件&#xff1a; <barChartProfit :opt"avgProfit" />import barChartProfit from "./components/barChartProfit";data() {return {avgProfit: {xData: [2019, 2020, 2021, 2022, 2023],totalData: [30,30,30,30,30],seriesData: [10,11,12,21,…

Repo sync 时出现fatal_ couldn‘t find remote ref refs_heads_master问题解决

repo sync默认的origin分支是master&#xff0c;它默认会依赖master&#xff0c;但是我们的manifests分支是main&#xff0c;需要解决这个问题主要执行下面的几步&#xff1a; 更新repo到最新版本 cd .repo/repo git pull # 更新repo前往git库创建origin master 在manifests…

08-工厂方法

意图 定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类 类图 适用性 在下列情况可以使用工厂方法模式&#xff1a; 当一个类不知道它所必须创建的对象的类的时候。当一个类希望由它的子类来指定它所创建的对象的时候。当类将创建对象的职责委托给多个帮助子…

张剑辉:打通储能产品全生命周期数据 提升电站资产价值

12月16日&#xff0c;2023高工储能年会暨高工金球奖颁奖典礼在深圳举办&#xff0c;海博思创应邀参会&#xff0c;董事长、总经理张剑辉发表了题为《新型电力系统构建中的电化学储能系统》的主题演讲&#xff0c;系统介绍了电化学储能领域的创新技术和行业趋势&#xff0c;并与…

2020 年网络安全应急响应分析报告

2020 年全年奇安信集团安服团队共参与和处置了全国范围内 660起网络安全应急响应事件。2020 年全年应急响应处置事件行业 TOP3 分别为:政府部门行业(146 起)医疗卫生行业(90 起)以及事业单位(61 起&#xff0c;事件处置数分别占应急处置所有行业的 22.1%、13.6%、9.2%。2020 年…

冷热字段分离提升程序局部性

突然想起了上学期课堂上的一个提升程序局部性的案例&#xff0c;我觉得非常有意思&#xff0c;写篇博客记录一下。 1 场景 案例场景非常简单&#xff0c;就是遍历访问大结构体数组的某一字段。对应到下图&#xff0c;funcA要访问a[N]的fld3字段&#xff0c;funcB中要访问b[N]…

风格随心选,AGI 让家居行业实现「秒级整装」内容营销

家居行业的营销方式正在不断变化&#xff0c;从面向大牌代言、广告覆盖的品牌化营销&#xff0c;发展成了面向个性化消费者的多元化营销。 过去&#xff0c;家居消费者也许更看重产品材质&#xff0c;那是品味的彰显&#xff1b;如今&#xff0c;颜值即正义&#xff0c;消费者则…

教你如何阻止垃圾软件自动安装丨这几种方法可以参考

你遇到电脑自动安装乱七八糟软件的问题吗&#xff1f;面对这种情况&#xff0c;大多数人都会抱怨“这什么破电脑啊&#xff1f;”&#xff0c;然而造成这个问题的罪魁祸首还是用户自己。 下载安装时要注意&#xff1a; 我们安装软件的时候&#xff0c;如果不注意默认勾选了插件…

STM32 TIM定时中断设计

单片机学习 目录 文章目录 一、定时器定时中断设计步骤 二、定时器配置 1.RCC开启时钟 2.选择时钟源 3.配置时基单元 4.配置输出中断控制 5.配置NVIC 6.运行控制 三、设计中断函数 总结 一、定时器定时中断设计步骤 定时中断基本框架结构图&#xff1a; 根据结构图可按步骤配置…

人工智能知识蒸馏:模型精简与迁移的奇妙之旅

导言 在人工智能领域&#xff0c;知识蒸馏作为一种模型精简和知识迁移的技术手段&#xff0c;逐渐成为提高模型效能和适应更广泛场景的关键工具。知识蒸馏是近年来在深度学习领域备受瞩目的技术&#xff0c;其通过将大模型的知识传递给小模型&#xff0c;旨在实现模型的轻量化与…