前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >强化学习离轨策略:从失败中获得成功经验 - 以追女孩为例 | 采样率的数学意义

强化学习离轨策略:从失败中获得成功经验 - 以追女孩为例 | 采样率的数学意义

作者头像
Piper蛋窝
发布2020-11-19 11:02:04
9130
发布2020-11-19 11:02:04
举报
文章被收录于专栏:Piper蛋窝

简介:我一个朋友小拍,姐妹众多,稳如老狗。姐妹们常疑惑:小拍同学 会吃会玩会聊天,上知美妆,下知韩综,中晓穿搭,做事靠谱,为人颇有原则 ,竟然没追成过一个女孩?要我说,这其实没什么可大惊小怪的,我刚认识小拍那阵子,他还是个钢铁小直男呢。 用强化学习的角度看,小拍在这几年做了很好的离轨策略(off-policy)学习,即从自己和别人“追女生”这个过程中学习经验,无论结果成败,都能有效地学到东西。 本文我们就以“追女孩”为例,讨论离轨策略,进而引申出“重要度采样比”/“采样率”的数学意义解释(主要引用台湾大学李宏毅老师的观点)。

本文目录:

•离轨策略:从失败与别人的经验中学习•重要度采样比:修正“理解”的偏差

离轨策略:从失败与别人的经验中学习

在强化学习中, 我们要学到的/收敛逼近的控制策略,一定是最优的。 以追女生为例,小拍心里的目的只有一个:用最好的方式追成功。

很显然, 我们要学习的策略,一定是一个“能让我们成功的策略” ,但问题是:

•小拍 自己从未成功过,只有失败的经验 ,他可以从中学到什么吗?•别人的经验或是成功的、或是失败的,但 小拍不可能完全复制下来 ,小拍可以从中学到什么吗?

对于强化学习学习来讲,上述两个问题的答案都是 肯定 的。

在 Sutton 的经典书籍中,在 第五章第五节 首次提到 “离轨策略(off-policy)” 这个概念。

虽然第五章才被介绍,但 “离轨策略” 这个概念,却几乎是 强化学习实践 中最为重要的概念之一,因为:

•强化学习的 数据往往只能通过与环境交互得出 ,这造成了其数据获取成本过大,且少之又少;•而书中 5.5 节前的简单直接的迭代式,只能 一边使用当前控制策略,一边改进当前控制策略(同轨策略,on-policy) ,这容易造成一些没有被探索过的方法,永远都不被尝试(固步自封),也会 导致我们无法使用之前的、别人的数据

小拍亲口为我们做了类比:

同轨策略: 这次失败了,这个方法不好,嗯,把这个方法改进一下,下次尝试!•离轨策略: 我使用的方法,并不一定是我目前认为最好的方法;或者说,不管我用什么方法,我都能从中学到东西,并且自我提升,寻找我的最优方法。如果别人有经验,我也可以从中有所收获!

或许你已经可以看出, 同轨策略是离轨策略的一种特殊形式 ,在设计算法时, 如果其可以满足离轨策略要求,其一定可以进行同轨策略的学习。

且在实践中,我们 很难不使用 离轨策略:

•在与环境的交互中,我们尽量不要使用当前的最优策略 (同轨策略学习方式) ,因为这样我们会“谨小慎微”,不敢做出有创意的尝试;•之前的数据要被复用,而之前的数据也是在不同于当前策略的策略下产生的。

重要度采样比:修正“理解”的偏差

离轨策略 下,我们 不能使用“想当然”的迭代办法,因为这会造成数学理论上的偏差 ,最终得到不良的学习效果。在使用不同于当前策略的策略获取到的数据时,为了防止“理解”有偏差,我们需要用采样率公式修正。

如果你更喜欢严谨的数学推导,可以查看 Sutton 的《Reinforcement Learning: An Introduction Second Edition》[1]。但是说实话,我今年一月份第一次学习这部分时,不是很懂 off-policy 与重要度采样比这个概念。

如上,我在 CSDN 找到了我关于这部分的笔记[2],现在看来, 只是写到了效果,当时还是没有写到“为什么”。

后来学习了 李宏毅老师的深度学习课程 ,李老师略带着讲了一些强化学习:李老师连 MDP 这个基础假设都没介绍,但是其一些关于强化学习的观点却让我眼前一亮,尤其是 在介绍 PPO 前对采样率从分布角度上的介绍。

这里,我们仅从 数据采样 角度讨论采样率。

如上,简单的推导后,我们找到了 p 采样与 q 采样的联系,且可以通过 E_{x~q} 轻易地得到 E_{x~p} 。而那个分式,不就是我们的采样率嘛!

下面 从分布实例 具体解释一下。

图源:李宏毅老师课程录屏

如上,f(x) 的值在数据分布上用红线表示。我们可以看出:如果基于 p(x) 对 f(x) 进行采样,那最后得到的期望值应该是负值,因为 p(x) 总是倾向于在 f(x) 左侧采样(图中的蓝线,在左侧很高)。

但是,我们目前只能基于 q(x) 采样得到数据,而 q(x) 总是倾向于在 f(x) 右侧采样(图中的绿线,在右侧很高)。这就导致了采样到的 f(x) 数据都是正的。 如果不加采样率,我们会错误的认为: p(x) 下采样的 f(x) 期望是某个正值。

如何消除这种偏差呢? 足够多的采样+采样率公式

图源:李宏毅老师课程录屏

如上,当我们进行了足够多的采样后: 尽管 q(x) 下很小的概率在左侧获取数据,但一旦我们获取到,我们将通过采样率“很好地”对其进行利用。

如上图中左侧的绿点,因为 q(x) 在左侧值很小,而 p(x) 在左侧值很大,则根据采样率公式,我们给左侧的数据一个很大的权重,这样,我们便“修正了”偏差。在 足够的采样+采样率 的加持下,我们可以正确地估计出: p(x) 下采样的 f(x) 期望是某个负值。

我很重视我文章的正确性,有不同意见,欢迎给我发邮件: piperliu@qq.com[3] 。

后记:这篇文章原本的标题是如何理解强化学习中『离轨策略的采样率』?让我们做一个简单的推导,但后来成文时我灵光乍现: 离轨策略是从非最优中学习最优策略,这不正是从失败中学习成功经验嘛! 结合我朋友小拍的个人经历(有哪件事是我朋友一直在失败,但却一直在进步来着?) ...因此从强化学习的角度看,追过那么多女孩,四舍五入小拍也算谈过恋爱吧!不多说了兄弟姐妹们,点个再看再走吧~

引用链接

[1] 《Reinforcement Learning: An Introduction Second Edition》: http://incompleteideas.net/book/the-book-2nd.html [2] 我关于这部分的笔记: https://blog.csdn.net/weixin_42815609/article/details/104025586 [3] piperliu@qq.com: mailto:piperliu@qq.com

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-11-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Piper蛋窝 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 离轨策略:从失败与别人的经验中学习
  • 重要度采样比:修正“理解”的偏差
    • 引用链接
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档