强化学习(四) 蒙特卡洛方法

如果算不出来,那就统计。

dp需要完备的环境模型,而蒙特卡洛方法不需要。后者只需要采样。或者说,经验。
此外,蒙特卡洛方法不是自举的,不通过其它价值估计来更新自己的价值估计(与dp不同)。不满足马尔可夫性时仍可用。

蒙特卡洛不是在线的,而是在一幕结束后才进行调整。

蒙特卡洛方法做了一件什么事?

求q派(s,a)。
求出来相当于完成了策略评估,完成之后使用广义策略迭代来改进策略,跟dp一样。因此重点是评估。

首次访问型MC

在这里插入图片描述

这次不是决策树了,因为是采样,所以是整个过程是单线的,无分叉。
G就是累积回报。
第一行的意思是,给定S0,按照策略,做出动作A0,获得回报R1,环境变为S1,依此类推。
t是从大到小的,原因是折扣gamma会更多作用于后发生的事情(个人理解)。
“除非”这行,意思是如果某状态是首次出现,则加入返回列表。
为什么是列表呢?我们当然希望充分利用采样结果,对于这次采样中出现的每一个状态,我们都产生了一个数据,放在列表里。

文字描述

完成整幕序列,从后往前更新G,更新过程中赋值s的V。
用样本回报估计期望回报。

蒙特卡洛方法的优势

  • 可以通过实际经历和模拟经历学习
  • 因为不是自举的,让感兴趣状态为初态,就可以只计算感兴趣状态的价值函数

蒙特卡洛方法解决问题的一般过程

最终需要确定策略,所以其实q*是必算的。v*可以不算。
只有在已知环境模型的时候,才能轻易在q和v之间转换。

q的确定同样依赖于采样。但对于一些策略来说,有的动作并不会被选择,如果无法采样,我们所知晓的最优动作候选人就不够多。而采样方法决定的“单线”是不可变的。
有两种解决思路。第一种是依赖初态,想采什么状态-动作就让它为初态。第二种是使用软性策略。

同轨和离轨

同轨,目标策略更新与行动策略有关;离轨,目标策略更新与行动策略无关。
同轨和离轨是解决explore-exploit的两种思想。同轨收敛快,但在最优性上有妥协。离轨由于数据来源不同方差更大收敛慢,但通用性更强。
在这里插入图片描述
在这里插入图片描述
至于离轨,其可行性的理论基础是重要度采样。
在这里插入图片描述
对于首次访问型,(5.5)的分母始终为1;对于每次访问型,(5.5)的分母为s状态出现的次数。
重要度就是两个概率密度函数在这个s上的比值,这个比值有的时候小,而有的时候可能极大,导致方差很大。显然,如果两个概率密度函数比较接近,方差才会比较小。
加权重要度采样是为了减小方差。试想如果分子中有一些比值特别大,分母也会特别大,从而缓解极端情况。

附录

软性

软性策略是指在一个情境下采取各种动作的概率都不为零,相对应的是确定性策略。

统计学的基本思想

可以分为描述和预测。
描述,比如小学学的扇形统计图、折线统计图。
预测,通过样本估计整体,再比如线性拟合。实质是归纳法。
已知分布,意味着任意挑一个被试,我能知道它有多大的可能性是什么水平。

重要度采样

https://www.jianshu.com/p/22fb279aa16b
基本想法是我们可以基于分布 B 的样本来估计分布 A 的属性。
一个场景是估计人群的平均收入,长尾问题,采样效果并不理想(因为很多群体你调查不到)。解决方法之一就是,过度采样你容易接触到的群体,减少采样不容易接触到的群体。然后通过重要度来修正。
降低过度采样的样本的重要性,提高欠采样的样本的重要性。
除了缓解rare event难采样的问题,还有减小标准差的作用。

接受-拒绝采样

有些博客喜欢摆一张正方形内切圆求圆周率的图,我感觉并不贴切。摆python代码的就更无助于理解了。
采样到底是什么?
采样就像往数轴上扔飞镖。一个区间飞镖的总个数,就会形成一个柱子。每个区间都有柱子,用曲线连起来就大致形成了乘k之后的概率密度函数。(概率密度函数乘k之后,仍然能表示飞镖落在各个区间的相对可能性。归一只是让它有更好的数学性质。)
统计就是,观察一个人扔飞镖,看了一小会,就预测他下一个飞镖会扔在哪里。
那么什么是接受-拒绝采样呢?
你手下有两个飞镖运动员,它们一个能扔出正态分布,一个能扔出均匀分布。
你听说有人能扔出下面的分布(z=1.2113),在这里插入图片描述
你想见识一下。
你让正态分布的手下扔飞镖。如果你不做任何操作,肯定扔出正态分布。
如果你拔掉一部分飞镖,最终在飞镖盘上就有可能剩下这个奇特的分布。
什么时候拔呢?引用jteng的图:
在这里插入图片描述
如果蓝线和红线在某一z下很接近,那么最好别拔掉(拔掉意味着降低蓝线在这一点的高度)。不拔的概率是红线高度/蓝线高度。
我们希望少拔,这样投手可以少投一些飞镖。因此应当尽可能降低蓝线。
拔还是不拔,这件事可以用一个均匀分布来描述,我在0-1间均匀抽一个小数,如果小于0.6就不拔。那不拔的概率就是0.6。
拔了就是拒绝,没拔就是接受,这就是拒绝-接受采样。

重要度采样跟接受-拒绝采样有些像,都借助了常见分布。
接受-拒绝采样的结果是一个样本集,一个你想看见的飞镖盘。
重要度采样的结果是样本特征,一个数字化过后的你想看见的飞镖盘。

参考链接

脉络清晰,蒙特卡洛方法-接受拒绝-重要性-MCMC
https://blog.csdn.net/qq_33302004/article/details/115338116

四种数据

  • 定类,如颜色
  • 定序,如年级,尺码(SML),军衔
  • 定距,如温度。特征是0点模糊。
  • 定比,如工资。特征是比值有含义,你的工资是我的工资的两倍。

切比雪夫不等式

作用是,对任意分布,能判断均值附近的数据有多少。
定量是1-1/k^2。这里的k可以不是整数。

如果是正态分布,那可以查Z表获得任意区间的数据有多少。

为什么百度百科说中心极限定理是首席定理

https://blog.csdn.net/qq_32572085/article/details/88934098
样本的平均值约等于总体的平均值。
不管总体是什么分布,任意一个总体的样本平均值都会围绕在总体的整体平均值周围,并且呈正态分布。
第一行其实阐释了统计的基本思想,就是我们可以用样本的平均值来估计总体的平均值。
我们还想知道总体的方差/标准差。
我们可以用样本的方差来估计总体的方差,但分母却是n-1。

原因是用样本均值代替样本期望是不完美的。
样本均值的引入,使得我们只知道样本中n-1个数据就能推导出最后一个数据。
在这里插入图片描述
综上,我们发现,用均值代替期望会导致方差偏小,分母替换成n-1可以补偿;至于为什么是n-1而不是n-2,是因为使用均值代替期望时有一个数据是不独立的。

大数定理

为当样本数据无限大时,样本均值趋于总体均值。

极大似然法

目的是估计分布的参数。
在这里插入图片描述
极大似然函数,以正态分布为例,有两个输入变量。随着输入变量的不同,样本点x1出现的概率不同。
试想,如果μ=x1,x1出现的概率肯定比较大。而μ离x1很远、σ很小的时候,x1出现的概率就比较小。
我们取n个点,合适的μ和σ会使这n个点出现概率的乘积最大。

二项分布

问题始于,做n次实验,事件发生k次的概率。
给定n和p,横轴为k,纵轴为事件发生k次的概率。

问题场景如下:
在这里插入图片描述
在p接近0.5,n较大的时候,可以用正态分布模拟二项分布。
将这个正态分布转为标准正态分布,就能查Z表。复杂度就从O(n)变成O(1)了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值