欢迎光临 x-algo
关注算法在工业界应用
Hi, 这是一个关注大数据算法在工业界应用的网站

强化学习(9)-On-policy Prediction with Approximation

到第九章,终于到了第二部分"Part II: Approximate Solution Methods "

In the second part of the book we extend the tabular methods presented in the first part to apply
to problems with arbitrarily large state spaces.

状态空间很大的时候,很容易遇到以前没有见过的状态, 对这个状态我们其实是没有任何信息的. 那么,能否找到和这个状态相似的已知的状态, 用已知的状态对未知的状态进行预估呢?这个预估的过程其实就是模型泛化的过程.

预测目标误差

9.2.1

其中 \(u(s)\) 表示的是状态s的重要性, 可以用探索s上花费的时间表示.

Stochastic-gradient and Semi-gradient Methods

确定了损失函数, 接下来就是确定梯度更新公式(这里先不考虑状态权重),SGD更新公式:

9.2.2

在真实的迭代中,我们需要知道真实的状态价值作为标注, 只有这样才可以指导模型的学习. 但是如果状态无穷多, \(v_{\pi}(S_t)\) 是没有办法表达出来的,这可怎么办呢?

最简单的方法是,使用 \(v_{\pi}(S_t)\) 的无偏估计代替,如果 \(U_t\) 是其无偏估计,那么要保证下面等式成立:

9.2.3

梯度蒙特卡罗

基于上面的假设, 使用蒙特卡罗生成状态价值的无偏估计,可以得到下面算法:

9.2.4

半梯度时序差分

上面的梯度蒙特卡罗可以根据精确标注 \(G_t\) 进行准确的梯度更新,那么时序查分类方法也可以用梯度进行学习吗?TD(0)中, \(U_t\) 可以表示为:

9.2.5

可以发现其中包含 \(\hat{v}(S_{t+1},w)\) , 这样就导致有一半的信息是自己预测自己, 这一部分明显是不会带来梯度的, 引入有用信息的只有 \(R_{t+1}\) 了,所以叫半梯度, 算法流程为:

9.2.6

这个算法的可以做到online learning,不用等到一个episode结束.

本章后面都是介绍各种模型, 在正常的有监督学习范畴,这里就不记录了

未经允许不得转载:大数据算法 » 强化学习(9)-On-policy Prediction with Approximation

评论 抢沙发

*

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

关注大数据算法在工业界应用

本站的GitHub关于本站