基于“蘑菇书”的强化学习知识点(五):条件期望
条件期望
- 摘要
- 一、条件期望的定义
- 二、条件期望的关键性质
- 三、条件期望的直观理解
- 四、条件期望的应用场景
- 五、简单例子
- 离散情况
- 连续情况
摘要
本系列知识点讲解基于蘑菇书EasyRL中的内容进行详细的疑难点分析!具体内容请阅读蘑菇书EasyRL!
对应蘑菇书EasyRL——2.2.2 贝尔曼方程
条件期望 是概率论中的一个核心概念,表示在给定某个条件的情况下,随机变量的期望值。条件期望不仅是一个数值,还可能是另一个随机变量。下面是条件期望的定义和具体解释。
一、条件期望的定义
对于两个随机变量 X X X 和 Y Y Y:
-
离散情况:
如果 X X X 和 Y Y Y 是离散随机变量,则 X X X 在给定 Y = y Y=y Y=y 的条件下的条件期望定义为:
E [ X ∣ Y = y ] = ∑ x x ⋅ P ( X = x ∣ Y = y ) . \mathbb{E}[X \mid Y=y] = \sum_x x \cdot P(X=x \mid Y=y). E[X∣Y=y]=x∑x⋅P(X=x∣Y=y).- P ( X = x ∣ Y = y ) P(X=x \mid Y=y) P(X=x∣Y=y) 是条件概率,表示在 Y = y Y=y Y=y 的情况下, X = x X=x X=x 的概率。
- E [ X ∣ Y = y ] \mathbb{E}[X \mid Y=y] E[X∣Y=y] 是一个数,表示在 Y = y Y=y Y=y 时,随机变量 X X X 的期望值。
-
连续情况:
如果 X X X 和 Y Y Y 是连续随机变量,则 X X X 在给定 Y = y Y=y Y=y 的条件下的条件期望定义为:
E [ X ∣ Y = y ] = ∫ − ∞ + ∞ x ⋅ f X ∣ Y ( x ∣ y ) d x , \mathbb{E}[X \mid Y=y] = \int_{-\infty}^{+\infty} x \cdot f_{X \mid Y}(x \mid y) \, dx, E[X∣Y=y]=∫−∞+∞x⋅fX∣Y(x∣y)dx,- f X ∣ Y ( x ∣ y ) f_{X \mid Y}(x \mid y) fX∣Y(x∣y) 是条件概率密度函数。
- 该积分表示在 Y = y Y=y Y=y 的条件下,随机变量 X X X 的加权平均值。
-
随机变量形式:
当 Y Y Y 不是固定值,而是一个随机变量时,条件期望 E [ X ∣ Y ] \mathbb{E}[X \mid Y] E[X∣Y] 被看作是一个关于 Y Y Y 的新随机变量,其值依赖于 Y Y Y。直观来说, E [ X ∣ Y ] \mathbb{E}[X \mid Y] E[X∣Y] 表示在已知 Y Y Y 的情况下, X X X 的期望值。它是一个函数:
E [ X ∣ Y ] = g ( Y ) , \mathbb{E}[X \mid Y] = g(Y), E[X∣Y]=g(Y),
其中 (g(Y)) 是某个由 (Y) 确定的函数。
二、条件期望的关键性质
-
期望的分解(全期望公式):
E [ X ] = E [ E [ X ∣ Y ] ] . \mathbb{E}[X] = \mathbb{E}[\mathbb{E}[X \mid Y]]. E[X]=E[E[X∣Y]].
这是条件期望最重要的性质,表明我们可以通过先计算条件期望,再对条件变量 Y Y Y 求期望,得到整体期望。 -
线性性:
条件期望是线性的:
E [ a X + b Y ∣ Z ] = a E [ X ∣ Z ] + b E [ Y ∣ Z ] , \mathbb{E}[aX + bY \mid Z] = a \mathbb{E}[X \mid Z] + b \mathbb{E}[Y \mid Z], E[aX+bY∣Z]=aE[X∣Z]+bE[Y∣Z],
其中 a a a 和 b b b 是常数。 -
塔式性质(Law of Iterated Expectations):
如果 X X X、 Y Y Y、 Z Z Z 是随机变量,且 Z Z Z 包含的条件比 Y Y Y 多,那么:
E [ E [ X ∣ Y ] ∣ Z ] = E [ X ∣ Z ] . \mathbb{E}[\mathbb{E}[X \mid Y] \mid Z] = \mathbb{E}[X \mid Z]. E[E[X∣Y]∣Z]=E[X∣Z]. -
条件期望约简:
如果 X X X 与 Y Y Y 条件独立于 Z Z Z,则:
E [ X ∣ Y , Z ] = E [ X ∣ Y ] . \mathbb{E}[X \mid Y, Z] = \mathbb{E}[X \mid Y]. E[X∣Y,Z]=E[X∣Y].
三、条件期望的直观理解
条件期望可以理解为在给定条件(如随机变量 Y = y Y=y Y=y)下,随机变量 X X X 的“平均值”。
-
假设你有一个测量身高 X X X 和年龄 Y Y Y 的数据集。你想知道“给定某个年龄 Y = y Y=y Y=y,对应的平均身高是多少”。这个问题的答案就是条件期望 E [ X ∣ Y = y ] \mathbb{E}[X \mid Y=y] E[X∣Y=y]。
-
如果 Y Y Y 是随机变量而不是固定值,比如不同年龄的分布未知,那么条件期望 E [ X ∣ Y ] \mathbb{E}[X \mid Y] E[X∣Y] 是一个关于 Y Y Y 的函数,用于描述不同年龄对应的平均身高。
四、条件期望的应用场景
-
强化学习:
在强化学习中,条件期望用于计算值函数(Value Function)和 Q 函数。例如,状态值函数 V ( s ) V(s) V(s) 是一个条件期望:
V ( s ) = E [ R t + γ V ( S t + 1 ) ∣ S t = s ] . V(s) = \mathbb{E}[R_t + \gamma V(S_{t+1}) \mid S_t=s]. V(s)=E[Rt+γV(St+1)∣St=s]. -
保险精算:
条件期望被用于计算在给定信息下的风险和保费。例如,给定过去的索赔记录,计算未来可能的平均赔偿额。 -
金融:
在期权定价和投资组合分析中,条件期望用于分析在给定市场条件下资产的期望收益。
五、简单例子
离散情况
假设 X X X 表示某人某天吃的苹果数, Y Y Y 表示当天的天气。我们有以下概率分布:
- P ( Y = 晴天 ) = 0.6 P(Y=\text{晴天}) = 0.6 P(Y=晴天)=0.6, P ( Y = 雨天 ) = 0.4 P(Y=\text{雨天}) = 0.4 P(Y=雨天)=0.4。
- 如果是晴天, P ( X = 1 ∣ Y = 晴天 ) = 0.3 P(X=1 \mid Y=\text{晴天}) = 0.3 P(X=1∣Y=晴天)=0.3, P ( X = 2 ∣ Y = 晴天 ) = 0.7 P(X=2 \mid Y=\text{晴天}) = 0.7 P(X=2∣Y=晴天)=0.7。
- 如果是雨天, P ( X = 1 ∣ Y = 雨天 ) = 0.8 P(X=1 \mid Y=\text{雨天}) = 0.8 P(X=1∣Y=雨天)=0.8, P ( X = 2 ∣ Y = 雨天 ) = 0.2 P(X=2 \mid Y=\text{雨天}) = 0.2 P(X=2∣Y=雨天)=0.2。
求条件期望 E [ X ∣ Y = 晴天 ] \mathbb{E}[X \mid Y=\text{晴天}] E[X∣Y=晴天] 和 E [ X ∣ Y = 雨天 ] \mathbb{E}[X \mid Y=\text{雨天}] E[X∣Y=雨天]。
解:
E [ X ∣ Y = 晴天 ] = 1 ⋅ 0.3 + 2 ⋅ 0.7 = 0.3 + 1.4 = 1.7. \mathbb{E}[X \mid Y=\text{晴天}] = 1 \cdot 0.3 + 2 \cdot 0.7 = 0.3 + 1.4 = 1.7. E[X∣Y=晴天]=1⋅0.3+2⋅0.7=0.3+1.4=1.7.
E [ X ∣ Y = 雨天 ] = 1 ⋅ 0.8 + 2 ⋅ 0.2 = 0.8 + 0.4 = 1.2. \mathbb{E}[X \mid Y=\text{雨天}] = 1 \cdot 0.8 + 2 \cdot 0.2 = 0.8 + 0.4 = 1.2. E[X∣Y=雨天]=1⋅0.8+2⋅0.2=0.8+0.4=1.2.
连续情况
假设 X X X 表示一个股票的价格变化, Y Y Y 表示市场波动程度。已知:
- f X ∣ Y ( x ∣ y ) = y ⋅ e − y x f_{X \mid Y}(x \mid y) = y \cdot e^{-yx} fX∣Y(x∣y)=y⋅e−yx(指数分布, x ≥ 0 x \geq 0 x≥0)。
- 给定 Y = y Y=y Y=y,随机变量 X X X 的条件期望为:
E [ X ∣ Y = y ] = ∫ 0 ∞ x ⋅ y ⋅ e − y x d x . \mathbb{E}[X \mid Y=y] = \int_0^\infty x \cdot y \cdot e^{-yx} \, dx. E[X∣Y=y]=∫0∞x⋅y⋅e−yxdx.
计算:
使用分部积分:
E [ X ∣ Y = y ] = 1 y . \mathbb{E}[X \mid Y=y] = \frac{1}{y}. E[X∣Y=y]=y1.
这表明 X X X 的条件期望依赖于市场波动 Y Y Y 的大小。
相关文章:
基于“蘑菇书”的强化学习知识点(五):条件期望
条件期望 摘要一、条件期望的定义二、条件期望的关键性质三、条件期望的直观理解四、条件期望的应用场景五、简单例子离散情况连续情况 摘要 本系列知识点讲解基于蘑菇书EasyRL中的内容进行详细的疑难点分析!具体内容请阅读蘑菇书EasyRL! 对应蘑菇书Eas…...
Linux抢占式内核:技术演进与源码解析
一、引言 Linux内核作为全球广泛使用的开源操作系统核心,其设计和实现一直是计算机科学领域的研究热点。从早期的非抢占式内核到2.6版本引入的抢占式内核,Linux在实时性和响应能力上取得了显著进步。本文将深入探讨Linux抢占式内核的引入背景、技术实现以及与非抢占式内核的…...
接入DeepSeek大模型
接入DeepSeek 下载并安装Ollamachatbox 软件配置大模型 下载并安装Ollama 下载并安装Ollama, 使用参数ollama -v查看是否安装成功。 输入命令ollama list, 可以看到已经存在4个目录了。 输入命令ollama pull deepseek-r1:1.5b, 下载deepse…...
【论文复现】粘菌算法在最优经济排放调度中的发展与应用
目录 1.摘要2.黏菌算法SMA原理3.改进策略4.结果展示5.参考文献6.代码获取 1.摘要 本文提出了一种改进粘菌算法(ISMA),并将其应用于考虑阀点效应的单目标和双目标经济与排放调度(EED)问题。为提升传统粘菌算法…...
SSM开发(十) SSM框架协同工作原理
目录 一、Spring扮演了一个整合者的角色 二、SSM拆解来看 三、SSM框架的核心优势 注: SSM框架(Spring + Spring MVC + MyBatis) 一、Spring扮演了一个整合者的角色 SSM框架中,Spring扮演了一个整合者的角色,它将Spring MVC的Web层和MyBatis的数据持久层连接起来。在SS…...
UE Bridge混合材质工具
打开虚幻内置Bridge 随便点个材质点右下角图标 就能打开材质混合工具 可以用来做顶点绘制...
基于 yolov8_pyqt5 自适应界面设计的火灾检测系统 demo:毕业设计参考
基于 yolov8_pyqt5 自适应界面设计的火灾检测系统 demo:毕业设计参考 【毕业设计参考】基于yolov8-pyqt5自适应界面设计的火灾检测系统demo.zip资源-CSDN文库 【毕业设计参考】基于yolov8-pyqt5自适应界面设计的火灾检测系统demo.zip资源-CSDN文库 一、项目背景 …...
Linux 传输层协议 UDP 和 TCP
UDP 协议 UDP 协议端格式 16 位 UDP 长度, 表示整个数据报(UDP 首部UDP 数据)的最大长度如果校验和出错, 就会直接丢弃 UDP 的特点 UDP 传输的过程类似于寄信 . 无连接: 知道对端的 IP 和端口号就直接进行传输, 不需要建立连接不可靠: 没有确认机制, 没有重传机制; 如果因…...
Android开发EventBus
Android开发EventBus 分享一个EventBus 工具类,封装一下,让你少写些代码 直接上代码: public class BaseEventBusUtils {public static void register(Object subscriber) {EventBus eventBus EventBus.getDefault();if (!eventBus.isReg…...
chrome浏览器chromedriver下载
chromedriver 下载地址 https://googlechromelabs.github.io/chrome-for-testing/ 上面的链接有和当前发布的chrome浏览器版本相近的chromedriver 实际使用感受 chrome浏览器会自动更新,可以去下载最新的chromedriver使用,自动化中使用新的chromedr…...
第一个Qt开发实例(一个Push Button按钮和两个Label)【包括如何在QtCreator中创建新工程、代码详解、编译、环境变量配置、测试程序运行等】
目录 Qt开发环境QtCreator的安装、配置在QtCreator中创建新工程在Forms→mainwindow.ui中拖曳出我们要的图形按钮查看拖曳出按钮后的代码为pushButton这个图形添加回调函数编译工程关闭开发板上QT的GUI(选做)禁止LCD黑屏(选做)设置Qt运行的环境变量运行Qt程序如何让程序在系统启…...
【react+redux】 react使用redux相关内容
首先说一下,文章中所提及的内容都是我自己的个人理解,是我理逻辑的时候,自我说服的方式,如果有问题有补充欢迎在评论区指出。 一、场景描述 为什么在react里面要使用redux,我的理解是因为想要使组件之间的通信更便捷…...
【435. 无重叠区间 中等】
题目: 给定一个区间的集合 intervals ,其中 intervals[i] [starti, endi] 。返回 需要移除区间的最小数量,使剩余区间互不重叠 。 注意 只在一点上接触的区间是 不重叠的。例如 [1, 2] 和 [2, 3] 是不重叠的。 示例 1: 输入: intervals …...
文献学习笔记:中风醒脑液(FYTF-919)临床试验解读:有效还是无效?
【中风醒脑液(FYTF-919)临床试验解读:有效还是无效?】 在发表于 The Lancet (2024 年 11 月 30 日,第 404 卷)的临床研究《Traditional Chinese medicine FYTF-919 (Zhongfeng Xingnao oral pr…...
4 前端前置技术(中):node.js环境
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 前言...
5.角色基础移动
能帮到你的话,就给个赞吧 😘 文章目录 角色的xyz轴与移动方向拌合输入轴值add movement inputget controller rotationget right vectorget forward vector 发现模型的旋转改变后,xyz轴也会改变,所以需要旋转值来计算xyz轴方向。 …...
vue2语法速通
首先,git clone下来的项目要npm install下载依赖,如果是vue项目,运行通常npm run serve或者npm run dev vue速通一下 使用vite创建项目(较快) npm create vite 配置文件 src/ ├── assets/ # 存放…...
doris:基于导入的批量删除
基于导入的批量删除 删除操作可以视为数据更新的一种特殊形式。在主键模型(Unique Key)表上,Doris 支持通过导入数据时添加删除标记来实现删除操作。 相比 DELETE 语句,使用删除标记在以下场景中具有更好的易用性和性能优势&a…...
【商品库存管理——差分、前缀和】
题目 代码 #include <bits/stdc.h> using namespace std; const int N 3e510; int l[N], r[N], b[N]; int s1[N], s0[N]; int main() {int n, m;cin >> n >> m;for(int i 1; i < m; i){cin >> l[i] >> r[i];b[l[i]], b[r[i]1]--;}int a 0…...
Linux基本指令2
07.man指令(重要): Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是 man 语法: man [选项] 命令 man ls查看ls指令更多的说明。 man man: man指令就…...
运维监控平台 WGCLOUD
WGCLOUD v3.5.7 于 2025 年 2 月 3 日发布1。这是一款开源免费的分布式运维监控平台,server 端基于 springboot 开发,agent 端使用 go 编写1。以下是 v3.5.7 版本的更新内容1: 2. 自定义告警批量添加设置 3. 告警通知渠道设置 4. 告警规则设置…...
GDAL矢量数据集相关接口的资源控制问题
1. 引言 笔者在《使用GDAL读写矢量文件》这篇文章中总结了通过GDAL读写矢量的具体实现。不过这篇文章中并没有谈到涉及到矢量数据集相关接口的资源控制问题。具体来说,GDAL/OGR诞生的年代连C语言本身都不是很完善(c11之前),因此提…...
Android学习19 -- 手搓App
1 前言 之前工作中,很多时候要搞一个简单的app去验证底层功能,Android studio又过于重型,之前用gradle,被版本匹配和下载外网包折腾的堪称噩梦。所以搞app都只有找应用的同事帮忙。一直想知道一些简单的app怎么能手搓一下&#x…...
人工智能导论-第3章-知识点与学习笔记
参考教材3.2节的内容,介绍什么是自然演绎推理;解释“肯定后件”与“否定前件”两类错误的演绎推理是什么意义,给出具体例子加以阐述。参考教材3.3节的内容,介绍什么是文字(literal);介绍什么是子…...
wxWidgets中wxGrid表格使用示例,去掉竖向表头
这里设置表格各种属性如下: // 去掉竖向表头 grid->SetRowLabelSize(0); // 设置表格背景色为黑色 grid->SetDefaultCellBackgroundColour(*wxBLACK); // 设置单元格内容居中,字体为16号,白色 wxFont cellFont(16, wxFONTFAMILY_DEFAULT, wx…...
全面掌握市场信息:xtquant库在证券品种数据获取中的应用
全面掌握市场信息:xtquant库在证券品种数据获取中的应用 开篇点题:技术背景和应用场景 在量化交易领域,快速准确地获取市场基础信息是至关重要的。xtquant库提供了一种便捷的途径来获取各类证券品种的数据,包括股票、指数、基金等…...
DeepSeek 的含金量还在上升
大家好啊,我是董董灿。 最近 DeepSeek 越来越火了。 网上有很多针对 DeepSeek 的推理测评,除此之外,也有很多人从技术的角度来探讨 DeepSeek 带给行业的影响。 比如今天就看到了一篇文章,探讨 DeepSeek 在使用 GPU 进行模型训练…...
day38|leetcode 322零钱兑换,279.完全平方数,139.单词拆分
322. 零钱兑换 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是…...
【Linux系统】信号:信号保存 / 信号处理、内核态 / 用户态、操作系统运行原理(中断)
理解Linux系统内进程信号的整个流程可分为: 信号产生 信号保存 信号处理 上篇文章重点讲解了 信号的产生,本文会讲解信号的保存和信号处理相关的概念和操作: 两种信号默认处理 1、信号处理之忽略 ::signal(2, SIG_IGN); // ignore: 忽略#…...
Go语言指针的解引用和间接引用
在 Go 语言中,"解引用"和"间接引用"是与指针相关的概念。 解引用 (Dereferencing): 解引用是指通过指针访问它所指向的变量的值。在 Go 中,使用星号(*)来解引用一个指针。 例如: v…...
