本帖最后由 Auca 于 2023-11-20 14:22 编辑
根据以往的经验,在讲授一些复杂的东西时,大多数人倾向于按照与主题本身发展相反的顺序进行教学。他们会给出很多定义、术语、描述甚至定理,然后他们会说:“好了,既然我们讲完了所有理论,就来看一些实际问题吧。”在我们看来,这恰恰与事情应该呈现的顺序相反。大多数好的想法都是作为现实问题或者至少是想象出来的问题的解决方案出现的。问题解决者偶然发现一个可能的解决方案,对其加以测试、改进,然后最终将它形式化,甚至可能将其数字化。术语和定义则是在问题的解决方案被开发出来之后才出现的。
无比赞同这句话,在我大学里面使用的教程几乎都是如此,老师在我还没有记住概念的时候就快速开始引用到实际问题之中了。这本书书名中含有”学习实战“,我认为本书的理念绝对符合这一词汇。实战在学习中十分重要,尤其是在深度学习这一领域中。
题归正传,回到本书第二章的内容“强化学习问题建模:马尔可夫决策过程”。
马尔可夫决策过程(Markov Decision Process, MDP),是最经典、也是应用最广泛的一类随机过程,在书中并未对马氏过程有严格的定义,而是例举出一个多臂老虎机的例子来阐述。
多臂老虎机问题是概率论中一个经典问题,也属于强化学习的范畴.设想,一个赌徒面前有N个老虎机,事先他不知道每台老虎机的真实盈利情况,他如何根据每次玩老虎机的结果来选择下次拉哪台或者是否停止赌博,来最大化自己的从头到尾的收益.
关于多臂老虎机问题名字的来源,是因为老虎机在以前是有一个操控杆,就像一只手臂(arm),而玩老虎机的结果往往是口袋被掏空,就像遇到了土匪(bandit)一样,而在多臂老虎机问题中,我们面对的是多个老虎机.
本次的学习的问题为“我们有n个可能的动作(n=10),其中动作意味着拉动一台特定老虎机的臂(杠杆),在该游戏的每一轮(轮次k)中,我们可以选择拉动单个杠杆。在采取动作(a)之后,我们将获得一个奖励Rk(轮次k的奖励)。每个杠杆有唯一的奖励概率分布。”
也许有读者还记得我在第一章中引用了书中的“强化学习算法只有一个目标,即最大化其奖励”。因此这个问题就变得十分清晰了:投入钱,老虎机投出钱,在尝试中找到哪台老虎机平均奖励最高。
对于每台老虎机我们有计算期望奖励公式:
那么如何找到哪台老虎机拥有最高的平均奖励呢?最简单的做法就是取拥有最高期望Q值对应的动作。
这种简单地选择目前为止所知的最佳杠杆的方案称为贪婪(或利用)方法。
贪婪策略
当然,我们完全采取贪婪的方法,显然得不出正确或者接近正确的结果。我们需要探索其他杠杆来发现真正的最佳动作。
进行的简单的修改为:在概率时随机选择动作a,在其他时间()时选择当前从过去游戏中所知的信息得到的最佳杠杆(也就是)
Softmax选择策略
Softmax提供了各个选项的概率分布,而非随机选择一个动作。概率最大的选项将等同于前面解决方案中的最佳动作,它也会提供一些关于次最佳动作和次次最佳动作的信息。
数学公式如下:
函数Pr(A)接受一个动作-向量,并返回一个概率分布。
参数τ是温度参数,用于对动作的概率分布进行缩放。具体使用需要调参。以下是τ参数不同的输出结果:
|