时序差分学习

时序差分学习(,TD learning)是一类无模型强化学习方法的统称,这种方法强调通过从当前价值函数的估值中自举的方式进行学习。这一方法需要像蒙特卡罗方法那样对环境进行取样,并根据当前估值对价值函数进行更新,宛如动态规划算法。

和蒙特卡罗法所不同的是,时序差分学习可以在最终结果出来前对其参数进行不断地调整,使其预测更为准确,而蒙特卡罗法只能在最终结果产生后进行调整。这是一种自举式的算法,具体的例子如下:
假設你需要預測星期六的天氣,並且手頭上正好有相關的模型。按照一般的方法,你只有到星期六才能根據結果對你的模型進行調整。然而,當到了星期五時,你應該對星期六的天氣有很好的判斷。因此在星期六到來之前,你就能夠調整你的模型以預測星期六的天氣。
数学模型
TD(0)表格法是最简单的时序差分学习法之一,为随即近似法的一个特例。这种方法用于估计在策略\pi之下有限状态马尔可夫决策过程的状态价值函数。现用V^\pi表示马尔可夫决策过程的状态价值函数,其中涉及到状态(s_t)_{t\in\mathbb{N}}、奖励(r_t)_{t\in\mathbb{N}}、学习折扣率\gamma以及策略 \pi :
:V^\pi(s) = E_{a \sim \pi}\left\{\sum_{t=0}^\infty \gamma^tr_t(a_t)\Bigg| s_0=s\right\}.

为了方便起见,我们将上述表达式中表示动作的符号去掉,所得V^\pi满足哈密顿-雅可比-贝尔曼方程:
: V^\pi(s)=E_{\pi}\{r_0 + \gamma V^\pi(s_1)|s_0=s\},

因此r_0 + \gamma V^\pi(s_1)乃是V^\pi(s)的无偏估计,基于这一观察结果可以设计用于估计V^\pi的算法。在这一算法中,首先用任意值对表格V(s)进行初始化,使马尔可夫决策过程中的每个状态都有一个对应值,并选择一个正的学习率\alpha。我们接下来要做的便是反复对策略\pi进行评估,并根据所获得的奖励r按照如下方式对旧状态下的价值函数进行更新:
: V(s) \leftarrow V(s) + \alpha(\overbrace{r + \gamma V(s')}^{\text{The TD target}} - V(s) )
其中s和s'分别表示新旧状态,而 r + \gamma V(s')便是所谓的TD目标(TD target)。

TD-λ算法
TD-λ算法是理查德·S·萨顿基于亚瑟·李·塞谬尔的时序差分学习早期研究成果而创立的算法,这一算法最著名的应用是杰拉尔德·特索罗开发的TD-Gammon程序。该程序可以用于学习双陆棋对弈,甚至能够到达人类专家水准。这一算法中的\lambda值为迹线衰减参数,介于0和1之间。当\lambda越大时,很久之后的奖励将越被重视。当\lambda=1时,将会变成与蒙特卡罗强化学习算法并行的学习算法。
在神经科学领域
时序差分学习算法在神经科学领域亦得到了重视。研究人员发现腹侧被盖区与黑质中多巴胺神经元的放电率和时序差分学习算法中的误差函数具有相似之处一开始猴子接受果汁时,其多巴胺细胞的放电率会增加,这一结果表明预期奖励和实际奖励存在差异。不过随着训练次数的增加,预期奖励也会发生变化,导致其巴胺细胞的放电率不再显著增加。而当没有获得预期奖励时,其多巴胺细胞的放电率会降低。由此可以看出,这一特征与时序差分学习中的误差函数有着相似之处。

目前很多关于神经功能的研究都是建立在时序差分学习的基础之上的,这一方法还被用于对精神分裂症的治疗及研究多巴胺的药理学作用。

参考文献
参考著作
*

延伸阅读

  • See final chapter and appendix.

*
外部链接

评论 (0)

  • 还没有评论,来抢沙发吧。