该篇论文描述了采用函数逼近法进行深度强化学习所遇到的问题,即会产生过高估计。
所谓函数逼近,指的是采用复杂函数估计state-value function值。一般Q-learning有以下表示:
\[\mathcal { Q } ( s , a ) \quad - \quad r _ { s } ^ { a } + \gamma \underset { \hat { a } \text { accion } } { \max } \mathcal { Q } \left( s ^ { \prime } , \hat { a } \right) \]
假设我们采用一个函数Q_approx(s,a)对真实的Q_target(s,a)进行估计,若设估计误差为$Y_{s'}^{\hat{a}}$,则具有下面等式:
\[\mathcal { Q } ^ { \text { approx } } \left( s ^ { \prime } , \hat { a } \right) = \mathcal { Q } ^ { \text { target } } \left( s ^ { \prime } , \hat { a } \right) + Y _ { s ^ { \prime } } ^ { \hat { a } }\]
我们希望估计误差为稳定的,若强化学习算法收敛,$Y_{s'}^{\hat{a}}$具有0均值。定义Z如下:
\[Z _ { s } \stackrel { d f } { = } \quad r _ { s } ^ { a } + \gamma \max _ { a \text { action } } \mathcal { Q } ^ { \text { approx } } \left( s ^ { \prime } , \hat { a } \right) - \left( r _ { s } ^ { a } + \gamma \max _ { a \text { action } } \mathcal { Q } ^ { \text { target } } \left( s ^ { \prime } , \hat { a } \right) \right)\]
Z反映了每轮迭代后,新的state-value function估计值与真实值的误差,显然Z也应该具有0均值性质。
但是注意到这里采用了max操作符,因此在$ \quad r _ { s } ^ { a } + \gamma \max _ { a \text { action } } \mathcal { Q } ^ { \text { approx } } \left( s ^ { \prime } , \hat { a } \right)$这一步中总是偏向于选择具有更大$Y_{s'}^{\hat{a}}$的action进行计算(可以试想如果真实情况系所有Q(s,a)值都相等,此时哪一个动作的Q(s,a)估计具有更大的$Y_{s'}^{\hat{a}}$误差就容易被选中)。从这里可以看出Z就不具有0均值性质了。产生了overestimating。
随后,作者举了两个例子对上述问题进行更进一步讨论,一个例子为所有对于给定s下任意状态a,Q(s,a)值都相等,在这种情况下给出了误差Z的均值估计。另一个例子为一个简化的强化学习模型多步迭代发生的过高估计情况。
来源:oschina
链接:https://my.oschina.net/u/4397620/blog/3619316