第2章:多臂赌博机

参考书籍:
Reinforcement Learning An introduction 第二版
作者:Richard S. Sutton and Andrew G. Barto
以及此书的中文版《强化学习》

第2章:多臂赌博机

上一章:第1章:强化学习介绍
下一章:第3章:有限马尔可夫决策过程

1.问题描述

k-摇臂赌博机问题
你需要重复地对 k 个不同的选项或动作做出选择. 在每一次选择后你会获得一个实数型的奖赏, 该奖赏是从固定的概率分布中采样获得的, 且该概率分布取决于你所选择的动作. 你的目标在一定的时期内, 如 1000 个动作选择或时步

2.动作值方法

由于我们不知道每个动作的真实价值,但是凭借自己的经验有了每个动作的估计,当然这个估计值可能不准确,尤其是在刚开始没有经验的时候。
动作值方法分为两个步骤:1、估计动作值。2、使用估计的动作值来执行动作。
步骤1:一个自然的估计动作值得方法就是对接受到的奖赏进行平均:
在这里插入图片描述
步骤2:最简单的动作选择规则就是选择有最高估计值的那个动作. 如果有多于一个的贪心动作, 那么以任意一种方式在选择其中一个, 例如随机选择. 我们将这样的贪心 动作选择写作
在这里插入图片描述
但是,贪心法每次只会选我们估计动作值最大的动作,因为我们估计的动作值可能和真实动作值存在差异。有可能我们目前有个动作估计值很低,但实际上是很高的,由于采用贪心算法,则无法取到这个实际很高的动作了。因此,我们会在多数时间内进行贪心,但是每隔一定时间的时候,以较小的概率ε进行一次随机选取动作(探索)。这样就有可能选择到实际值高,但估计值低的动作了。

3.增量式实现

增量式实现,我第一次看到这个名字的时候也觉得好像很厉害的样子,其实非常简单。
增量式实现是对“2.动作值方法”中步骤1的计算上的改进。
我们当时步骤1在估计动作值是求了一个平均,为了简便,我们记作下式,表示n-1次选取某一个动作后,该动作的平均价值。从下式可以看出,该动作价值是前n-1次该动作奖励的平均值。
在这里插入图片描述
这种计算方式,要求我们要存储下该动作前n-1次的奖励。并且,随着时间的增加,n越来越大,上式的分母也越长,意味着需要存储的奖励也越来越多。
增量式就是为了解决这个存储问题,对上式进行一个变形。进行如下变形:
在这里插入图片描述
变形后,我们发现,在计算n+1时刻的Q值,只需要前一时刻的Q值和R值就行了。并不需要把前n个R值都存储起来取平均。
上面这个变形的式子的一般形式可以用如下形式进行表示:
在这里插入图片描述
非常简单的一个赌博机算法如下:
虽然简单,也仔细说一下
初始化操作:对每一个动作初始化动作的奖赏值Q(a)为0,次数N(a)表示是选取动作a的次数(因为要求奖赏的平均值,所以需要保存次数)
循环体操作:循环以下操作:
选取动作,按之前所说的,以大概率1-ε取Q最大的动作(利用),以小概率ε随机选取动作(探索)。
然后计算选取这个动作的奖赏。并把动作次数加1,再按上面所讲的增量式实现更新该动作的奖赏值Q。
在这里插入图片描述

4. 追踪非固定性问题

以上提到的无论是保存前n时刻动作的奖励求平均值,以及增量式只保存动作次数和上一次的Q值求平均值。都是对以往所有的奖赏赋予了相同的权重。当是对于奖赏分布会发生变化的问题则不合适。
我个人觉得这一块内容还是挺有价值的,因为这部分引入了指数加权平均的方法,在强化学习中,这种求平均方式多到数不胜数。为了能更好的理解,我觉得举一个例子来解释
我们考虑特定的一个动作a(其它动作也是一样的考虑),采取该动作得到的奖赏假设服从一个正态分布,均值为5。
先看固定性问题:即这个动作a的奖赏分布永远服从均值为5正态分布。那么我们假设采样到该动作的时间依次分别记为Ta1,Ta2,Ta3,Ta4。这4个时间依该动作分布采样到的奖赏分别是4.4,5.6,5.1,5。
那么求平均的奖赏值Q就等于(4.4+5.6+5.1+5)/4=5.025 ((因为举例子,所以我只取了4个时间,实际上,采样越多平均值越精确)。这是常规的权重相同的求均值方法没有问题。
非固定性问题:假设这个动作a的奖赏分布随着时间会变化,即非固定性问题。我们把上面固定性问题的采样时间Ta1,Ta2,Ta3,Ta4放到这里来看,假设在Ta1,Ta2时间内,a动作的奖赏分布均值还是5。但是,之后在Ta3,Ta4时刻,a动作的奖赏分布均值变成了20(我这里假设变化大一点,解释起来效果更明显)。我们在这四个时间依次采样的奖赏分别是4.7,5.3,19,22。
如果我们按之前的方式求平均,就是(4.7+5.3+19+22)/ 4=12.75。
但是,我们目前实际的均值是20,和12.75相差还是挺大的。为什么会这样?很明显,因为过去的奖赏拖后腿太严重了。
指数加权平均的方法就是为了削弱过去经验的影响。之前增量式模型中采样的步长为1/n,因此等价于权重相同取平均。现在把设步长为固定值α。得以下式子。
我们看下式倒数第二行。每个R前面得系数代表该奖励的权重,其中R的下标就是代表的时间,Rn是当前时刻采样的奖赏,它的系数(权重)是α。再往前的时刻,R的系数中的指数越大,因为1-α<1,所以1-α的指数次方越小,因此越往前,奖励的权重越小。这就削弱了过去奖赏对当前奖赏的影响。因此,下面这种求平均值的方式就称之为指数加权平均法
在这里插入图片描述
接下来这段话,是我按自己的理解写给自己看的。方便以后回顾**(α取1/n就是平均加权。α取常数时,必定会更加关注新的奖赏,削弱以往的奖赏,为什么呢,我们看上式的第二行,α是Rn的系数,(1-α)是其余的奖赏的系数。随着时间增加,以往的奖赏越来越多,即Qn的权重却还是常数(1-α)因此一定会一直被削弱。)**

5. 乐观初始值

之前在强化学习论文中也看过关于乐观和悲观的一些思想,比如,乐观估计、乐观探索、悲观估计、悲观探索这类想法。因此提前了解,是有利于之后的学习的。
上面那个简单的赌博机算法我们初始化Q(a)=0,我们在循环体里面执行刚开始的时候,会随机选取一个动作,并且只要这个值大于0,那么这个动作就是最好的,导致我们下次会以1-ε的大概率选取这个动作,事实上大于0的值还有很多,但是只能以ε的小概率发现。
一种乐观的初始化是,我们初始化Q(a)=一个较大的数,比如本文最开始的那张k=10的赌博机的例子。我们初始化Q(a)=5。这个初始估计值是极为乐观的。因此无论开始时选择了哪个动作, 收到的奖赏都低于初始估计值;学习器因此对收到的奖赏感到 “失望”, 转而选择别的动作. 结果就是所有的动作都在估计值收敛前被选择了数次. 即使一直选择贪心动作, 强化学习系统事实上也做了大量的探索。
下图实验也证明,最开始, 乐观方法表现得比 ε-贪心方法差, 但因为乐观方法的探索随时间流逝减少, 因此最终乐观方法的表现好于 ε-贪心方法. 我们将这一鼓励探索的技术称为乐观初始值
在这里插入图片描述

6. 上置信界动作选择

上置信界 <upper confidence bound, UCB> 动作选择
由于贪婪法在评估的结果中取最好的,有的评估可能比真实情况要差,因此真正好的动作可能选取不到。然后,之前就提出了ε-贪心法,以ε小概率随机选取动作,保证真正好的动作也有可能被取到。
但是,以ε小概率随机选取动作,这个过程是随机选取,对所有状态都不加区分,换而言之,这个随机选取虽然可能选取到真正好的动作,但也可能选取到极其不好的动作。因此,我们可以考虑将其估计值离成为最大值的距离与估计值中的不确定性考虑在内,由此判断各个非贪心动作成为最优动作的潜力。
一种能做到这一点的高效方式就是由下式进行动作选择:
在这里插入图片描述
这个式子也是取最大动作,除了考虑Q值,后面还增加了一项。这就意味我们选取最大值动作的考虑因素有两个。前面这Q值考虑了该动作的估计值离成为最大值的距离。而后面这一项度量了一个动作的不确定性。c是决定置信水平,表示了探索程度。重点是看根号里面的式子。假如一个动作被选取了,该动作的N(a)就会加1,分母就会增大,整体值就会减小,表示该动作的不确定性小了。如果一个动作没有被选取,则分母不变,分子表示时间t,t在一直增加的,这个没被选取的动作的不确定性就会增大。
按这种方式来选取动作,就即考虑了Q值也考虑了动作的不确定性。

7. 梯度赌博机算法

我们已经学习了对动作值进行估计, 然后使用估计值来选择动作的多种方法. 这常常是一种好的途径, 但并不是唯一的途径. 在本节中, 我们将考虑如何为每一个动作 a 学得各自实数型的偏好, 我们将其记为 Ht(a). 偏好值越高, 那么对应的动作越常被采用, 但是偏好不能使用奖赏的观念来理解. 只有一个动作相较于另一个动作的相对偏好值是有意义的; 如果我们将所有动作的偏好值加上 1000, 各个动作被选择的概率仍然保持不变, 其中概率是由如下的 soft-max 分布 (也称为 Gibbs 分布Boltzmann分布) 决定的:
在这里插入图片描述
这里我们引入一种实用的新标记 πt(a), 来表示在时步 t 采取动作 a 的可能性. 起始时, 所有动作的偏好值都是相等的 (例如对所有的 a 来说, Ht(a) = 0), 因此所有动作都有相同的被选择的概率.
基于随机梯度上升 , 可以自然地得到这一设定下的学习算法. 在每一步时, 在选择动作 At 并收到奖赏 Rt 后, 动作偏好值使用下式进行更新:
在这里插入图片描述
其中 α > 0, 为步长参数, 且 R¯为时步 t 及之前的所有奖赏的平均, 可以如 3 节(如果问题是非固定性的话, 那么如 4节) 中所述的那样进行增量式的计算. R¯t 这一项是作为比较奖赏的基准线的. 从上式可以看出,如果奖赏高于基准线, 那么将来采取动作 At 的概率将增加; 反之如果奖赏低于基准线, 那么概率将减小. 而未被选择的动作的概率朝相反方向移动.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上一章:第1章:强化学习介绍
下一章:第3章:有限马尔可夫决策过程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值