这是一篇总结。2018~2019年对“熵强化学习”研究的一个总结。
Soft Reinforcement Learning (SRL) 是强化学习的一个新的范式,脱胎于最大熵强化学习 (Maximum Entropy Reinforcement Learning)。相比之下,我称普通的强化学习为 Hard Reinforcement Learning (HRL)。
SRL可以称为maximum entropy reinforcement learning, 也可以称为 reinforcement learning with entropy regularization,还可以称为 reinforcement learning with energy-based policies,侧重点各不一样,为了避免歧义,把握本质,另外为了引起业界对这个领域的兴趣,我给这个领域命名为 “Soft Reinforcement Learning”,可以翻译成“熵强化学习”。
Soft 源于Softmax,而Hard指代Max。下面介绍SRL的核心思想以及其带来的影响。我对“熵强化学习”的研究起点是这篇论文:
“Reinforcement Learning with Deep Energy-Based Policies”
https://arxiv.org/abs/1702.08165
非常喜欢“熵”的概念,这项研究把熵引入到强化学习中。通俗的理解,“熵”表示分布的多样性,越多样熵越大。比如,在物理中系统的一个宏观状态可以对应的微观状态越多样,系统的熵越大。通常无序的系统能对应的微观状态越多(熵越大),所以也经常用熵来指代无序的程度。又比如,在信息论中,一个变量越随机(无序),熵越大。
SRL中的“熵”指的是策略的熵,增大策略熵也即增大策略动作的多样性:
一个重要的定理:
上式中的soft value function现在通常写成:
Z(s_t) 为配分函数,起归一化的作用。
定理的核心结论是:SRL的optimal policy 是 SOFT 的(起名SRL的原因),即 optimal policy 是 Q-value 的 softmax 函数。而HRL 的 optimal policy 是 HARD 的,即 optimal policy 是 Q-value 的max函数。如果SRL中的alpha取为0,则SRL退化成HRL。也就是说:HRL是SRL的一个特例:
为了进一步阐释SRL的内涵和影响,这里举一个例子说明。如上图所示:
问题设置:Agent从圈点出发到达星点可以获得奖励,同时每走一步都有很小的体力损耗惩罚,Agent通过学习来达到最优策略。
这里我们考虑p1,p2两个策略,p1是最优策略,p2是次优策略。设在圈点的Q-value为 Q(s0,a),p1,p2分别对应Q1=Q(s0,a1), Q2=Q(s0,a2),Q1>Q2。对于HRL,Agent学到的最优策略为:p1;而对于SRL,Agent学到的最优策略是p1和p2的组合,p1/p2 = exp((Q1-Q2)/alpha),alpha=0时退化为p1。
这也正是SRL有别于HRL的地方。随着训练的进行,HRL会遗忘p2,信息不断损失,甚至导致训练崩溃。即便得到了最优策略p1,如果现在我们阻断p1红线道路,只保留蓝线p2道路,因为p2信息的丢失,HRL需要从头学习最优策略p2。而SRL一直保留p2的信息,SRL可以快速转换到p2,更robust。
强化学习的一个重要的特点是:算法控制数据的来源,数据决定AI的表现。
具体而言(这里讨论基础强化学习),算法控制exploration和exploitation的平衡,继而控制数据流,数据流的好坏决定RLSystem的好坏。可以从3个方面来看一个RLSystem的优劣:
通过上面的分析,exploration-exploitation平衡决定着RLSystem的好坏。如果需要给出一个指标来表征exploration-exploitation平衡的话,那就是策略熵。既然策略熵那么重要,我们自然就希望能够控制熵,HRL无法做到这一点,而SRL可以做到这一点。这也正是SRL的核心价值所在。如果把强化学习比喻成炼丹的话,SRL相比HRL多了一个控制器(alpha),比如控制炼丹炉的温度,炼出想要的仙丹。而不再像HRL那样盲目,炼出啥是啥。
前人对熵强化学习的研究集中在off-policy 的 Q-learning。首先,我觉得现有的理论证明有点冗长,不够简洁,所以另辟蹊径,从另一个角度 —— Policy Gradient Theorem,来思考熵强化学习的问题。其次,我觉得业界低估了策略熵对exploration-exploitation平衡的统领作用,所以致力于推进熵强化学习,推出熵强化学习算法。最后,我觉得熵强化学习不应只局限在off-policy 的 Q-learning这个很小的领域,所以统一了整个强化学习领域,把熵强化学习推广成一个新的强化学习范式。