论文解读:Successor Features for Transfer in Reinforcement Learning

论文题目:Successor Features for Transfer in Reinforcement Learning

论文链接:http://papers.nips.cc/paper/6994-successor-features-for-transfer-in-reinforcement-learning.pdf

论文出处:NeurIPS 2017

摘要:这里的transfer in reinforcement learning指的是RL算法不是仅在某个具体任务中学习最优策略(传统强化学习),而是在不同任务之间通过transfer来学习的更一般的算法。本文提出的迁移学习框架,主要针对reward函数不同,但是环境的动力学模型保持不变的情况。所提出的方法基于两个key ideas:1)successor features (SFs):一种将环境的模型从reward中分离出来的值函数表征;2)generalized policy improvement (GPI):一种考虑一组策略,而不是单个策略的GPI(传统GPI的扩展)。将这两种想法放在一起,可以实现任务之间自由的信息交换(任务迁移)。

论文主要思路

本文所期望的迁移方法需要具备两个性质:1)任务之间的信息流不应由反映任务本身之间的关系(例如层次或时间依赖性)的刚性图来规定。 相反,只要有用,就应该跨任务交换信息。 2)迁移应该尽可能地整合到RL框架中,而不是以单独的问题摆出,最好采用对智能体几乎透明的方式。

本文的创新基于两点:第一,将successor representation方法扩展,提出successor features来描述值函数;第二,将传统针对单个策略的GPI扩展成多个策略的GPI。

Successor Features (SFs)的定义及其学习

传统的强化学习,通过一个特定的reward函数来指定一个具体的任务,即。这里,作者假设reward函数可以表示成

,                    (1)

其中,是关于的特征,时刻下该值记为,是权重。

有了式(1),策略的Q函数可以表示为

.          (2)

(2)式中的就是策略下状态-动作二元组的successor features(如下图所示)。因此,Q函数的学习,包含了对和的学习。

的学习,和reward有关。根据(1)式,如果有了,那么的学习就是普通的监督式学习,。当然,也可以通过监督学习的方式学习。

关于的学习,需要利用(2)式的贝尔曼方程形式,即

.        (3)


Successor Features示意图

通过SFs实现迁移学习:

作者假设在环境的动力学模型不变的情况下,是不变的。因此,根据(1)式,不同的就描述了不同的任务,或者不同的MDP。作者将表示下的所有任务定义为一个MDP集合:

.      (4)

这种情况下,假设source domain包括个任务,即,分别对应个不同的,即,和个最优策略。一旦给定,或者学出来了,则新任务的学习只需要研究和之间的关系就行了。

为此,作者提出了两个定理:

------------------------------------------------------------------------------------------------------------

定理1.(GPI)假设为个不同的策略,并且是它们动作值函数的近似,满足

       (5)

定义新的策略为

          (6)

则            (7)

------------------------------------------------------------------------------------------------------------

这里的GPI是传统强化学习GPI的一种推广,它针对多个任务的策略,对当前任务的策略进行提升。定理1表明,策略(6)不会表现得比中的任何一个策略差。如果,策略(6)将会严格比其它个策略表现得更好。

------------------------------------------------------------------------------------------------------------

定理2. 令,并且为策略在中执行时的动作值函数,其中为下的最优策略。给定一组近似动作值函数的集合,使其满足

            (8)

令  ,并且,其中是由内积诱导的范数。则

.            (9)

------------------------------------------------------------------------------------------------------------

定理2给出了从现有模型中进行迁移学习的误差上界。如果智能体之前学习过类似的任务,即和比较接近,则任务迁移就会比较成功。如果之前没有学习过,那就看前面学过的个任务里,哪个距离比较近了。

以上就是本文算法的核心部分了。在我看来,该算法最值得借鉴的地方就是将reward函数分解成两部分,一部分是状态转移数据的特征,是通用的;一部分是描述任务的权重,和任务有关。这样做,就把一族任务用特征函数来表示了,而任务族内部各任务,则由权重向量来表示。

但是这里的如何设计,如何学习,哪些任务不在以内,作者似乎并没有讲清楚。此外,作者考虑的是离散动作,有限状态的迁移强化学习。该算法在设计上,需要对所有的动作遍历。

关于SFs的迁移强化学习算法今天先介绍到这里,后续针对该算法还会有更详细的补充。

已将所有内容移至知乎个人主页:https://www.zhihu.com/people/wenzhang-liu,以后有新的内容也都在知乎上发布,欢迎关注!

你可能感兴趣的:(论文解读:Successor Features for Transfer in Reinforcement Learning)