P13:Lecture 13 - Fast Reinforcement Learning III - 大佬的迷弟的粉丝 - BV1Cc411h7QQ
所有的权利,我们要开始了,嗯,我想从一些关于物流的东西开始上课,也是为了解决广场上出现的一些问题,关于期中考试的成绩,嗯,有些人担心这对他们最后一堂课的成绩意味着什么。
回到过去比较期中考试的均值和分布是很有趣的,去年几乎一模一样,嗯,所以去年的平均值是百分之六十九,今年大约是71%,你会看到非常相似的分布,上面的那个是我们的或者知道下面的那个是我们的。
所以你可以看到这是2019,这是二八,所以看起来很相似的分布,嗯,我们不在课堂上做正式的曲线,如果有人超过90%,我一直在考虑,即使每个人都得到90%以上,这意味着这些人都足够了解这些材料,值得一个A。
然后如果我们真的有异常的分布有时我们会在下面弯曲,但只是为了给你一个感觉,嗯,去年,班上大约有42%的人得了a,所以对于那些关心你期中考试表现的人来说,关心你的期末成绩,是否还有可能在班上取得好成绩。
绝对是,所以说,那么我们对期中考试有什么问题吗?我知道我们收到了一些降级请求,我们正在尽快通过这些,任何,可能很好奇,但是有什么发行版吗,每个问题的cur,因为我觉得,比如说,对我来说。
我刚说完最后一个问题,我想知道我们是否有这些信息,我再和助教核实一下,我们没有理由不发布它,我想没有,嗯,我们在年级范围内给了我们所有问题的完整分布,所以我们可以释放很多人没有时间了,呃。
最后一道题绝对是最难的,所以这是我们看到最大变化的地方,所以这就是我们试图在标题上特别小心的地方,我们非常努力地确保,如果你在整个考试中都犯代数错误,那一文不值,我们专注于概念上的理解。
还有什么关于期中考试的问题吗?所以我只写下每个问题的分类,基本上当我们经历它的时候,我们试图研究任何方差很大的问题,然后再检查一遍以确保我们是公平的,哦,还有一件事,i是,我们将继续接受中期的降级请求。
到星期五,之后就会关闭,好的,那是期中考试,嗯,希望,这有助于平息班上一些人的担忧,我现在想提出的另一件事是小测验,小测验大约在两周后进行,不到两个星期,这是一种奇怪的格式,我们这样做是有原因的。
我认为在有大的期末项目的课堂上最大的紧张之一是,是要不要做一个大的期末项目和一个大的期末考试,我认为这对学生来说是一个很大的挑战,为什么期中考试后还要去上课?我你知道为什么,为什么你知道。
我们如何确保有理由了解这些材料,在课程的后半段,我们确实认为这是有价值的,尤其是经常报道最近更重要的话题,嗯,但如果不做一个高风险的大型考试,所以我和很多教学人员谈过,i,这里的教学中心叫VPTO。
我们想出的主意是做一个低赌注的测验,这个想法是很有趣,我从很多人那里听说这是真的,这就是它的设计,这个设计是,这将是一个两部分的测验,这是多项选择题,这一切都应该是关于,高层次的概念问题。
我们将发布去年的,所以大家可以看到一个例子,所以你的想法是把它分成两部分,你先单独做,大约需要4-5分钟,然后你会和随机的小组配对,你们要做一个联合测验,你的成绩就会组成,你的个人部分和你的团体部分。
但你只能在团队部分做得更好,所以如果你的团队做得更糟,那么你就会得到和你个人成绩一样的分数,所以我们这么做的原因是为了团队,那就是小考了,所以当你作为一个群体来决定答案时,你会刮掉答案。
关键是你应该能够清楚地说明为什么,你相信这些答案中的一些是真的还是假的,并说服你的同学,在这样做的过程中,这可能是一个非常有用的方式来思考,真正了解材料,也能听到其他人的观点,这就是最后一次测验的结果。
嗯,去年又来了,大家之前都有些担心,在广场上,人们很担心,有一些博弈论方面可以出现,嗯,我们精心设计了这个,所以它又是你成绩的一小部分,你只能在团队中做得比在个人身上做得更好,所以当我们这样做的时候。
它是经过仔细构建和经验的,有很多笑声,很多人似乎真的很喜欢这方面,我们考虑是否要在课堂的多个部分进行,但它是不同的,几乎没有人做过这样的考试,所以对此有什么问题吗,这大约是你成绩的百分之五。
我记得你之前说过,你们已经决定好队伍了,或者会决定,是啊,是啊,所以我们还没有决定问题是,团队是如何分配的,我们已经决定了吗?我们将通过随机分配来做到这一点,这也取决于,哪些SCPD学生在校园参加考试。
但我们会在几天前发布这个,你会被随机分配到一个团队,然后你就和那个团队坐在一起进行考试的那一部分,关于那件事你还有什么问题吗?我们将发布样品,它将涵盖整个课程,所以它的重量会更大。
从期中考试开始就发生了,但整个过程中的任何东西都将是游戏,这个想法是,那些在网上听课或看讲座的人,嗯,应该要为,你知道吗,在几个小时的时间里,然后为考试做好充分的准备,你还可以带一张备忘单。
就像你期中考试一样,在那里,还有什么问题吗,我觉得你可能提到过这个,但我只是不知道测验的哪一部分是个人的,与其他人,我们单独坐下来,然后在20分钟前和人们在一起,是呀,所以这个问题很好。
那么什么是个人团体的事情,所以这个想法是你进来,每个人都有考试,你在做那个考试吗?大概45分钟左右,你把它交上来,当你做完,然后当大家,当那个部分,课程结束了,大多数人很早就结束了,看情况。
然后你们作为一个小组得到一个新的考试,你做的考试和以前完全一样,但你们只需要共同商定答案,你把它刮下来,这样我们就可以看到它是多少,你要刮掉多少直到你得到正确的答案。
但本质上我们可以看看你是否在第一次得到了答案,或者花了不止一个,关于测验的其他问题吗,如果你对此有任何担忧,恰到好处,在广场上给我们发电子邮件,我只想简单地说一下,去年出现的问题之一是什么,嗯。
关注的是博弈论,所以你总是得到你的最高分和小组的最高分,所以人们说的很好,你应该做的是,你应该尽你所能回答,在你个人的部分,因为那是最值得的学分,然后在小组部分你应该,如果你在两个之间左右为难。
你应该让人们同意第二个答案,对冲你的赌注,你可以这样做,如果你想或尝试你或你的团队成员可以再次超过你,去年的团体部分约为5%,所以它很小,所以有这种可能性,你只会想这么做。
如果你真的在两个选择之间左右为难,嗯,一次又一次,只有一个正确答案,所以我认为我们在实践中观察到,几乎不需要对此进行博弈论分析,又不行了,我们总是欢迎听到人们如何解释这些事情,关于测验或物流的其他问题。
现在我们也是你们中大多数已经上交了项目里程碑的人,我们将在接下来的几天里给出反馈,对于那些没有执行默认操作的人,所有的权利,所以我之前把这个挂起来了,这是给所有以前没见过的人的,年级分布基本相同。
所以今天我们要做关于快速学习的最后一部分,嗯,这是一个非常大的话题,有大量的工作要做,嗯好吧,我们今天会多花点时间在上面,然后在星期一,切尔西·芬恩,谁是,呃,刚在伯克利完成博士学位。
她将在夏天加入这里的教职员工,我们会来谈谈元学习,这也是一个非常令人兴奋的领域,她会谈论强化学习的元学习,元学习与多任务或迁移学习任务有关,所以只是为了让我们对我们正在谈论的事情重新振作起来。
就这种快速学习而言,我们在考虑数据很重要的情况,所以像医疗保健、教育和顾客这样的事情,周一我在Pinterest上做了一个受邀演讲,他们肯定也关心这些类型的想法,嗯,我们一直在讨论两种不同的设置。
强盗与马尔可夫决策过程,以及正式理解算法是好还是快的框架,就它需要的数据量而言,我会在那里注意到,那个,在课程的这一部分,我们没有太多讨论计算复杂性,但也有类似的。
其中一些框架甚至可以很容易地扩展到讨论多项式样本复杂性,通常您可以将这些框架扩展到,还考虑了计算复杂性要求,好的,让我们继续研究马尔可夫决策过程,我们上次看到的是我们积累了关于土匪的专业知识。
到目前为止,我想了几个主要的方法,我们评估一个强盗算法是否好,以及实现这一目标的方法,所以我们谈到了数学上的遗憾,这就是我们能做得多好和我们做得多好之间的区别,《强盗》中的很多作品都集中在后悔上。
我们还讨论了两种不同的方法来实现低后悔,这是不确定性下的乐观,呃,然后是汤普森取样,所以试图成为贝叶斯,并明确地表示你认为可能发生的事情的后验,当你拉手臂或采取行动时,使用这种信息。
上次我们开始讨论马尔可夫决策过程,我认为非常相似的想法在这里很重要,但是这个问题在许多方面都更具挑战性,我们谈了一点,可能大致正确,所以我们特别讨论了一点基于模型的区间估计。
我提到的可能是一个大致正确的算法,所以只是为了提醒我们自己PAC是什么意思,你们中的一些人可能在机器学习中看到过这一点,所以可能。
可能近似正确的RL算法是一个给定输入epsilon和delta的算法,所以Epsilon会具体说明有多好,接近我们想要的最优,德尔塔会指定概率是多少,我们会希望这一切发生,嗯。
输入epsilon和delta为ON,它们是那个动作的q值,真正的最优Q值,大于或等于所有权利,唐娜是那个州最好的人选,至少一个减增量,今天我会对常数有一点松懈,有时这将是1-2三角洲。
有时前面可能会有一点恒定,有时前面可能会有一点恒定,我在这里放一个,所以你要记住这一点,那里可能有小常数,那些只是,他们可能是两四个,但重要的是,你非常接近最佳,除了可能有一个不变的因素。
其中n是多项式函数,状态空间的大小,操作空间的大小,gamma,一比一,呃,是呀,伟大,所以表情很好,这些是取决于Epsilon还是Delta,或者一个在epsilon上,或者一个在delta上,是呀。
在所有的表达中,他们最终会成为,一个在Epsilon上,一个在Delta上,所以你可以把这个和这个一样写,因为本质上n会更大,如果你想更准确,所以随着Epsilon变小,这将是。
你需要更多的数据才能更准确,如果你想更确定你会是准确的,你也要扩大三角洲的规模,我只想在我们继续之前,我想简单地对比一下遗憾,因为在强盗的背景下,我们大多想到后悔,但想想打包和后悔有什么区别是很好的。
尤其是在线学习,意思是,就像我们的算法在MDP中在线学习一样,它永远在学习,嗯,这就是后悔告诉你的,所以后悔是说后面足够大,你能看出后悔吗,好的,所以我们遗憾的是,假设我们从一个状态开始,It’零度。
后悔是说如果你从那时起做了最好的事情怎么办,就像你的生活会有多棒,所以如果你赢了,你知道吗,第一次涂色比赛,那你就可以去哈佛了,让你进入最高法院,喜欢它的神话般的,但如果你没有参加那个涂色比赛。
你却来到这里,所以你可以在那里得到一个加10,但你却得了零分,你去了一个不同的州,就MDP而言,你去了一个不同的州,现在你不是那个赢得涂色比赛的人,所以你知道你的人生轨迹被不可逆转地毁了。
在这种情况下评判你的标准不仅仅是动作,但是状态分布,你本可以在最优策略下,所以你总是被评判,我能到什么,如果从一开始我就做出了最佳的决定,我总是去参加那个涂色比赛,我总是去哈佛,你知道我从没去过斯坦福。
你上了最高法院,一旦你做出不同的决定,您可能最终处于不同的状态分布,但你要看看这些缝隙,所以你将根据你最终所在的州的分布来判断,你在那里得到的奖励与州分配的比较,你会在最佳政策下进入。
你在那里得到的回报,所以后悔在某些方面是一个相当苛刻的标准,因为它在说,你总是要被评判,就像,如果你做出了最佳的决定,永远,包装在某些方面要合理得多,Pake说我在国家分配下评判你,在你的算法下。
因为它说它会采取接近,最适合你所处的状态,那么PAC怎么说,PAC说,好的,你从这里开始,你没有参加涂色比赛,你去了那里,好的,那太糟糕了,考虑到你本可以,那你就知道,我不知道,参加下一次涂色比赛。
或者你没有,我将根据当地的差距来判断,我将永远只根据我的最优程度来判断,给定我在算法下得到的状态分布,所以包可以给有更小的遗憾或抱歉,小得多的那种,嗯,因为想象一下你有一个非常严厉的MDP。
你必须做出正确的第一步,然后你去了一个奇妙的地方,否则你总是在这个可怕的网格世界里辛劳,所以在这种情况下,如果你真的做出了正确的第一选择,后悔会把你比作,而PAC会说好,也许你做了一个糟糕的第一选择。
但就像你在为你所处的位置做最好的事情一样,你已经接近最佳状态了,考虑到这个糟糕的状态空间,你最终陷入了,所以在某些方面,你可以把包装看作是一种制造,你陷入的大多数情况,而遗憾总是从。
如果你从一开始就做出好的决定,那是个问题,是啊,是啊,每个人都请提醒我你们的名字,我知道我很努力,但我有时会忘记,是啊,是啊,所以TPS很好的问题,问题是,这是否扩展到插曲MDPS,嗯。
所以对DPS的一个比喻,只是为了回忆,那些是MDPS,其中我们为h步或有限步行动,然后我们在插曲MDPS中重置,后悔和打包更近了,因为通常情况下,这群人保证我们得到,那样的话,今天我不打算谈太多这些。
但将是关于起始状态,所以你会把v星看成零,相对于s的0的q星,你正在采取的行动,或者你遵循的政策,所以在这种情况下,他们开始更接近,因为你总是从开始的状态就被评判,你可以重置,但在网上。
比如强化学习的持续学习,它们可能会有很大的不同,因为状态分布可能是如此不同,是啊,是啊,你能再解释一下C1和C2是从哪里来的吗,因为我不认为他们是,如给定参数,哦是的。
我只是问了一些关于c1和c2的问题,我只是,我今天对常数很放松,大多数这种类型的后悔保证都是关于数量级的,就像n是s到6的函数,还是S对四的函数,我们通常不太担心常数,所以我把这些放在那里是想说。
一些不同的理论界在那里会有不同的常数,但今天我们要忽略这些,但为了让你知道那里可能有常数,这可能是一减二的德尔塔,比如说,而不是一减三角形,所有的权利,所以这是后悔和打包的区别之一,让我们回到这个算法。
现在我将突出显示,今天晚些时候我们会讲一下泛化,但我想经历一个,我们如何开始思考一个算法是否是PAC,我告诉过你这个算法是PAC,嗯,但我想谈谈为什么它被打包了,有没有一般类型的模板,我们可以用来展示。
一个算法是PA,我现在要讲的所有东西都涉及到表格设置,在那里我们可以把值函数写成表,稍后我们将讨论这些想法是如何扩展的,我们特别选择了这个算法,这就是所谓的奖励奖金算法。
所以我们这里有一个很好的小奖励奖金,因为现在扩展到模型自由情况会更容易,当我们看B的时候,我想强调的一件事是,如果我们回去刷新我们对此的记忆,我们要做的是计算最大似然估计。
或者也就是把经验估计的计数相加和除以,每个状态动作对的转换模型和奖励模型,所以我们看看我们在一个状态动作对中有多少次,我们过渡到哪个下一个状态,我们用它来建立一个经验模型,我们对奖励结构也做同样的事情。
然后我们想知道如何行动,我们采用那些经验模型,你可以想到这个运算符,好像我们在稍微改变我们的奖励模式,所以我把它放在这里作为经验奖励,加上这个奖金,你也可以把这看作是一个r hat素数。
相当于我们SA的帽子,加上这个奖金条款,所以你可以把这看作是定义一个新的MDP,有一个新的mdp,其中过渡模型是t hat,奖励模型是r hat Prime,也就是经验奖励加上这个奖金条款。
这不是真正的MDP,但那是一个MDP,我们可以求解并试着计算,这就是我们正在做的,在这里,我们构造了这种乐观的MDP,我们使用经验转换模型,然后我们使用一个奖励模型,它有很大的奖金,在我们不常去的地方。
我们很快就会看到关键的一点是,有多乐观,有大量的工作在做,试图让事情或多或少乐观,如果我们有时间,我将给你们看一些有关这个领域最近进展的其他幻灯片,好的,所以我们之前说过这个光束包,现在让我们来谈谈。
使某物包装的充分条件是什么,那么e b如何满足这些条件,所以我要讲的条件基本上是从这篇论文中推导出来的,稍加修改,那张纸没有,我就写在这里,不分析,m b,i,e,e,b,所以事情必须有点不同。
但从3万英尺的角度来看,这基本上是一个合理的方式来思考为什么,i,e,MIE B是一个包算法吗。
把这个插上,在黑板上这样做,因为我认为一次看到所有的东西是有帮助的,好的,那么什么是使某物包装的充分条件呢,我知道我发现这篇论文很有帮助,当我开始做包装校样在我的博士学位,那么什么是足够的,包装条件。
理论很美,但即使对那些对理论不感兴趣的人来说,我想看这个很有帮助,因为它给人一种直觉,关于您的算法需要具有哪些类型的属性才能高效,或者什么类型的属性足以使您的算法高效,好的,所以第一个又是乐观。
这不是唯一一套足够的条件,足够包装的东西,但这里有一套,所以这里有乐观,好的,乐观只是说计算出的价值使用,好的,所以这是为了这个是S T,这是一个T,所以这是我们计算的实际值,就像从VIE B。
我们计算的乐观值,所以这是你的算法的计算值,必须大于,或等于该状态作用对的真最佳值减去Epsilon,在所有的时间步上,所以它说每当我们做计算的时候,当我们采用我们的经验模型时,我们加上奖励奖金。
我们得挑一个奖励奖金,因此,无论我们为结果状态动作对计算什么,都是乐观的,减去所有时间步上的一些epsilon,所有这些都只需要在很高的概率下保持,但我会这样写出来,所以这是第一个条件。
第二个条件稍微微妙一点,但我稍后会说更多关于这方面的具体情况,所以第二件事是所谓的准确性,我先把准确度写下来,所以第一件事是你需要对所有的时间步骤保持乐观,第二件事是你需要准确,这意味着V T,这又是。
算法计算的是什么,你的算法会计算这个,这是我用你的乐观模型计算的需要是负的,一个奇怪的MDP的V pi t,我要告诉你那个奇怪的MDP是怎么回事,一秒钟,不是MDP,我只是说这是很好的乐观的MDP。
它不是真正的MDP,它是一个MDP,这有点在那些中间,RL中经常出现这种技巧,我们在那里建造了你见过的,可能在现在的几个证明中,在那里我们加减相同的项,介于两者之间,假设两个不同的马尔可夫决策过程。
我们要在这里玩一个类似的把戏,我们要构建一个MDP,这一半是乐观的,一半是像真正的MDP,这在现实世界中是不存在的,我们只是要把它作为我们分析的工具,所以我很快就会说这是什么,有不同的方法来定义这一点。
但它说一些与,你乐观的MDP和真正的MDP,你的价值,所以这是你实际执行的策略,步骤t计算的值必须接近,这种奇怪的混合MDP,在Epsilon内部,所以它必须离另一个MDP很近,而这样做的原因是。
这是我们将能够使用这个,试图约束我们离真正的MDP有多远,我们为什么需要这个,我们需要这个,因为乐观很容易坚持,只是把我们的价值观定得超高,从不更新,所以那很好,但你需要能够使用你所拥有的信息。
所以最终你会表现得接近最佳,所以如果事情真的很糟糕,你不想永远保持乐观,所以精度条件会说,如果我们有足够的关于一些状态动作对的信息,我们对其中一些的价值需要相当接近真实的价值,然后第三件事。
学习复杂度是有限的,好的,它有两个部分,这表示更新的总数,共计,所以在B中,我们将更新我们的状态操作值,我们会重新运行那种乐观的Q值迭代,我们这样做的总次数是有界的,次数也是如此。
我们拜访了一对不知名的夫妇,状态动作对,我会说更多那是什么,一秒钟,所以我们要对所有状态作用对进行分类,我们在表格设置中,所以我们这样做是合理的,我们最终会把每一个状态动作对分类为,已知或未知。
我们要说,我们访问未知状态动作对的总次数,这两个都必须是有界的,是ε和δ的函数,因此,这意味着您不能进行无限次队列更新,你不能无限次地访问未知状态动作对,就像你的算法,不能,这些是算法上的条件。
所以如果你能满足所有这些,那么你的算法是一个包,所以如果有一个,你就是爱普西隆,埃普西隆目,最优,但我会把这个写在这里,就这样,你可以感觉到这些类型的边界是什么样子的,在除N以外的所有人身上。
等于命令这个警报,这种有界样本复杂度除以Epsilon次数,一负伽马,平方乘以,一些日志术语,所以本质上这是说,如果你能乐观,对于一些奇怪的MDP来说是准确的,我还没告诉你,如果队列更新的总数。
以及访问未知状态操作对的次数,这是我经常没有告诉你的,我们如何定义如果它是有界的,那你就要打包了,你会在所有的时间步上接近最佳,除了一个作为此函数缩放的数字,这通常也是状态空间和作用空间大小的函数。
这也是,和Epsilon和一个减去Delta,所以这是一个模板,所以如果你能证明你的算法满足这些属性,然后你就可以证明它是体育,首先我们要证明的是贝埃布很乐观,是啊,是啊,问题,所以第一个问题是。
对于三个部分,第一部分和第二部分,它们都有相同的界限只是两个不同的界限,询问,你是说,那里的Epsilon,电脑啊好问题,所以第三部分是Q更新的总数,我们访问状态操作对的次数,嗯。
他们将是非常密切的关系,基本上,无论何时访问状态操作对,然后可以进行队列更新,我想做得更好,听起来是一样的,是呀,是啊,是啊,好问题,所以这就是我以为你在第一和第二问,问题是Epsilon,同样的是。
他们是一样的epsilon是一样的通过一个,二和三,所以如果你在设计你的算法,一、二、三都必须是相同的常数,可能没关系,可以,你知道的,做一只老鼠,在其中一些情况下。
你可以在epsilon前面有一个常数,一个人只需要小心一点,所以在这里,我们就把它们像同样的epsilon一样放在任何地方,好的,所以让我们先谈谈为什么,我E B很乐观,嗯,我们能把这个挂起来吗。
拜托了,我想那样会更好,所以我要重新公布nvie的奖金条款,这样你就可以看到那是什么样子,好的,所以我想这将在一秒钟内上升,然后提醒我们基勒的更新是为了什么,所以我们在B中所做的是,我们有一对州行动对。
我们对国家行动对有经验奖励,加上我们的奖金贝塔除以国安局的平方根,后面不要太小,还是可以,好的,好的,伟大的嗯,我看到至少有一个人在点头,所以这是我们乐观的奖励,你可以把这个叫做R tilde。
这是我们乐观的回报,加和除以s质数,这是我们的经验过渡模型,s质数给定s最大值在s质数的q波浪数的质数上,素数,所以这将是一个备份,我们可以这样做,这就像一个行李员备份。
我们乐观的奖励奖金只是为了提醒自己,β{\displaystyle\beta}将被定义为1/1-γ{\displaystyle 1/1-\gamma},半对数到s a m的平方根除以delta。
在这种情况下,我们想要展示的,我们不必考虑已知或未知的状态作用对,然而我们想表明这个值,当我们计算,它是真Q星的上界,直到Epsilon,所以我们希望能够展示第一个乐观的条件,我们现在想争论的是什么。
测试版足够大作为奖励,当我们做这个手术的时候,我们会很乐观,所以让我们穿过这里,那么我们如何证明,让我们考虑一个特定的状态动作对,所以让我们考虑一个状态动作对,所以是一个,让我们想想,我们参观了它几次。
小于,所以在我们的算法中,我们只会更新我们的经验估计,直到我们有M个样本,帽子和T,之后呢,我们要扔掉我们的数据,这就像说第一次你访问这个特定的状态动作对,你可以用这些数据来计算一个经验模型。
用它来计算一个经验模型,在你有M计数之前,但之后你就再也不更新了,我就放一个旁注在里面,也就是,嗯,你可能会想为什么,我们为什么要这样做,特别是,呃,对整个机器学习领域有一个非常可爱的描述,作者:
汤姆·米切尔,他是机器学习的真正创始人之一,他在那里争论,机器学习的整个学科,重点是看看代理如何学习的基础,我们设计的算法随着更多的数据而不断改进,这在某种程度上违反了这一点,因为这是说。
即使你得到10万亿个状态作用对的例子,这肯定会让你的实证模型更好,我们要把所有的数据都扔掉,只是为了让你了解我们为什么这么做,或者为什么早期的分析会这样做,我们在大概率范围内这样做。
这个想法是大概率界限会起作用,就像我们看到的强盗们做出了某种自信的上限,和一种保证,我们的估计说过渡模型接近真实值,这些界限都很有可能成立,所以这里有谁在不同的事情上看到了联盟的界限,好的,几个人。
但大多数人,不是这样的联盟界限,是一种确保如果你有许多不同的事件,所有这些都很有可能成立,这些事件的总和都有很大的可能性,这就是为什么这里我们只使用有限数量的数据,从理智上讲,这是完全不令人满意的。
因为您显然应该能够使用更多的数据,您的算法应该在使用更多数据时做得更好,根据经验,我们使用所有的数据,嗯,在过去的几年里,我觉得有一件事很令人满意,是为了拉蒂莫尔,谁结束了。
他是我们推荐的强盗书的作者之一,嗯,我们展示了您可以删除此限制,你不能永远继续使用数据,通过使用比联合边界更聪明的东西,但不管怎样,今天我们要,我们要这么做,所以我们只能用最多的样品。
让我们考虑s a的n小于,或等于m,好的,所以我们有多达M个样本,但总的来说,你知道它可能是一个,它可能是某个小于m的数字,这是一个我们还没有指定的常数,所以我们要看的是这个状态动作对。
我们要看看州行动对的所有经历,i加上s i的γv星,这应该很像什么,我们的目标,TD学习嗯,这是说我们第n次得到的奖励,我们取样了S和A,以及我们在第n次到达的下一个州,我们取样了,所以这是我去一个。
这是旁边的下一个状态,对,所以我们可以定义这个,所以你可以想到,每一个都会有一个对真实的期望,S A的Q星,因为我刚刚定义了这个,我们不必知道V星是对的,现在我们只是在分析这些样本会发生什么。
所以如果我们把我们的样本定义为真正的奖励,我们看到,我们平均看到的真正的下一个州,这真的只是S A的Q星,所以如果这是S的Q星,我们可以考虑我们需要多少样品,直到我们有一个很好的近似Q星s a。
或者我们的平均水平能比平均水平高出多远,x大小与q星的实际经验平均值,我们可以使用停机位或其他类型的偏差边界来做到这一点,有点像我们看到的强盗,所以对于土匪我们看了一下如果你有超过奖励的分配。
如果你有有限数量的样本,离真正的平均回报还有多远,同样,在这里我们要说,如果下一个状态的样本有限,收到的奖励我们离真正的Q星还有多远,在这种情况下,这里有一些技术细节,因为一个人必须小心一点,事实上。
我们收集的数据取决于历史,所以从这个意义上说,这也是马尔可夫决策过程中更具挑战性的事情之一,或者特别是马尔可夫决策过程,因为你收集的数据取决于你的算法,所以你会得到更多的州行动对样本,你认为会很好。
你认为你会变坏的状态动作对的样本更少,所以有耦合,数据不是真的,嗯,在整个分布中,但有时取决于我们为状态动作对取样的事实,下一个状态和奖励,或身份证,因为它是马尔科夫,所以我只是想说。
我们在这里要小心一点,但我们基本上可以用主机之类的东西来说明,s a/n的q星,It’s a sum over i,我就是我们在上面定义的,大于或等于NSA平方根的概率,小于等于指数-2的平方。
1-伽马平方,这是使用像停机位或类似类型的偏差不等式,你也可以使用那些依赖于鞅的,以前见过一些,不管,这基本上让我们可以说,当你为这个特定的状态动作对获得越来越多的样本时,你离最佳状态还有多远。
如果你知道B星,现在,我们知道什么是贝塔,我把它放在那里,所以如果我们把贝塔插入这里,所以如果你把beta代入beta n的实际值,你懂的,这将等于delta,被状态空间的两边分割,动作空间的大小,m。
所以它只是说,当你有更多的样本时,这个数字很有可能,你远离真正的Q星的概率很小,所有权利,所以我们可以把这个结果代入,我们可以说这意味着如果我们看看联盟,穿过这口井,我再写一件事。
如果你说1除以n等于和除以,那是什么,这实际上只是我们在上面的等式,所以它很像,这是你的经验回报,That’几乎就是那个等式,除了你这里有V星,所以这看起来应该和那个Q蒂尔德很相似,在上面。
我们使用经验奖励,在经验的转变中,不同的是这里我们用的是Q星,在上面我们用Q蒂尔德,所有的权利,这意味着如果你有很多样本,然后你可以绑定我们正在做的事情之间的差异,这个东西和Q星。
所以让我们来做我们的帽子,s,a,plus,gamma,and,over,s,prime,Transition,经验跃迁模型s a s素数减去q星的v星,s a大于或等于-beta除以平方根和申论。
这将适用于所有的T和A,对呀,所以我们用了停顿,现在我们可以把经验奖励联系起来,经验过渡模型,如果有人给了我们Q星的最优Q,现在我们要做的是把这个和,我们是这里的等式,所以我就,对呀。
这是一个这样的方程,上面的一个是我们在B中实际做的,我们一遍又一遍地这样做,直到它收敛,所以我们采用我们的经验过渡模型,我们采用我们的实证奖励模型,我们加上这个奖金,我们做价值迭代,直到我们收敛。
我们现在要做的是比较这个数量,与Q星的关系,我们想证明上面的数量会大于,或等于Q星,所以我们要通过归纳法来做到这一点,我想我会,大家可以看到,所以证明是通过归纳法,所以我们要做的是我们要得到Q蒂尔德。
s a的i是值迭代的第i次迭代,所以这是使用方程一,一级方程式在上面,我们让i的v{\displaystyle v}等于一个值,“如果我们采取最大的行动,每个状态和动作对都可以,我们要假设的是。
我们乐观地初始化,我们将初始化一个,等于1/1减去伽马,从定义上来说,它比Q星大,至少和Q星一样好,这就是我们的基本情况,再次,那是什么我们要做什么,我们试图在这里对B表示乐观,我们想说。
如果我们用AB做这个手术,我们会很乐观,我们要用归纳法做一个证明,这是基本情况,所以我们开始,我们乐观地初始化我们的Q蒂尔德,现在我们假设这成立,所以我们要假设,就要,我们假设s a的q i大于等于q。
上一个时间步的S a星,好的,所以我们会有一些好的,所以让我们写出什么,气加一等于q波,i加1等于,将等于我们的经验奖励,加伽马和除以S素数或经验跃迁模型,s质数加贝塔除以平方根n s a。
那和方程一一样,所以现在我们要说这个,根据定义,将大于,或者等于s a加γ和除以s素数的r,我们的经验跃迁模型乘以真V星,因为这是我们的归纳推理假设,我们假设这保持在前一个时间点。
好的加贝塔除以平方根NSA,这是通过归纳假设,我们假设我们知道我们有一个基本情况,我们将假设这在上一次迭代中保持不变,然后我们需要的最后一部分是如果我们把这一部分,我们看这一部分和这一部分,好的。
所以如果你重新排列这个方程,然后你可以看到s a的r加上所有这些东西都大于,或等于S a正负β的Q星,这意味着如果我们把后面的东西换成,我们可以说这等于q星的平方根上的负β,一篇文章加贝塔平方。
一篇短文,她叫Q星,所以现在我们表现出了乐观,所以在这种情况下,关键的想法是说我们知道我们正在得到,我们将把这与会发生的事情联系起来,如果我们有真正的Q星,我们会证明。
如果我们在下一个时间步骤中知道真正的Q星,然后再往上走一步,我们可以绑多远,就我们的功能而言,我们将来自Q星,然后我们可以做一个归纳炒作,归纳证明,来表明如果我们在前一个时间步上是乐观的。
我们总是可以确保在一开始就举行,因为我们使用了乐观初始化,那么我们将继续对所有的,得到的Q Q帽子Q星,所以这证明了乐观,我对那个证据有任何疑问,这就是乐观的证明,另一个关键部位。
其他部分我就不说得那么详细了,但我会在高层简短地谈论它,另一个真正重要的部分是准确性,我是说有界,3。我会把这件事保持下去,以防不时之需,一个来写,准确性真的很重要,嗯。
你最终会变得准确的事实是很重要的,所以这部分的直觉是,嗯,你可以想定义,一对不同的夫妇,你可以把事物定义为已知或未知,想让我继续这样,还是大家都写完了,喜欢的请举手,所以在很多呃。
有限状态和动作对的打包证明,有麻木的概念,那么这意味着什么呢,已知状态,动作对,直觉上已知的状态作用对将是对,我们有足够的数据,他们的估计模型接近真实模型。
所以这里的直觉,s a的t帽s质数给定s a,如此直观,如果您获得越来越多的特定状态操作对的数据,我们知道从停下来,等你估计的均值会收敛到真实均值,你的转换模型也会收敛到真正的转换模型。
我们在这里做的是,我们在沙地上划清界限,我们在说什么时候,我们什么时候有足够的数据来进行状态操作对,我们对我们的经验估计感到满意,在那里我们可以约束我们的经验估计与真实模型有多接近,如果事情足够接近。
那么我们就知道使用这些可以让我们计算出一个近乎最优的策略,所以如果一切都知道了,如果所有的文章对都知道,那么我们就可以证明,在你的经验模型下,圆周率星的v,我把它叫做帽子,这就像你的经验模型,负Vπ星。
我会把这个放在你的经验模型下,真实模型视图,嗯,这是有界的,我把所有的细节都过了一遍,所以你在期中考试中看到了一点,这通常被称为模拟引理,如果事情很接近,就像如果你的模特很亲密。
您的转换模型接近真正的转换模型,你的奖励模型接近真正的奖励模型,那么如果你用这些来计算一个值函数,你的值函数也很接近,这是一个非常酷的想法,它基本上是在说,你可以把你的经验模型中的错误传播到。
在值函数中得到的错误,你在政策中得到的错误,所以你可以传播错误,你可以去宣传道具,所以这是一个非常好的主意,你可以说,如果你有很好的预测误差,那么您最终可能会出现小的控制错误。
已知的状态作用对只是提供了一种量化的方法,你知不知道,你需要达到什么水平才能足够好,你需要的足够好将取决于,你想要的Epsilon是什么,所以一个非常重要的想法是思考这些已知的状态作用对。
以及它们允许我们在定义一些替代的MDPS方面做什么,所以在这种情况下,我会抹去这个,只是让你知道,所以你知道证明的一些部分,嗯会往前走,我就不一一细说了,但我很高兴谈论这件事,离线。
我们可以定义另外两种MDPS,我们可以称一个等于,它是一个MDP,所以它的转变和它的奖励动态,它的动力和奖励模式与真实的,所以这些是我们开始定义这些有点奇怪的MDPS的地方。
所以这是一个不完全是我们梅蒂尔德模型的模型,我们在方程中用来做的,我们有这样的奖励和奖金,加上我们的经验过渡模型,它不完全是真正的模型,它在说已知的事情,我们将再次使用现实世界的模型。
我们不知道这些是什么,这些只是分析工具,然后在未知的状态动作对上,我们将使用这个乐观模型定义一个MDP,这很有用的原因是,我们最终可以用它来帮助找出,我们的MDP与真正的MDP有什么关系。
在已知的状态动作对上,这是我们最终使用的一个MDP,然后另一个是相似的,也就是m帽素数,这是一个等于M帽的MDP,所以这只是,在K上,在所有其他方面都等于梅蒂尔德,所以在已知的集合上。
所以这是一个MDP,对于已知的集合,我们使用我们的经验估计,不真实的真实作为不真实的模型,然后我们在所有其他的上面使用m tilde,所以我们的想法是我们可以使用这些不同形式的MDPS。
我们可以量化我们通过计算得到的值有多远,用我们的Q蒂尔德对其他这些的值,我们可以用它来,基本上,做一系列的不等式,关联我们通过执行策略获得的值,相对于我们在现实世界中得到的价值和最优策略。
所以这些是让我们帮助证明准确性的工具,在状态作用对上,我们知道的是m hat和m tora,我的帽子是什么,以下是经验估计,如,如果你只使用奖励的计数和计数,过渡模式,M tilde是经验估计加上奖金。
所以过渡模型和这两种情况是相同的,但这一个会有奖励奖金,如此直观,这让我们可以帮助量化准确性,嗯,最后一件事,我想我只想简短地提一下,这些类型的证明是如何工作的,我们需要这种有限的学习复杂性。
我们需要确保我们不会不断更新我们的Q函数,我们不会不断地遇到未知的状态动作对,所以最后一部分是,你知道,我们怎么证明三个,它是有界的,和,对此的直觉有点像,乐观主义的普遍直觉,所以乐观的直觉是说。
如果你认为这个世界很棒,要么这个世界很棒,在这种情况下,你对PAC的后悔率很低,这意味着如果你假设这个世界很棒,它真的很棒,那就像不犯错误一样,这就像挑选真正的,你选择的动作是好的。
这样你就不会遭受比Epsilon更糟糕的决定,然后我们想说,你不犯错误的时代,或者你犯错的地方,你选择了一个糟糕的动作,小于ε闭有界,这就是为什么,这里的关键思想是鸽子洞原理,所以这个想法是。
如果你想到你自己,不必有偶发的MDPS,但如果你有,嗯,你可以考虑把你的经验流分成几集,在每一集里,你可以想一想,很可能你会遇到一个未知的状态动作对,所以你考虑我们到达未知状态作用对的概率是多少。
记住一个未知的状态动作对,这里有一个我们没有像这样的好模型,我们只去过一次,那么有什么问题呢,我们将在T步到达一个未知的状态动作对,所以在这种情况下,我们可以展示的是,如果这很低,这个很小,小。
如果概率很小,我们正在接近准确,我们正接近最佳状态,所以如果可能性很小,你会到达任何未知的地方,我们可以证明在已知的状态作用对上,你已经接近最佳状态了,所以如果你不太可能到达任何你有坏模型的地方。
你将接近最佳,如果它很大,这种事不会发生太多次,所以如果它很大,你就去参观它,不会发生太多次,因为如果这个很大,这意味着你真的很可能到达一个未知的状态动作对,记得我说过,对于每一个州行动对。
你最多只更新了M次,所以根据鸽子洞原理,这种概率不能持续太久,本质上,你会有一个函数,就像状态的数量,动作的数量和m比那个大,但这是说你需要能够访问每个状态操作对,这样我们就结束了,时代的束缚在这里。
我们会犯错误,我们可能会到达未知的东西,我们可能需要更多的步骤,一路上我们可能会做出一些糟糕的决定,但本质上,对于每个状态动作对的m步,事情只能是未知的,这意味着我们在这里的概率必须是有界的。
所以最终一切都必须被知道,或者你必须表现得接近最佳,这让我们可以证明东西有一个东西是打包的,它已经结界了,我们会做出有限数量的错误决定,所以要么我们不会到达国家行动空间的任何部分,这是未知的。
所以我们所能到达的一切,我们有他们的好模型,我们正在利用它们做出好的决定,或者我们正在到达的东西,在这种情况下,我们得到的信息,因为我们对生活有了新的观察,在那个状态动作对中,我们只能得到一些东西。
在我们得到M计数之前,这些东西只能继续是未知的,你介意把那东西再放下吗?这给了我们一个关于电动汽车为什么是包的概述,以及为什么,你做的很多证明都是打包的,我认为这其中的关键思想真的是,乐观和准确的概念。
和取得进步的能力,不被卡住的能力,总是通过以足够快的速度减小这些置信区间来游荡,好的,所以现在让我们回到忙碌中,所以这就结束了,一段时间的MVP部分,最近在这一领域有许多令人兴奋的工作。
我想让我看看我能不能很快地把这个提起来,嗯,这是一个演示文稿,关于我们共同的一些工作,只是为了突出这里,嗯,在包装和遗憾分析方面,在获得更好的方法方面取得了很大进展,嗯,所以在过去的几年里,嗯。
我的研究生的手段,其他一些非常好的团体在这方面做了很多工作,我们现在也在努力进行分析,这取决于问题,这意味着如果算法有更多的结构,那么我们应该需要更少的数据来学习做出好的决定,所以现在让我们做贝叶斯。
看看贝叶斯如何帮助我们,所以我们看到了贝叶斯强盗和贝叶斯强盗,我们说过,我们假设我们有一些参数知识,关于奖励是如何分配的,所以我们要考虑奖励的后验分布,我们将用它来指导探索。
我们特别讨论了概率匹配的概念,也就是说,我们希望选择具有最优概率的动作,事实证明,汤普森采样让我们做到了这一点,所以在这种方法中,如果我们有共轭前科就很有帮助了,这使得我们能够分析计算。
手臂奖励上的后部,根据我们观察到的数据,和我们之前关于那只手臂不同奖励的概率的先验,所以我们看到了一个例子,伯努利,这意味着奖励只是零一,和贝塔分布,贝塔分布是一个我们可以认为阿尔法是计数的分布。
我们看到加一的次数,贝塔是我们看到手臂为零的次数,当我们观察到其中一个或任何一个结果时,然后我们只需更新我们的测试版,所以这让我们可以定义汤普森为强盗取样,就是这个算法,我们说在每一个时间步骤。
我们首先为每个不同的手臂取样一个特定的奖励,然后我们可以尝试奖励分配,我们计算对这些奖励分配的期望,我们采取相应的行动,所以我们在脚趾的例子中看到了这个,我们看到我们会尝试不同的奖励,然后用这些来行动。
至少在那个例子中,我们看到我们开发的速度比我们看到的要快得多,采用上置信限方法,所以在MDPS的情况下也可以做类似的事情,所以现在对于基于RL的模型来说是贝叶斯的,我们将在MDP模型上进行分布。
所以这里有什么不同,这意味着我们将有两个过渡,和奖励,所以我们要得到的奖励应该看起来很像强盗,所以奖励和土匪很相似,你也可以使用测试版,如果你的奖励分配是零一,你也可以用贝塔斯和伯努利斯。
所以这和土匪很像,T有点不同,我们不打算过多讨论您可以使用的不同发行版,但是,比如说,如果我们在表格域中,不可能是多项式,多项式的共轭先验是一个适当的,共轭,所以如果你想你的转换模型是多项式的。
这是所有其他状态和动作的概率,那么共轭先验是derlay,它有一个非常好的直觉,嗯,类似于beta中的beta的描述,你可以把这看作是你观察到的次数,一或零,如果你看一个德利。
你可以把这看作是你到达下一个州的次数,所以是一是二是三是四,所以说,Derschley分布将由向量参数化,对于每个州中的一个,再一次我们可以用这种后部来更新它让我们可以进行探索,所以在这种情况下。
我们将从后部取样,然后解决它,所以如果我们看看算法是什么样子的,它看起来很像汤普森为强盗取样,除了现在我们要开始,我们必须定义一个优先于动态和奖励模型,对于每一个状态动作对,请注意,这是表格。
我们假设我们有一个有限的S和一个,所以我们可以把这个写下来,我们可以写下我们的,我们对每一个状态动作对都有一个分布,对于动态和奖励模型,然后发生的事情是,你从这些分布中取样一个mdp。
所以对于每一个状态动作对,你对一个动态模型和一个奖励模型进行了采样,现在你有了一个MDP,所以一旦你有了MDP,你为它计算最佳值,所以这显然比我们对强盗的计算更密集,但这肯定是一件合理的事情。
然后你对你拥有的Q星采取最佳行动,对于采样的MDP,所以这被称为MDPS的汤普森采样,它还实现了概率匹配,根据经验,它通常可以做得很好,就像汤普森采样在土匪中做得很好一样,所以我想这可能就是我要说的。
MDPS的汤普森采样,在这方面有许多不同的作品,只是为了强调一些在这方面做得很好的人,来自斯坦福·本·范,罗伊·罗伊的团队在这方面做了很多工作,有时他们称之为后验采样,所以人们喜欢他以前的一些学生。
就像丹·卢梭和伊恩·奥斯本,伊恩现在在DeepMind,丹卢梭现在在纽约大学,他们在这些类型的空间里做了一些非常好的工作,把这个像人一样推广到颠簸,是呀,大问题。
所以问题是我们是否可以将其推广到非表格DPS,是呀,我一会儿再谈这个,但有点差,但是是的,这就是目标,任何人都有关于有限状态和动作场景的其他问题,现在我们来谈谈泛化,所有的权利,所以说,当然啦。
我刚才说的都是关于有限状态和作用空间的,这不是很令人满意,因为如果我们考虑这些类型的边界,嗯,我说这是状态和作用空间大小的多项式,如果s是无限的呢,所以我们可以犯无限多的错误,这似乎有点不幸,嗯。
所以不清楚这个最初的呃,框架是,都有帮助吗,当您的状态空间无限或非常大时,就像像素的空间,所以即使这个框架真的很好,呃,我们希望能够将这些类型的想法推广开来,但我们想知道如何。
如何以一种现在可以实用的方式使用它们,当我们开始,所以说,这是目前研究非常活跃的领域,在过去的几年里,对此有很多不同的想法,我想强调的是,在理论方面,我们还有很长的路要走,当我们谈到一些函数逼近时。
甚至只是函数逼近和做控制,比如非策略控制,比如Q学习,我们说过,那个,我们没有很好的渐近保证,对于一些基本的算法,所以如果我们甚至没有很好的渐近保证,我们不太可能有真正好的有限。
这些通常被称为有限样本保证,因为他们保证,你要犯的错误的数量是有限的,所以我们的理论相对较少,在这种情况下,这是我的团队正在努力的事情,还有其他几个小组也在积极研究这个问题,但仍有许多工作要做。
但最近有一些非常好的实证结果,所以让我们先想想概括和乐观,喜欢不确定性下的乐观,我们现在在一个非常非常大的状态空间中,所以让我们想想如果所有东西都非常大,可能需要修改什么,如果我们回到这个算法。
首先我们有这个,这些计数,我们正在跟踪每一个状态动作对,计数是多少,所以这不会扩大规模,因为如果您处于状态空间是像素的场景中,你可能再也看不到同一组像素了,有没有人知道如何将它扩展到深度学习环境中。
就像我们想要的,在这种情况下,是一种量化我们不确定性的方法,我们对某种状态和行动的不确定性,嗯,但我们不想根据原始计数来做,因为那样一切都会合二为一,永远,我可以用某种形式的东西。
所以建议是我们是否可以做某种形式的VFA,比如说,嗯是的,我们可以想象尝试使用某种形式的密度模型,或者某种方式,试图估计我们看到了多少相关的信息,或者我们在这个地区看到了多少相关的州。
比如能够喜欢所有这些东西,变成某种小的,是啊,是啊,所以建议绝对使用某种嵌入,所以你可以在这里做的另一件事,也是对状态空间进行某种形式的压缩,其中一个挑战是正确的。
状态空间中的压缩取决于您想要做出的决定,所以一般来说,它是不静止的,这不一定是坏的,你可能只想在这些之间来回,所以这些想法很棒,一般来说,我们想要一些量化不确定性的方法。
这将不得不概括并说类似的附近状态,如果我们经常访问世界上的那个地区,那么在乐观方面我们应该得到更少的奖励,正如我所说,这些s a和s a s素数的计数是没有用的,如果我们只遇到一次,嗯。
我想强调的另一件事是我之前谈到的方法,真的是基于模型的,那里的很多工作都是基于模型的,相比之下,在过去的一年里,它最近开始改变的事情要少得多,但总的来说,基于模型的工作要少得多,基于RL的深度学习方法。
我想这是因为模型是免费的,策略搜索技术通常要好得多,部分,因为你在模型中犯的错误积累了很多,就像你计划的那样,所以我一直记得,大卫·西尔弗第一次谈到这个,或者他最早关于这个的谈话之一。
从2014年开始他展示了这个美丽的模型,嗯,一个对计划来说很可怕的模拟,所以错误必须非常好,呃,错误必须非常小,不清楚你通过最大化获得的代表性,对于预测性损失总是最好的规划。
所以我们真的希望能够把我们以前看到的想法,对于像B这样的东西,并将它们转换为无模型方法,并思考一些方法来编码深度神经网络设置中的不确定性,所以让我们考虑做一些像Q学习这样的事情,像DQ学习。
在这种情况下,所以我在这里有点松散,你可以,这可能是一个目标,所以说,可以解决这个问题,但是想想一般的Q学习和队列目标,嗯,其中我们使用当前函数近似的最大值,或者我们使用当前目标函数逼近的最大值。
所以从AB中获得灵感的一个想法是简单地包括一个奖金条款,所以这可能是,你知道一个固定的目标,但这里的想法是,当你更新参数时,只要给那个特定的州行动对加上一个奖金条款,当你在做Q学习更新的时候。
或者当你在调整体重的时候,当然我们得知道Q奖金是多少,但这将有助于规划方面,所以现在我们在模型自由的环境中,模型自由设置,所以我们可以,当我们在做Q学习更新的时候,让我们加上一个奖金条款。
这就是为什么我选择VIE B是之前向你们展示的算法,因为,我认为这种奖励奖金更容易扩展到,现在的模型自由箱,当然问题是奖励奖金应该是多少,嗯,它必须反映出未来回报的某种不确定性,从那个状态动作对。
有很多不同的方法试图在这方面取得进展,所以马克,贝勒梅尔姆,一些后续论文考虑建立一个密度模型,试图显式估计您访问的状态或状态操作对上的密度模型,嗯,其他人做了一些基于哈希的方法。
这在某种程度上更类似于嵌入,尝试散列状态空间,然后在哈希状态空间上使用这些使用计数,然后随时间更新哈希函数,这是伯克利的一些工作,所以有不同的方法来量化这一点,我想在这里强调的另一件事。
这些奖金条款通常是在访问时计算的,当我们看Viab的时候,您可以稍后重新计算这些,所以如果你,如果你在情节重播缓冲区中存储东西,您可能希望随着时间的推移更新这些,因为那些国家行动。
如果您稍后从重播缓冲区中对奖励下一个状态对进行采样,你可能想改变奖金条款,所以有许多不同的微妙之处,当我们试图把这个带到深度学习中时,有一些非常令人鼓舞的进展,嗯,所以让我这样,在这种情况下。
我们可以看到的是马克·贝拉米小组的初步工作,嗯,我们比较蒙特祖马的复仇,这被认为是最难的雅达利游戏之一,使用E贪婪的标准DQN代理的进展,在蒙特祖玛的复仇中有许多不同的房间,在这种情况下。
你可以看到五千万帧后,嗯,它做得非常糟糕,它只穿过了两个房间,然而,如果你使用这种探索奖金,这个做得好多了,所以战略性的更好,所以我认为这凸显了进行这种战略探索的经验意义。
让我们简单地考虑一下汤普森取样,所以在这种情况下,我们几年前做的一个想法,就是说,你可以在你的表示和模型的参数上做汤普森采样,我这么说是什么意思,我的意思是如果你有一个非常大的状态空间。
你可以想象折叠你的状态,做一个动态的状态聚合,对可能的状态聚合进行采样,作为一种在状态空间中折叠的方式,和汤普森抽样可以扩展到表征上的抽样,所以效果很好,但它没有完全扩大规模,当你想真正扩大规模的时候。
如果你想成为一个免费的模特,这和我们以前看到的有点不同,因为在我们看到基于模型的方法之前,现在我们想从可能的Q星的后部取样,不清楚如何写下来,我不认为我们在这方面取得了很好的进展,即使在表格设置中。
但这就是我们正在努力做的,人们试图为深度学习环境做的事情,有几种不同的主要方法,一个是伊恩·奥斯蒙德的,他在这里攻读博士学位,他们确实引导了DQN,这里的想法是,您可以对示例使用引导。
您可以构建许多不同的代理,所以现在你有了c q值,而不仅仅是一个q值,然后你可以乐观地对待这个集合,它不是非常有效,它给你一些性能提升,我们做的另一件事,呃,我们有点我们,所以我以前工作的人。
我参与了这个的早期版本之一,从那以后,他们一直在继续推动它,这里的想法是修复嵌入,你在上面做线性回归,这超级简单,但是如果你做贝叶斯线性回归,你会有一种不确定性的概念,在很多情况下。
这实际上会带来很大的性能提升,所以你可以有一点点不确定性表示,在深度神经网络之上,但这是一个活跃的区域,有很多人在考虑这种不同类型的工作,嗯,我认为这将继续是一个非常大的领域。
因为我们在如何进行探索和推广方面还没有取得足够的进展,所以总结一下,我知道我们在这一节里做了很多理论,你应该有的东西应该确保你熟悉,就是理解探索和探索之间的紧张关系是什么。
为什么在其他类型的环境中不会出现这种情况,您应该能够定义这些不同类型的标准,在打包或遗憾方面,成为一个好的算法意味着什么,并且能够映射我们已经详细讨论过的算法,在课堂上,这些不同形式的标准。
所以如果我说你知道这种乐观是在不确定性的方法下,那对PAC有好处还是后悔,或两者兼而有之,你应该知道这对双方都有好处,所以这是你应该能够理解的高水平,从我们一直在做的事情中。
只要知道有很多非常令人兴奋的工作,这还在继续。
包括定义新的性能指标,下次我们将听到元学习。
P14:Lecture 15 - Batch Reinforcement Learning - 大佬的迷弟的粉丝 - BV1Cc411h7QQ
部分,然后是一组部分,你会被提前分配小组,嗯,你所在房间的椅子上会有号码。
这样你就知道该去哪里坐,它的工作方式是,你先做个人部分,你会把它上交的,然后你会接受另一个小组部分的考试,我进去讨论你的答案,就他们达成一致,然后把它刮下来看看你是否做对了,然后当你做完。
你会把它作为你的第一组上交,只是后勤问题,所以又分到两个房间,稍后公布,是呀,大问题,嗯,问我们是否要分开两个房间,是呀,我们又要这么做了,这将是你的任务,嗯,我想很可能和上次一样。
但我会确认我们可能会让它稍微不同,因为一些SCPD学生将加入我们,为了这个以前没有的,反之亦然,所以有可能,尤其是如果你正处于边缘,我们会,这次你们会在不同的房间,所以我们会宣布,嗯,只是提醒一下。
现在我们基本上完成了所有的作业,所以这是一个很好的机会来专注于项目,嗯,你应该得到关于所有这些的反馈,连同,嗯,关于您的项目的一点点信息,评分的人会在上面签名,所以这是一个很好的TA去问问题。
在办公时间或广场上,但你可以去任何办公时间,询问项目问题,海报会议将在,最初宣布的时间,这是次优的,但你能做什么,我们会在期末考试最后一天的早上,这就是我们被分配的,还有人对此有什么问题吗?
谁参加了周一切尔西的谈话,好的,她这样做是为了那些没有看到它的人,切尔西的谈话将在网上进行,这是一个关于元强化学习的很好的谈话,下周的测验将涉及到这一点,但很轻,嗯,因为你还没有接触过这个想法。
所以又一次,作为小测验的回顾,测验将涵盖课程中的一切,但你没有机会真正思考的事情,因为你没有在作业中得到练习,呃,我们会更轻描淡写地测试,它也将是多项选择,我强烈建议你参加去年的测验。
忽略任何我们没有讨论过的话题,嗯,不看答案就这么做,教育研究的一个强有力的发现是,强制回忆在帮助人们学习方面非常有效,强制召回是一种很好的测试方式,所以嗯,这当然是,在你没有被它评估的情况下。
所以你可以用它来检查你是否理解这些事情,看任何东西,我们查找任何你可能有问题的东西,任何其他问题,所有的权利,所以让我们开始吧,嗯,我们今天要讲的是批处理强化学习,特别是安全批处理强化学习。
我来定义一下,嗯,2。我认为这是一个非常重要的话题,我们在我自己的实验室里做了很多工作,我今天要关注的大部分话题都是工作,这是由我的博士后菲尔·托马斯完成的一项工作。
他现在是马萨诸塞阿姆赫斯特大学的教授,但他在和我一起工作之前所做的工作以及我们的一些共同工作,我也会强调一些其他相关的工作,所以让我们想想一个简单的案例,让我们考虑做一个科学实验,你有一群人。
我们称之为A组,他们首先要做这种特殊类型的分数问题,这是我们的一个辅导系统的分数问题,人们要把分数加在一起,然后将总和减少到最低条件,然后他们必须做一些事情,他们做交叉乘法,嗯,然后他们要考试。
他们的平均得分为95分,然后我们有B组做同样的活动,但顺序相反,然后他们的平均得分为92分,问题是给一个新生的,我们该怎么办,你可能想知道什么额外的信息,为了能够回答这个问题,所以尽管大声说出来。
那么你需要做什么,就像现在一个新学生来了,让我们想象一下我们的目标是这次考试得高分,那个学生在这次考试中得了高分,那么你会给那个新生什么样的活动顺序,为了最大限度地提高他们在这次考试中获得高分的可能性。
希望表明他们已经学会了材料,你知道我们有多大吗,一个很好的问题是说这个群体有多大,A和B有多大,你可能想知道这一点有很多原因,比如说,如果A组中的人数是1,B组的人数是两个。
也许这些只是这些区别之间的统计噪声,你还想知道什么轴承,所以我建议你可能想知道方差,那是另一回事,你可能想知道这只是意味着,那么方差是多少,你还想知道什么信息,媒体和,是啊,是啊。
所以其他形式的统计数据,你知道分布,我也在想一些事情,更多嗯,在不同的方向,是啊,是啊,群里的人,所以不管是团体还是高中,团体是或喜欢较低的费率,或者类似的东西所以也许A组是幼儿园的孩子,可能B组就是。
嗯,你知道吗,高中生,我们都在倒退,所以是的,那么这些组里有谁,除此之外,你经常想知道谁是新生,新生和幼儿园或高中生也是如此,好的,所以你真的有很多额外的信息想知道,为了能够准确地回答这个问题。
它涉及到很多不同的挑战,这里的挑战之一是,嗯,B组不同于A组,然后我们有一个基本的问题,即审查数据,你不知道在A组会发生什么,如果他们在B组有相同的SEOR,如果他们的干预顺序与A组相同。
所以这是一个基本的挑战,你永远不会知道会是什么样子,如果你现在在哈佛,还有这个,你只能观察所采取的行动的结果,我们已经看到很多强化学习,在这种情况下也是如此,我们有关于决策序列的旧数据。
所以它需要这种反事实的推理,它涉及的另一件事是概括,所以这里有一个简单的例子,你可以把它看作是两个动作,两个不同问题中的每一个,两个不同问题中的每一个,你可以把这看作是奖励,这是一个延迟的奖励。
也许你的奖励是零,零奖励,然后是考试成绩的奖励,所以这里只有两个动作,谁知道状态空间有多大,这取决于我们想如何树立学生的榜样,嗯,但我们不想组合地考虑,所有不同的行动顺序,嗯。
即使我们写下了一个决策策略,可能会开始非常大,很快,所以我们需要能够做某种形式的推广,跨州或跨行动或两者兼而有之,这样我们就不必进行组合数量的实验,找出什么对学生学习最有效,所以我们今天要讨论这个问题。
我们也可以认为是离线的,所以这必须离线,批RL,这通常是不在政策范围内的,现在我们以前看到过很多非政策学习,Q学习是一种非策略算法,嗯,但我想在这里区分一下,我们将主要关注的是。
今天是有人已经收集了数据的情况,所以我们已经有了一组先前的数据,然后我们会想用它来做出更好的决定,前进,现在这个问题不仅仅出现在我刚才提到的情况下,但在大量不同的领域,你可以争辩说。
像经济学和统计学这样的领域,流行病学一直在问这样的问题,嗯,它出现在维护之类的事情上,你知道吗,你想做什么样的动作顺序,确保你的机器或汽车运行时间最长,嗯,它出现在医疗保健中。
比如我们应该给病人什么样的活动顺序,以便最大限度地取得成果,它们的质量调整寿命年,在许多情况下,它将依赖于状态,因为对病人A最有效的,将不同于对病人B最有效的方法,现在最大的挑战之一是。
当我们考虑到很多情况时,我们有这些旧数据,这将是高风险的,情景,这意味着不管是因为我们有很贵的,你知道的,我们不想出错的核电设备,或者我们在治疗人们,你知道的,真正重要的疾病。
那么我们想确保我们在未来做出正确的决定,所以我们可能有也可能没有很多数据,但是我们所拥有的数据是宝贵的,我们想从中做出尽可能好的决定,所以这意味着,我们需要对它的工作效果有某种形式的信心,前进。
所以我们真的希望对它的性能有一些上下限,在我们部署它之前,总的来说,我们只想要好的方法来估计,如果我们做这个反事实的推理,如果我们想想人们有多好,或者你知道健康的人可能会,如果我们用不同的方式对待他们。
嗯,在我们说服医生使用这个之前我们能有多大的信心,所以我今天要讲的是,这个一般性的问题,我们怎么做批处理,安全加固,学习安全可能意味着很多不同的事情,嗯,当我今天谈论安全的时候,我大部分时间都在想这个。
就这种信心而言,这种说的能力,嗯,在我们部署一些东西之前,我们知道它有多好,嗯,现在有不同形式的安全,有像安全探索这样的事情,确保你不在网上犯错误,有风险敏感性,想着这个事实,嗯。
我们每个人只会经历一个结果,不是期望,嗯,所以我们可能要考虑完整的分布而不是平均,但我们今天要讨论的主要还是考虑预期的结果,但想着对预期的结果充满信心,所以总的来说我们希望能够非常自信地说。
我们将为病人部署的新决策政策,或用于核电站,或者对于其他高风险的场景,我们觉得这样比较好,我们认为这比我们目前所做的要好,你为什么想要这个,你可能想保证单调的改进,尤其是在这些高风险领域。
这是我们本季度早些时候看到的,所以让我们简单地谈谈一些符号,其中一些会很熟悉,我只想确定我们同意,然后我会讲一些不同的步骤,我们可能会考虑尝试创建批处理,UM安全强化学习算法。
所以我们通常用圆周率来表示策略,我们将用t或h来表示轨迹,我经常用大D来表示我们可以访问的数据,这就像电子病历系统,或,你知道的,发电厂资料,等,对于这个词的大部分,我假设我们知道行为政策是什么。
所以我们知道状态到动作的映射是什么,也可能是用来收集数据的行为的历史,你能给我举个例子吗,如果这可能不合理,我们可能不知道的行为,政策,那你对人类就得那么多,对于人类来说,你不知道他们是否都在很多。
许多数据来自人类的情况,我们将不知道圆周率是什么,所以当我们查看医疗健康数据时,我们通常不知道圆周率是什么,所以你知道,如果这是医生产生的,我们通常不知道圆周率会是什么,显然有指导。
但我们通常无法获得人们使用的确切策略,如果我们做到了,他们可能不会把它说成,你知道一个随机过程,就像有人带着概率5走进他们的办公室,他们会用这个来治疗他们,而不是第五点,他们可能用确定性的术语来看待它。
他们可能不会想到这些,如果规则,所以有很多情况下我们没有,我们最近在这方面做了一些工作,其他人也有,我可能会在最后简单地谈一下,但在今天的大部分时间里,我们将假设我们可以访问这个,所以这可以举一个例子。
假设我们有圆周率B是合理的,呃,对呀,如果你的诊断是基于,很像一套指导方针什么的,是啊,是啊,所以在某些情况下,你知道如果有某种类似的东西,有时你有一个算法来做出决定,或者你知道一套明确的指导方针。
你会看到相似的还是不同的,有点不同,所以如果你有一个有维护记录的发电厂,就像一个既定的维护计划,这些记录与你基本上拥有的计划相匹配,这是正确的,是啊,是啊,所以在这些情况下,你有这些固定的协议。
我经常想到的另一个例子是,如果你去很多不同的,比如你怎么知道谷歌提供广告,我们很清楚它是如何提供广告的,必须全部记录下来,有一个,有一个算法在做出决定,所以在许多情况下,我们可以访问用于生成算法的代码。
自动生成决策,在这种情况下,只要我们保存了它,我们就可以查阅它,所以说,和往常一样,我们的目标是思考如何让我们变得好,好政策出台,好政策有好价值,当我们考虑在这种环境下进行安全的批处理强化学习时。
我们将考虑如何将旧数据,所以我们要把我们的数据作为输入,并把它推入某个黑匣子,拿出一项我们认为好的政策,所以我们要有一些算法或转换,也就是,而不是与现实世界互动,做出决定和选择数据。
它将只接收这些固定的数据并输出一个策略,我们想要的一件事是,如果我们将数据输入我们的算法,我们的算法可能是随机的,那么它输出的策略的值,所以我们可以思考A和D,所以现在,这是我们的算法。
它会输出一些策略,可能是一个确定性函数,这可能是一个随机函数,它输出的任何政策,我们希望它是好的,理想情况下至少和行为策略一样好,这就是第一个方程所说的,它说的是我们的算法输出的任何策略的值。
当我们输入一些数据集时,我们希望它和生成数据集的行为策略一样好,不管那个价值是什么,所以这就是保单的价值,用于生成数据,现在我们通常不会,我们通常不直接给出。
但谁能给我举一个例子说明我们如何了解给定一个数据集,是根据该保单期间的保单生成的,使用该策略,就像动态编程或其他什么,在这个小集合上,近似,是啊,是啊,所以我想我们要说的是你知道你可以利用这些数据。
我不知道你能不能做动态编程,因为你不一定能接触到过渡和奖励模型,但你可以做蒙特卡洛估计,你可以平均奖励,嗯,让我们假设在数据集中您可以看到状态,行动和奖励,所以你当然可以平均一下,你知道。
在所有的轨迹上都是平均的,这样我们就可以得到一个估计,我们可以估计,通过看,让我们把它想象成一个史诗般的插曲问题,所以你可以看总和等于一,该轨迹返回的两个轨迹数,这是一个回报。
本质上只是做了一个蒙特卡洛估计,因为您知道这些数据是根据策略生成的,你可以平均一下,所以这将给我们一个估计vπb的方法,但是我们需要一些方法来估计算法输出d的v,这意味着我们要做一些政策以外的事情。
因为一般来说,我们将希望找到比PI B更好的政策,这意味着他们必须做出一些不同的决定,我在这里强调一下,你知道的,有时您可能不仅仅想要比现有的行为策略更好,但你可能需要经常做得更好。
如果我们在考虑真正的生产系统,它需要时间、金钱和精力,每当我们想改变协议时,如果你想让医生改变他们做决定的方式,你想改变发电厂的事情,经常有头顶,如此频繁,你可能不只是需要比现有的艺术状态更好。
你需要明显更好,所以我们所说的相同类型的想法,相对于当前性能的排序,你总是可以在上面加上一个增量,所以因为他们至少要好得多,又是这样,总结一下这个方程,说,上面写着,我想有这样的情况,即政策的输出。
当我插入我的数据集时,我希望这很有可能比我现有的政策更好,所以这里是三角洲,你知道的,将是零到一之间的东西,所以现在让我们谈谈我们如何做到这一点,嗯,我先从政策评估开始,所以在这种情况下的想法,嗯。
好吧,首先,我将简要地介绍一下这三个方面,嗯,然后我们会慢慢地穿过它们,所以就东西而言,这三件事,我们可能想做安全批处理强化学习,每一个都有很大的差异,这取决于我们正在考虑的设置。
我们需要能够做这个非策略批量策略评估,我们需要能够把我们的旧数据,然后用它来估计替代政策会有多好,我们可能想对这有多好有信心,所以这可以让我们得到一些估计,v,a,of,d,or,v,pi,e,e,e。
常用来表示评价政策,我们要评估的政策,所以第一件事就是做政策政策评估,第二件事是,我们如何知道这个估计有多好,所以这是一个估计,可能真的很好,可能会很糟糕,所以你可能需要对这个估计有一些不确定性。
这样我们就可以量化它的好坏,最后我们可能希望能够像你知道的那样,可能策略的ARG最大值,所以你可能想做一些像Arc Max这样的事情,所以总的来说,你不会,只是想能够评估替代政策会有多好。
你会想出一个好的策略在未来部署,这将需要我们进行优化,因为我们通常还不知道好政策是什么,所以通常,我们最终将评估许多不同的政策,所以我们可以把它看作是第一部分,我们要把我们的历史数据,接受建议的政策。
把它插入到一些我们还没有讨论过的算法中,并得出保单价值的估计,我们将讨论如何用它进行重要的采样,然后在那之后,我们将进行高信心政策评估和安全政策改进,获得置信度界限,我们要看看停止,我们以前见过停顿。
嗯,我是我们看到的东西,当我们开始谈论探索的时候,所以当我们看到高自信,当我回想起来,我回想起探索,所以在探索中,我们经常试图量化我们有多不确定,关于策略或其模型的价值,为了乐观,它能有多好。
并利用它来推动探索,但我们也可以计算置信限,即下限,事情会有多好,这在这里会很有用,当我们试图在部署政策之前弄清楚它们有多好时,我们将为之欢呼,然后最终我们将能够想做的事情,比如安全策略的改进。
你能回答这个问题吗,如果有人给你一些数据,他们说嘿,你能给我一个更好的政策吗,一个算法能不能给出一个更好的策略,它实际上更好,就像你去部署它的概率很高,或者算法也能知道它的局限性,说不,就像没有。
我没有办法给你一个更好的保单,所以我觉得有一个,意识到自己局限性的算法,我们现在正在我的实验室里做相当多的工作,所以当使用这些的人,特别是对于循环系统中的人,他们可以理解算法是否在发出垃圾。
所以在这种情况下,我们的想法是,有时如果你的数据很少,你不能以自信的方式进行改进,所以对于那个例子,我之前向你们展示过我们有两种不同的教学方式,你认识的一个人很好地说了每个里面有多少人。
如果只有一个人尝试过这两种方法中的任何一种,有人说,你能明确地告诉我什么对学生更好吗,在未来,你应该说不,因为只有一个数据点,好像没有办法,我们会有足够的数据,你知道的,每组中的一个数据点。
以便在未来能够自信地看到,我们应该如何教学生,所以我认为安全政策的改进需要我们能够说,当我们有信心部署比未来更好的政策时,或者当我们不能的时候,所以我们要看看管道,如何回答这种问题,所有的权利。
所以让我们先回头想想政策,政策评价,所以这样做的目的是得到一个无偏见的偏离政策的估计,所以我们想要一个真正的,你知道的,对嗯的一个很好的估计,替代决策政策会有多好,所以我们现在有数据,它是取样的,嗯。
在某些政策下,我们称之为行为策略π2,所以我们有这样的数据集,这是D,它给了我们这些轨迹的样本,然后我们想用它们来评估替代政策有多好,虽然我们可以通过Q学习来做到这一点。
我们想用一种不同的方法来做这件事,这将使我们获得更好的置信区间,它将是一个无偏估计器,所以在Q学习中,如果我们回想一下Q学习在做什么,你知道,Q学习不在政策范围内,我们不能用Q学习来做到这一点。
Q学习不在政策范围内,它取样,它引导,因为它采样和引导,它可能会有偏见,所以我们现在要做一件不同的事情,这仍然允许我们离开政策,但在某种程度上,我们没有偏见,我们的估计值可能不会系统地高于或低于。
尤其是因为现在我们总是有有限的数据,我们永远不会处于渐近状态,我们有大量的数据,我们可以假设这又消失了,让我们想想回报,GT是返回,只是我们在保单下得到了多少奖励,你知道在有限的步骤上。
就像一集或整个时间,我们的政策只是政策的价值,同样,这只是预期的折扣奖励,好的一点是,如果圆周率是随机的,你正在使用的数据,你从你的行为政策中收集的,然后你可以用它来做关闭策略评估。
这对Q学习也是必不可少的,其中一件好事是,因为我们遵循的是蒙特卡洛类型的框架,你不需要模特,也不需要成为马尔科夫,所以这真的很好,因为我们最终会得到一个无偏的估计器,它不依赖于马尔可夫假设。
在许多情况下,马尔可夫假设是不成立的,尤其是当我们开始考虑病人的数据时,或其他案件,我们只是有一组恰好记录在我们数据集中的特征,谁知道这个系统是不是马尔可夫的,我们在我们的一些项目中确实看到了它不是。
在其中一些情况下,如果你假设世界是马尔可夫的,你真坏,估计你知道得有多好,另一种教学生的方式可能会做什么,那么为什么这是一个难题呢,嗯,这是因为我们有一个分布不匹配,好的,所以如果我们看看,嗯。
想象一下我们只是有一个两个状态的过程,我们认为,你知道的,有点像这个是S,这个是或像那样,我们可以说这是你下一个状态质数的概率,我把它弄得很光滑,我们可以把它想象成这里的高斯,这是在圆周率行为下。
在PI评估下,它可能看起来不一样,与此相对的是,回报的分配,你将获得国家行动奖励的序列,下一个状态下一个动作,下一个奖励,所以这种轨迹,在不同的政策下,轨迹的分布会有所不同,所以说。
这里的毛巾不会看起来像分布,这说明了这两种政策的价值是什么,那么到底是什么,那么这是正确的,如果嗯我,如果在这两个策略下得到的状态和操作的分布是相同的,那么值是相同的,我们在模仿学习中也看到了这个想法。
当我们要做某种状态动作或状态特征匹配时,在这种情况下,我们谈论的不仅仅是状态和行动,我们说的是全分布,因为我们的全部轨迹,因为我们不是在做加价假设,但想法完全一样。
我们定义这个值的唯一方法基本上是轨迹的概率,它的价值,或,你知道的,那个轨迹中的奖励之和,所以如果分布相同,那么值是相同的,我们不在乎政策是否不同,因为我们已经知道如何估计价值。
所以这里的关键问题是它们看起来不一样,这意味着你会在不同的政策下做不同的事情,所以就像你现在知道的,也许你经常去参观国家空间的这一部分,抱歉,打扰一下,而这部分很少,现在你将有一个替代政策。
它只是很少去这里,经常去那里,抱歉,打扰一下,但这样想,让我们知道如何查看那里现有的数据,让它看起来更像那样,有人知道我们该怎么做吗,所以如果有人给你一堆轨迹,你怎么能改变他们。
所以它们看起来像你关心的分布,所以我们可以在这里进行重要的采样,好吧那么,所以让我们回顾和刷新重要的采样,所以这个想法是,对于任何分布,我们可以重新称重以获得无偏见的样本,所以让我们想象一下。
我们有从我们想要的地方生成的数据,从某个分布生成的数据q,我们想估计x的f,所以我们想要在x的概率分布q下得到x的f,所以我们可以用同样的东西乘除,所以合并另一个发行版。
它只是在x乘以q的x f的x dx上的不同分布,所以我们可以把它重写为等于x上的积分,x乘以这个量的概率,也就是x的q除以x的p乘以x的f,让我们想象一下,我们实际上有来自x的p的数据。
所以我们想要x的q的数据,但是我们有来自x的p的数据,所以我们可以用1/n和/i q来近似,我记得几年前我第一次知道这件事的时候,我认为这是一个非常可爱的洞察力,只是想说我们要重新加权我们的数据。
所以我们将关注来自,你知道,我们会在我们关心的分布下取样,我们要给它们称重,所以他们看起来有同样的概率,他们会在,x的q,在我们的情况下,根据我们想要的政策,好的。
所以重要的采样对这个匹配的任何分布都有效,如果您有来自一个发行版的数据,你希望你从别人那里得到它,嗯,你知道这可能会出现在物理学中,你经常有非常罕见的事件,就像希格斯玻色子。
在这些情况下你可能会有不同的场景你可以重新称重,这样你就可以得到真实期望的估计,好的,这只适用于泛型发行版,让我们提醒自己这是如何工作的,用于强化学习设置,所以我们又要有我们的插曲了,我们可以叫他们。
我们可以叫他们tau,这是一个状态序列,行动,和奖励,然后如果我们想做重要的取样或者让我把这个写出来,所以在这种情况下,我们想要得到类似于HJ的p在r下的东西,那么会得到什么呢。
这将是我们初始状态的概率,让我们假设那是相同的,不管你在什么政策下,然后我们就有可能采取特定的行动,考虑到我们处于那种状态,我们进入下一个状态的概率,我们看到的奖励的概率,我们可以求和J等于1。
直到n减去1或lj减去1,所以我们只是反复看看,我们选择了行动,这就是我们对历史的概率,然后如果我们想这样做是为了重要的采样,所以我们想要的是我们想要这个历史的概率,嗯,我们需要能够计算。
x的q除以x的p的比值,对我们来说,这将是历史j或评估政策下的概率,除以历史j下的概率,行为策略,所以我们想这么做,我们希望一切都会取消,因为我们无法获得奖励模型的动力学模型,所以说,幸运的是。
就像我们在一些政策梯度工作中看到的,如果我们有hj除以πb的概率,我们将再次得到初始状态分布,在两种情况下都是一样的,然后我们有这样的概率比率,概率aj除以s j,这是在圆周率下,给定πb的s j。
j除以m的概率,然后过渡模型,和奖励模式,好的,所以这很好,因为这个取消了,这个取消了,因为世界的动态决定了下一个状态,世界的动态决定了这里的奖励和关注,只是为了让这里不那么长,我做了一个马尔可夫假设。
所以这是马尔科夫版本,但如果你可以,你可以以完整的历史为条件,所以这个技巧不需要我们不需要系统是马尔可夫的,因为无论你的动力是依赖于完整的历史还是直接的最后一步,他们在行为政策和动态方面都是一样的。
和评价政策,你可以取消这些,奖励模式也一样,所以这种洞察力不需要马尔科夫式的假设,这意味着我们最终得到的是,嗯,我们根据评估政策选择行动的方式,除以方式的比值,我们会根据行为策略选择行动,在这里。
我们假设相同的轨迹是由两种不同的策略产生的,大问题,是呀,我们假设相同的轨迹是由两种不同的政策产生的,是呀,所以我们说对于这个轨迹,在行为策略和评估策略下,你看到这种情况的概率是多少,因此。
如果在评价政策下更有可能,我们想等待这个轨迹得到的任何回报,如果在评估政策下不太可能,我们想减轻它的重量,所以直觉是我们有一堆轨迹,以及他们的奖励总额,所以我们有这些H,你知道吗,h一个逗号,g一双。
所以我们有这样的轨迹,奖励总额,如果我们有同样的行为政策评估政策,以便了解评价政策有多好,我们只是把所有的G平均一下,但他们是不同的,所以我们想做的是,我们想说的是,在你们的评估政策下,H更有可能。
等待那些在你的评估政策下不太可能的MH,体重下降,所以当你做这些g求值时,你会得到一个真实的期望,g加权,这有道理吗,如果我对那部分有什么问题,所以到目前为止,这只是告诉我们如何重新加权我们的数据。
它允许我们得到一个看起来更像,在我们的评估政策下,我们将得到的轨迹分布,只是为了澄清最后,呃,最后一排,我们有分母,行为策略,是呀,我们得到了一个经验上很好的问题,你知道,行为策略从何而来,基本上就像。
就像,这些概率是什么,问题是,所以我想这取决于,所以在这种情况下,如果你是–如果它是一种用于生成数据的机器学习算法,你只知道就像,你只要查一下你的算法,看看概率分布是多少,今天我们将假设这是已知的。
它是完美的,那显然不是真的,当我们在这些情况下进入人们的数据时,嗯,你可以做一些不同的事情,一个是,您可以构建对错误具有鲁棒性的估计器,所以你可以用其他方法来尝试加倍健壮,如果那个估计量是错的。
另一个是你可以把经验分布,实际上最近有一些很酷的工作,我想是彼得·斯通在奥斯汀的实验室里的,表明有时你使用经验估计比,即使你知道真实的估计,就结果估计器而言,这有点酷,好的。
所以这只是在法律技术上写出来的,而不是重新手写,所以这只是写出了历史的概率,现在我们可以看到我放在这里的方程,所以嗯,您知道要评估的策略的价值,将是历史时间的比例,那段历史的回归,我们在这里说的是。
这是,你知道1/n就是这只是采取每一个动作的概率,我就用圆周率符号来写,这是圆周率,i等于你的轨迹长度除以a i的πb,所有的时间都是那段特定历史的回归,所以美妙的是你可以,这是一个无偏估计器。
这确实给了你一个很好的价值估计,有一些假设,嗯,我马上就会问你们,然后嗯,你不需要知道动态,所以没有动力,有人能告诉我一个案例吗,也许这不起作用,所以我在想你用来跑步的,从您最初的策略到您的最终策略。
他们不可能有那么大的不同,对,因为否则以前董事的样本就没用了,这是个好问题,这正是,有什么好问的,就是,你知道有多不同,圆周率和圆周率能允许我们这样做吗,所以这正是我要问你们的,所以他们能给我,嗯。
他们认为这个估计量有效的条件,比如在某些情况下,你会期望,就评估策略和行为策略之间的差异而言,这可能会做得很糟糕,它与在某种状态下采取行动的概率有关,我是说如果这两个概率中的任何一个都太小。
你会让事情以不好的方式爆炸,是啊,是啊,所以当这两个问题中的任何一个太小时,这可能不好,这两种方法哪一种更糟糕,如果分母太小,如果πb真的很小,或者你知道零,嗯,现在可能真的很糟糕,πb不可能为零。
我们观察到一些东西,所以这很好,因为我们从圆周率B得到数据,所以我们永远不会观察到πb为零的轨迹,但它可能真的真的很小,所以它可能是,你知道你看到了一些东西,在那里不太可能,但你的行为策略会产生,嗯。
如果它是零呢,所以有些动作可能是零,如果它在圆周率不为零的地方为零,那会怎么样,如果某个特定a的πb等于零,但是a/n/0的圆周率,就是,你知道吗,大于零可能是不好的,就像,你觉得这是一个。
让我们举起手来,如果发生这种情况,你认为我们让我们举起你的手,要么是,如果你认为这是一个很好的估计器,或者没有,如果你认为所有的赌注都取消了,所以如果嗯,行为策略是采取行动的概率为零。
但评价政策有采取行动的正概率,举起你的手,如果你觉得,嗯,我认为这个估计器可能真的很糟糕,这是正确的,是啊,是啊,所以你知道,如果你从来没有尝试过行动,就像您从未在数据中看到新评估策略将采取的操作一样。
你不能用这个,所以我们通常称之为覆盖,所以覆盖范围或支持,所以我们经常做一些基本的假设,以便这是有效的,所以我们的覆盖范围或支持通常意味着给定的圆周率b,对于所有a和s,s必须大于零。
使得给定s的pi e大于零,所以你必须得到支持,它这个,不一定到处都是非零,但是对于任何你可能想要评估的东西,如果您真的要从评估策略生成数据,它可能会采取行动,你需要能够达到那种状态。
你需要能够在非零概率的情况下采取行动,那是个很好的术语问题,所以我们称圆周率B和上半部分的圆周率是一样的,对呀,这是正确的,好的,原本,我记得你说过评估政策是你观察到的,从那里得到的数据是正确的。
谢谢你让我澄清,那个,嗯,行为策略总是你观察到的,来自评估的数据是您想要查看的方式,我向你道歉,这里的符号通常有点棘手,因为我觉得人们有时会把评估政策,目标政策或评价政策,或者你知道一两个,嗯。
大多数时候,政策用来收集,这些数据被称为行为策略,是啊,是啊,他们在那里都是零,你只是不喜欢把它包括在问题中,是不是什么,如果他们都是,零,嗯,这是个问题吗,你能从那里得到数据吗?没错,是啊,是啊。
所以如果它们都是零,没关系,所以你实际上不必,这是,不需要你拿着有一个非,在每个状态下采取每一个动作的概率为零,所以可以没事,所以给定s的pi b可以等于零,如果给定s的pi e等于零。
如果是那样就好了,你只是不能有任何情况下,你永远不会到达这个州,或者为您可能在您的,嗯,听起来不太严格,但在实践中,这可能是一件大事,所以如果你想想像蒙特祖马的复仇,对不起,还是不同形式的雅达利。
就像在随机行为策略下,你永远不会看到很多州,你永远不会在那些州采取行动,就像你只是,这是难以置信的不可能,除非你有大量的数据,所以在实践中,你可以想到某种行为策略,你有一种定义,就像嗯,就像一个球。
你可以在下面评估其他潜在的政策,所以如果你有喜欢的,它实际上不是一个球体,但就像你知道的,嗯,如果你这里有行为政策,你可以考虑用一些距离度量,在这种情况下,你仍然可以得到圆周率的良好估计。
所以你有一个半径,这取决于这些本质上是,您支持的政策,以及其他你无法评估的东西,所有的权利,所以总结一下,嗯,你知道吗,重要的抽样是这个美丽的想法,适用于许多统计数据,包括用于强化学习。
想想第一次介绍这个的方式,嗯,我想它最初是用于RL的,我想在做预杯的时候,纸,预杯两千左右,那么它已经存在了很长时间,但是嗯,我认为强化学习,这是第一次使用这个,当然,这些想法也出现在政策梯度中。
类型类型方法,最棒的是,这个无偏见和一致的估计器,就像复习一样,一致的意思是,渐近地,它真的会给你正确的估计,所以你知道,当n趋于无穷大时,我们的估计值,只是一个很好的理智检查,当你得到越来越多的数据。
您将得到正确的估计器,嗯,只是检查这里,这是,你知道吗,在一些假设下,你得有支持,在我们的特殊情况下,我们可以利用事实的一些方面,这是一个时间过程,所以再一次,就像我们看到的策略梯度类型的工作,嗯。
调用策略梯度方法,我们可以利用这样一个事实,嗯,未来不能影响过去的回报,所以当我们考虑生成这些重要性比时,我们只需要在特定的时间,步T嗯,而不是乘以,所以我想只是为了备份,请记住,GT定义为等于。
你知道,奖励,就像奖励的总和,所以当我们考虑这个重要采样的方程时,嗯,让我回到这里,所以这个可以扩展到,你知道,r 1加伽马数,r 2加γ的平方乘以,r三点点点点,而现在,在这个等式中。
就像乘以你的重要性比的全部乘积,嗯乘以每个奖励,嗯,所以我们不做任何,它与作用概率给出的作用概率之比相同,乘以这些不同的奖励条件,既然你知道,R3不能受到我们四个或更长时间内的任何行动的影响。
在某些方面,你只是这并没有错,只是你引入了更多的变体,与我们在政策梯度中看到的非常相似,我们实际上并不,我们只需要乘以比率的乘积,直到我们得到奖励的时间点,所以这使得我们可以根据每个决定进行重要的采样。
所以这只取决于,因为如果未来不能影响过去的回报,这又是独立于它的,是不是马尔科夫,所以这只是一个时间过程的事实,我们不能回到过去,所以总的来说,另一件事是,在重要抽样中,嗯,我们只是这些重量。
这些重量就是这些产品,你知道吗,像嗯的产品,在不同的政策下选择行动,所以我们经常很好地、令人困惑地称呼这些重量术语,我们谈论过的所有重量,函数逼近与加权重要抽样,与重要抽样相比。
只是通过权重之和重新归一化,你可能想这么做的原因是正如我们之前所说的,如果你的圆周率真的很小,这么说吧,这可能是超级小的,对某些轨迹来说超级小,那么这可能意味着你对这些轨迹的重要性权重是巨大的,事实上。
我们有证据证明你知道,一般来说,你的重要性权重的大小可以随着地平线呈指数级增长,嗯,所以在某些情况下,这些重要性的权重可能非常大,所以一个重要的组件所做的是它如此有效地重新正常化,你成功了。
所以你所有的重要性权重都在零到一之间,然后当你重新衡量你的分配时,你就用它了,所以当你这样做的时候,这是一件很常见的事情,这早于强化学习方面,但也被用于强化学习,这是,呃,这是有偏见的。
所以这意味着渐近,它会得到正确的东西,降低方差,所以我们基本上要用偏差方差交换,我们经常看到Q学习与蒙特卡洛估计,蒙特卡洛没有偏见,但非常高方差Q学习自举,所以它是有偏见的,但通常要好得多。
因为你的方差要低得多,加权重要抽样方差低得多,经验上,大多数时候好多了,特别是对于少量数据,是啊,是啊,是啊,是啊,我想知道你对,你知道以前,我们说我们是故意设计一些没有偏见的东西。
所以我们要忽略某些技术,现在我们在最后重新引入偏见,我想当,没关系,我想引入偏见,比如什么时候为什么很好的问题,好的,所以你之前就大张旗鼓地说,让我们不带偏见地走,估计数,现在你告诉我们我们要回到偏见。
在这种情况下,你知道我们如何决定什么时候,这没关系,嗯,我想这完全取决于域名,呃,而且它也,我认为一个挑战和问题是如果事情是公正的,在他们周围有置信区间通常更容易,我们更知道怎么做,当它有偏见时。
通常很难量化,我想我稍后会简短地谈一下,关于我们真的想直接优化偏差加方差的时候,就像我们想看看准确性,均方误差,偏差和方差之和,所以我想你可以,它为您提供了一种直接在这两者之间进行权衡的方法。
因为你就像,如果我知道我想最小化均方误差,这就是这两者的总和,给了我一个方法,就像有原则的方式,如何权衡这些,我想另一件我经常喜欢的事情只是为了检查理智,如果它有偏见,但仍然一致,嗯。
这是一个很好的理智检查,就像没事一样,也许早期有少量的偏见,但最终如果我得到很多数据,它真的给了我正确的答案,在一些函数逼近的东西中,我们看到了Q学习,那不是真的,就像我们只是所有的赌注都取消了。
谁知道渐近发生了什么,但这又取决于,取决于日子,这是个很好的问题,这在这个地区是一个很大的挑战,好的,就像我刚才说的,在这种情况下,嗯,你知道,加权,重要抽样,它非常一致,你会收敛,嗯。
如果你有一个有限的地平线,或者嗯,一个行为策略或有限奖励和菲尔,我说如果你能看看托马斯和布伦斯基尔,我们在ICML 216论文中为RL案例考虑这一点,我们会有这些估计,嗯,如果我们用加权的,它们可能是。
重要抽样,他们可能有点偏见,但方差较小,否则可能会有很大的方差,但低偏置或零偏置,我们还能做些什么,让我们简单地谈谈控制变体,并再次在你的脑海中思考,回到策略梯度并考虑基线,所以从统计学的角度来看,嗯。
你知道的,如果我们有一个X,我们有那个变量的平均值,如果它是公正的,这意味着我们对平均值的估计与真实期望相匹配,然后我们有方差,让我们想象一下,我们只是把这些估计,好的,所以我们要减去一个随机变量y。
在你的脑海中,你可以把它想象成一个Q函数,类似的东西,所以你知道y可能是一个q函数,y的期望值可能是v,如果你认为Q是S,和一个,y的期望值是在那个状态下你能采取的所有动作的平均值。
所以如果你重新定义你的mu,所以x就像,让我们,我们将回去试图得到我们对Vpi的估计,那么如果你减去其他东西,加上它的期望值,你仍然得到一个无偏的估计器,所以我们可以把它写在这里。
所以x减去y加上y的期望值正好等于x的期望值,这是y的期望值加上y的期望值,你可以这样做,你可以在统计学中做到这一点,你可以减去一个变量,然后加上它的期望值,平均来说,这不会改变你最初x的平均值。
但你可能会问我为什么要这么做,所以你可以为任何东西这样做,这里x和y是随机变量,所以这些都是一般的,任何随机变量,其中y被称为控制变体,如果它允许您减少方差,这可能很有用,这意味着你知道y和x有关系。
好的,如果你只是减去一些随机的东西,这可能没有帮助,但是如果你减去一些东西,让你对x有一些洞察力,在我们的情况下,我们会对能帮助我们预测价值的东西感兴趣,那么我们可能会得到一个更低的方差。
所以我们可以看看这个,通过观察这个奇怪的量的方差是多少,穆帽,这里我们有x减去y加上y的期望值,我们可以把它写下来,x减去y加上y的期望值,现在y期望值的方差,没有更多的可变性。
所以我们可以说这是x减去y的方差,所以这意味着我们会得到一些东西,也就是x的方差,y的方差和两者的协方差,所以如果x和y的协方差,意思是他们,你知道这两个变量之间有关系,其中一个给了我们另一个的信息。
如果它大于y的方差,那你就赢了,那么您将得到结果估计器,所以如果这是真的,如果是真的,如果MU帽子的真实方差是,这很好,因为这意味着我们没有改变平均值,我们减少了方差,在某种程度上。
这似乎是一顿免费的午餐,但这不是真正的免费午餐,因为我们使用的信息实际上告诉了我们关于X的一些事情,这与我们使用基线术语和策略梯度非常相似,在那里,不仅仅依靠蒙特卡洛返回,我们还可以减去一个基线。
比如值函数,所以你也可以在重要的采样中做到这一点,其中x是重要的抽样估计器,Y是某种控制变体,通常你知道这可以是一个Q函数,你从马尔可夫决策过程的近似模型中构建,可以是Q学习中的Q函数,嗯。
这给了你一些方法,我们可以把它想象成Q,你知道一些估计,这样做被称为双鲁棒估计器,再次双鲁棒估计器,我们从事统计工作很长时间了,在2011年左右被带到了,杠杆被带到了多武装土匪社区。
就像Dudek的机器学习多臂强盗社区,为什么它们被称为双重健壮,嗯,我的想法是,如果你使用像你正常的重要采样中的信息,嗯,加上一些控制变体,如Q值估计,嗯,你可以健壮,我也是,如果其中任何一个是错的。
所以如果你有一个糟糕的模型,或者你有一个糟糕的估计,如果您的控制变体不好,所以你知道,为什么这很重要,如果我们回到一些问题,其他人的问题,另一种选择就是喜欢,在你的数据上做Q学习,对呀。
但Q学习可能有偏见,或者这可能是一个可怕的估计,谁知道好不好,嗯,但这可能是好的,所以说,如果它是伟大的好,你想说我们有一个很好的估计,还是不好,你会说这是你重要的取样,可以弥补,上面写着要么。
如果你有一个糟糕的模型,或者你对圆周率的估计有错误,这就像那些我们从位置获得数据的情况,我们真的不知道行为政策是什么,所以,如果你有不准确的地方,那你也想,如果你的控制变体是准确的。
那你现在也可以做得很好,在某些情况下,这两者都是不好的,那样的话,所有的赌注都取消了,但它让你对不同的部分有更多的鲁棒性,你在试图估计你的评估政策有多好,比尔和我讨论了不同的方法。
以及以加权的方式做这件事,所以我加入了加权重要抽样,那么这允许你做什么,好的,我将简单地展示这个方程,这里的基本思想是,这些就像重要的采样,重量,这是原始回报,然后我们可以加减这是y,这是y的期望值。
这些可以通过计算来计算,像Q学习或做像一个经验模型,并对其进行动态编程,你可以用很多不同的方法得到π的q值,嗯,他们可能是好的,或者他们可能是坏的,但你可以把它们插上,通常它们最终会在方差方面帮助你。
所以让我们从经验上看看这是做什么的,所以这是一个非常小的网格世界,按喜欢的顺序思考某事,你知道的,大概五乘五,四乘四,这是一个非常小的世界,我们用它来试图说明和理解这些的好处,不同类型的技术。
那么x轴上有什么,这是数据量,所以这是数据集的大小,y轴上有什么,这是卑鄙的squ,这就是我们对评估政策的估计与真实评估政策之间的差异,你希望这个很小,所以更小更好,这是一个对数刻度。
那么我们在这里看到了什么,所以你可以做的一件事是,您可以用您的数据建立一个近似模型,那个模型可能是错误的,就像你在做一个马尔科夫假设,这是错误的,或者也许嗯,你知道还有一些地方你不能很好地估计。
所以这是基于模型的,这只是我们用一个模型,我们为这个模型计算Vπe,所以我们把我们的数据,我们建立一个MDP模型,然后我们用它来,那就像一个模拟器,然后我们可以计算Vπe,所以你可以在这里看到。
在这种情况下,我得记住这里,我想我们用的是不同的数据集,要么,我得再检查一下,不管是不是,就在我们有那么多的剧集之后,模型不会随着进一步的数据而改变,就像模特不是很好。
也许我们没有使用我们应该使用的所有功能,或者这个世界不是真的马尔科夫,所以你有一个固定的偏见,你的模型可能是渐近错误的,你从中得到的估计可能是渐近错误的,如果您的模型不适合环境。
我们可以做的第二件事是我们可以做重要的采样,所以重要的采样是无偏见的,随着我们得到更多的数据,它正在下降,正如我们所希望的那样,最终它应该崩溃到零,但我们想做得更好,所以现在这是按决策重要性抽样。
你可以看到你从杠杆作用中得到好处,奖励不能受未来决定的影响,这减少了方差,给你这种很好的自动换挡,嗯,如果你做双重健壮,你会得到一个显著的肿块,那么双重健壮又在做什么呢,它结合了我们的近似模型加上。
所以你可以在这里再次看到,我们得到了一个显著的颠簸,现在,我主要是从均方误差的角度来讨论这个问题的,但我认为思考均方误差是什么意思真的很重要,嗯,所以均方误差,这里是,你知道的,1。我们估计得有多准确?
v pi e,减去真实的,但我们也可以考虑一下,我们需要多少数据才能得到一个好的估计,所以看看这个,这是,如果你想要一个平均平方或一个,也许这就足够了,也许那不是,就是说,在每一个决定的重要抽样估计下。
你需要两千集,如果是双倍强壮,你需要不到200个,所以这太棒了,因为这意味着我们需要的数据少了一个数量级,为了得到好的估计和许多现实世界的应用程序,我们只是没有足够的数据,你知道的。
你可能不是很多患有特定疾病的病人,你真的希望仍然能够为他们做出好的决定,所以你需要估计器,它需要更少的数据来给你很好的答案,所以这就是为什么这很重要,然后在这些情况下,我们还可以看到,如果你加权。
重要的抽样和加权排序的每一个决定,也最终帮助很大,这里是如果你做加权,再次加倍健壮,回答这个问题,你应该什么时候做,你知道如何在偏差和方差之间权衡,在这里我们可以看到如果我们做某种形式的加权,呃。
双重健壮,这是我们在CML论文中介绍的东西之一,你又得到了一个很大的收获,所以我们把这个放在那里,这个放在那里,对呀,所以现在你需要五集才能达到同样的水平,所以再一次,其中一些改进,这是,当然啦。
网格世界就像这样,你需要一个需要看看这个,也适用于一个人感兴趣的特定领域,但它表明,在其中一些情况下,通过在这些估计量方面做得更好一点,你可以在估计量的准确性方面获得实质性的收益,又好了。
在…开始时继续,就像,你如何平衡方差和偏差,菲尔和我想到的一件事是好的,嗯,你知道你可能想要更低的偏差和变体,你怎么做这个权衡,让我们直接考虑优化它,所以我们的神奇估计器只是试图直接最小化均方误差。
如此如此,让我们说,均方误差,这将是,你知道的,它是偏差和方差的函数,所以如果你知道偏差和方差是什么,你可以直接优化这个,我们知道什么是偏见吗,只是要记住偏见是,我们知道吗,不不幸的是。
如果我们知道我们知道偏见,那我们就不用做别的事了,因为我们会确切地知道真正的价值是什么,所以当我们试图做这项工作时,最大的挑战是,你如何得到一个很好的偏差估计,或者像低估或高估的偏见,简单地说。
我们的想法是说,如果你能得到置信区间,您可以使用一个重要的采样,所以假设我有这些,你知道吗,这是我从重要抽样中得出的估计,我对此有些不确定,所以这给了我一些估计,有一些上下限,所以你知道我想你可以。
假设值是五,正负二,然后假设我有一个模特,我有一个模型,我从这些数据建立,然后我用它来评估,我得到了另一个估计在这里,所以我有一个Vπ,这是使用一个模型,好的,假设这是八个,那么最小偏差是多少。
我的模特必须有,你怎么能利用这些置信区间来得到一个下限,我假设这些置信区间是正确的现在这些是真正的置信区间,所以我们知道真正的价值必须在3到7之间,什么是,我的模型的最小偏差是多少,一右。
因为就是这种区别,好的,所以这给了你一个偏差的下限,那么你离这些置信区间有多远,这给了你一个偏差的下限,很乐观,你的偏见,你的模型可能更有偏见,嗯,但它给了你一种量化偏见的方法。
这就是我们在这种方法中使用的,所以我们结合我们重要的抽样估计量,思考它们有多可变,我们必须得到他们的方差估计以及模型上的偏差,这让我们能够弄清楚如何在这些之间进行权衡,你又得到了。
你可以得到一个真正实质性的收益,经常,这仍然是网格世界,嗯,你会再次得到,在某些领域大约有一个数量级的差异,您可能需要一个数量级的数据,在这种情况下,我刚刚放大了,所以你甚至看不到这些其他方法。
因为有这么高的地方,好的,所以你知道,这是我们可以做的一件事,政策评价估计数,嗯,到目前为止,我还没有和你说太多关于,就像,我们如何得到这些信心界限,但我已经提到了许多不同的方式。
我们可以试着得到一个估计,你知道吗,v pi e,所以我们想对这个新的替代政策有所估计,我们可能想在野外释放,嗯,我将跳过这一部分,我只想简短地说,你知道吗,这里有一些微妙的地方,嗯嗯,你知道的。
你的行为政策支持什么?嗯,以及我们如何做一些不同的加权,我们能改进那种加权的重要抽样吗,答案是肯定的,你可以做一些稍微不同的权重,我会推迟的,还有另一个非常重要的问题,在实践中真正重要的是。
你的分布通常是非平稳的,你知道,想象一下,就像你在看病人的数据一样,在那段时间里,就像一些新的食品金字塔从食品和药物管理局出来,所以每个人都改变了他们的饮食方式,嗯。
所以现在你知道你的病人的动态将与以前大不相同,你希望能够识别,不管你的数据集中是否有某种非平稳性,就像如果世界的动力学模型在变化,所以我们有一些其他的想法来处理这个问题,好的,但现在让我们去说。
让我们假设我们已经做到了这一点,政策评价,得到了这些的一些估计,我们的替代政策会有多好,我们想超越这一点,我们想对此有一些信心,所以再一次,记住我们正在努力走向一个世界,我们可以说你知道概率。
算法的策略输出比以前的策略更好,并说我们很有可能会给你一个更好的政策,这意味着我们不仅需要估计这项政策有多好,但它比你的行为政策好多少,我们该怎么做,所以说,让我们先考虑再次使用重要抽样加加热不等式。
让我们回想一下我们正在做的探索,做高置信度的政策评估,所以就像一辆复习山地车一样,这个简单的控制任务,你让你的经纪人试图到达这里,我们得到了很高的报酬,我们将从一些行为政策中收集数据。
我们想从中学习更好的政策,并能够对其性能获得信心界限,好的,所以请记住,在霍夫廷不等式中,这是一种看待你的意思有多不同的方式,从你到目前为止的平均水平,所以有多大的不同,你怎么能。
你的经验平均值有多大不同,减去你的真实意思,它根据你拥有的数据量给你一个界限,好的,所以它是你拥有的数据量的函数,这取决于变量的范围,所以我们想到了这个武器,奖励可能在零到一之间,然后B就是1。
所以我们可以用希望不等式,我们也简单地谈了一下,为了嗯,您可以使用基于模型的强化学习,让我们考虑在这个非策略评估的上下文中使用它,所以我们也可以用我们的旧数据来估计。
我们对评估策略价值的上下限可能是什么,所以让我们想象一下我们使用十万个轨迹,估值政策是真实的,表现是一分九,如果我们用希望不等式,我们非常有信心,新政策至少有-500万,好的。
我们知道真正的回报在零到一之间,但是霍夫廷不等式给了我们负500万的界限,这是真的,对吧,就像,你知道,就像点九大于负五百万,但信息不是特别丰富,嗯,就像我们知道真正的回报,因为这个域在零到一之间。
如果我们在那里用希望的不等式,我们得到了一些我们称之为空虚的东西,好的,所以你得到了一个正确的界限,但完全没有信息,因为这是难以置信的负面,对呀,就像我们知道,这是真值或真值是所有策略在零一之间。
那么为什么会发生这种情况呢,嗯,让我们来看看重要的抽样,重要的抽样表明我们要取这个重量的乘积,正如我们以前所说的,这可能很小,所以让我们想象一下这就像,你知道吗,一点,所以你有10的L。
比如如果你采取一系列的行动,假设在那个轨迹中的每一个动作,这不太可能是你在山地汽车等领域经常需要的,因为在山地车里,你必须采取一系列非常具体的行动,为了在最后看到一些回报,在一个不是最佳的政策下。
可能不太可能看到这一系列的行动,所以让我们说,你知道的,在您的大部分数据中,你永远不会上山,就像你的一两个数据点,你真的上了山顶,这些都是非常罕见的轨迹,这意味着你的重要抽样权重将非常高,会是这样的。
你知道吗,1除以点,一个到L,这是巨大的,你知道,嗯,所以这些可以开始变得非常大,你的潜在回报范围,我们的潜在回报范围是多少,我们的潜在回报范围是g倍,我们的i等于我们重要性的1到t的乘积,重量。
所以b等于最大值,上面说在最大情况下你的回报是多少,所以这主要取决于你的真实范围,我们的实数g在0到1之间,和这个重要抽样权重的乘积,这就是问题所在,重要抽样权重的乘积可能是巨大的。
因为你有不太可能的行动顺序,然后你得到这个爆炸,所有的权利,所以如果我们看看这里,我们可以得到这个分布,嗯,其中一些非常大,这意味着我们停滞不前的不平等最终,因为再次跳跃,减去b乘以1/n的平方根。
所以如果B让我们说,假设你的弹道长度,大概两百,很像,对蒙特卡洛来说合理,或者对不起山地车,然后你就会有一个超过点的东西,一到两百次,n的平方根的1倍,大致正确,你减去这个,所以这意味着你的界限是空的。
基本上不知道,这个评价政策会有多好,所以我们对此有什么问题吗,关于为什么会发生这个问题,所以菲尔在他以前的一些作品中的洞察力,把那些去掉把它砍下来,嗯,所以如果你把这个尾巴去掉。
这对你的期望值有什么影响,它只是减少了它,所以如果你忽略了那些非常非常疯狂的高回报,你不会再得到估计了,那也一样好,但它只会变得更小,你不会高估它的,所以再一次,如果我们在考虑安全政策的改进。
我们担心部署比我们想象的更糟糕的政策,在实践中,这个要做的是,说我们会低估我们的行为政策有多好,或者我们的评估政策是,所以如果我们低估了它,没关系,因为那样很安全,比如如果我们不部署实际上会很好的东西。
也许有失去的机会成本,但这对世界不会有坏处,嗯,这就是洞察力的目的,你可以把上面的尾巴去掉,所以你不需要读证明,但这个想法是,你基本上可以定义一个新的置信区间,太保守了哈哈哈。
你可以思考你如何选择保守主义,也取决于您拥有的数据量,所以这是一个美丽的带回家的东西,嗯,假设你用20%的数据来计算,如何调整这个置信区间,所以这就设定了你的置信区间,然后你的下一部分计算你的下限。
所以对于具有相同数据量的山地汽车,我们有十万个轨迹,所以这是新的估计器,你得到了,嗯,新的,v pi的估计,所以这是v pi的下界,上面说至少是1点4分5秒,真正的值是点一九。
这与所有其他形式的集中不平等相比较,除了安德森,真的真的很糟糕,所以像关掉气喘吁吁这样的事情,还有其他的,你不必熟悉所有这些,但基本上它只是说,如果你用其他方法来得到这个下限,他们会完全空虚,而这个说。
好的,我们不确定它到底有多好,至少四点一,四,五个,真正的价值是一分九,它并不完美,但你知道,如果你的行为政策是零点五,这足以说明你应该用整洁的东西,所以嗯,他们把这个想法用于数字营销。
这是菲尔与Adobe的一些同事合作完成的一些工作,这件事的好处是,你可以说,你知道的,如果我现在想弄清楚,如果我,我要部署一些东西,得到更有效的数字营销,我可以访问以前的数据,我能自信的说。
我可以部署一些东西,你知道的,产生更高的点击量,获得更多收入,这些信心界限变得足够紧,你可以知道新政策会更好,挺酷的,是啊,是啊,你也可以这样,这是试图获得信心界限的一种形式,事实证明。
您也可以使用T测试,从经验上看,这通常是非常好的,嗯,你们中的一些人可能在,呃,你的一些统计学课,我只想简单地说,因为我们正处于一个你可以把这些想法结合起来的时代,然后考虑试着得到这些下限,嗯。
并将其与优化相结合,所以你可以考虑为许多不同的策略这样做,试图计算所有这些的下限,然后利用这些信息来决定将来部署哪一个,以安全的方式,好的,所以你可以说,我要用我的一些数据来优化。
我的一些数据来评估结果,在我部署它之前,确保它有一个很好的置信度,你可以在数字营销中做到这一点,菲尔的其他一些工作,托马斯和我正在使用糖尿病模拟器,看看我们是否能在胰岛素调节方面提供更高效的政策,嗯。
用相似的想法,在某种程度上,你可以很有信心,在部署它之前更好,我就略过一下,这是一个很大的,但在社区里,这是一个越来越大的工作领域,我想很多人都在思考这个反事实推理的问题。
因为我们有越来越多的来自电子病历的数据,我们想用来改善病人健康的系统,我们有数据,嗯,你知道在网络平台上,等,有很多额外的挑战,比如你如何处理长期的问题,嗯,重要的抽样可能是不公平的,呃。
我这么说是什么意思,我的意思是本质上不同的政策,当你评估它们时,它们可能有不同的方差,取决于它们与您的行为策略的匹配程度,正因为如此,可能很难决定你应该部署哪一个,嗯。
我们最近的工作是思考当行为策略是未知的,我们将这些想法与深度神经网络结合起来,也在思考迁移学习,所以我知道,切尔西周一谈到元学习,这里一个有趣的想法是你正在建立这些形式的模型。
你能在强化学习案例中使用同样的微调思想吗,那么你能考虑为我们的政策评估建立模型吗?利用这些数据,与您关心的保单不匹配的,为了得到更好的模型和医疗保健之类的东西,我认为这会很有帮助。
但在这方面还有很多额外的工作,嗯,还有许多其他团体正在思考这些类型的想法,嗯,也在校园里,如果你对这些想法感兴趣,也有许多同事从其他角度考虑这个问题,人们从经济学、统计学或流行病学的角度来看待它。
这真的很有趣,也和这些人合作,所以简单地弹出一个关卡,在这些情况下要考虑的目标,如果你有一组数据,你想从数据到好的,好的,你希望它在某种程度上是好的,你对它的质量有所了解,在部署它之前。
所以这就是真正的保险政策,政策评估和选择或优化是关于,所以就你应该从这里理解的事情而言,您应该能够定义和应用重要的采样,了解重要抽样列表的一些局限性,几个选择,我知道你为什么想要做这种安全强化学习。
比如这在什么样的应用中可能很重要,因此,为了找到我们在这些情况下得到的什么样的保证,就是这样,下周我们星期一有小考。
P15:Lecture 16 - Monte Carlo Tree Search - 大佬的迷弟的粉丝 - BV1Cc411h7QQ
所有的权利,我们要开始了,这是本学期的最后一堂课,当我们开始的时候,我只是一些后勤方面的事情,嗯,所以只是一个友好的提醒,该项目定于20日11点59分完成。m,没有迟到的日子,然后海报展示在周五早上8:
30,你也需要提交你的海报,并同时在线提交到等级范围,我们会提前开放提交,也没有迟到的日子,你应该收到一封电子邮件,里面有关于海报会议的一些细节,任何问题都会向我们提出,所以我们现在有任何问题。
所以最后一周的办公时间,下星期我们没有办公时间,对大多数人来说决赛周,嗯,但你可以在广场上联系我们,或者如果你有额外的问题,你知道吗,我们很高兴有时间,所有的权利,所以我们今天要做的是,所以上一次。
当然是测验,我们会发出,我们的目标是送出成绩,对于每个接受它的人来说,星期一今天把它们送出去,我们快把这些评分做完了,为此有一些人仍然很晚才上,所以我们要给SCPD打分,但其他人应该得到他们的测验分数。
谁拿走了,星期一今天应该能拿回来然后今天我们要做的是,我们要谈谈蒙特卡洛树搜索,以及讨论一些最终的东西,那么为什么蒙特卡洛树搜索,嗯,这里有谁听说过阿尔法戈,所有的权利,是呀,所以我的意思是,阿尔法戈。
你可以说是上一个人工智能的主要成就之一,你知道的,十到二十年,这真的是一个惊人的成就,这比预期的要快得多,是啊,是啊,在棋盘游戏围棋上打败人类,这被认为是一个极其艰苦的游戏。
所以蒙特卡洛树搜索是取得成功的关键部分,加上很多其他附加的东西,但这是我们没有太多地谈论的方面之一,到目前为止在课堂上,所以我想说到蒙特卡洛树搜索,所以你对这背后的一些想法很熟悉,因此。
Alphago um背后的一些想法是有用的,还因为当我们开始考虑蒙特卡洛树搜索时,这是我们思考基于模型的强化学习的一种方式,这是一个非常强大的工具,我们还没有谈论太多。
部分原因是我们在模型的深度学习案例中没有看到太多的成功,我很乐意在今天或离线时更多地谈论这一点,但我认为未来,这可能是一个真正富有成效的研究途径,我们可以讨论为什么这在alpha中特别有用。
所以我们要做的,首先,就是,我们要再谈谈,关于基于模型的强化学习,然后我们将讨论基于仿真的搜索,这就是蒙特卡洛树搜索的地方,其实只是因为每个人都上不同的课,我很好奇这里谁报道过蒙特卡洛树搜索。
在另一个班,刚刚是几班,二,三,它被提到有点像,它其实非常,是啊,是啊,是的,是的,三十七,这是一个一般的游戏,哦耶,一般的游戏将是一个很好的一个来,把它带进来,好的,酷,哦。
也以防万一人们在最后感兴趣,我还会提到一些其他的课程,在那里你可以学到更多关于强化学习的知识,所有的权利,所以基于模型的强化学习,嗯,我们这学期讨论的大部分内容,虽然不是全部。
但是我们这个学期谈论的大部分,尤其是当我们谈论学习的时候,这意味着我们不知道世界是如何运作的,嗯,我们在考虑要么学习一个政策,要么学习一个价值函数,或两者都直接来自数据,嗯,我们今天要讲的更多。
是说学习一个特定的模型,所以只是为了提醒自己,因为已经有一段时间了,是啊,是啊,我们将讨论学习,我们谈了一点,也许我不知道一个数字,几周前,我也在探险中上来了,但一旦你有了模特,你可以用计划来做。
只是为了刷新我们的记忆,规划是我们把一个已知的世界模型,然后我们通常使用值迭代或策略迭代或动态规划,尝试为这些给定的模型计算策略,与之形成鲜明对比的是,当然啦,我们已经讨论了很多关于模型免费RL的问题。
在没有模特的地方,我们只是直接从经验中学习一个价值函数,现在我们要从经验中学习一个模型然后计划使用它,现在我们所做的计划,除了经典决策中已知的方法之外,比如动态编程,也可以是我们讨论过的任何其他技术。
到目前为止在课堂上,所以你知道,一旦我们有了这个,这是一个断开,是一个模拟器,所以一旦你有了,你可以用那个模拟器做模型免费RL,或者你可以做政策,搜索,或者其他你想做的事情。
因为你有一个世界模型基本上就像一个模拟器,你可以用它来产生经验,也可以做一些事情,比如动态编程,你可以做所有这些事情,所以一旦你有了一个世界模拟器,那就太好了,缺点,当然啦,可以是。
如果那个模拟器不是很好,这对最终的估计有什么影响,好的,所以再想想,我们有我们的世界,它产生了行动、奖励和状态,嗯,现在我们要考虑明确地尝试对这些进行建模,所以在很多情况下。
你可能知道奖励功能并不总是有很多实际应用,你就知道奖励功能了,所以如果你设计得像一个强化物,基于学习的客户服务系统,你可能有一个奖励功能,比如订婚或购买,或者类似的东西,但你可能没有一个很好的客户模型。
所以有很多实际的例子,你需要学习动力学模型,含蓄或明确,但奖励功能本身可能是已知的,所有的权利,那么我们如何从循环的角度来考虑这个问题,我们考虑拥有,嗯,一些经验,所以这可能是像你知道的那样的事情。
国家行动奖励,下一个状态元组,然后我们将其馈送到模型中,这将输出一个奖励或一个过渡模型,我们用它来做计划,可以是动态编程,也可以是Q学习,或者我们在这里看到的许多其他技术,策略搜索。
然后这必须给我们一个选择行动的方法,所以这必须给我们一个动作,然后我们可以在这里使用,我们不必计算全值函数,我们只需要知道下一步该采取什么行动,我们要利用这一点,当我们到了蒙特卡洛树搜索。
我们不一定要为世界计算一个完整的值函数,我们也不必有一个完整的政策,我们所需要知道的就是我们应该为这个特定的行动做些什么,所以它的一些优点是,嗯,有很多监督学习的方法,包括深度学习。
我们可以用它来学习模型,他们中的一些人是好是坏,超级呃适合,所以我们的跃迁动力学通常会想到一个随机的,所以我们需要有监督的学习方法来预测分布,嗯奖励模型,我们通常可以把它们当作标量。
所以我们可以使用非常经典的基于回归的方法,基于模型的强化学习的另一个好处是,就像我们所说的探索,嗯,我们经常可以有明确的模型来克服我们对模型有多好的不确定性,一旦我们对我们的世界模型有不确定性。
我们可以利用这一点来传播我们所做决定的不确定性,所以在土匪案中这很直接因为在土匪案中,所以对于土匪来说,我们不确定一只胳膊的奖励,这直接代表了我们对价值的不确定性,因为在MDPS的情况下。
这只是一个单一的时间步骤,我们可以代表不确定性,奖励,以及这些奖金的动力学模型和形式,然后在计划期间传播该信息,这再次让我们思考,我们对不同状态和行为的价值有多了解,会是什么呢,乐观地说。
这会是什么样的,缺点是你知道,首先我们要学一个模型,然后我们要构造一个值函数,近似误差可能有两个来源,在那里,因为我们要得到一个近似模型,然后我们将对大的状态空间进行近似规划,所以我们可以得到复合误差。
那样的话,现在,我们在本课程前面看到的另一个复合错误是,当我们谈到模仿学习时,我们说过如果你有一个轨迹,然后尝试进行行为克隆,学习从状态到动作的映射,如果你得到了这个政策并在现实世界中遵循它。
您可能会在没有太多数据的状态空间中结束,那么你可能会有这种不断升级的错误,因为,一旦你进入状态空间的一部分,它就会复合,在你没有太多数据的地方,那你是在推断,事情可能会变得很糟糕,在这种情况下也是如此。
如果你建立一个模型,你计算出一个政策,最终给你世界上的部分地区,在没有太多数据的地方,你的模型估计很差的地方,然后再一次,策略中的结果值函数可能不好,我想我只想提另一个大优势。
我想到了基于模型的强化学习,它也可以非常强大的转移,所以当切尔西在这里谈论元学习的时候,基于模型的RL的好处之一,如果你学习一个世界的动力学模型,那么如果有人隐式地更改奖励函数,你可以只做零镜头转移。
因为你可以把你的动态学习模型和新的奖励函数,你可以计算一个新的计划,所以如果我是一个机器人,我学会了如何在这个房间里导航,所以就像现在我知道就像你知道这是什么感觉,向前走是什么感觉,等等。
在我总是试图到达那个出口之前,但现在我知道一个动态,我知道这个房间的动力学模型,然后有人说不不不,我不想去那个出口,因为那个你知道关门了什么的,所以去另一个出口,他们告诉我奖励功能,他们说,你知道。
现在在那个出口用一个加一个,而不是在那里,然后我可以用我的动力学模型重新计划,所以我不需要更多的经验,我可以得到零镜头转移,所以这真的很有用,所以这是另一个原因,为什么你可能想建立整个世界的模型。
有一些有趣的证据表明,当人们玩雅达利游戏时,他们可能在系统地建立模型,当我把冰山移到北极熊旁边时会发生什么,嗯,因为这样你就可以把这些模型推广到其他经验中,好的,那么我们要怎么写,写下我们的模型。
在这种情况下,我们将再次进行正常的状态动作,过渡,动力与奖励,我们将假设我们的模型近似地代表我们的转移模型,我们的奖励模式,所以我们在这里假设马尔可夫假设,这样我们就可以代表我们的下一个州。
只是操作中的前一个状态,以及在该状态上的分布,我们也会有同样的,为了奖励,我们通常假设事物是条件独立的,就像我们以前做的那样,所以我们只是有一个特定的动力学模型,它以行动中的状态为条件。
和以行动中的前一种状态为条件的奖励,所以如果我们想做模型学习,然后我们有一个监督学习问题,我们以前谈过一点,你们中有行动中的状态,你想预测你在下一个状态下的奖励。
所以我们有这个回归问题和这个密度估计问题,然后你可以用各种各样的方式来做,呃,你知道吗,使用均方误差,你可以用不同形式的损失,嗯,事实上,我们最近取得进展的方式之一。
政策强化学习是通过使用不同形式的损失,比标准最大似然损失,但总的来说,这里我们要讨论最大似然损失,所以我们可以这样做,当然,在表格中,这只是计数,所以如果你只有一组离散的状态和动作,你可以数数。
我有多少次在这种状态下开始行动,然后进入状态一,相对于我有多少次在这种状态下开始行动,然后进入状态二,你只要数一数,然后正常化,总的来说,有很多不同的方式可以表达这些,嗯。
我认为其中一个特别有趣的是贝叶斯,贝叶斯深度神经网络,到目前为止,他们很难调音,所以另一个人,你知道的,贝叶斯,深度神经网络,我认为这些可能非常强大的原因之一,它们可以明确地表示不确定性,但到目前为止。
他们很难训练,但我认为,你知道吗,很多真的,我们可以使用一些非常简单的模型,以及这些模型的一些非常丰富的函数近似器,好的,所以如果我们在查表的情况下,我们只是平均计数,所以我们只是在数,正如我所说。
这个状态动作,下一个状态元组,除以我们在那个状态下采取行动的次数,我们同样只是平均所有的奖励,所以这应该是我们在那个状态下的奖励场景,采取了那个行动,那次我们得到了什么奖励,步骤,让我们想一个例子。
看看这里是什么样子的,所以很久以前我们介绍了这个B例子,我们有一个州,这将流向国家A,在B状态下开始行动,然后在那之后,它要么进入终态,在那里,我以75%的概率获得了一个奖励,或者它进入终端状态。
在那里,它以两个5%的概率获得零的奖励,想象我们在这个世界上经历了一些事情,所以这里没有动作,你知道有一个单一的动作,这实际上是一个马尔可夫奖励过程,而不是一个决策过程,但我们可以得到观察。
假设我们从A州开始,然后我们得到了零的奖励,我们去了B,得到了一个零,然后我们有一系列的时间,我们有6次B开头的成绩我们得到了1分的奖励,然后我们在B州开始,得到了零奖励。
现在我们可以从这里构造一个表查找模型,只是为了刷新我们的记忆,所以我们讨论了一个事实,如果你做时间差异,用表格表示在这个问题上学习,意味着每个州一行,所以它只是两个状态。
A和B如果你对这组经验进行无限回放,相当于,如果你拿着这些数据,用它估计一个马尔可夫决策过程模型,然后用它做计划,评估最佳策略或您正在使用的策略,收集数据,在这种情况下,这是一个有趣的等价。
TD得到的解与如果你计算,通常所说的确定性等价模型,因为你把你的数据,你估计你把这些数据的经验平均值,所以你可以说如果这是世界上所有的数据,你知道的模型会是什么,可能与最大似然估计有关,然后你做计划。
所以TD做出了这个假设,让我们快速检查一下记忆,做蒙特卡洛方法,在此数据上收敛到相同的解,所以也许花一点时间,转向你旁边的人,决定他们是否这样做,为什么或为什么不,是的,作为一个提供猜测的问题,好的。
我认为蒙特卡罗方法将收敛到最小MSE的解,与MI相反,正确,蒙特卡罗方法并不假设马尔可夫,嗯,因此,它们适用于域不是马尔可夫的情况,所以在这种情况下,它们会很好地收敛到它们,在本政策评估的所有情况下。
它们将收敛到最小均方误差,是的你看如果我们用ml模型,你可能会汇聚一个视频,如果你用的是不同的地段呢,对不起,这是这是,这将收敛到最小MSSE,不是msi上的mla,但如果你用的是不同的地段。
转换相同的喜欢,让我们看看,我要用蒙特卡洛的方法,收敛到那个,我是说取决于损失,或者如果你正规化了,这是个很好的问题,如果你正规化是,嗯,它可能会收敛到不同的解,最小均方误差。
这取决于你如何规范你使用的损失,但总的来说,它不会收敛到同一件事,就像你得到了最大似然估计模型,然后用它做规划或政策评估,关键的区别是蒙特卡洛不是在做马尔科夫式的假设,所以它没有,所以特别是。
在这种情况下,嗯,所以说,我们猜测A的价值是多少,根据蒙特卡洛估计,只有一个样本,是的嗯是的,所以只有蒙特卡洛,这里会说,我只看到从这个特定状态开始的全部回报,没有自举。
所以我们唯一一次看到a是当a的返回为零时,但你知道如果系统真的是马尔科夫,那不是一个很好的解决办法,因为我们有其他证据表明B通常有更高的值,我们不能利用这一点,嗯,而TD这样做,TD可以说得好。
我知道有一次a的v是零,但通常我们认为a的v等于米奖励,另外,在这种情况下没有折扣,所以b的值,我有其他证据证明,在这种情况下,b的值实际上正好等于7。5,因为我们有六个它是1的例子和两个它是零的例子。
所以b的v等于7。5,蒙特卡洛和电视都会同意这一点,因为如果你看看你在b开始的每一次75%,或者你知道,百分之七十五的时候你得到了一个,剩下的时间你得了零分,所以它的值是7。5,所以TD估计也会说,嗯。
a的v等于点7。5,是TD估计,所以这里出现的原因之一是注意到这是一个,这不是由于有限数量的备份,哦对不起,我会小心的,数据的有限使用,这是说如果你在TD中运行很多很多次。
蒙特卡洛估计也获得了所有的数据,只是说这是所有的数据,所以有一个选择是,如果你拿着这些数据建立一个模型,所以现在我们有一个模型说去B的概率,鉴于你已经开始在一个是一个,你总是从A到B。
事实上你只看过一次,但有一次你看到它,你去了B,我们可以用这个来获取模拟数据,所以让我好好,我再去几次,所以在这种情况下,一旦你有了模拟器,你可以用它来模拟样本。
然后你可以计划使用这些模拟数据最初听起来可能像,你为什么要这么做,因为你有你以前的数据,也许你可以直接,你知道的,通过基于模型的无模型方法,比如为什么你要先建立一个模型然后从中生成数据。
但我们现在会看到一个例子,从这种AB例子中可以看出为什么这可能是有益的,所以我们能做的就是,我们可以得到这个,我们可以得到模型的最大似然估计,或您可能想使用的其他估计,然后你可以从中取样。
所以在这个例子中,我们刚刚在这里,我们估计的过渡模型是,每当我们处于,我们去B,所以当我在一个,我可以取样,我会去B,这就给我生成了一个假的数据点,我可以这样做很多次来获得大量的假数据。
现在这些假数据可能看起来像现实世界,也可能不像现实世界,这取决于我的模特有多好,但这肯定是我可以训练的数据,我们会看到一分钟一秒钟,为什么那是有益的,好的,所以如果我们回到这里,这是左边的真实体验。
所以在左手边,我们有所有这些真实的经历,然后我们所做的是,我们建立了一个模型,然后我们可以从中取样,所以我们可以有看起来与我们实际看到的数据非常相似的经验,但我们也可以有这样的经历。
为什么我们能有这个因为我们现在有了一个模拟器,在我们的模拟中,在我们的模型中,我们看到了从a开始到b的情况,在我们的模型中,也有其他时候我们从B开始,我们有一个,所以本质上,我们可以把这种体验链在一起。
模拟一些我们在现实世界中从未观察到的东西,我们在这里利用了马尔科夫的事实,所以如果域不是真正的标记,我们最终可能会得到看起来非常,与你在现实世界中所能得到的非常不同,但如果是马尔科夫。
那么它可能仍然是一个近似模型,因为我们只有有限的数据量来训练我们的模型,但现在我们可以开始看到,我们可能在数据中从未见过的状态和动作的结合,更新我们的模型,因为我们的样品啊好,好的,大问题。
你能更新你的模型来取样吗,但现在我们只是从我们的模型中取样,所以这不是真实世界的经验,所以这可能会导致确认偏差,因为这就像你的模型给了你数据,如果你把它当作真实的数据并把它放回你的模型中。
它不是来自现实世界,所以你最终可能会对一个,因为你在生成假数据,然后特雷,仿佛它是真实的,我们如何判断如何在我们的样本经验中,我想相对于我们有多少训练数据来建立一个模型,所以我想我们怎么。
我们怎么知道有多自信,总的来说你们的模型会很糟糕,有时,如果您的数据量有限,所以我们谈到的一些探索技术,在那里我们可以得到这些置信区间,模特们有多好,它们在这里也适用,所以如果你只有一点点数据。
你可以用加热之类的东西来表示,我对这种奖励模式有多确定,比如说,在今天的大部分时间里,我们不会谈论那么多,但你可以用这些信息来量化你应该有多不确定,这个错误是如何传播的,嗯所以,我想我是想从概念上喜欢。
考虑下一步是我们正在建立这个模型,或者在现实世界中的某种行为方式,如果我们有模型,我们演戏的时候就不能用模型吗,基本上在模型中运行我们的州,得到一个分布,尽最大努力,使我们的行动最大化的行动。
所以我想一旦你有了模型,你可以用它来做很多不同的规划,所以一个是你可以做,如果是小案子,就像这里,这是一张桌子,所以你可以使用值迭代来精确地解决这个问题,没有理由模拟数据。
但是当你开始考虑做雅达利或其他非常高维的问题时,光是规划问题就超级昂贵,因此,您可能仍然希望为您的规划使用无模型方法,用你的模拟数据,你想这么做的原因之一是,我们讨论了在Q中学习更有效样本的不同方法。
就像你有一个重播缓冲区,你可以进行情节重播,但另一种选择是从模拟模型中生成大量数据,然后你重播很多次,所以这是另一种更多地利用数据的方法,是啊,是啊,质疑背后,如果你不想做加价假设,你还能做同样的事吗。
但是呃,过去或早期问题的条件是什么,如果你不想做马尔可夫假设,是呀,你和你能以过去为条件吗,你绝对可以,这意味着你将建立一个完整的历史功能的模型,问题是你没有很多数据,所以你必须。
如果你想要整个历史的条件,本质上是你的状态,就马尔可夫假设而言,你总是很好的,但你只有很少的数据来估计过渡模型,尤其是当地平线继续,所以这往往是一种权衡,就像,你想要更好的模特吗,嗯,这取决于你的域名。
也许真的是马尔科夫,如果这不是真的马尔科夫,你想用很少的数据建立更好的模型吗,所以嗯,一般来说,这就得到了函数逼近误差与样本估计误差的关系,你可能会有错误,因为你没有太多的数据,或者你可能会有错误。
因为你的函数近似是错误的,通常你会想在这两者之间进行权衡,所以这个例子,你知道的,你最终可以得到这个采样体验,看起来和你在现实中见过的任何东西都不一样,嗯,然后在这种情况下。
如果你现在在新数据上运行蒙特卡罗,你可能会得到一些看起来很相似的东西,如果你对原始数据做了TD,所以基本上不是把我们的真实经验,蒙特卡洛将其用于政策评估,另一种说法是,我们真的认为这是一个马尔可夫系统。
让我们模拟一堆数据,然后你可以运行蒙特卡洛在这个上学习,或者TD在上面学习,你可能会得到同样的答案,所以这是,你知道的,与蒙特卡洛以前会聚的地方形成鲜明对比,A的v等于零,b的v又等于7。5。
你可能会说好吧,但我真的想这样做吗,如果我真的不认为这个系统是马尔科夫的,我也不会在我的假数据上运行蒙特卡罗,但我认为这说明了一旦你有了样本你可以做什么,只是展示让你做出各种各样的选择。
所以也许你想有一个两步马尔可夫过程,或者你想做不同的事情,在你的模型中做不同的假设,然后你想用它做很多计划,所以这允许你首先把你的数据,计算模型,然后你可以决定如何用它来做计划。
我们很快就会看到一种特殊的方法来做到这一点,因为你们刚才问我,嗯,如果我们有一个糟糕的模型,然后我们将计算一个一般的次优策略,你知道我们可能非常幸运因为最终的决定,我们只需要决定。
你知道1中的v大于2中的v,所以最终我们要做两两比较的决定,所以你可能有一个非常糟糕的模式,但最终仍然有一个好的政策,嗯,但总的来说,如果你的模型不好,而你做了一般的计划,你的政策也将是次优的。
如果模型是错误的一种方法,就是在原始数据上做无模型强化学习,所以不要做基于模型的规划,不清楚是否总能解决问题,所以这取决于你的模型为什么是错的,嗯,如果你的模型是错误的,因为您选错了参数类。
或者因为系统不是马尔可夫的,他们在做Q学习,那解决不了你的问题,因为Q学习也假设世界是马尔可夫的,所以模型免费,你知道这取决于为什么你知道为什么是错的,取决于为什么这是否有帮助。
另一个是明确地推理模型的不确定性,这又回到了勘探开发,这只处理一种特定形式的错误,它处理了这样一个事实,即您可能有抽样估计错误,但它仍然在做一个基本的假设,即您的模型类是正确的,例如。
如果你把世界建模为多项式分布,你没有很多数据,那么你先前的指标估计就会偏离,但如果世界真的不是多项式,那么一切都很艰难,所以知道总是很好的,我们在算法中做了什么假设,然后我们考虑的是什么样的不确定性。
现在我想我只想说一件事,这有点微妙,我觉得超级有趣,就是嗯,如果你有一个非常好的模型,这是一个普遍的说法,或者如果你有一个完美的模型和对参数的完美估计,这足以做出好的决定,如果你想训练你的模型。
你的数据量有限,或者你的模型的表现力有限,嗯,那么具有更高预测精度的模型实际上可能更糟,当你用它做决定的时候,我喜欢想到的直觉,这是我们几年前发现的吗,别人发现了,我也是,我们在考虑一个智能辅导系统。
挑战是,让我们想象一下,你有一个非常复杂的状态空间,说你在做模特,厨房是什么样子的,当有人在泡茶的时候,有各种各样的功能,你知道的,就像有蒸汽,也许外面有日落,哦,还有水温,为了泡茶。
你需要超过100度的水,事实上,为了成功地泡茶,这是你唯一需要注意的特征,但如果你只是想建立一个世界模型,你在模仿日落,你想模拟蒸汽等等,你可能会试图捕捉大量的特征,在你的那种,你知道的。
可能略显贫乏的神经网络,所以如果你试图拟合最佳最大似然估计模型,它可能不是一个捕捉功能,你需要做出决定,所以,在预测精度方面看起来更好的模型,在决策方面可能并不总是更好,这就是我们几年前遇到的问题。
我认为这说明了为什么我们需要建立的模型,当我们想做决定的时候,不一定是我们预测准确性所需的相同模型,所以在可能的情况下很重要,了解你的哪些功能在效用和价值方面是你关心的,好的。
所以让我们来谈谈基于模拟的搜索,嗯,他们以前在课堂上见过正向搜索,好的,有很多人,但不是每个人,嗯,所以前向搜索算法,我们现在要讨论的是不同的方法,而不是在我们的模拟数据上进行Q学习,好的。
我们有一个模特,还有什么别的办法,我们可以用它来做决定,一种方法是进行前向搜索,那么前向搜索是如何工作的呢,前向搜索中的思想,我们要考虑我们能采取的所有行动,假设这里我们有两个动作,一个一和一个二。
然后我们会考虑下一个可能到达的州,所以让我们说这是一个相当小的世界,所以我们只有一个和两个,在目前的状态下,我可以采取行动一或行动二,在我采取这些行动之后,我可以转换到状态一或状态二。
然后在我到达任何状态后,我再次可以做出一个或两个决定,因为那是我的活动空间,然后在我采取行动之后,我可能会再次过渡,或者有时我会终止,所以这是一个终端状态,可能我的机器人掉下来了或者掉下来了。
或者类似的东西,或者我去了另一个州,我能想到一些未来的分支,我想怎么滚就怎么滚,假设我想考虑下一步,比如说,然后我停下来,一旦我有了,我可以利用这些信息和我的奖励,嗯,我再说一句,也就是,嗯。
就像我做这些模拟期货一样,我可以想象在这些不同的未来下我会得到什么回报,因为现在我假设我有一个模型,所以这是给一个模型,所以我可以考虑,如果我采取了这个状态ST并采取了一个二的行动,我会得到什么奖励。
然后在这里我可以考虑如果我得到了什么奖励,我会得到一个S 2一个2,所以我可以想到创造不同的未来,然后总结奖励,或者在这些不同的道路上获得一系列奖励,然后为了弄清楚这些不同类型的行为的价值。
或者最好的动作,我应该采取我能做的是,我可以拿最大值,我可以带着对各州的期望,我总是知道如何接受这种期望,因为我假设我有一个模型,所以我一直在想我到达那个特定状态的可能性有多大,鉴于我父母的行为。
我来自的州,所以在这种情况下,我会推出所有这些潜在的特性,直到一定深度,在围棋之类的情况下,直到你赢得比赛或输掉比赛,然后我想备份,所以你可以把这看作是在做一种不太有效的动态编程形式。
因为为什么它不那么高效,因为这里可能有许多相同的状态,我不是,我没有混淆那些,或者我不认为他们是一样的,我是说我要分开,想想这些状态中的每一个,我会达到未来的回报。
我会在不同的动作序列和结果状态下从那个状态得到,然后如果我想知道如何表演,我离开我的树叶,我最大限度地克服了这一切,这么说吧,在这种情况下,我只是让我这么做,就像一个简单的小的,这是一个一一个二。
假设在这一点上我终止了,所以我得到了1的r和2的r,所以每当我有一个看起来像那样的结构,我所做的是,我拿最大值,这里的奖励等于,两者中较大的一个,让我们想象一下是一个更大的二,所以如果我想计算。
我基本上把所有这些都推出来计算,比如获得奖励的样本和下一个状态,当我一路走出去,然后获取根处的值,每当我看到喜欢一系列的动作节点,我把他们都拿了最大值,就像我们的行李员备份一样。
我们在行动上采取了最大限度,让我们有最好的未来回报,然后每当我到了各州,我在这里再做一个,所以让我们假设现在我有两个状态,一个和两个,其中一个有这个值,这个值为2,我想弄清楚这次行动,我的新价值是什么。
那么这将等于给定的s 1的概率,假设我从零点来,s 1的v,加概率s 2 s 0 a乘以s的v,这就像我们做行李员备份一样,我们考虑下一个我能去的州,在当前操作和当前状态时间下,其中每一个的价值。
那是有道理的,所以我们可以把这棵树,然后为了计算值,我们做两个操作中的一个,我们取最大的动作,如果是一个动作节点,或者我们采取一种期望,所以这些被称为期望最大树,你们中的一些人可能在人工智能中见过这些。
有时人们经常谈论迷你最大树,所以如果你在玩博弈论,另一个代理试图最小化您的价值,你可以最大化它,这个很像,除了我们在下一个状态下做一个期望,在行动上做一个最大值,它就像动态程序一样,但效率更高。
但我们马上就会明白为什么要这么做,所以我们对此有什么问题吗,所有的权利,所以这就是全部,我们这样做的方法是我们必须有一个模型,因为如果我们现在没有模特,我们不能嗯,精确地计算这个期望最大值。
因为我们使用的是,我们知道我们在这里只扩展了两个状态,嗯,为了计算出我们想增加多少体重,这两个状态中的每一个,我们需要知道到达每一个的概率,所以这就是我们的处境,我们用的是这里的模型。
我们用模型来获得奖励,所以基于模拟的搜索是相似的,嗯,除了我们只是要模拟出来与模型,我们不会计算所有这些,嗯,指数增长的期货数量,相反,我们只是说,我将从这里开始,我有一个模特,我需要一些政策。
但假设我有一个保单圆周率,然后我就用它,所以我看看我目前状态的政策,它告诉我要做什么,我跟着那个动作,然后我进入我的模型,我采样一个S素数,所以我看着我的模型,我说下一个状态是什么。
鉴于我处于这种特殊的状态并采取了行动,我只是模拟下一个状态,这就像我们以前如何从我们的模型中模拟数据一样,这么说吧,这让我到了这里,这是状态之一,然后我又抬起头来,我查阅了我的保单。
我说一号的保单是什么,假设那是二,然后我也跟着它走到这里,让我们按照我的策略模拟一个轨迹,模拟出来,我一直走到它结束,这给了我一个回报,这个政策有多好,所以在这种情况下,我们可以用模型模拟完整的轨迹。
一旦我们有了这些,你可以在这些模拟轨迹上做一些类似于模型自由RL的事情,也可能是蒙特卡洛,也可能是像TD学习这样的东西,所以如果我们把这看作是,就像为了做那个模拟,我们需要某种政策。
所以我们必须有办法在我们的模拟世界中选择动作,当我们想到处于这种状态并采取行动时,我们如何知道该采取什么行动,我们遵循当前的模拟策略,假设我们想有效地进行政策改进的一步,所以你有一个政策,你有你的模型。
然后你开始在一个状态,对于每一个可能的动作,你模拟出轨迹,所以这就像做蒙特卡洛的展示,所以我开始了我的状态,所以这是,假设我真的处于一种状态,St和我需要弄清楚下一步该做什么,所以我从那种状态开始。
S t,然后在我在现实世界中采取行动之前在我的脑海中,我想着我能采取的所有行动,然后我只是在行为策略PI下对他们每个人进行展示,然后我选择最大值,所以我真的在州圣,然后在我的大脑里,我想做一个。
然后我在我的策略圆周率下做了很多展示,然后我做了一个二,做了很多展示,从一个三,这都是我脑子里想的,这基本上给了我一个Q s st的估计,嗯圆周率下的一个,所以如果我采取这个行动,然后跟着圆周率。
我估计的Q函数是什么,我对每一个动作都这样做,然后我可以拿一个最大值,所以这有点像做政策改进的一步,因为这将取决于我的模拟策略是什么,所以我们有一些现有的模拟策略,我还没告诉你我们是怎么得到它的。
然后我们用它来模拟体验,好的,所以问题是,我们是否真的能做得比一步政策改进更好,因为我们如何获得这些模拟策略,如果我们有一个模拟策略,它很好,我们可以做这一步,但我们如何在更普遍的环境中做到这一点。
这个想法是,如果你有这个模型,你可以通过这样做计算出最优值,期望最大树,就像我在州街,而不是只是想。
记住,在基于模拟的搜索中,我们只是沿着一个轨迹,但在期望的最大树中,我们可以很好地想到,如果我做一个1或2,在那之后,我是去了一号还是二号,然后我应该在那里做什么动作。
我可以想到基本上试图计算最优的Q函数,在我的当前状态的近似模型下,问题是这棵树变得很大,所以一般来说,树的大小是按比例计算的,至少用s乘以a到h h是地平线,因为在每一步。
这就是为什么它在动态编程中没有那么有效,在每一步中,你会考虑所有可能的下一个状态,然后所有可能的下一步行动,所以这棵树随着地平线呈指数级增长,如果你想到像Alphago这样的东西,嗯,正在演奏的。
你知道有很多次,在某人输赢之前的步骤,这个h可能在50到200之间,所以如果你有比像这样一个极小的状态空间更大的东西,这是不可能的不可能的,好的,所以蒙特卡洛树搜索的想法是,我们想做得更好。
在任何情况下,我们都需要某种模拟策略,如果我们要这么做,我们不能像计算上那样难以解决,作为满期望最大值,那么我们如何在两者之间做一些事情,如此如此,蒙特卡洛树搜索的想法,就是试图两全其美。
我们真正想要的是期望的最大树,我们考虑所有可能的未来,并在这些,嗯,但我们需要用一种更容易计算的方式来做,为什么可能呢?嗯,让我们考虑一下,让我们嗯,如果我们有我们的初始状态,假设这是我们的一般树。
所有这些应用程序,这些潜在的行为方式可能真的真的很糟糕,所以其中一些可能很早就清楚了,就像用很少的数据,或者很少的推出,事实上,这些是你永远不想下围棋的方式,因为你马上就会失去,这样你就不需要费心了。
继续花费大量的计算努力来充实这棵树,当其他东西可能看起来更好的时候,所以这是一种直觉,我们要做的是,我们要构造一个部分搜索树,所以我们要从当前的状态开始,我们可以在下一个状态下对动作进行采样。
就像在基于模拟的搜索中一样,所以也许我们先取样一个,然后我们再取样一次,然后我们取样一个二,所以我们开始,我们第一轮看起来就像基于模拟的搜索,但我们的想法是,这样我们可以多次这样做,慢慢地填满树。
所以也许下次我们碰巧取样2,然后也许我们取样两个,然后取样一个,所以你可以考虑慢慢地填充这个期望X树,在极限中,您将填充整个期望X树,只是在实践中你几乎永远不会,因为它在计算上很难,所以我们要做的就是。
我们将在一些模拟剧集中这样做,每一个模拟插曲都可以被认为是你从根源开始的,这是根节点,你目前的状态,然后你滚动,直到你到达一个终端状态或一个地平线h,然后你回到开始状态,你又做了另一个轨迹。
当你做完这一切,你也可以做同样的事情,你会在里面做一个预期的最大值,你总是会在行动上拿最大值,在状态上拿期望,但你只会填满树的一部分,所以树的一部分可能不见了,所以为了做到这一点,有两个关键方面。
一个是在树中已经有一些数据的部分做什么,例如,如果您已经在一个状态下尝试了这两个操作,你应该再选择哪个动作,然后当你到达一个节点时,你应该做什么,在那里没有别的东西,或者到目前为止只尝试了一件事。
所以这通常被称为树策略和推出策略,推出策略适用于当您到达您所在的节点时,你知道你只尝试了一件事,或者没有更多的数据,或者你从来没有去过那里,例如,也许你体验了一种你从未达到过的状态。
所以现在是一个新的节点,从那时起,您执行推出策略,我们稍后将展示一个例子,然后这个想法是当我们考虑计算Q函数时,现在这看起来有点奇怪,因为我们不再谈论最大值了,我们不是在讨论如何明确地考虑它。
就像对各州的期望一样,以一种正式的方式,我们只需要平均一下,之所以可以是因为,嗯,我们将以某种方式进行示例动作,这样,随着时间的推移,我们将尝试看起来更好的动作,所以我们期望。
最终数据的分布将收敛到真q,这和模拟的主要区别是什么,在这种不同的平均和运动部件之前,因为之前我们似乎也在做一系列的展示,然后把这些结合起来,所以这部分还是一样的,是呀,是的,圣诞节,是呀。
在许多方面非常相似,但我们仍然要做一些模拟,我们要平均他们,问题是我们用什么政策来做,的,推出通常会随着每次推出而改变,而不是在所有的推出中都是相同的,然后我们平均它们的方法也是不同的。
我觉得最关键的是,就像我说的,简单蒙特卡洛搜索,这假设您修复了一个策略,并从该政策中获得一大堆推出,只是从不同的初始动作开始,但当你搜索蒙特卡洛树时,总是遵循它,你也说K推出,一般来说。
每个k次推出的策略都是不同的,那是故意的,这样你就有希望得到一个更好的政策,所以再一次,只是再后退一步,你知道什么,这里发生的整个循环是什么,所以在这种情况下发生的事情就像你有你的经纪人。
这是我们的机器人,它试图找出一个行动来采取,然后现实世界在s素数和r素数时给出,然后我们现在谈论的,就是它脑子里需要做的一切,就像所有这些展示一样,以便决定下一步要采取的行动,在采取下一步行动之前。
它会做一大堆计划,一般来说,它可能会把整棵树扔掉,然后世界会给它一个新的状态,新的奖励,然后再一起做整个过程,所以关键是我们需要决定下一步采取什么行动,我们想以一种方式这样做,我们将获得最佳期望值。
根据我们目前掌握的信息,一般来说,在蒙特卡洛树搜索中,您可能还有另一个步骤,在这里您可能会计算菜单模型,所以如果你在网上做这个,您可以将最近的数据,重新训练你的模型,给定模型重新运行蒙特卡洛树搜索。
现在决定下一步你要做什么,所有的权利,所以关键是这个树策略和推出,两者都有区别,推出通常是随机进行的,至少在最基本的香草版本中,有很多扩展,而关键部分是树策略,所以最常见的方法之一叫做上置信度树搜索。
这与我们在过去几周讨论的探索有关,所以我们的想法是,当我们推出,假设我们在圣,我们用我们的模拟模型来思考接下来的动作和状态,我们会在,所以假设我有一个州,在这一点上,我想,假设我过去拿了一个1和一个2。
我最终得到了,你知道的,我做了很多这样的展示还有这里的一些展示,假设我得到了三次,假设我赢了比赛,所以三个一,我得到了一个一个,零,所以关键是我应该采取什么行动,下次我在做我的展示时遇到的是一个。
我们的想法是对你目前掌握的数据持乐观态度,所以本质上,我们要把这个当成土匪,把每个决策点都想象成自己的强盗,它自己的独立强盗,说好,如果我已经为我目前的状态采取了所有我能采取的行动,我的平均报酬是多少。
我从每一次行动中都得到了,在我从图和动作中的特定节点获得的任何推出下,我拿了多少次,所以你可以得到那个状态的经验平均值,图中的一个,一个1,加上折扣系数,这通常看起来像是你在那个特定节点上的次数。
这实际上是图中的一个节点,这也是为了那个节点,所以我们每次都在想我在那个节点上,采取了什么特定的行动,我得到的平均报酬是多少?加上我做过多少次了,它只是让你再次使用乐观,它说很好。
当我在使用我的模拟模型之前到达图形的不同部分时,什么东西看起来不错,我要集中精力确保这是树的一部分,我更充实,因为那是我想我会得到的,很可能,达到具有更高价值的策略,所以希望。
这将意味着我需要更少的计算,为了计算一个好的策略,这有道理吗,如果你有一个先知能告诉你最优的政策是什么,那么您只需要填写树的这一部分,我们在这里用的是我们说好,根据我们目前看到的数据,我们只能。
你知道的,把注意力集中在树的部分,这些部分看起来像是,那些,当我们把最大值,行动将会是,我们最终将值传播回根,所以我们对每只手臂的奖励都有一个上限的信心,嗯,用和我们以前做的完全一样的东西。
我们正在处理每个节点,所以每个状态节点作为一个单独的强盗,所以这基本上意味着你知道,下次我们到达树中的同一个节点时,我们可能会做一些不同的事情,因为计数会改变治疗它,我很困惑,这是不是有点像电视。
在某种意义上,这就是对强盗问题的奖励,国家的价值,还是像状态动作对,还是仅仅是这种转变的回报,这是个很好的问题,那么这个强盗的报酬是什么呢,我们要把它当作嗯,本质上是从该节点的完整推出。
因为这就是我们的平均值,我们在计数,这不像TD,从某种意义上说,我们是每个节点这样做的,就像我之前提到的,你知道的,你可能会在图的这一部分出现一个一个。
一个一个出现在这里,我们没有合并他们的计数,我们正在处理每个节点,好像完全不同,尽管我们通常用马尔可夫模型来模拟,但在树上,你基本上可以做到,它的实现变得更加复杂。
如果你现在想把它当成一个图表而不是一棵树,我想你提出的另一点,我们一会儿就回来,就是这个,一个好主意是,是什么,强盗设置的局限性是什么,我们一会儿再来讨论这个问题,所以让我们在围棋的背景下讨论这个问题。
嗯,对于那些没有下过围棋的人来说,或者不太熟悉,它至少有两千五百年的历史了,它被认为是经典的最难的棋盘游戏,嗯,在人工智能中,这被称为一项重大的挑战任务,在很长一段时间里,嗯,只是为了提醒自己,嗯。
这不涉及决策,在动态和奖励模型未知的情况下,围棋的规则是众所周知的,奖励结构是已知的,但这是一个难以置信的大搜索空间,所以如果我们考虑组合学,你可以看到的可能的板的数量,它是,它非常大。
简单来说有两种不同类型的石头大多数人可能都知道,通常是在19乘19的棋盘上演奏,虽然人们也想过,你知道的,有些人在较小的板子上玩,你想占领最多的领土,这是一个有限的游戏。
因为在木板上放石头的地方是有限的,所以这是一个有限的地平线,我将简短地介绍一下这一部分,有不同的方法来写下,你可以写下这个游戏的奖励函数,就a而言,你知道不同的,你可以做不同的功能,最简单的就是看一下。
在这场比赛中白人赢还是黑人赢,在这种情况下,这是一个非常稀疏的奖励信号,你只在最后得到奖励,所以你只需要一路玩下去看看哪种游戏,哪个人赢了,然后你的值函数本质上是,2。
在目前这种情况下你获胜的可能性有多大?那么如果我们做蒙特卡洛评估,这是如何工作的,让我们想象一下这是你现在的董事会,你有一个特定的政策,然后你和静止的对手比赛通常是假设的,然后在最后你看到你的结果。
所以也许你赢了两次,输了两次,所以,那么当前开始状态的值是一半,那么在这种情况下我们要如何进行蒙特卡洛树搜索,你有一个单一的开始状态,所以在这一点上,你还没有模拟树的任何部分。
所以你从来没有采取任何行动,所以你只要随机取样,所以也许你拿一个,然后遵循默认策略,这通常是随机的,虽然对于像Alphago这样的东西,你经常想要更好的政策,但是你可以用一个随机的策略。
你只是采取随机的行动,然后进入下一个州,你一直这样做到最后,你看到你要么赢要么输,在这种情况下,这是一个两人游戏,所以我们做了一个迷你最大树,而不是期望最大,但基本思路完全一样,这是我的第一次展示。
我要做很多这样的展示,在我想出如何真正放置我的作品之前,好的,所以下次这是我的第二次展示,所以这是我脑袋里的第二个滚,我说,好的,好吧,上次,嗯,你知道,我采取了这个行动,所以现在我有了我的默认策略。
所以这次我要采取另一个行动,通常你想填写所有,从当前节点至少尝试一次所有操作,现在你尝试动作的特定顺序会有很大的不同,在早期,通过采取行动,节省了大量资金,现在尝试动作的顺序的启发式。
让我们想象一下你必须平等地尝试所有的动作,所以在这种情况下,现在你采取另一个行动,从那以后,你就再也没有尝试过那个动作中的任何东西,所以你只要再做一次展示,只是随随便便,然后你重复这个。
所以现在当你到了这里,所以假设我以前试过这个,所以现在当我到达这个节点时,我得挑,我得做一个最大值,也许用我的UT,所以我看看这个的奖励是什么,这个奖励呢,再加上你对计数有所了解,所有的权利。
这是暗示说清楚,所以我选择了在展示中看起来更好的动作,到目前为止,我已经为它做了很多,然后我会专注于扩展树的那一部分,你一直这样,你要慢慢地建造这棵树,这样做,直到计算预算到期,然后你走到树的底部。
你一直往上走,在哪里,对于每个操作节点,您取一个最大值,您正在执行的每个状态节点,或者你在做一个,在这种情况下,迷你麦克斯,你只要构造这个,是啊,是啊,当对手像静止的对手一样时对手会怎么做。
就像那是什么意思,大问题,好的,所以嗯现实,我觉得,关于人们为什么要去工作的另一个非常重要的见解是自我游戏,所以通常在这种情况下,您将使用当前代理作为对手,所以我采取了我刚刚为其他八个计算的任何政策。
特别是让我们想象一下,就像我保留了那棵树一样,所以它已经知道它要做什么了,嗯,在我看的每一点上,我会让另一个特工告诉我在那种状态下它会做什么,但其中一个真正如此,所以我认为自我发挥非常重要。
对此的洞察力,为什么它如此重要,因为如果我和特级大师比赛,我很长一段时间都没有得到奖励,对于一个特工来说,这是一件非常难学习的事情,因为没有其他奖励信号,所以基本上你只是在玩这些吨吨吨的游戏。
很长一段时间都没有信号,所以你需要某种信号,这样你就可以开始引导,实际上得到一个好的策略,如果我五分钟前和我比赛,我可能会打败他们,或者至少有一半的时间,也许我会打败他们,所以这允许。
因为你可以有两个都很糟糕的球员其中一个会赢,其中一个会输,你开始得到信号,所以这种自我游戏的想法在游戏的背景下非常有帮助,就像两个人的游戏,因为这可能意味着你可以开始得到一些奖励信号。
关于什么事情是成功的还是不成功的,然后两者都很像,它既能帮助你解决奖励稀少的问题,它给你一个课程,因为你总是在一个环境中玩,这比你想象的要难一点,我真的觉得这真的很酷。
如果我们能想出如何把同样的想法带到许多其他领域,比如是否有其他方法可以让自己在医学或其他方面发挥自己的作用,客户关系,或者类似的东西,那真的很棒,因为通常很难得到你想要的奖励信号。
这是这里真正好的事情之一,所以我们为什么不被困在当地的一些,他们绝对是的,所以没关系,你是怎么得到的,这样你就可以,你总是试图最大化,所以这有点像政策改进,你总是想做得更好一点,你还想赢。
所以你可能会被困在一个案子里,你们两个都是,只是,你知道的,赢了一半的时间,但应该有一些你可以利用的东西,如果有什么你可以利用的,如果你做了足够的计划,你应该能识别它,你能想象会有一个过渡点。
你可能会被添加,从过渡到一个更专业的玩家来对抗自己中受益,你需要慢慢地开始慢慢地进入,但你可能会通过与更难的人比赛来更快地学习,是啊,是啊,就像你知道的,你也会一直想做一些自我游戏吗。
你五分钟前就知道你自己了,或者也许在某个时候,去找一个更难的人会更有效,我认为这是一个很好的问题,我想大概是这样,就像,可能是,嗯,会有这样的情况,你可以做更大的课程跳跃,嗯,这可能会加速学习。
但我认为这是一个棘手的甜蜜点,如果你仍然需要有足够的奖励信号来引导,所以你知道这样做的好处是它成为了这种高度选择性的最佳首次搜索,因为你在构建树的一部分,但你是以一种非常具体的方式构建它的。
目标是你应该比做更有效率的样本,期望最大值,把整棵树,但你会比只做一步政策改进要好得多,有一些固定的,嗯,你知道的,基于模拟的策略,而且它也是,你知道的,随时可并行,任何时候,从某种意义上说,就像。
无论你有一分钟还是三小时来计算下一个动作,你知道三个小时可能很现实,如果是像了解客户推荐这样的事情,文章或东西,这将使,或者你每天只做一个决定,所以你可以连夜运行八个小时,然后计算一个决定。
所以它允许你利用你所拥有的计算,但总是提供答案,不管你需要多快,因为你只是做了更少的展示,嗯,我暂时跳过这个,我只想简短地提一下,嗯,我想这是个问题,有点奇怪,我们在每个节点都做强盗,直觉上。
这有点奇怪的原因,是因为在土匪中,为什么我们在不确定的情况下做乐观,我们这样做是因为我们实际上承担了做出错误决定的痛苦,所以在不确定性下乐观的想法,要么你真的得到了很高的奖励,或者你学到了一些东西。
为计划而这样做的奇怪之处在于,我们没有遭受痛苦,如果我们在头脑中做出错误的决定,本质上我们只是想尽快弄清楚我能采取什么行动,就信息的类似价值而言,这样我就知道从根本上采取什么正确的行动,所以这并不重要。
如果我模拟出不好的行为,如果它能让我在根本上做出更好的决定,我们只是举了一个非常快速的例子来说明这可能是不同的,所以如果你有这样的东西,假设这是Q的潜在值,所以这是一个1的值,这是一个二的值。
这就是我们的不确定性,好吧,如果你是乐观的,你总是会选择这个,因为它有更高的值,但如果你真的想相信一个更好,你应该选择一个二,因为当你这么做的时候,你要更新你的置信区间,现在你会完全确定一个是最好的。
但这种方法不能做到这一点,因为它是它是,我会说不,我要为我的错误行为付出代价,所以我要拿一个,但如果最终你只需要知道正确的行动是什么,那么有时在计算方面,你应该取一个二,因为现在你的置信区间可能会分开。
你,不需要再做任何计算,嗯,所以说,还不清楚在每个节点上设置强盗是否是最佳的做法,但效率很高,所以这基本上就是我要说的,去吧,关于这件事,有一些非常漂亮的论文,包括最近的新延期,嗯。
他们有应用程序国际象棋,以及你知道的其他一些游戏,我想他们真的是,它们是惊人的结果,所以我非常鼓励你们看看其中的一些文件,让我简单地谈谈回到课程结束时,因为这是最后一堂课,所以我只想刷新一下。
你知道课程的目标是什么,嗯,但当我们结束时,你们中的一些人周一有机会练习,但我只是想说出我的想法,我希望你能从中得到一些关键的东西,所以一个是RL和其他所有东西的关键特性,人工智能和监督学习,对我来说。
特工的关键问题是,能够收集自己的数据并在世界上做出决定,所以删失的数据,这与监督学习的iid假设非常不同,这与计划也有很大的不同,因为你依赖于你得到的关于这个世界的数据来做出决定,这可能是第二件事。
对你们中的许多人来说,可能是最有用的,这就是你如何计算出一个问题,嗯,你是否应该把它写下来作为一个rl问题,以及如何制定,我们让你在周一练习了一下,这也是一个在你的一些项目中思考这个问题的机会。
但我认为这往往是真正困难的部分之一,它对解决问题的难易程度有着巨大的影响,而且经常不清楚,有很多方法可以写下描述病人的状态空间,或者描述一个学生,或者描述顾客,在某种程度上。
它又回到了函数逼近与样本效率的问题上,如果我对所有的顾客都一样,我有很多数据,它可能是一个相当糟糕的模型,所以在这些情况下有很多不同的权衡,我相信你们所有人都会想到有趣和令人兴奋的。
解决这个问题的新方法,然后另外三件事是,你知道的,非常熟悉一些常见的RL算法,你们已经实现了很多,理解我们应该如何在RL算法中,不管是经验上的,你知道的,就其计算复杂性而言。
或者像它需要多少数据或者它的性能保证,并理解这次探索,这对RL来说是非常独特的,计划中没有提到,在毫升中没有出现,一次又一次,这是一个关键问题,就像,你如何快速收集数据以便做出好的决定,嗯。
如果你想了解更多关于强化学习的知识,有很多其他的课程,尤其是迈克尔·科纳夫做了一些很好的,本·范·罗伊也做了一些不错的,特别是看它的一些更理论的方面,然后我对它做了一个高级调查,我们做当前主题的地方。
这是一个基于项目的类,我想我会,还有两件事,一个是我想你知道我们看到了一些非常惊人的结果,围棋就是一个例子,我和我们开始在机器人技术上看到一些非常令人兴奋的结果,但我想我们错过了。
我们大多数人的手机上都没有RL,然而,我们的手机上有人脸识别,所以我认为使用这些类型的想法的潜力,对于许多其他类型的应用程序来说仍然是巨大的,所以如果你离开,你做了一些,我很想听到这件事的回音。
在我的实验室里,我们对这些其他形式的应用程序进行了大量思考,我认为另一个非常关键的方面是思考,当我们做这些RL代理的时候,嗯,我们如何在安全的情况下做这件事,公平和负责任的方式,因为通常这些系统将是。
你知道,循环系统中的人,所以,允许特工暴露他们的。
他们的推理和暴露他们的局限性将是至关重要的,所以最后一件事是,让你们,这个反馈,嗯,它允许我们为未来的几年提高课程,嗯,要么确保我们继续做你认为有帮助的事情,或者我们停止做你觉得没有帮助的事情。
所以我真的很感激,如果我们现在能花十分钟来看看课程评估,嗯,直接喂它。
P2:Lecture 2 - Given a Model of the World - 大佬的迷弟的粉丝 - BV1Cc411h7QQ
All right。 So last time we were starting to talk about just sort of the general overview。
of what reinforcement learning involves。 And we introduced the notion of a model, a value。
and a policy。 So it’s good to just refresh your brain right now about what those three, things are。
Can anybody remember off the top of their head what a value, a model, or a policy was。
in the context of reinforcement learning? So the policy is a set of actions that the agent should。
take into work。 Exactly right。 So the definition of a policy is a mapping from the state year into。
what is the action to take。 And it might be a good policy or a bad policy and the way we evaluate。
that is in terms of its expected discount at some of rewards。
Does anybody remember what a model was? Yeah。 A model is like a representation of the world and how that changes in response to。
agents acting。 Yeah, right。 So normally we think of a model being cooperating either reward model or。
a decision or a dynamics model which specifies in response to the current state and an action how。
the world might change。 It could be a stochastic model or a deterministic model。 And the reward。
model specifies what is the expected reward that the agent receives from taking a state in a particular。
action。 So what we’re going to talk about today is thinking about if you know a model of the world。
so you know what happens if you take an action in a particular state or what the distribution of。
next states might be if you take an action。 How we should make decisions。
So how do we do the planning, problem? So we’re not going to talk about learning today。
We’re just going to talk about the problem of, figuring out what is the right thing to do when your actions may have delayed consequences。
which means that you may have to sacrifice immediate reward in order to maximize long-term reward。
So as we just stated, the model generally we’re going to think about our statistical or mathematical。
models of the dynamics in the reward function。 A policy is a function that maps the state and。
agent states to actions and the value function is the expected discounted sum of rewards。
from being in a state and or an action and then following a particular policy。
So what we’re going to do today is sort of build up from Markov processes up to Markov decision。
processes。 And this build I think is sort of a nice one because it sort of allows one to think。
about what happens in the cases where you might not have control over the world, but the world。
might still be evolving in some way and think about what the reward might be in those sort of。
processes for an agent that is sort of passively experiencing the world。 And then we can start to。
think about the control problem of how the agent should be choosing to act in the world in order。
to maximize its expected discounted sum of rewards。 So what we’re going to focus about on today and。
most of this class is this Markov decision process where we think about an agent interacting with。
the world。 So the agent gets to take actions typically denoted by A。
Those affect the state of the world, in some way and then the agent receives back a state in a reward。
So last time we talked about, the fact that this could in fact be an observation instead of a state。
But that when we think about, the world being Markov we’re going to think of an agent just focusing on the current state。
So the most recent observation like you know whether or not the robots laser range finders。
saying that there are walls to the left or right of it as opposed to thinking of the full sequence。
of prior history of the sequences of actions taken and the observations received。
As we talked about last time you can always incorporate the full history to make something Markov。
But most of the time today we’ll be thinking about sort of immediate sensors。
If it’s not clear feel, free to reach out。 So what did the Markov process mean?
The Markov process is to say that the state, that the agent is using to make their decisions is a sufficient statistic of the history。
Which means that in order to predict the future distribution of states on the next time step。
here we’re using t to denote time step。 That given our current state st and the action that is taken at again the action。
But this is equivalent to if we actually remember the entire history where the history。
recall was going to be the sequence of all the previous actions and rewards at next states that。
we have seen up until the current time point。 And so essentially it allows us to say that the。
future is independent of the past given some current aggregate statistic about the present。
So when we think about a Markov process or a Markov chain we don’t think if there。
being any control yet there’s no actions。 But the idea is that you might have a stochastic process。
that’s evolving over time。 So whether or not I invest in the stock market the stock market is。
changing over time and you could think of that as a Markov process。 So I could just sort of be。
passively observing how the stock market for a particular the stock value for a particular stock。
is changing over time。 And a Markov chain is sort of just the sequence of random states where the。
transition dynamic satisfies this Markov property。
So formally the definition of a Markov process is。
that you have a finite or potentially infinite set of states and you have a dynamics model which。
specifies the probability of the next state given the previous state。 There’s no rewards there’s no。
actions yet。 And if you have a finite set of states you can just write this down as a matrix。
Just a transition matrix that says you’re starting in some state what’s the probability。
distribution over next states that you could reach。
So if we go back to the Mars rover example that we talked about last time in this little Mars。
rover example we thought of a Mars rover landing on Mars and there might be different sorts of。
landing sites。 So maybe our Mars rover starts off here。 And then it can go to the left or right。
under different actions or we could just think of those actions as being a one or a two where it’s。
trying to act in the world。 And in this case the transition dynamics it doesn’t we don’t actually。
have actions yet and we just think of it as sort of maybe it already has some way it’s moving in the。
world the motors are just working。 And so in this case the transition dynamics looks like this which。
says that for example the way you could read this is you could say well the probability that I start。
in a particular state S1 and then I can transition to the next state on the next time step is 0。4。
There’s a 0。6 chance that I stay in the same state on the next time step。 Yeah。
Which dimension represents the start state? So this is a great question。
Well which dimension which state is the start state? I’m not specifying that here。
In general when we think about Markov chains we think about looking。
at their steady state distribution。 So their stationary distribution will converge to some。
distribution over states that is independent of the start state if you run it for long enough。
Oh sorry I’m going to ask like on that matrix which dimension represents the initial state?
Oh you mean like where you are right now? Yeah so in this particular case you could have it as。
the transition of saying if you start in state let me make sure that I get it right in this case。
And there there there so if you start in state here so this is your initial start at state S1。
and then you take the dot product of that with I may have made let me see if I get it right in。
terms of mixing it up。 It’s either on one side or the other side and then I may have transitioned it。
I think you’ll have to do it for the other side here。 Yep it’ll be flipped。 So you would have your。
initial state the 1 0 0 0 0 0 0 1 2 3 4 5 6 and then times p and that would give you your next state。
distribution as prime。 Yeah。 So what are the probabilities computed like the rewards I guess。
about being based on the reward of going from state 1 to 2 or great questions? Was you know one of。
these transition probabilities looking at if does it relate to their award? In this case we’re just。
thinking of Markov chain so there’s no reward yet and there’s no actions and this is just specifying。
that there’s some state of the of the process。 So it’s as if your let’s say your agent had some。
configuration of its motors。 You don’t know what that is it was said down on Mars and then it just。
starts moving about and what this would say is this is the transition probabilities of if that。
agent starts in state I can write it this way。 So if it starts in state s 1 then the probability。
that it stays in state s 1 is 0。6。 So the probability that if you’re starting in this particular state。
here on the next time step that you’re still there is 0。6 because of whatever configuration of the。
motors were for that robot。 So it requires somebody to end the world already。
This is specifying that, this is how yeah this is how the world works。 So that’s a great question。
So where’s the mean right, now? This is the this Markov process is a state of the world that you are there is some the the。
environment you’re in is described as a Markov process and this describes the dynamics of that process。
We’re not talking about how you would estimate those this is really as if this is how that world。
works。 This is like this is the this is the world of the fake little Mars rover。
Any questions about that? Yeah。 Does your 1-5 factor need to be transposed when you multiply by p。
and well confused? Yeah。 Let me just write down and correct vector notation。 Would be like this。
1-1-2-3-4-5-6。 That would be that would be a sample starting state you could be, in for example。
So this could be your initial state。 Initial state and that would mean that your agent is initially in state S1。
Okay。 And then if you want to know where it might be on the next state you would multiply that by。
the transition model p。 Depending on the notation and whether you take the transpose of this transition。
model it will be on the left or the right。 It should always be obvious from context but if it’s。
not clear feel free to ask us。 And so what would that say?
That would say if you took the the matrix, multiplication of this vector which just says you’re starting in state S1 what would that look like?
Afterwards it would say that you are in state S1 still with probability 0。6 you’re in state S2。
probability 0。4 and this would be your new and I think that should be transposed。
But it’s just a one。 It would specify the distribution over next states that you would be in。
May I have any questions about that? Okay。 All right so this is just specifying that the。
transition model over how the world works over time and it’s just I’ve written it in matrix。
notation there to be compact but if it’s easier to think about it it’s fine to just think about it。
in terms of these probability of next states given the previous state。
So you can just enumerate those, or you can write it in a matrix form if the number of states happens to be finite。
So what would this look like if you wanted to think of what might happen to the agent over time in。
this case or what the process might look like? You could just sample episodes so let’s say that。
your initial starting state is S4 and then you could say well I can write that as a one-hot vector。
I multiply it by my probability and that gives me some probability distribution over the next。
states that I might be in and the world will sample one of those。 So your agent can’t be in。
multiple states at the same time so for example if we were looking at state S1 it has a 0。6 chance。
of staying in S1 or a 0。4 chance of transitioning。
So the world will sample one of those two outcomes, for you and it might be state S1。
So in this case we have similar dynamics from S4 from S4 it has a, probability of 0。
4 going to state S3 probability of 0。4 going to state S4 or a probability of 0。2 of。
state in the same place。 So if we were going to sample an episode of what might happen to the agent。
over time you could start with S4 then maybe it’ll transition to S5 maybe it’ll go to S6。
S7 S7 S7 S7 S7 so you’re just sampling from this transition matrix to generate a particular。
trajectory。 So it’s like the world you know what the dynamic the the dynamics is of the world and。
the nature is going to pick one of those outcomes like sampling from sort of a probability distribution。
You may have any questions about that? Okay so that just gives you a particular episode and。
we’re going to be interested in episodes because later we’re going to be thinking about rewards。
over those episodes and how do we compare the rewards we might achieve over those episodes。
but for right now this is just a process this is just giving you a sequence of states。
So next we’re going to add in rewards so that was just a mark-off chain and so now what is a。
mark-off reward process? Again we don’t have actions yet just like before but now we also。
have a reward function so we still have a dynamics model like before and now we have a reward。
function that says if you’re in a particular state what is the expected reward you get from being。
in that state? We can also now have a discount factor which allows us to trade off between。
or allows us to think about how much we weight immediate rewards versus future rewards。
So again just like before if we have a finite number of states in this case R can be represented。
in matrix notation which is just a vector because it’s just the expected reward we get from being in。
each state。 So if we look at the Mars rover MRP then we could say that the reward for being an S1。
is equal to 1, the reward for being an S7 is equal to 10 and everything else the reward is zero。
Our rewards always just tied to the state you’re in。 I think last time you talked about it also。
having an action so why are we not considering that here? Great question saying that I mentioned。
last time that rewards for the Markov decision process can either be a function of the state。
the state and action or state action next state。 Right now we’re still in Markov reward processes。
so there’s no action。 So in this case the ways you could define rewards would either be over。
the immediate state or state at next state。 So once we start to think about their being rewards。
we can start to think about their being returns and expected returns。 So first of all let’s define。
what a horizon is。 A horizon is just a number of time steps in an episode so it’s sort of like。
how long the agent is acting for or how long this process is going on for and it can be infinite。
So if it’s not infinite then we call it a finite Markov decision process。 We talked about those。
briefly last time but often we think about the case where an agent might be acting forever or。
this process might be going on forever。 There’s no termination of it。 The stock market is up today。
it’ll be up tomorrow。 We expect it to be up for a long time and we’re not necessarily trying to。
think about evaluating it over a short time period。
One might want to think about evaluating it over, a very long time period。
So within this the definition of a return is just the discounted sum of rewards。
you get from the current time step to a horizon and that horizon could be infinite。
So a return just, says if I start off in time step t what is the immediate reward I get and then I transition maybe。
do a new state and then I weigh that return reward by gamma and then I transition again and I weigh。
that one by gamma squared etc。 And then the definition of a value function is just the expected return。
If the process is deterministic these two things will be identical but in general if the process is。
stochastic they will be different。 So what I mean by deterministic is that if you always go to the。
same next state no matter which if you start at a state if there’s only a single next state you。
can go to then the expectation is equivalent to a single return。 But in the general case we’re。
going to be interested in these stochastic decision processes which means averages will be different。
than particular runs。 So for an example at that well let me first just talk about discount factor。
and then I’ll give an example。 Discount factors are a little bit tricky they’re both sort of somewhat。
motivated and somewhat used for mathematical convenience。 So we’ll see later one of the benefits。
of discount factors mathematically is that we can be sure that the value function sort of expected。
discounted sub-merf returns is bounded as long as your reward function is bounded。
People empirically, often act as if there is a discount factor we weigh future rewards lower than than immediate。
rewards typically。 Businesses often do the same。 If gamma is equal to zero you only care about a。
immediate reward。 So the agent is acting myopically it’s not thinking about the future of what could。
happen later on and if gamma is equal to one then that means that your future rewards are exactly。
as beneficial to you as the immediate rewards。 Now one thing just to note if you’re only using。
discount factors for mathematical convenience if your horizon is always guaranteed to be finite。
it’s fine to use gamma equal to one in terms of from the perspective of mathematical convenience。
Does anyone have any questions about discount factors? Yeah。
My question is does the discount factor of gamma always have to progress in a geometric fashion or。
is there a reason why we do gamma? So a great question。 What we’re defining here is that。
using a gamma that progresses through this exponential geometric fashion is that necessary。
It’s one nice choice that ends up having very nice mathematical properties。
There one could try using other approaches but it’s certainly the most common one and we’ll。
see later why it has some really nice mathematical properties。 Any questions? Okay。
So what would be some examples of this? If we go back to our Mars rover here and we。
now have this definition of reward what would be a sample return? So let’s imagine that we start。
off in state S4 and then we transition to S5, S6, S7 and we only have four step returns。
So what that means here is that our process only continues for four time steps and then it maybe。
it resets。 So why might something like that be reasonable? Well particularly when we start to。
get into decision making, maybe customers interact with a website on average two or three time steps。
There is often a bounded number of time, the bounded length of a course。 In many, many cases。
the horizon is naturally bounded。 So in this case what might happen in this scenario we start off。
in S4。 S4, S5, S6 all have zero rewards by definition and then on time step S7 we get a reward of 10。
but that has to be weighed down by the discount factor which here is one half。 So it’s one half。
to the power of three and so the sample return for this particular episode is just 1。25。
And of course we could define this for any particular episode and these episodes generally。
might go through different states even if they’re starting in the same initial state because we have。
a stochastic transition model。 So in this case maybe the agent just stays in S4, S4, S5, S4 and it。
doesn’t get any reward and in other cases it might go all the way to the left。 So if we then think。
about what the expected value function would be it would involve averaging over a lot of these。
And as we average over all of these then we can start to get different rewards for different time steps。
So how would we compute this? Now one thing you could do which is sort of motivated by what I。
was just showing before is that you could estimate it by simulation。 So you could。
just take for say an initial starting state distribution which could be just a single starting state or。
many starting states and you could just roll out your process。 So right now we’re assuming that we。
have a transition matrix and a reward model and you could just roll this out just like what we。
were showing on the previous couple time steps and you could just do this many many many times。
and then average。 And that would asymptotically converge to what the value function is because the。
value function is just the expected return。 So one thing you could do with simulation。
and there are mathematical bounds you can use to say how many simulations would you need to do。
in order for your empirical average to be close to the true expected value。
The accuracy roughly goes down on the order of 1 over a square root of n where n is the number of。
rollouts you’ve done。 But just tells you that if you want to figure out what the value is of your。
mark-off reward process you could just do simulations and that would give you an estimate of the value。
The nice thing about doing this is this requires no assumption of the mark-off structure。
It’s not actually using the fact that it’s a mark-off reward process at all。 It’s just a way to。
estimate sums of returns, sums of rewards。 So that’s both nice in the sense that if you’re using。
this in a process that you had estimated from some data or you’re making the assumption that things。
are, you know, this is the dynamics model but that’s also estimated from data and it might be wrong。
then this can give you sort of if you can really roll out in the world then you can get these sort。
of nice estimates of really how the process is working。 But it doesn’t leverage anything about。
the fact that if the world really is mark-off there’s additional structure we could do in order。
to get better estimates。 So what do I mean by better estimates here? I mean if we want to。
get sort of better meaning sort of computationally cheaper ways of estimating what the value is of a。
process。 So what the mark-off structure allows us to do, what the fact that the future is。
independent of the past given the present, is it allows us to decompose the value function。
So the value function of a mark-off reward process is simply the immediate reward the agent gets。
from the current state it’s in plus the discounted sum of future rewards weighed by the discount factor。
Times and we’re, we express that discounted sum of future rewards is we can just express it, with V。
V of S prime。 So we sort of say well whatever state you’re in right now you’re going to get。
your immediate reward then you’re going to transition to some state S prime and then you’re going to。
get the value of whatever state S prime you ended up in discounted by your discount factor。
So if we’re in a finite state MRP we can express this using matrix notation。 So we can say that。
the value function which is a vector is equal to the reward plus gamma times the transition model。
times V。 Again note that in this case because of the way we’re defining the transition model。
then the value function。 So here the transition model is defined as the next state given the。
previous state do and multiply in that by the value function there。 So in this case we can。
express it just using a matrix notation and the nice thing is that once we’ve done that we can。
just analytically solve for the value function。 So remember all of this is known so this is known。
and this is known and what we’re trying to do is to compute what V of S is。 So what we can do in。
this case is we just move this over to the other side so we can do V minus gamma PV is equal to R。
or we can say the identity matrix minus the discount factor times P these are all matrices。
So this is the identity matrix, times V is equal to R which means V is just equal to the inverse of this matrix times R。
So if one of the transitions can be backed itself wouldn’t it be kind of like circular to try to。
express V of S in terms of V of S? The question was if it’s possible to have self loops。
could it be that this is sort of circular to find in this case。 In this case because we’re。
thinking about processes that are infinite horizon the value function is stationary and it’s fine。
if you have include self loops。 So it’s fine if some of the states you might transition back to。
the same state。 There’s no problem。 You do need that this matrix is well defined that you can take。
the inverse of it but for most processes it is。 So if we want to solve this directly this is nice it’s analytic but it requires taking a matrix。
inverse and if you have n states so let’s say n states this is generally on the order somewhere。
between n squared and n cubed depending on which matrix version you’re using。 Is it ever actually。
possible for that matrix not to have an inverse or does like the property that like call them some。
to one or something。 Question was is it ever possible for this not to have an inverse?
It’s a good question。 I think it’s basically never possible for this not to have an inverse。
I’m trying to think whether or not that can be violated in some cases。 If you yeah sorry go ahead。
Yeah so I think there’s a couple if there’s a if this ends up being the zero matrix depending。
on how things are defined but I’ll double check that and set it note on on P。
Yeah actually I think the biggest thing about transition matrix is one。
So if y_i_i_i_1 then y_i_1 can’t have an i_i_i_1。 Just double check so I don’t say anything that’s incorrect and then I’ll just send it note on on P。
That’s a good question。 So that’s the analytic way for computing this。
The other way is to use dynamic programming。 So in this case it’s an iterative algorithm instead。
of a one shot。 So the idea in this scenario is that you initialize the value function to be zero。
everywhere。 In fact you can initialize it to anything and it doesn’t matter if you’re doing this until。
convergence。 And so then what we’re going to do is we’re going to do what’s going to be。
close to something we’re going to see later which is a Bellman backup。 So the idea in this case is。
because of the Markov property we’ve said that the value of a state is exactly equal to the。
immediate reward we get plus the discounted sum of future rewards。 And in this case we can simply。
use that to derive an iterative equation where we use the previous value of the state in order。
to bootstrap and compute the next value of a state。 And we do that for all states。
And the computational complexity of this is a little bit lower because it’s only s squared。
because you’re doing this for each of the states and then you’re summing over all the。
possible next states。 When I say we do this to a convergence generally what we do in this case。
is we define a norm。 So generally we do something like this vk minus vk minus one。
And you do this until it’s lower than some epsilon。
So the advantage of this is that each of the iteration updates are cheaper。
And there also will be some benefits later when we start to think about actions。
The other thing that does not apply is easily when we start to have actions but we’ll see also。
where it can be relevant。 So here are two different ways to try to compute the value of a Markov。
reward process or three really。 One is simulation。 The second is analytically。 The。
analytic one requires us to have a finite set of states。 And the third one is dynamic programming。
We’re also right now defining only all of these for when the state space is finite。 But we’ll talk。
about when the state space is infinitely drawn。 So now we can finally get on to Markov decision。
processes。 Markov decision processes are the same as the Markov reward process except for now we。
have actions。 So we still have a dynamics model but then now we have a dynamics model that is。
specified for each action separately。 And we also have a reward function。 And as was asked before。
by Camilla I think the reward can either be a function of the immediate state, the state and。
action of the state, action and next state。 For most of the rest of today we’ll be using。
that it’s a function of both the state and action。 So the agent is in a state, they take an action。
they get immediate reward and then they transition to the next state。 So if you think about sort of。
an observation you’d see something like this。 S-A-R and then transition to state S prime。
And so a Markov decision process is typically described as a tuple which is just a set of states。
actions, rewards, dynamics, model and discount factor。
Because of the way you define the dynamic model is it that if you take a specific action that。
is intended for you to move through state S prime you won’t fully successfully move through that state。
Like I guess I’m curious about why there’s a why it’s a probability at all。 Like if you’re。
given a state and you take action, why is it deterministic what the next state is?
Question is saying like well why is this, why are there stochastic processes I think。
There are a lot, of cases where we don’t have perfect models of the environment。
maybe if we have better models then, things would be deterministic。
And so we’re going to approximate our uncertainty over those models with, stochasticity。
So maybe you have a robot that’s a little bit faulty and so sometimes it gets stuck。
on carpet and then sometimes it goes forward。 We could write that down as a stochastic transition。
matrix where sometimes it stays in the same place and sometimes it advances to the next state。
Maybe you’re on sand or things like that。 Maybe when you’re trying to drive to SFO sometimes you。
hit traffic sometimes you don’t。 You could imagine putting a lot more variables into your state space。
to try to make that a deterministic outcome or you could just say hey sometimes when I try to go。
forward you know like I hit these number of red lights and so I’m late。 Another time you know I。
don’t hit those red lights and so I’m fine。 So if we think about our Mars rover MDP now let’s just。
define there being two actions A1 and A2。 You can think about these things as the agent trying to move。
left or right but it’s also perhaps easier just to think about in general them as sort of these。
deterministic actions for this particular example。
So we can write down what the transition matrix would。
be in each of these two cases that shows us exactly where the next state would be given the previous。
action。 So what’s happening in this case is if the agent tries to do A1 in state S1 then it stays in。
that state otherwise it’ll generally move to the next state over。 If it’s trying to do action A1。
and for action A2 it’ll move to the right unless it hits A7 and then it’ll stay there。
So like we said at the beginning of class a Markov decision process policy specifies what action to。
take in each state and the policies themselves can be deterministic or stochastic meaning that。
you could either have a distribution over the next action you might take given the state you’re in。
or you could have a deterministic mapping that says whenever I’m in this state I always you know do。
action A1。 Now in a lot of the class we’ll be thinking about deterministic policies but later on when we。
get into policy search we’ll talk a lot more about stochastic policies。
So if you have an MDP policy then that immediately specifies a Markov reward process。
because once you have specified the policy then you can think of that as inducing a Markov reward。
process because you’re only ever taking you’ve specified your distribution over actions for your。
state and so then you can think of sort of what is the reward the expected reward you’ll get under。
that policy for any state and similarly you can define your transition model for a Markov reward。
process by averaging across your transition models according to the way to which you would take those。
different actions。 So the reason why it’s useful to think about these connections between Markov。
decision processes and Markov reward processes is it implies that if you have a fixed policy you。
can just use all the techniques that we just described for Markov reward processes namely simulation。
analytic solution or dynamic programming in order to compute what is the value of a policy。
So if we go back to sort of the iterative algorithm then it’s exactly the same as before。
exactly the same as the Markov reward process except for now we’re indexing our reward by the policy。
So in order to learn what is the value of a particular policy we instantiate the reward function by。
always picking the action that the policy would take。 So in this case I’m doing it for simplicity。
for deterministic policy and then similarly just indexing which transition model to look up based。
on the action that we would take in that state。 And this is also known as a Bellman backup for。
a particular policy so it allows us to say what is the value of this state under this policy。
well it’s just the immediate reward I would get by following the policy in the current state。
plus the expected discounted sum of rewards I’d get by following this policy and then for whatever。
state I end up in next continuing to follow this policy。
So that’s what the V pi of k minus 1 specifies。 So what would happen they expected discounted sum of rewards we get by continuing to follow。
policy from whatever state we just transition to。 So if we go to the mark off the mark off chain or the mark now the mark off decision process for。
the Mars rover then let’s look at the case now where we have these two actions the reward function。
is still that you either have for any action if you’re in state one you get plus one and in any。
state any action for state f 10 you get plus 10 everything else is zero。 So imagine your policy。
is always to do action a one and that your discount factor is zero。 So in this case。
what is the value of the policy? And this is just to remind you of what like the iterative way of computing it would be。
Yeah in the back。 And I think you’d be zero for everything except that’s one and that’s plus one and plus 10。
That’s exactly right。 So this is a little bit of a trick question because I didn’t show you。
again what the transition model is。 So that is exactly correct。
It doesn’t matter what the transition, model is here because gamma is equal to zero。
So that means that all of this goes away。 And so you just have the immediate reward。
So if your discount factor is zero then you just, care about immediate reward。
And so the immediate reward for this policy because the reward for all。
actions in state one is always plus one and the reward for all actions and all other states is。
zero except for in state S seven where it’s always 10 no matter which action you take。
So this is just, equal to one。 The value function is this。 Okay so let’s look at another one。
So now we’ve got exactly the same, process。 I’ve written down a particular choice of the dynamics model for state S six。
So let’s, imagine that when you’re in state S six which is almost all the way to the right you have a 50%。
probability of staying there under action A1 or 50% probability of going to state S seven。
That’s what this top line says。 And then there’s a whole bunch of other dynamics models that we’re。
not going to need to worry about to do this computation。
And then the reward is still plus one for state, S one plus ten and state S seven zero for all the states in the middle。
And then let’s imagine that, we’re still trying to evaluate the policy where you’re always taking action A1。
And we’ve just, said that VK is equal to one zero zero zero ten。
And now what we want to do is do one more backup, essentially。
So we want to move from VK equal one and now compute VK equal two。
So how about everybody take a second and figure out what would be the value under this particular。
policy? K for S six。 So you can use this equation to figure out given that I know what my previous。
value function is because I’ve specified it there。 It’s one zero zero zero ten。
And now I’m going to be, doing one backup and I’m only asking you to do it for one state。
You could do it for others if you, want。 What would be the new value of S six if you use this equation to compute it?
And it just requires plugging in what is the value of the reward。 The value is。
and the particular numbers for the dynamics and the old value function。 And the reason that I bring。
this up as an example is to show sort of essentially how kind of information flows as you do this。
computation。 So you start off in the very initial let me just go over here first。 So when you start。
off you’re going to initialize the value function to be zero everywhere。 The first backup you do。
basically initializes the value function to be the immediate reward everywhere。 And then after。
that you’re going to continue to do these backups and essentially you’re trying to compute。
these expected discounted sum of future rewards for each of the states under this policy。
So if you think about looking at this that sort of information of the fact that state S seven is。
good is going to kind of flow backwards to the other states because they’re saying okay well。
but then state S four I don’t have any reward right now but in a couple time steps under this。
process I might because I might reach that really great plus ten state。 So as we do these。
iterations of policy evaluation we start to propagate the information about future。
rewards back to earlier states。 And so what I’m asking you to do here is to just do that for one。
one more step。 It’s just a for state S six。 What would its new value be its previous value was zero。
Now we’re going to do one backup and what is this new value。 So what you just first let’s ask a。
you kind of question and then we can all take a second to do it。 I’m just wondering if you’re。
using the same process to also find the value function。 I guess like if you don’t necessarily。
know the value function is set you could just like preferably follow it down。
The question was can you, if you don’t know what the value function is I guess I’m not totally sure this is a way to compute。
the value what your question is asking because this is a way to compute the value function。
So what we’ve done here is we’ve said we’ve initialized the value function to be zero everywhere。
that is not the real value function that’s just sort of an initialization。 And what this process is。
allowing us to do is we keep updating the values of every single state until they stop changing。
And then that gives us the expected discounted sum of rewards。 Now you might ask okay well they。
are they ever guaranteed to stop changing and we’ll get to that part later。 We’ll get to the。
fact that this whole process is guaranteed to be a contraction so it’s not going to go on forever。
So the distance between the value functions is going to be shrinking and that’s one of the。
benefits of the discount factor。 So if people don’t have any more immediate questions I suggest we。
all take a minute and then just compare with your neighbor of what number you get when you do this。
computation just to quickly check that the Bellman equation makes sense。 All right so wherever you。
got to hope we had a chance to sort of compare or check any understanding with anybody else that。
was next to you。 Before we go on I just want to answer a question that was asked before about。
whether or not the analytics solution is always possible to invert。 Let’s go back to that。
So in this case because P is a stochastic matrix its eigenvalues are always going to be。
less than or equal to one。 If your discount factor is less than one then i which is the identity matrix。
minus gamma times P is always going to be invertible。 That’s the answer to that question。
So this matrix, is always invertible as long as gamma is less than one。
All right so let’s go back to this one, which we’re going to require anyway for some of the other important properties we want。
So, in this case what is that? So the immediate reward of this is zero plus gamma times 0。
5 probability, that we stay in that state times the previous v of s6 plus 0。
5 probability that we go to v of s7, and this is going to be equal to zero plus 0。
5 times zero plus 0。5 times 10。 So that’s just an example of how you would compute one billman backup。
Just back to my original question which is you seem to be using v sub k without the super script。
of pi to evaluate it。 Oh sorry this should have been pi。
That was just a typo and that was correct in there。
Just whether or not there was supposed to be pi up there。 Yes it was。 Thanks for catching。
All right so now we can start to talk about Markov decision process control。 Now just to note。
there so I let us through or we just went through policy evaluation in an iterative way you could。
have also done it analytically or you could have done it with simulation。 But it has a particularly。
nice analogy now that we’re going to start to think about control。 So again what do I mean by。
control? Control here is going to be the fact that ultimately we don’t care about just evaluating。
policies typically we want our agent to actually be learning policies。 And so in this case we’re。
not going to when we’re not going to talk about learning policies we’re just going to be talking。
about computing optimal policies。 So the important thing is that there exists a unique optimal value。
function。 So and the optimal policy for an MDP and then infinites in finite state MDP is deterministic。
That’s one really good reason why it’s sufficient for us to just focus on deterministic policies。
just for finite state MDPs in infinite horizons。 Okay so how do we compute it? Well first before we。
do this let’s think about how many policies there might be。
So there are seven discrete states in this, case it’s the locations of the rover。
There are two actions I won’t call them left and right I’m, just going to call them A1 and A2。
Because left and right kind of implies that you will definitely。
achieve that we can also just think of these as generally being stochastic scenarios so let’s just。
call them A1 and A2。 Then the question is how many deterministic policies are there and is the。
optimal policy for an MDP always unique。 So again why don’t we just take like one minute or so one。
or two minutes feel free to talk to a neighbor about how many deterministic policies there are。
for this particular case and then if that’s the once you’ve answered that it’s fine to think about。
in general if you have S states and A actions and this is the cardinality of those sets。
How many possible deterministic policies are there?
And then the second question which is whether or, not these are always unique。
Okay does that many want to take a guess at how many deterministic, policies there are in this case?
Remember this can be brought with it’s a mapping from states to。
actions so we need two to the seventh。 That’s exactly right。
That is it’s a mapping if we remember back to, our definition of what a policy is a mapping is going to be a map from states to actions。
So what that means in this case is that there are two choices for every state and there are seven。
states and more generally that the number of policies is A to the S。 So it can be large it’s。
exponential in the state space but it’s finite so it’s bounded。
Any more want to take a guess whether or, not the optimal policy is always unique I told you the value function is unique is the policy unique。
I think there might be cases where it’s not really。 Exactly right it’s not always unique the value。
function is unique but if there may be cases where you get ties and so there might be that there are。
two actions that or two policies that have the same value so no it depends on the process。
Yes so the general question is can I explain what I mean by there’s a unique optimal value function。
I mean that the optimal value of the state so they expect to discount some of returns。
There is a there may be more than one optimal policy but there exists at least one optimal。
policy which leads to the maximum value for that state and there there’s a single value of that。
We’ll talk about it it’ll probably be a little bit clearer too when we talk about contraction。
properties later that there’s sort of this is a scale so for each state it’s just a scalar value。
it says exactly what is the expected discounted sum of returns and this is the maximum expected。
discounted sum of returns under the optimal policy。
Yes question is for me to sort of better clarify you know what the what this how many policies。
there are and whether maybe and there maybe it looked like it was going to be linear and it’s。
actually exponential。 The way that we’re defining a decision policy here a deterministic decision。
policy is a mapping from a state to an action and so that means for each state we get to choose。
an action and so just as a illustration of why this ends up being exponential so in this case。
let’s imagine instead of having seven states we just have six of two states so now we have s1 and s2。
so you could either have action a1a1 you could have action a1a2 you could have action a2a1 or。
action a2a2 and you have to and all of those are distinct policies so that’s why the space ends。
up being exponential。 When you have like a to the power of s I’m assuming that a refers to legal。
actions first state assuming like you could have different actions depending on the state。
Whether or not you might be able to have different constraints on the action space for state。
absolutely so in this case today for simplicity we’re going to assume that all actions are。
applicable in all states in reality that’s often not true in many real world cases some of the。
actions might be specific to the state you know for totally there’s a huge space of medical。
interventions for many of them they might not be at all even reasonable to ever consider for certain。
states or applicable so in general you can have different action subspaces per state and then you。
would take the product over the actions the cardinality of the action set that is relevant for each of。
the states but for right now I think it’s simplest just to think of it as there’s one uniform action。
space and they can be applied in any state。 Okay so the optimal policy for an MDP and a finite horizon。
problem where the agent acts forever is deterministic it’s stationary which means it doesn’t depend on。
the time step we started talking about that a little bit last time so it means that if I’m in。
this state if I’m in state s7 there’s an optimal policy for being in state s7 whether I encounter。
that at time step one time step 37 time step 242 stationary and one of the intuitions for this is。
that if you get to act forever there’s always like an infinite number of future time steps no。
matter when you’re at so if you would always do action a1 from state s7 now then if you encounter。
it again in 50 time steps you still have an infinite amount of time to go from there and so。
you’d still take the same action if that was the optimal thing to do and as we were just discussing。
it’s not the optimal policy is not necessarily unique because you might have more than one policy。
with the same value function。 So how would we compute this one option is policy search and we’ll。
talk a lot more about this in a few weeks when we’re talking about function approximation and having。
really really large state spaces but even in tabular cases we can just think of searching so the number。
of deterministic policies we just discussed is A to the S and policy iteration is a technique that。
is generally better than enumeration。 So what do I mean by enumeration in this context? I mean。
there’s a finite number of policies you could just evaluate each of them separately and then pick。
the max。 So if you have a lot of compute you might just want to and this might be better if you really。
care about wall clock and you have many many many processors you could just do this exhaustively you。
could just try all of your policies evaluate all of them either analytically or iteratively or whatever。
it’s giving you want to use and then take the max over all of them but if you don’t have kind of。
infinite compute it’s generally more computationally efficient if you have to do this serially to do。
policy iteration and so we’ll talk about what that is。 So in policy duration what we do is we。
basically keep track of a guess of what the optimal policy might be we evaluate its value and then。
we try to improve it。 If we can’t improve it anymore then we can halt。
So the idea is that we start by, initializing randomly here now you can think of the subscript is indexing which policy we’re at。
So initially we start off with some random policy and then pi i is always going to index sort of our。
current guess of what the optimal policy might be。
So what we do is we initialize our policy randomly。
and while it’s not changing and we’ll talk about whether or not it can change or go back to the。
same one in a second we do value function policy we evaluate the policy using the same search。
techniques we just discussed because it’s a fixed policy which means we are now basically in a。
Markov reward process and then we do policy improvement and so the really the new thing。
compared to what we were doing before now is policy improvement。 So in order to define how we。
could improve a policy we’re going to define something new which is the state action value。
So before we were just talking about state values state values are denoted by b。
We’re talking about like v pi of s which says if you start in state s and you follow policy pi。
what is the expected discounted sum of rewards。 A state action value says well I’m going to follow。
this policy pi but not right away。 I’m going to first take an action A which might be different。
than what my policy is telling me to do and then later on the next time step I’m going to follow。
policy pi。 So it just says I’m going to get my immediate reward from taking this action A that。
I’m choosing and then I’m going to transition to a new state again that depends on my current state。
and the action I just took and from then on I’m going to take policy pi。
So that defines the Q function, and what policy improvement does is it says okay you’ve got a policy you just did policy evaluation。
and you got a value of it。 So policy evaluation just allowed you to compute what was the value of that。
policy and now I want to see if I can improve it。 Now remember right now we’re in the case where we。
know the dynamics model and we know the reward model so what we can do then is we can do this sort。
of Q computation where we say okay well I’ve got that previous value function of my policy and now I。
compute Q pi which says if I take a different action it could be the same we do this for all A and for all。
S。 So for all A and all S we compute this and then we’re going to compute a new policy and this is。
the improvement step which maximizes this Q。 So we just do this computation and then we take the。
max。 Now by definition this has to be greater than or equal to Q pi i of S pi i of A。
Right because either A is equal to pi i of A but sorry pi i of S。
So either you the arg max is going to be the same as that your previous policy pi i or it’s going。
to be different and the only time you’re going to pick it differently is if the Q function of that。
alternative action is better。 So by definition this Q pi that max over A of Q pi i of S A has to be。
greater than or equal to Q pi i of S times pi i of S。 Question of the back。
So I’m kind of finding like a vocal mix of although you kind of just get stuck there to make some。
counseling between different actions。 So this is going to allow us to maybe do some local。
monotonic improvement maybe but are we going to be susceptible to getting stuck。 In fact for any。
of you that have played around with reinforcement learning and policy gradient and stuff that is。
exactly one of the problems that can happen when we start doing gradient based approaches。
Nicely in this case this does not occur。 So we guarantee to converge the local to the global。
optima and we’ll see why for a second。 Okay all right so this is how it works you do this policy。
evaluation and then you compute the Q function and then you compute the new policy that takes an。
arg max of the Q function。 So that’s how policy improvement works。 The next critical question。
that there is was bringing up is okay why do we do this and is this a good idea。
So when we look at this let’s look through this step a little bit more。
What we’re going to get is we’re going to get this sort of interesting type of policy improvement。
step and it’s kind of involving a few different things so I just sort of want to highlight the。
subtlety of it。 So what is happening here is that we compute this Q function and then。
we’ve got this。 We’ve got max over a of Q pi i with s a has to be greater than equal to r of s of pi a。
the previous policy that we’re using before。 So what I’ve done there is I’ve said okay the max。
action over the Q has to be at least as good as following your old policy by definition because。
otherwise you could always pick the same policy as before or else you’re going to pick a better。
action and this reward function here is just exactly the definition of the value of your old policy。
So that means that your the max over your Q function has to be at least as good as the old。
value you had。 So that’s encouraging but here’s the weird part。
So when we do this if we instead take, argmax we’re going to get our new policy。
So what is this doing? It’s saying I’m computing this new, Q function。
What does this Q function represent? It represents if I take an action and then I follow。
my old policy from then onwards and then I’m picking whatever action is maximizing that quantity for。
each state。 So I’m going to do this process for each state。
But then so that’s going to just define a new policy right like that might be the same or it。
could be a different policy than the one you’ve had before。 Here’s the weird thing。 So this is。
saying that if you were to follow that argmax a and then follow your old policy from then onwards。
you would be guaranteed to be doing better than you were before。 But the strange thing is that。
we’re not going to follow the old policy from then onwards。 We are going to follow this new policy。
for all time。 So remember what we’re doing is we’re completely changing our policy and then we’re。
going to evaluate that new policy for all time steps not just for the first time step and then。
follow the old policy from then on。 So it should be at least a little unclear that this is a good。
thing to do。 It should be like okay so you’re saying that if I were to take this one different。
action and then follow my old policy then I know that my value would be better than before。
But what you really want is that this new policy is just better overall。
And so the cool thing is that, you can show that by doing this policy improvement it is monotonically better than the old policy。
So this is just saying this out in world。 We’re saying you know if we took the new policy for。
one action and follow pi forever then we’re guaranteed to be at least as good as we were before in terms。
of our value function but our new proposed policy is just to always follow this new policy。
Okay so why do we get a monotonic improvement in the policy value by doing this?
So in the policy value。 So first of all what do I mean by monotonic improvement?
What I mean is that the value, something is monotonic if the new policy is greater than equal to the old policy for all states。
So it has to either have the same value or be better。 And my proposition is that the new policy。
is greater than or equal to the old policy in all states with strict inequality if the old policy。
was suboptimal。 So why does this work? So it works for the following reasons。 Let’s go ahead and。
just like walk through the proof briefly。 Okay so this is what we’ve said here is that。
the pi i of s that’s our old value of our policy so this is like our old policy value。
has to be less than or equal to max a of q pi i of s a。 And this is just by definition。
I’ll let me write this。 Is equal to r of s of pi i plus one of s because remember the way that we defined pi of i plus one。
of s is just equal to the policy that max maximizes the q pi i。
So this is going to be by definition。 So I’ve gotten rid of the max there。
Okay so this is going to be less than or equal to r the same thing at the beginning。
Times max over a over q pi i。 Again my definition because we’ve said at the first thing there that we know that b pi i of s prime。
would also be less than or equal to max over a of q pi i of s prime a prime。 Okay we just made。
that substitution and then we can re-expand this part using r reward。 So this is going to be max。
over a prime r of s prime a prime plus dot dot dot basically making that substitution from that。
line into there。 So I’m nesting it。 I’m re-expanding what the definition is of q pi。
And if you keep doing this forever essentially we just keep pushing in as if we get to continue。
to take pi i plus one on all future time steps and what the key thing to notice here is that this。
is a greater than or equal to。 So if you nest this in completely what you get is that this is the value。
pi i plus one。 So there’s kind of two key tricks in here。 The first thing is to say notice that the。
v pi i is always lower is the lower bound to max a over q pi and then to re-express this using the。
definition of pi i plus one and then to re-upper bound that v by q pi and just keep re-expanding it。
So you can do this out and then that allows you to redefine to when you’ve substituted in for all。
actions using pi i plus one then you’ve now defined what the value is of pi i plus one。
So this is what it allows us to know that the new pi i plus one value is by definition at least as。
good as the previous value function。 So I just put that in there and we need to think。
All right so the next questions that might come up is so we know we’re going to get this monotonic。
improvement。 So the questions would be if the policy doesn’t change can it ever change again?
Is there a maximum number of iterations of policy iteration? So what do I mean by iterations here?
Iterations is i。 So kind of how many policies could we step through?
So why don’t we take like a minute and just think about this maybe talk to somebody around you。
that you haven’t met before and see what you think of these two questions。
So policy is monotonically improving and is there a maximum number of iterations that school read for?
[inaudible], Just in the interest of time for today。
Just in the interest of time for today because I want us to。
try to get through value iteration as well。 Why does that? Does somebody want to give me a guess。
of whether or not the policy can ever if the policy stops changing whether it can ever change。
again? So what I mean by that is that if the policy at pi, so the question here was to say if。
pi of i plus 1 is equal to pi i for all states, can it ever change again? So I may want to。
share a guess of whether or not that’s true。 Once it has stopped changing。
it can never change again。 So no。 And the second question is is there a maximum number of policy iterations?
Yeah。 There’s no you get up moderation when there are policies。 That’s right。
We know that there is at most A to the S policies。 You cannot repeat a policy ever。
Because of this monotonic improvement。 And so there’s a maximum number of iterations。 Great。
And this just I’ll skip through this now just so we can go through a bit of value iteration。
but this just steps through to show a little bit more of how once your policies stop changing。
essentially your Q pi will be identical。 And so you can’t there’s no policy。
improvement to be to change after it’s sort of converged。 You’re going to stay there forever。 Okay。
So policy iteration computes the optimal value in a policy in one way。 The idea in policy。
iteration is you always have a policy that is that you know the value of it for the infinite horizon。
And then you incrementally try to improve it。 Value iteration is an alternative approach。
Value iteration instead says we’re going to think of computing the optimal value if you get to act。
for a finite number of steps。 The beginning just one step and then two steps and then three steps。
etc。 And you just keep iterating to longer and longer。 So that’s different, right? Because policy。
says you always have a policy and you know what its value is。 It just might not be very good。
Value iteration says you always know what the optimal value in policy is, but only if you’re。
going to get to act for say K time steps。 So they’re just they’re computing different things。
And they both will converge to the same thing eventually。 So when we start to talk about value。
iteration it’s useful to think about Bellman。 So the Bellman equation and Bellman backup operators。
are things that are often talked about in Markov decision processes and reinforcement learning。
So this constraint here that we’ve seen before which says that the value of a policy is its immediate。
reward plus it’s discounted sum of future rewards is known as the Bellman equation。
The constraint for a Markov process that Markov decision processes it has to satisfy that。
And we can alternatively like what we were just seeing before think of this as a backup operator。
which means that we can apply it to an old value function and transform it to a new value function。
So just like what we were doing in some of the evaluation of a policy we can also sort of do。
these operators in this case the difference compared to what we’ve seen with evaluation before is we’re。
taking a max there。 We’re taking this max A over the best immediate reward we could it plus the discounted。
sum of future rewards。 So sometimes we’ll use the notation of Bv to mean a Bellman operator。
which means you take your old V and then you plug it into here and you do this operation。
So how does value iteration work? The algorithm can be summarized as follows。 You start off you。
can initialize your value function to zero for all states and then you loop until you converge。
or if you’re doing a finite horizon which you might not have time to get to today but。
then you go to that horizon and basically for each state you do this Bellman backup operator。
So you say my value at k plus one time steps for that state is if I get to pick the best。
immediate action plus the discounted sum of future rewards using that old value function I had。
from the previous time step。 And that VK said what is the optimal thing my optimal value for that state。
S prime given that I got to act for k more time steps。 That’s why initializing it to zero is a。
good thing to do because in this case or certainly reasonable thing to do if you want these all to be。
the optimal as if you had that many time steps to go。
If you have no more time steps to act your value, is zero the first backup you do will basically say what is the optimal immediate action you should。
take if you only get to take one action and then after that you start backing up and continuing。
and say well what if I got to act for two time steps what if I got to act for three time steps。
what’s the best sequence of decisions you could do in each of those cases。
Again just in terms of Bellman operations if we think back to sort of what policy iteration is。
doing you could instantiate this Bellman operator by fixing what the policy is。
And so if you see sort, of the B with a pie on top it’s saying well instead of taking that max over actions you’re。
specifying what is the action you get to take。 So policy evaluation you can think of is basically。
just computing a fixed point of repeatedly applying this Bellman backup until V stops converging and stops。
changing。 So in terms of policy iteration this is very similar to what we saw before you can think。
of it in these Bellman operators and doing this arg max。 Want to see if we can get to a little bit。
on sort of the contraction operator。 So this is what value iteration does it’s very similar policy。
iteration and evaluation。 Let me talk a little bit about the contraction aspect。
So for any operator, let’s let O be an operator and X denote a norm of X。
So X can be a vector like a value function, and then you could look at like an L2 norm or an L1 norm or an L infinity norm。
So if you want to if an operator is a contraction it means that if you apply it to two different。
things you can think of these as value functions then the distance between them shrinks after or at。
least is no bigger after you apply the operator compared to their distance before。 So just to。
actually I’ll save examples for later。 Feel free to come up to me after class if you want to see。
an example of this or I can do it on Piazza but this is sort of the formal definition of what。
it means to be a contraction。 The distance between in this case we’re going to think about is two。
vectors doesn’t get bigger and can shrink after you apply this operator。
So the key question of whether or not value iteration will converge is because the Bellman。
back up is a contraction operator。 It’s a contraction operator as long as gamma is less than one。
Which means that if you do let’s say you had two different value functions and then you did the。
Bellman back up on both of them then the distance between them would shrink。
So how do we prove this? We prove it for interest of time I’ll show you the proof again I’m happy to。
go through it or we can go through it in the office hours etc。 Let me just show it kind of briefly。
So the idea to prove that the Bellman back up is a contraction operator is we consider there。
being two different value functions K and J。 They don’t have to be this doesn’t have to be anything。
to do with value iteration。 These are just two different value functions。 One could be you know。
one three seven two and the other one could be five six nine eight。 So we just have two different。
vectors of value functions and then we re-express what they are after we apply the Bellman back up。
operator。 So there’s that max a the media reward plus the discounted sum of future rewards where。
we plugged in our two different value functions and then what we say there is well if you get to。
pick that max a separately for those two the distance between those is lower bounded than if you kind。
of try to maximize that difference there by putting that max a and then you can cancel the rewards。
So that’s what happens in the third line and then the next thing we can do is we can bound and say。
the difference between these two value functions is if is bounded by the max norm of the distance。
between those two。 So you can pick the places at which those value functions most differ and then。
you can move it out of the sum and now you’re subbing over a probability distribution that has to sum to。
one and that gives you this and so that means that the Bellman back up as long as this is less than one。
has to be a contraction operator。 The distance between the two value functions can’t be larger。
after you apply the Bellman operator than it was before。
So I think a good exercise to do is to then say given that it’s a contraction operator。
that means it has to converge to a fixed point there has to be unique solution。
So if you apply the Bellman operator repeatedly there’s a single fixed point that you will go to。
which is a single vector of values。 It’s also good to think about whether the initialization。
of values impacts anything if you only care about the result after it’s converged。
Alright so I think we can hold there classes basically over there’s a little bit more in the。
slides to talk about the finite horizon case and feel free to reach out to us on Piazza with any。
questions。 Thanks。
[BLANK_AUDIO]。
605



被折叠的 条评论
为什么被折叠?



