[通俗易懂]《动手学强化学习》学习笔记2-第2、3、4章


前言

参考:
《动手学强化学习》作者:张伟楠,沈键,俞勇
动手学强化学习 网页版
动手学强化学习 github代码
动手学强化学习 视频
强化学习入门这一篇就够了!!!万字长文(讲的很好)
+
参考:
强化学习入门(第二版)读书笔记

小总结(前文回顾)

先简单总结一下第一章所学的知识点:
我做了一个思维导图很方便理解
之后学习完会在这里一直更新。

这里2、3、4章作者讲的非常好,就是得多读几遍,这里只做下当时学习时没弄明白的笔记。

补充一下:第2、3、4章要下载的库
#第2章
pip install numpy
pip install matplotlib
#第4章
pip install pygame
pip insatll gym

第二章 多臂老虎机

第二章的代码基本上认真看都能看懂,和伪代码一对照看,很容易就看懂了。

random.uniform(x, y) 是指在均匀分布下(所有值出现的概率相等),随机生成[x,y]内的浮点型数,包含x和y。

2.2.2形式化描述

在这里插入图片描述
这里"R(·|a)"通常表示在给定条件"a"的情况下,某个随机变量的概率分布函数。这里的”·"是一个占位符,代表随机变量的可能值。例如,如果我们有一个随机变量X,那么"R(x|a)"将表示在条件"a"下,随机变量X取值为x的概率。

第三章 马尔可夫决策过程

3.6 占用度量 代码

占用度量定义:
在这里插入图片描述

问题:红色箭头和公式对不上
在这里插入图片描述
这一部分的估计实际概率就相当于
在这里插入图片描述
原因:在这里插入图片描述
这样就和公式对应了。

3.6 占用度量 定理2

问题 :不理解这个定理2是什么意思。
在这里插入图片描述
目前自己理解为:
分母上的a’为:除了状态s目前的动作a外的其他动作。
这里分母为能访问到状态s下的其他动作的概率的和。
在这里插入图片描述
但没有具体程序,也没有实际例子,不能断定。

第四章 动态规划算法

4.5冰湖环境中,需要改成如下代码。

import gym
env = gym.make("FrozenLake-v1", render_mode="human")
env = env.unwrapped  # 解封装才能访问状态转移矩阵P
env.reset()  # 重置环境
env.render()  # 环境渲染,通常是弹窗显示或打印出可视化的环境

4.3.3 策略迭代算法 代码

公式为:
在这里插入图片描述
问题:
1、是因为这个环境是基于模型的,所以要乘以状态转移概率吗?
2、这里+= 用了累加,可公式中只有对状态转移函数进行了累加求和,这个r回报没有进行累加求和,为什么代码里用了+=的形式,而不是先+=后面的状态转移函数再进行单独的相加r?
在这里插入图片描述
原因:这里的r(s,a)根据先前书上的定义,r(s,a)=E(r|S=s,A=a),也就是说这个已经是求过期望后的了。
如果它是求过期望前:则公式为这样:
在这里插入图片描述
那么两个问题就迎刃而解了。这里qsa有点迷惑性质
1、这里的p对应的是p(s’|s,a)。
若不是基于模型的,或者说不是这个算法的,大概率是没有这个p的,看每个算法的公式异同了。
2、这里的累加放在这里就对应第二个累加求和的符号。

总结

其余代码多看两遍就理解了,和伪代码都对的上。

  • 23
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值