深入理解强化学习——强化学习智能体的四要素:模型(Model)

news2024/11/25 5:49:17

分类目录:《深入理解强化学习》总目录
相关文章:
· 强化学习智能体的四要素:策略(Policy)
· 强化学习智能体的四要素:收益信号(Revenue Signal)
· 强化学习智能体的四要素:价值函数(Value Function)
· 强化学习智能体的四要素:模型(Model)


对于一个强化学习智能体,它可能有一个或多个如下的组成成分:

  • 策略(Policy):智能体会用策略来选取下一步的动作
  • 收益信号(Revenue Signal):在每一步中,环境向强化学习智能体发送一个标量数值,收益信号是改变策略的主要基础
  • 价值函数(Value Function):我们用价值函数来对当前状态进行评估,价值函数用于评估智能体进入某个状态后,可以对后面的奖励带来多大的影响。价值函数值越大,说明智能体进入这个状态越有利
  • 模型(Model):模型表示智能体对环境的状态进行理解,它决定了环境中世界的运行方式

本文就将探讨强化学习智能体的四要素中的模型。

模型决定了下一步的状态。下一步的状态取决于当前的状态以及当前采取的动作。它由状态转移概率和奖励函数两个部分组成。状态转移概率即:
p s s ′ a = p ( s t + 1 = s ∣ s t = s , a t = a ) p_{ss'}^a=p(s_{t+1}=s|s_t=s, a_t=a) pssa=p(st+1=sst=s,at=a)

奖励函数是指我们在当前状态采取了某个动作,可以得到多大的奖励,即:
R ( s , a ) = E [ r t + 1 ∣ s t = s , a t = a ] R(s, a)=E[r_{t+1}|s_t=s, a_t=a] R(s,a)=E[rt+1st=s,at=a]

当我们有了策略、价值函数和模型等要素后,就形成了一个马尔可夫决策过程(Markov Decision Process)。如下图所示,这个决策过程可视化了状态之间的转移以及采取的动作。
马尔可夫决策过程
我们来看一个走迷宫的例子。如下图所示,要求智能体从起点开始,然后到达终点的位置。每走一步,我们就会得到 − 1 -1 1的奖励。我们可以采取的动作是往上、下、左、右走。我们用现在智能体所在的位置来描述当前状态。
走迷宫的例子

我们可以用不同的强化学习方法来解这个环境。 如果我们采取基于策略的强化学习(Policy-based RL)方法,当学习好了这个环境后,在每一个状态,我们都会得到一个最佳的动作。如下图所示,比如我们现在在起点位置,我们知道最佳动作是往右走;在第二格的时候,得到的最佳动作是往上走;第三格是往右走…通过最佳的策略,我们可以最快地到达终点。
使用基于策略的强化学习方法得到的结果

如果换成基于价值的强化学习(Value-based RL)方法,利用价值函数作为导向,我们就会得到另外一种表征,每一个状态会返回一个价值。如下图所示,比如我们在起点位置的时候,价值是 − 16 −16 16,因为我们最快可以16步到达终点。因为每走一步会减1,所以这里的价值是 − 16 −16 16。 当我们快接近终点的时候,这个数字变得越来越大。在拐角的时候,比如现在在第二格,价值是 − 15 −15 15,智能体会看上、下两格,它看到上面格子的价值变大了,变成 − 14 −14 14了,下面格子的价值是 − 16 −16 16,那么智能体就会采取一个往上走的动作。所以通过学习的价值的不同,我们可以抽取出现在最佳的策略。
使用基于价值的强化学习方法得到的结果
模型是一种对环境的反应模式的模拟,或者更一般地说,它允许对外部环境的行为进行推断。例如,给定一个状态和动作,模型就可以预测外部环境的下一个状态和下一个收益。环境模型会被用于做规划。规划,就是在真正经历之前,先考虑未来可能发生的各种情境从而预先决定采取何种动作。使用环境模型和规划来解决强化学习问题的方法被称为有模型的方法。而简单的无模型的方法则是直接地试错,这与有目标地进行规划恰好相反。我们将在后续的文章中中探讨强化学习系统,它可以同时通过试错、学习环境模型并使用模型来进行规划现代强化学习已经从低级的、试错式的学习延展到了高级的、深思熟虑的规划。

参考文献:
[1] 张伟楠, 沈键, 俞勇. 动手学强化学习[M]. 人民邮电出版社, 2022.
[2] Richard S. Sutton, Andrew G. Barto. 强化学习(第2版)[M]. 电子工业出版社, 2019
[3] Maxim Lapan. 深度强化学习实践(原书第2版)[M]. 北京华章图文信息有限公司, 2021
[4] 王琦, 杨毅远, 江季. Easy RL:强化学习教程 [M]. 人民邮电出版社, 2022

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ubunu 18.04 LTS安装Qt-5.14-2并一起安装Qt Creator

作为初级qt用户,一定下载Qt的.run安装文件。 之前我安装5.15.10版本的源码,安装后一头雾水。 后来,我安装了低一点的版本5.14.2,它含有.run安装文件,比较顺利。 下面记录一下ubunu 18.04 LTS安装Qt-5.14-2并一起安装Q…

基于深度学习的目标检测模型综述

基于深度学习的目标检测模型综述 一 概论目标检测主要挑战评估指标 二 展望 一 概论 目标检测是目标分类的自然延伸,目标分类仅旨在识别图像中的目标。目标检测的目标是检测预定义类的所有实例并通过轴对齐的框提供其在图像中的初略定位。检测器应能够识别所有目标…

Python数据挖掘入门进阶与实用案例:自动售货机销售数据分析与应用

文章目录 写在前面01 案例背景02 分析目标03 分析过程04 数据预处理1. 清洗数据2.属性选择3.属性规约 05 销售数据可视化分析1.销售额和自动售货机数量的关系2.订单数量和自动售货机数量的关系3.畅销和滞销商品4.自动售货机的销售情况5.订单支付方式占比6.各消费时段的订单用户…

乾坤qiankun(微前端)样式隔离解决方案--使用插件替换前缀

一、前言 qiankun作为微前端的一种融合方式,目前也比较成熟,但是由于各类开发技术选型非常繁多,导致了在项目中配置不同,解决别人的问题,不一定能解决自己的问题。 使用的js框架的不同或版本的不同:vue/r…

手部关键点检测3:Pytorch实现手部关键点检测(手部姿势估计)含训练代码和数据集

手部关键点检测3:Pytorch实现手部关键点检测(手部姿势估计)含训练代码和数据集 目录 手部关键点检测3:Pytorch实现手部关键点检测(手部姿势估计)含训练代码和数据集 1. 前言 2.手部关键点检测(手部姿势估计)方法 (1)Top-Down(自上而下)方法 (2)Bot…

mac虚拟机安装homebrew时的问题

安装了mac虚拟机&#xff0c;结果在需要通过“brew install svn”安装svn时&#xff0c;才注意到没有下载安装homebrew。 于是便想着先安装homebrew&#xff0c;网上查的教程大多是通过类似以下命令 “ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)” 但是都会出现…

防火墙管理工具增强网络防火墙防御

防火墙在网络安全中起着至关重要的作用。现代企业具有多个防火墙&#xff0c;如&#xff1a;电路级防火墙、应用级防火墙和高级下一代防火墙&#xff08;NGFW&#xff09;的复杂网络架构需要自动化防火墙管理和集中式防火墙监控工具来确保边界级别的安全。 网络防火墙安全和日…

STM32F0的TIM1高级定时器(未完待续)

文章目录 1.高级、通用和基本定时器的区别2.TIM1高级定时器介绍2.1 时基单元2.1.1寄存器2.1.2 预分频器2.1.3 计数器2.1.4 重复计数器 2.2 计数时钟2.3 捕捉/比较通道2.3.1 通道结构 输出类型14-12&#xff1a;定时器霍尔传感器配置结构定义 函数14-100 1.高级、通用和基本定时…

探索云原生技术之容器编排引擎-Kubernetes/K8S详解(8)

❤️作者简介&#xff1a;2022新星计划第三季云原生与云计算赛道Top5&#x1f3c5;、华为云享专家&#x1f3c5;、云原生领域潜力新星&#x1f3c5; &#x1f49b;博客首页&#xff1a;C站个人主页&#x1f31e; &#x1f497;作者目的&#xff1a;如有错误请指正&#xff0c;将…

【Python微信机器人】第一篇:在windows11上编译python

前言 我打算写一个系列&#xff0c;内容是将python注入到其他进程实现inline hook和主动调用。本篇文章是这个系列的第一篇&#xff0c;后面用到的案例是注入python到PC微信实现基本的收发消息。文章着重于python方面的内容&#xff0c;所以对于微信找收发消息的call不会去讲过…

挚文集团:股票回购速度、收入指引均不及预期,令投资者失望

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 挚文集团未来将不再公布MAU数据 今年6月初&#xff0c;挚文集团(MOMO)在公布2023年第一季度业绩时透露&#xff0c;“陌陌应用的月活跃用户(MAU)”已经从去年3月的1.109亿下降到了今年3月的1.065亿&#xff0c;同比下降了-…

大数据Hadoop之——部署hadoop+hive+Mysql环境(window11)

一、安装JDK8 【温馨提示】对应后面安装的hadoop和hive版本&#xff0c;这里使用jdk8&#xff0c;这里不要用其他jdk了&#xff0c;可能会出现一些其他问题。 1&#xff09;JDK下载地址 http://www.oracle.com/technetwork/java/javase/downloads/index.html 按正常下载是需要…

【Python语义分割】Segment Anything(SAM)模型交互式分割+掩膜保存(三)

我之前分享了Segment Anything&#xff08;SAM&#xff09;模型的基本操作&#xff0c;这篇给大家分享下交互式语义分割代码&#xff0c;可以通过鼠标点击目标物生成对应的掩膜&#xff0c;同时我还加入了掩膜保存的代码。 1 Segment Anything介绍 1.1 概况 Meta AI 公司的 S…

HarmonyOS 音视频开发概述

在音视频开发指导中&#xff0c;将介绍各种涉及音频、视频播放或录制功能场景的开发方式&#xff0c;指导开发者如何使用系统提供的音视频 API 实现对应功能。比如使用 TonePlayer 实现简单的提示音&#xff0c;当设备接收到新消息时&#xff0c;会发出短促的“滴滴”声&#x…

【API篇】三、转换算子API(上)

文章目录 0、demo数据1、基本转换算子&#xff1a;映射map2、基本转换算子&#xff1a;过滤filter3、基本转换算子&#xff1a;扁平映射flatMap4、聚合算子&#xff1a;按键分区keyBy5、聚合算子&#xff1a;简单聚合sum/min/max/minBy/maxBy6、聚合算子&#xff1a;归约聚合re…

第三章 内存管理 七、具有快表的地址变换结构

目录 一、什么是快表 二、快表有什么用&#xff1f; 例子&#xff1a; 三、快表和慢表同时查询 四、局部性原理 五、总结 一、什么是快表 快表&#xff0c;又称联想寄存器&#xff08;TLB&#xff0c;translation lookaside buffer)&#xff0c;是一种访问速度比内存快很…

教程更新 | 持续开源 RK3568驱动指南-驱动基础进阶篇

《iTOP-RK3568开发板驱动开发指南》手册文档更新&#xff0c;手册内容对应视频教程&#xff0c;后续资料会不断更新&#xff0c;不断完善&#xff0c;帮助用户快速入门&#xff0c;大大提升研发速度。 ✦ 第一篇 驱动基础 第1章 前言 第2章 你好&#xff01;内核源码 第3章 …

如何部署WampServer并结合cpolar内网穿透工具实现公网访问本地服务?

文章目录 前言1.WampServer下载安装2.WampServer启动3.安装cpolar内网穿透3.1 注册账号3.2 下载cpolar客户端3.3 登录cpolar web ui管理界面3.4 创建公网地址 4.固定公网地址访问 前言 Wamp 是一个 Windows系统下的 Apache PHP Mysql 集成安装环境&#xff0c;是一组常用来…

苏东坡在元丰五年

北宋神宗元丰二年&#xff08;1079年&#xff09;十二月二十八日&#xff0c;震惊朝野上下的“乌台诗案” 正式结案&#xff1a;“祠部员外郎、直史馆苏轼责授检校水部员外郎、黄州团练副使&#xff0c;本州安置、不得签书公事&#xff0c;令御史台差人转押前去。” 元丰三年&…

PAM从入门到精通(三)

接前一篇文章&#xff1a;PAM从入门到精通&#xff08;二&#xff09; 本文参考以下博文&#xff1a; PAM模块详解及sudo命令 PAM 的应用开发和内部实现源码分析 PAM详解&#xff08;一&#xff09;PAM介绍 Linux进阶_PAM认证机制 Oracle Solaris 10 开发者安全性指南 ——…