【CS285】高斯策略对数概率公式的学习笔记

公式介绍

在【CS285】中提到了高斯策略对数概率公式的公式如下:
log ⁡ π θ ( a t ∣ s t ) = − 1 2 ∥ f ( s t ) − a t ∥ Σ 2 + const \log \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) = -\frac{1}{2} \left\| f(\mathbf{s}_t) - \mathbf{a}_t \right\|_{\Sigma}^2 + \text{const} logπθ(atst)=21f(st)atΣ2+const

符号说明

PDF:Probability Density Function,概率密度函数

推导说明(from DeepSeek-R1-web)

1. 多元高斯分布的概率密度函数

设策略 π θ ( a t ∣ s t ) \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) πθ(atst)服从均值为 μ = f ( s t ) \mu= f(\mathbf{s}_t) μ=f(st)、协方差矩阵为 Σ \Sigma Σ的多元高斯分布,其PDF为:
π θ ( a t ∣ s t ) = 1 ( 2 π ) d ∣ Σ ∣ exp ⁡ ( − 1 2 ( a t − f ( s t ) ) T Σ − 1 ( a t − f ( s t ) ) ) \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) = \frac{1}{\sqrt{(2\pi)^{d} |\Sigma|}} \exp\left( -\frac{1}{2} (\mathbf{a}_t - f(\mathbf{s}_t))^T \Sigma^{-1} (\mathbf{a}_t - f(\mathbf{s}_t)) \right) πθ(atst)=(2π)d∣Σ∣ 1exp(21(atf(st))TΣ1(atf(st)))
其中 d d d是动作 a t \mathbf{a}_t at的维度。

2. 对PDF取对数

对上述公式取自然对数,得到对数概率:
log ⁡ π θ ( a t ∣ s t ) = − 1 2 ( a t − f ( s t ) ) T Σ − 1 ( a t − f ( s t ) ) − d 2 log ⁡ ( 2 π ) − 1 2 log ⁡ ∣ Σ ∣ \log \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) = -\frac{1}{2} (\mathbf{a}_t - f(\mathbf{s}_t))^T \Sigma^{-1} (\mathbf{a}_t - f(\mathbf{s}_t)) - \frac{d}{2} \log(2\pi) - \frac{1}{2} \log|\Sigma| logπθ(atst)=21(atf(st))TΣ1(atf(st))2dlog(2π)21log∣Σ∣

3. 简化与假设

在强化学习中,通常假设:

  1. 协方差矩阵 Σ \Sigma Σ 是固定的(例如,设为对角矩阵或常数矩阵),或者与参数 θ \theta θ 无关。
  2. 常数项对梯度更新无影响:在对策略梯度进行优化时,与 θ \theta θ 无关的项在求导后会消失,因此可以合并为常数。

基于上述假设,将对数概率中的常数项合并:
const = − d 2 log ⁡ ( 2 π ) − 1 2 log ⁡ ∣ Σ ∣ \text{const} = -\frac{d}{2} \log(2\pi) - \frac{1}{2} \log|\Sigma| const=2dlog(2π)21log∣Σ∣

4. 引入马氏距离符号

定义马氏距离(Mahalanobis distance)为:
∥ a t − f ( s t ) ∥ Σ 2 = ( a t − f ( s t ) ) T Σ − 1 ( a t − f ( s t ) ) \left\| \mathbf{a}_t - f(\mathbf{s}_t) \right\|_{\Sigma}^2 = (\mathbf{a}_t - f(\mathbf{s}_t))^T \Sigma^{-1} (\mathbf{a}_t - f(\mathbf{s}_t)) atf(st)Σ2=(atf(st))TΣ1(atf(st))

代入对数概率公式,得到:
log ⁡ π θ ( a t ∣ s t ) = − 1 2 ∥ f ( s t ) − a t ∥ Σ 2 + const \log \pi_{\theta}(\mathbf{a}_t | \mathbf{s}_t) = -\frac{1}{2} \left\| f(\mathbf{s}_t) - \mathbf{a}_t \right\|_{\Sigma}^2 + \text{const} logπθ(atst)=21f(st)atΣ2+const


最终公式

课程中给出的公式正是上述结果,其中:

  • f ( s t ) f(\mathbf{s}_t) f(st) 是由参数 θ \theta θ 确定的均值函数(例如神经网络)。
  • Σ \Sigma Σ 是固定的协方差矩阵,与 θ \theta θ 无关。
  • const \text{const} const 包含所有与 θ \theta θ 无关的常数项。

补充说明

  1. 协方差矩阵的简化:如果 Σ \Sigma Σ 是对角矩阵或各向同性( Σ = σ 2 I \Sigma = \sigma^2 I Σ=σ2I),则计算马氏距离时只需对每个维度单独计算平方误差。
  2. 策略梯度的应用:在计算策略梯度 ∇ θ log ⁡ π θ \nabla_\theta \log \pi_{\theta} θlogπθ 时,常数项 const \text{const} const 的导数为零,因此可以安全忽略。

结论:通过假设协方差矩阵 Σ \Sigma Σ 固定且与参数 θ \theta θ 无关,课程中的公式从多元高斯分布的对数概率密度函数中合理推导得出。

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

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

相关文章

vscode settings(一):全局| 用户设置常用的设置项

参考资料 Visual Studio Code权威指南 by 韩骏 一. 全局设置与用户设置 1.1 Vscode支持两种不同范围的设置 用户设置(User Settings):这是一个全局范围的设置,会应用到所有的Visual Studio Code实例中。工作区设置(Workspace Settings):设…

C# 将非托管Dll嵌入exe中(一种实现方法)

一、环境准备 电脑系统:Windows 10 专业版 20H2 IDE:Microsoft Visual Studio Professional 2022 (64 位) - Current 版本 17.11.4 其他: 二、测试目的 将基于C创建DLL库,封装到C#生成的exe中。 一般C创建的库,在…

在 Mac mini M2 上使用Docker快速部署MaxKB:打造本地知识库问答系统

随着大语言模型的广泛应用,知识库问答系统逐渐成为提升工作效率和个人学习的有力工具。MaxKB是一款基于LLM(Large Language Model)大语言模型的知识库问答系统,支持多模型对接、文档上传和自动爬取等功能。本文将详细介绍如何在Ma…

Jenkins上无法查看已成功生成的Junit报告

如果你已确认 JUnit 报告在工作空间中被成功生成,但在 Jenkins 构建页面上却看不到 "Test Result" 或 "Test Report" 的链接,这通常意味着 Jenkins 没有正确地配置用来处理和显示这些报告的步骤。这里有几个可能的原因和解决方法&am…

vue+element-plus简洁完美实现淘宝网站模板

目录 一、项目介绍 二、项目截图 1.项目结构图 2.首页 3.详情 4.购物车 5.登陆页 三、源码实现 1.路由配置 2.依赖包 四、总结 一、项目介绍 项目在线预览:点击访问 本项目为vue项目,参考淘宝官方样式为主题来设计元素,简洁美观&…

stm32hal库寻迹+蓝牙智能车(STM32F103C8T6)

简介: 这个小车的芯片是STM32F103C8T6,其他的芯片也可以照猫画虎,基本配置差不多,要注意的就是,管脚复用,管脚的特殊功能,(这点不用担心,hal库每个管脚的功能都会给你罗列,很方便的.)由于我做的比较简单,只是用到了几个简单外设.主要是由带霍尔编码器电机的车模,电机…

红队内网攻防渗透:内网渗透之内网对抗:实战项目VPC2打靶父子域三层路由某绒免杀下载突破约束委派域控提权

红队内网攻防渗透 实战网络攻防靶场记录1.靶机配置信息讲解2.靶场渗透完整流程2.1 入口点:192.168.139.130(win2008 R2)2.1.1 tomcat后台war包获取权限2.1.2 tomcat使用后门上线CS平台2.1.3 信息收集获取数据库密码2.2 入口点横向:192.168.10.11 (win2012 SQL)2.2.1 SQLs…

C语言【指针篇】(一)

前言 指针基础概念理解,从底层出发理解指针 C语言【指针篇】(一) 前言正文1. 内存和地址1.1 内存1.2 究竟该如何理解编址 2. 指针变量和地址2.1 取地址操作符(&)2.2 指针变量和解引用操作符(*)2.3 指针变量的大小 3. 指针变量类型的意义…

【每日八股】Redis篇(二):数据结构

Redis 数据类型? 主要有 STRING、LIST、ZSET、SET 和 HASH。 STRING String 类型底层的数据结构实现主要是 SDS(简单动态字符串),其主要应用场景包括: 缓存对象:可以用 STRING 缓存整个对象的 JSON&…

文章精读篇——用于遥感小样本语义分割的可学习Prompt

题目:Learnable Prompt for Few-Shot Semantic Segmentation in Remote Sensing Domain 会议:CVPR 2024 Workshop 论文:10.48550/arXiv.2404.10307 相关竞赛:https://codalab.lisn.upsaclay.fr/competitions/17568 年份&#…

游戏引擎学习第119天

仓库:https://gitee.com/mrxiao_com/2d_game_3 上一集回顾和今天的议程 如果你们还记得昨天的进展,我们刚刚完成了优化工作,目标是让某个程序能够尽可能快速地运行。我觉得现在可以说它已经快速运行了。虽然可能还没有达到最快的速度,但我们…

HybridCLR+Adressable+Springboot热更

本文章会手把手教大家如何搭建HybridCLRAdressableSpringboot热更。 创作不易,动动发财的小手点个赞。 安装华佗 首先我们按照官网的快速上手指南搭建一个简易的项目: 快速上手 | HybridCLR 注意在热更的代码里添加程序集。把用到的工具放到程序集里…

多无人机协同路径规划(论文+仿真)

在现代技术的快速发展下,飞行器的种类也越来越多了,他们的应用场景和应用功能也越来越完善和复杂。举例来说,ps-x625型号就是大疆无人机生产的就是在植物保护方面有很好的应用,宝鸡的兴义生产的X8型号无人机在航空领域有很大突破&…

CentOS环境变量配置+解析

环境变量的作用就是让系统快速通过你的命令找到你的可执行程序,windows系统里也同理,也就是你每次输入个命令,系统就会找环境变量里到底有没有叫这个命令进程的 一、环境变量配置 1.编辑配置文件 vim /etc/profile export PATH$PATH:$JAVA…

einops测试

文章目录 1. einops2. code3. pytorch 1. einops einops 主要是通过爱因斯坦标记法来处理张量矩阵的库,让矩阵处理上非常简单。 conda : conda install conda-forge::einopspython: 2. code import torch import torch.nn as nn import torch.nn.functional as…

Unity教程(二十一)技能系统 基础部分

Unity开发2D类银河恶魔城游戏学习笔记 Unity教程(零)Unity和VS的使用相关内容 Unity教程(一)开始学习状态机 Unity教程(二)角色移动的实现 Unity教程(三)角色跳跃的实现 Unity教程&…

Docker:Docker从入门到精通(一)- Docker简介

一、前言 通过本专栏的学习,我们将了解   1. 掌握Docker基础知识,能够理解Docker镜像与容器的概念   2. 完成Docker安装与启动   3. 掌握Docker镜像与容器相关命令   4. 掌握Tomcat Nginx 等软件的常用应用的安装   5. 掌握docker迁移与备份相…

单机上使用docker搭建minio集群

单机上使用docker搭建minio集群 1.集群安装1.1前提条件1.2步骤指南1.2.1安装 Docker 和 Docker Compose(如果尚未安装)1.2.2编写docker-compose文件1.2.3启动1.2.4访问 2.使用2.1 mc客户端安装2.2创建一个连接2.3简单使用下 这里在ubuntu上单机安装一个m…

Image Downloader下载文章图片的WordPress插件

源码介绍 一个用于下载图片的WordPress插件,包含下载统计功能,支持任何主题使用 用户点击下载后自动打包该文章所有原始图片,并把文章标题作为压缩包的文件名。 不占用服务器空间,也不占网盘空间,直接利用浏览器的性…

PLC通讯

PPI通讯 是西门子公司专为s7-200系列plc开发的通讯协议。内置于s7-200 CPU中。PPI协议物理上基于RS-485口,通过屏蔽双绞线就可以实现PPI通讯。PPI协议是一种主-从协议。主站设备发送要求到从站设备,从站设备响应,从站不能主动发出信息。主站…