强化学习笔记【10】稀疏奖励

该系列主要是听李宏毅老师的《深度强化学习》过程中记下的一些听课心得,除了李宏毅老师的强化学习课程之外,为保证内容的完整性,我还参考了一些其他的课程,包括周博磊老师的《强化学习纲要》、李科浇老师的《百度强化学习》以及多个强化学习的经典资料作为补充。

使用说明

笔记【4】到笔记【11】为李宏毅《深度强化学习》的部分;
笔记 【1】和笔记 【2】根据《强化学习纲要》整理而来;
笔记 【3】 和笔记 【12】根据《百度强化学习》 整理而来。

其实在强化学习的过程中,很多情况下,环境中的reward会非常稀疏,比如训练机械臂去拿杯子,偌大的空间中,单靠机械臂随机探索的话,光触碰到杯子已经是难事,更不要说把它拿起来。也就是说,在这个环境中,agent能够得到奖励的机会其实是非常少的。

如果环境中的reward非常sparse,对于强化学习中的agent而言,学习就会变得非常困难,但是人类是可以在非常 sparse 的 reward 上面去学习,说明还是有办法解决——我们可以通过三个方向来解决 sparse reward 的问题。

(1)Reward Shaping

Reward shaping的意思是说环境有一个固定的reward,它是真正的reward,但是为了让agent学出来的结果是我们要的样子,我们刻意地设计了一些 reward来引导我们的agent。比如小孩子写作业就能考高分(环境固定的reward),玩耍则不会考高分,但是小孩子本身经验不足,自己并不能预见考高分这一后续奖励,所以为了引导小孩子去写作业而不是选择玩耍,大人可以在小孩子选择写作业时奖励给他棒棒糖(人为设计的reward),从而引导他选择正确的动作。

那么哪些reward是可以作为人为设计的reward加进来的呢?curiosity driven reward就是一种常见的Reward Shaping

在curiosity driven的这种技术里面,你会加上一个新的reward function。这个新的reward function 叫做ICM(intrinsic curiosity module),它就是要给机器加上好奇心。ICM 会输入3个东西,它会输入state s1、action a1和 state s2。根据s1、a1、s2,它会输出另外一个reward:ri。对machine来说,total reward 并不是只有r而已,还有ri。它不是只有把所有的 r 都加起来,它还把所有ri加起来当作total reward。所以,它在跟环境互动的时候,它不是只希望r越大越好,它还同时希望ri越大越好,它希望从 ICM 的 module 里面得到的 reward 越大越好。ICM 就代表了一种 curiosity。

(2)Curriculum Learning

一种广义的用在RL的训练agent的方法,其在input训练数据的时候,采取由易到难的顺序进行input。就好比说,假设你今天要教一个小朋友微积分,他做错就打他一巴掌,这样他永远都不会做对,因为太难了。你要先教他九九乘法,然后才教他微积分。所以 curriculum learning 的意思就是在教机器的时候,从简单的题目教到难的题目,也就是设计它的学习过程。这个方法在ML和DL中都会普遍使用。

再举个例子,把蓝色的板子穿过柱子,怎么让机器一直从简单学到难呢?

  1. 如第一张图所示,也许一开始机器初始的时候,它的板子就已经在柱子上了。这个时候,机器要做的事情只有把蓝色的板子压下去,就结束了。这比较简单,它应该很快就学的会。它只有往上跟往下这两个选择嘛,往下就得到 reward,就结束了,他也不知道学的是什么。
  2. 如第二张图所示,把板子挪高一点,所以它有时候会很笨的往上拉,然后把板子拿出来了。如果它学得会压板子的话,那么也比较有机会学得会拿板子。假设它现在可以学到,只要板子接近柱子,它就可以把这个板子压下去的话。接下来,你再让它学更 general的case。
  3. 如第三张图所示,一开始,让板子离柱子远一点。然后,板子放到柱子上面的时候,它就会知道把板子压下去,这个就是 curriculum learning 的概念。当然 curriculum learning 有点ad hoc(特别),就是需要人去为机器设计它的课程。

相较于上面的curriculum learningReverse Curriculum Generation为更general的方法。其从最终最理想的state(我们称之为gold state)开始,依次去寻找距离gold state最近的state作为想让agent达到的阶段性的“理想”的state,当然我们应该在此过程中有意的去掉一些极端的case(太简单、太难的case)。综上,reverse curriculum learning 是从 gold state 去反推,就是说你原来的目标是长这个样子,我们从我们的目标去反推,所以这个叫做 reverse curriculum learning。

(3)分层强化学习(hierarchical reinforcement learning,HRL)

将一个大型的task,横向或者纵向的拆解成多个agen去执行。其中,有一些agent负责比较high level的东西,比如负责制定目标,然后它制定完目标以后,再分配给其他的agent来执行完成。

举个例子,假设校长、教授和研究生通通都是 agent。校长要教授发期刊,但其实教授自己也是不做实验的。所以,教授也只能够叫下面的研究生做实验。所以教授就提出愿景,就做出实验的规划,然后研究生才是真的去执行这个实验的人。然后,真的把实验做出来,最后大家就可以得到reward。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值