16.1 任务与奖赏


上图给出了强化学习的一个简单图示。强化学习任务通常用马尔可夫决策过程(MDP)来描述:
机器处于环境E中,状态空间为X,其中每个状态x∈X是机器感知到的环境的描述,如在种瓜任务上这就是当前瓜苗长势的描述;
机器能采取的动作构成了动作空间A,如种瓜过程中有浇水、施不同的肥、使用不同的农药等多种可供选择的动作;
若某个动作a属于A作用在当前状态x上,则潜在的转移函数P将使得环境从当前状态按某种概率转移到另一个状态,如瓜苗状态为缺水,若选择动作浇水,则瓜苗长势会发生变化,瓜苗有一定的概率恢复健康,也有一定的概率无法恢复;在转移到另一个状态的同时,环境会根据潜在的奖赏函数反馈给机器一个奖赏,如保持瓜苗健康对应奖赏+1,瓜苗凋零对应奖赏-10,最终种出了好瓜对应奖赏+100.

机器要做的是通过在环境中不断地尝试而学得一个策略。策略地优劣取决于长期执行这一策略后得到地累积奖赏。
强化学习地目的就是要找到能使长期累积奖赏最大化地策略。

16.2 K-摇臂赌博机

16.2.1 探索与利用

与一般监督学习不同,强化学习任务地最终奖赏是在多步动作之后才能观察到,这里我们不妨先考虑比较简单地情形:最大化单步奖赏,即仅考虑一步操作。需注意的是,即便在这样的简化情形下,强化学习仍与监督学习有显著不同,因为机器需通过尝试来发现各个动作产生的结果,而没有训练数据告诉机器应当做哪个动作。

欲最大化单步奖赏需考虑两个方面:一是需知道每个动作带来的奖赏,二是要执行奖赏最大的动作。若每个动作对应的奖赏是一个确定值,那么尝试一遍所有的动作便能找出奖赏最大的动作。然而,更一般的情形是,一个动作的奖赏值是来自于一个概率分布,仅通过一次尝试并不能确切地获得平均奖赏值。

实际上,单步强化学习任务对应了一个理论模型,即K-摇臂赌博机。如图所示,K-摇臂赌博机有K个摇臂,赌徒在投入一个硬币后可选择按下其中一个摇臂,每个摇臂以一定地概率吐出硬币,但这个概率赌徒并不知道。赌徒的目标是通过一定的策略最大化自己的奖赏,即获得最多的硬币。

若仅为获知每个摇臂的期望奖赏,则可采用“仅探索法”:将所有的尝试机会平均分配给每个摇臂(即轮流按下每个摇臂),最后以每个摇臂各自的平均吐币概率作为其奖赏期望的近似估计。
若仅为执行奖赏最大的动作,则可采用“仅利用法”:按下目前最优的(即到目前为止平均奖赏最大的)摇臂,若有多个摇臂同为最优,则从中随机选取一个。
仅探索法能很好地估计每个摇臂地奖赏,却会失去很多选择最优摇臂的机会;
仅利用法则相反,它没有很好地估计摇臂期望奖赏,很可能经常选不到最优摇臂。
事实上,探索利用这两者是矛盾的,因为尝试次数有限,加强了一方则会自然削弱另一方,这就是强化学习所面临的探索-利用窘境。显然,欲累积奖赏最大,则必须在探索与利用之间达成较好的折中。

16.2.2 ε-贪心

ε-贪心法基于一个概率来对探索和利用进行折中:每次尝试时,以ε的概率进行探索,即以均匀概率随机选取一个摇臂;以1-ε的概率进行利用,即选择当前平均奖赏最高的摇臂。

16.2.3 Softmax

Softmax算法基于当前已知的摇臂平均奖赏来对探索和利用进行折中。若各摇臂的平均奖赏相当,则选取各摇臂的概率也相当;若某些摇臂的平均奖赏明显高于其他摇臂,则它们被选取的概率也明显更高。

16.3 有模型学习

考虑多步强化学习任务,机器已对环境进行了建模,能在机器内部模拟出与环境相同或近似的状况。在已知模型的环境中学习称为有模型学习

16.3 1 策略评估


16.3.2 策略改进

对某个策略的累积奖赏进行评估后,若发现它并非最优策略,则当然希望
对其进行改进。理想的策略应能最大化累积奖赏

16.3.3 策略迭代与值迭代

从一个初始策略出发,先进行策略评估,然后改进策略,评估改进的策略,再进一步改进策略,…不断迭代进行策略评估和改进,直到策略收敛、不再改变为止。这样的做法称为“策略迭代”。

策略改进与值函数的改进是一致的,因此可将策略改进视为值函数的改善。于是可得到值迭代算法。

16.3 免模型学习

若学习算法不依赖环境建模,则称为免模型学习。这比有模型学习要困难得多。

16.4.1 蒙特卡罗强化学习

在免模型情形下,策略迭代算法首先遇到的问题是策略无法评估,这是由于模型未知而导致无法做全概率展开。此时,只能通过在环境中执行选择的动作,来观察转移的状态和得到的奖赏。受K摇臂赌博机的启发,一种直接的策略评估替代方法是多次“采样”,然后求取平均累积奖赏来作为期望累积奖赏的近似,这称为蒙特卡罗强化学习。由于采样必须为有限次数,因此该方法更适合于使用T步累积奖赏的强化学习任务。
被评估与被改进得是同一个策略的称为同策略蒙特卡罗强化学习算法

反之,称为异策略蒙特卡罗强化学习算法

16.4.2 时序差分学习

蒙特卡罗强化学习算法通过考虑采样轨迹,克服了模型未知给策略估计造成的困难。此类算法需在完成一个采样轨迹后再更新策略的值估计,而前面介绍的基于动态规划的策略迭代和值迭代算法在每执行一步策略后就进行值函数更新。两者相比,蒙特卡罗强化学习算法的效率低得多,这里的主要问题是蒙特卡罗强化学习算法没有充分利用强化学习任务的MDP结构。时序差分(TD)学习则结合了动态规划与蒙特卡罗方法的思想,能做到更高效的免模型学习。
蒙特卡罗强化学习算法的本质,是通过多次尝试后求平均来作为期望累

16.5 值函数近似

16.6 模仿学习

在强化学习的经典任务设置中,机器所能获得的反馈信息仅有多步决策后的累积奖赏,但在现实任务中,往往能得到人类专家的决策过程范例,例如在种瓜任务上能得到农业专家的种植过程范例。从这样的范例中学习,称为“模仿学习”。

16.6.1 直接模仿学习

强化学习任务中多步决策的搜索空间巨大,基于累积奖赏来学习很多步之前的合适决策非常困难,而直接模仿人类专家的“状态-动作对”可显著缓解这一困难,我们称其为“直接模仿学习”。

16.6.2 逆强化学习

在很多任务中,设计奖赏函数往往相当困难,从人类专家提供的范例数据
中反推出奖赏函数有助于解决该问题,这就是逆强化学习