5、Algorithm propertiesTD算法与蒙特卡洛算法比较尽管TD learning和MC learning都是model-free方法与MC learning相比TD learning的优点和缺点分别是什么呢TD/Sarsa learningMC learning在线学习时差学习是在线的。在接收到奖励后它可以立即更新状态/动作值。蒙特卡洛学习是离线的。它必须等待直到一整个回合episode完全收集完毕后才能进行更新。持续任务由于时差学习是在线的因此它可以处理episodic任务和continuing任务。一次性任务由于蒙特卡洛学习是离线的因此它只能处理具有终止状态的episodic任务。Bootstrapping时差学习自提升因为值的更新依赖于对该值的先前估计。因此它需要初始猜测。非Bootstrapping蒙特卡洛学习不是自提升因为它可以直接估计状态/动作值无需任何初始猜测。低方差时差学习的估计方差较低因为涉及到的随机变量比较少。例如Sarsa需要Rt1,St1,At1R_{t1},S_{t1},A_{t1}Rt1,St1,At1。高估计方差为了估计qπ(st,at)q_\pi(s_t,a_t)qπ(st,at)我们需要Rt1γRt2γ2Rt3…R_{t1}\gamma R_{t2}\gamma^{2}R_{t3}\ldotsRt1γRt2γ2Rt3…的样本。假设每个回合的长度为LLL。有∣A∣L|A|^L∣A∣L种可能的回合。Bootstrapping方法bootstrapping的意思就是说我之前对一个状态的state value已经有了一个初始的猜测然后基于这个初始的猜测再加上一些新的信息我可以得到一个新的猜测。MC learning它不是一个bootstrapping它就是直接根据当前的episode计算出来return我就用这个return来直接作为action value或者state value的这样一个估计值这里边不涉及到之前的一些估计值。另外一个性质就是TD它的估计的variance相对来说是比较小的为什么呢就是因为在算法过程当中它涉及到的随机变量是比较少的。那因为这个比较少所以相对来说我如果只用一次这个采样那它的variance是比较低的。但是相反MC learning它会涉及到非常多的variable因为它需要一个episode这episode第一步会有一个reward第二步会有一个reward第三步就是会有很多个随机变量进来然后我有很多个随机变量那我只用一次的采样相对来说这次采样它的variance会比较高一些。举一个比较直观的例子假如说我现在这个episode它的长度是100每经过一个state假如说有5个action可以来做选择然后那我一共实际上是有51005^1005100个episode。也就是我从当前出发进行随机的采样可能会有51005^1005100个episode但是我现在只用了一个episode的数据来进行估计你可以想象它的variance会是比较大的。另外一个方面就是随机变量实际上有两个性质第一个是variance第二个是它的expectation或者是mean。虽然这个TD算法它的variance是比较小的但是它的mean或者expectation是有bias的。为什么呢因为它是bootstrapping它依赖于初始的估计如果初始的估计不太准确的话那么这个不准确的估计会进入到这个估计的过程中造成bias。当然随着越来越多的数据进来会逐渐把bias给抵消掉直到最后能够收敛到一个正确的估计值。相反MClearning虽然有比较高的variance但是因为它不涉及任何的初始值它的expectation实际上就直接等于它真实的action value或者是state value所以它是无偏估计。刚刚我们介绍了TD learning的基本的性质下面我们把TD learning和之前我们介绍的基于蒙特卡洛方法的这个MC learning加以比较那MC learning是我们这个课程当中介绍的第一个model-free的强化学习的方法然后TD learning是我们介绍的第二个那它们分别有什么优劣势呢我们来看一下 我们一个一个讲它们的优劣势这里边值得指出的一点其实这里边我除了TD之外我还写了一个Sarsa这个Sarsa是什么呢是我们接下来马上要讲的一个算法它可以直接来估计action value然后这个Sarsa和我们之前讲的TD算法它的表达式基本上是一模一样的所以我就直接拿过来也比较一下 第一个性质是什么呢第一个性质是TD算法它是一个online在线的 什么意思呢就是说我现在得到了一个reward我跳到了下一个状态我就立刻可以用这些信息来更新我当前的一些估计状态的值但是相比之下这个MC learning它是offline 什么意思呢就虽然我现在在采样我得到了一些采样但是我不可能立刻用 为什么呢我必须要一直采下去等到这个episode结束之后我才能计算从当前的s然后到最后它的这个return是多少然后我用那个return来作为一个估计值也正因为TD它是online的所以它能够来处理这种continuing task当然它也能够处理episodic task所以两类都可以continuing task是什么呢就是这个task它不会停止它会一直持续下去那这时候我要更新的话我必须是在线的更新因为我不能等它停下来当然实际当中是不存在一直持续下去的任务的但是你可以想象它是一个非常长的任务然后MC learning因为它是offline的所以它只能处理这个episodic task也就是必须要等到它停止之后我才能去用这个MC的算法所以在这两个方面来说TD learning还是略胜一筹的下面我们来接着看 TD它的另外一个性质就是它是bootstrapping bootstrapping的意思就是说我之前对一个状态的state value已经有了一个初始的猜测然后基于这个初始的猜测再加上一些新的信息我可以得到一个新的猜测那么MC learning它不是一个bootstrapping为什么呢它就是直接根据当前的episode然后我计算出来return我就用这个return来直接作为action value或者state value的这样一个估计值那这里边不涉及到之前的一些估计值另外一个性质就是TD它的估计的variance相对来说是比较小的 为什么呢就是因为在算法过程当中它涉及到的随机变量是比较少的比如说从当前的状态出发然后我会得到一个采样是关于这个reward的一个采样 然后会得到另一个采样是关于下一个状态的采样 如果是Sarsa的话它还会对下一个时刻的action再进行采样但是总的来说所涉及到的随机变量是比较少的那因为这个比较少所以相对来说我如果只用一次这个采样那它的variance是比较低的但是相反MC learning它会涉及到非常多的variable为什么呢因为它需要一个episode 这episode第一步会有一个reward第二步会有一个reward第三步就是会有很多个随机变量进来然后我有很多个随机变量那我只用一次的采样相对来说这次采样它的variance会比较高一些那我们举一个比较直观的例子假如说我现在这个episode它的长度是L假如说这个长度是100 然后我每经过一个state假如说有5个action可以来做选择然后那我一共实际上是有5的100次方个episode也就是我从当前出发 我进行随机的采样可能会有5的100次方这样个episode但是我现在只用了一个episode的数据来进行估计你可以想象它的variance会是比较大的另外一个方面就是随机变量它实际上有两个性质第一个是variance第二个是它的expectation或者是mean虽然这个TD算法它的variance是比较小的但是它的这个mean或者expectation它是有bias的为什么呢就是因为它是bootstrapping它依赖于初始的估计 如果初始的估计不太准确的话这个不准确的估计会进到这个估计的过程当中造成bias当然随着越来越多的数据进来 这个会把这个bias给抵消掉直到最后能够收敛到一个正确的一个估计值那么相反这个MC learning虽然它有比较高的variance但是因为它就是不涉及到任何的初始值所以我对它求expectation 那么它的expectation实际上就直接等于它真实的action value或者是state value 所以它是无偏估计
企业数字化 ERP 产品动态
相关推荐
【AI智能体】Codex 实现公众号文章自动发布实战操作详解 目录 一、前言
二、Codex 介绍
2.1 Codex 是什么
2.2 Codex能做什么?
2.3 Codex 文章自动发布介绍
2.3.1 Codex 实现文章自动发布介绍
2.3.2 Codex 实现文章自动发布使用场景
三、操作过程
3.1 前置准备
3.1.1 开通公众号
3.1.2 创建本地工作空间
3.2 完… · 2026/9/27 21:56:43
安徽省公路建设行业协会网站与合肥网站优化方案对比 安徽公路协会网站防黑3步走:最佳实践拆解 网站被黑挂马,首页突然变成赌博广告?别慌,这是行业常态。很多协会、国企官网因长期不维护,成了黑客的“试验田”。要解决这个问题,不能只靠杀毒,得从 设计架构 和 代码规范 入手。 以… · 2026/9/27 21:56:43
wordpressgoogle360完整流程:拒绝拖延,7天上线实战 wordpressgoogle360完整流程:拒绝拖延,7天上线实战 改个需求建站公司拖一周,这种憋屈事你是不是也干过?别急着骂人,很多时候不是他们懒,而是沟通链路太长,技术债务太高,导致一个简单的修改变成了“牵一发动全身”的灾难。… · 2026/9/27 22:37:16
Python变量基础知识 1.究竟什么是变量这个东西呢。所谓的变量, 是指在程序运行的期间, 它所对应的数值是可以发生改变的, 这种量就叫作变量。举个例子来说, 在数学的领域里面, x和y这两个东西本身就是被称为变量的存在的。但是中间存在着不同的是, 变量它可不仅仅是仅仅用来进行存储数字的这种简单… · 2026/9/27 22:37:16
万字详解让大模型写出好代码:上下文窗口的工程化实践与 TaoToken 配置骨架 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:37:04
什么网站做私人空间好免费工具一文搞懂建站避坑 什么网站做私人空间好免费工具一文搞懂建站避坑 网站做好了没人访问,这种憋屈感谁做站谁懂。你熬夜调像素、改代码,结果上线一周后台访客只有你自己和几个蜘蛛。别急着骂平台算法,很多时候问题出在你压根没搞懂 什么网站做私人空间好… · 2026/9/27 22:37:04
前端重构总怕“改了这里乱了那里”?用 TaoToken 统一 Key 把 AI 工具串起来稳住阵脚 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:37:04
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01