西湖大学赵世钰老师【强化学习的数学原理】学习笔记1节

强化学习的数学原理是由西湖大学赵世钰老师带来的关于RL理论方面的详细课程,本课程深入浅出地介绍了RL的基础原理,前置技能只需要基础的编程能力、概率论以及一部分的高等数学,你听完之后会在大脑里面清晰的勾勒出RL公式推导链条中的每一个部分。赵老师明确知道RL创新研究的理论门槛在哪,也知道视频前的你我距离这个门槛还有多远。

本笔记将会用于记录我学习中的理解,会结合赵老师的视频截图,以及PDF文档Book-Mathematical-Foundation-of-Reinforcement-Learning进行笔记注释,之后也会补充课程相关的代码样例,帮助大家理解

笔记合集链接(排版更好哦🧐):《RL的数学原理》

记得点赞哟(๑ゝω╹๑)

Action

Agent在每个状态能够采取的行动

ActionSpace是依赖于State的,即不同状态会对应不同的ActionSpace

State transition

当采取一个action,Agent从一个State,转移到另一个State的过程

我们设计允许Agent踏入禁止区域,再惩罚扣分,而不是禁止进入,一是避免状态空间被缩小,而是适当的尝试扣分项,可能能创造更高的奖励。

状态转移矩阵

State transition可以用一个状态转移矩阵表示,这样表示相当直观,但是只能表示确认性的情况,因此现实中使用较为受限

状态转移可能性

用条件概率来表达这种有随机性的例子,让状态转移的概率形式更加一般化

Policy

Agent被告知在一个状态会采取的动作,给予这个Policy,能够创建一条路径

我们仍然使用条件概率来表示策略,使用符号π来表示任何一个state下,一个action的条件概率是多少

Reward

Agent在采取了一个动作后获得的一个实数标量

  • 正数即鼓励行为的发生
  • 负数即不被希望发生的行为
  • 0一般没有意义,但是相对来说算是奖励

Reward是我们和机器交互的一种方式,去引导Agent实现合适的策略

小贴示
  1. 当reward的产生存在概率时,则表格不再适用
  2. 只要你努力学习你就应该得到奖励,但具体数值并不会确定,同样的,Agent的奖励应该基于当前状态和奖励,而不是下一个状态

Trajectory and return

A state-action-reward chain

Return

对Trajectory的奖励进行求和

通过return,可以直观描述以及评估一个policy的好坏

Discounted return

引入discount rate,避免return的发散,实现无穷级数的收敛

在return前添加折扣discount rate -> γ

  • If γ is close to 0:让Agent的决策更趋向于即时奖励
  • If γ is close to 1:让Agent的决策更趋向于长期奖励

Episode

episode可以理解为有terminal states(终止点)的trajectory,因此通常是有限步的,这样的任务被称为episodic tasks。

与之相对的是continuing tasks,与环境的交互不会终止

episodic tasks与continuing tasks的相互转化
  1. 将target状态设为absorbing state(可以理解为黑洞状态),一旦到达就无法离开
  2. 保持target为正常节点,使用奖励策略来阻止agent离开,允许agent跳出

我们采用第二种,虽然需要更多时间探索,但是最终的效果也将更加一般化

Markov decision process(MDP)[马尔科夫决策过程框架]

Key elements of MDP:

  • Sets:
    • State:the set of states S
    • Action:the set of actions A(s) is associated for state s ∈ S.
    • Reward:the set of rewards R(s,a).
  • Probability distribution:
    • State transition probability: at state s, taking action a, the probability to transit to state s’ is p(s’|s,a)
    • Reward probability: at state s, taking action a,the probability to get reward r is p(r|s,a)
  • Policy: at state s, the probability to choose action a is π(a|s)
  • Markov property:memoryless property

p(st+1|at+1,st,…,a1,s0)=p(st+1|at+1,st),

p(rt+1|at+1,st,…,a1,s0)=p(rt+1|at+1,st).

All the concepts introduced in this lecture can be put in the framework in MDP.


之前的GWE可以被抽象为一个马尔科夫过程(Markov porcess)

Markov decision process becomes Markov process once the policy is given!

马尔科夫决策过程当有了一个明确的决策方式,就变成了马尔科夫过程

小结

By using grid-world examples, we demonstrated the following key concepts:

  • State
  • Action
  • State transition, state transition probability p(s’|s,a)
  • Reward, reward probability p(r|s,a)
  • Trajectory, episode, return, discounted return
  • Markov decision process

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

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

相关文章

数据结构_时间复杂度

✨✨所属专栏:数据结构✨✨ ✨✨作者主页:嶔某✨✨ 什么是时间复杂度? 时间复杂度的定义:在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间。一个算法执行所耗费的时间&#xff0…

【go零基础】go-zero从零基础学习到实战教程 - 0环境配置

是个前端,最近开始学习go,后端除node外基本0基础,所以学习曲线有点绕,目标是个基础的服务端demo,搞个api服务后台,包含基础的用户登录、文章发布和写文章、权限控制,差不多就是个完整博客系统。…

发现肺结节怎么办?5个肺结节诊疗病例分享

近期“肺结节离癌症有多远”上了热搜,当体检报告上出现“肺结节”,不少朋友都万分焦虑。其实,直径小于8mm的实性肺结节不需要做手术,但要记得定期复诊看肺结节是往良性还是往恶性发展;如果是直径大于8mm的实性肺结节就…

Git 使用 下载分支 提交新项目到当前分支 三(公司快速上手版)

文章背景 git已经装好了,公司的也给创建好账户了,仓库地址也有了。 领导已经给你说了是哪个分支了。 如何下载远程仓库中的一个项目分支,到本地电脑上。 并且如何将新建的项目上传到当前分支的远程仓库 下载 步骤 创建文件夹。 右键 Op…

前端JS必用工具【js-tool-big-box】,Number数值转换的方法调用学习

这一小节,我们针对前端工具包(npm)js-tool-big-box的使用做一些讲解,主要是针对Number数值型转换的一些方法使用。 目录 前言 1 安装和引入 2 千位逗号分割 3 判断是否大于0 4 判断是否大于0的整数 5 生成指定范围内的随机数…

Win32 API 光标隐藏定位和键盘读取等常用函数

Win32 API 光标隐藏定位和键盘读取等常用函数 一、Win32 API二、控制台程序指令modetitlepausecls 三、控制台屏幕上坐标的结构体COORD四、句柄获取函数GetStdHandle五、控制台光标操作1.控制台光标信息结构体CONSOLE_CURSOR_INFO2.得到光标信息函数GetConsoleCursorInfo3. 设置…

【Java数据结构】深入解析ArrayList与顺序表

【Java数据结构】深入解析ArrayList与顺序表 1.前言~🥳🎉🎉🎉 2.ArrayList的介绍 3.使用ArrayList 3.1 ArrayList的构造方法 3.11 第一个构造方法 3.12第二个构造方法 3.13第三个构造方法 3.2ArrayList中的tostring方…

Spring IOC(一)

1. Spring IOC入门 1.1 什么是Spring IoC IoC(Inversion of Control),即控制反转,是一种设计原则。简单来说,IoC就是将程序的某种传统控制流程反转了。 在Spring框架中,控制反转体现在对象的创建和管理上。…

jsp servlet 学生信息管理系统

一、角色划分 1、超级管理员 2、学生 二、模块展示 1、登录 2、列表页面【超级管理员展示所有用户信息、学生只展示当前登录用户信息】 3、新增 4、编辑 三、数据库【mysql】 四、运行演示 jsp servlet 学生信息管理系统

rust疑难杂症解决

rust疑难杂症解决 边碰到边记录,后续可能会逐步增加,备查 cargo build时碰到 Blocking waiting for file lock on package cache 原因是Cargo 无法获取对包缓存的文件锁, 有时vscode中项目比较多,如果其中某些库应用有问题&…

CSS 之 transition过渡动画

一、简介 ​ CSS 制作 Web 动画有两种方式: 帧动画(Keyframe Animation)和过渡动画(Transition Animation)。针对不同的业务场景中,我们应该选择不同的动画方式,通常来说:对于交互元…

vue3插槽的name和v-slot的研究

slot可以分为具名插槽和默认,默认插槽name是default 在父组件的template需要些v-slot/#,没写不生效,而在父组件下,而没被template包含的默认放在template且含有#default. 1)没写slot,可以不写template,也可写default的template2)写了name的slot,即使是default也必须些template…

STM32G431RBT6之LCD与LED配置

首先,配置时钟树,时钟树的配置在我的另外一篇博客里,这里不再赘述. LCD与LED具有共同的IO口,同时创建工程较好. 打开原理图,发现LED的IO口是PC8~PC15,还有一个容易看漏的PD2.LCD的IO口是PC0到PC15. 当然,看产品手册也可以知道,但是还是推荐大家看原理图. 打开cubumx,给PC0~PC…

Java设计模式 _结构型模式_过滤器模式

一、过滤器模式 1、过滤器模式 过滤器模式(Filter Pattern)是这一种结构型设计模式。过滤器,顾名思义,就是对一组数据进行过滤,从而最终获取到我们预期的数据。 2、实现思路 (1)、定义过滤器的…

想要应聘前端工程师——学习路线指南

前端工程师学习路线 按照前端岗位需求,以优先学习工作更需要,面试更常考的内容为原则,由浅入深,层层铺垫,与时俱进,可以较容易地总结出前端学习路线图: HTML / CSS / JavaScript 基础学习 《Web 入门》 MDN 权威入门指南,HTML / CSS / JavaScript 快速上手 《CSS 世界…

华为OD机试 - 密码解密(Java 2024 C卷 100分)

华为OD机试 2024C卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试(JAVA)真题(A卷B卷C卷)》。 刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试…

ChatGPT/GPT4 科研实战教程-包括论文写作、数据分析、科研绘图、PPT制作,程序开发

从2022年3月,OpenAI公司发布chatGPT3.5开始,以ChatGPT为代表的人工智能内容生成技术(简称AIGC)引起了广泛关注,我们进入了全民AI时代。 因此,我们需要了解和掌握AI思维,才能更好适应这个时代的…

uniapp微信小程序-分享

https://developers.weixin.qq.com/miniprogram/dev/component/button.html https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/share.html#%E4%BD%BF%E7%94%A8%E6%8C%87%E5%BC%95 参考未整理 自定义参考未整理

使用Canal实现MySQL主从同步

说明:本文介绍如何使用Canal实现MySQL主从同步的效果,关于Canal入门使用参考:Canal入门使用 启动Canal 首先,设置Canal服务器里,目标节点(即监测的MySQL节点)的配置,启动Canal服务…

Scala 03 —— Scala OOP Extension

Scala 2.1 —— Scala OOP Extension 一、正则 文章目录 Scala 2.1 —— Scala OOP Extension一、正则1.1 Java正则和Scala正则的区别1.2 Java正则和Scala正则的的基本知识点Java正则Scala正则 1.3 练习练习一:使用正则表达式解析日志方法一:使用findAl…