今天接着上一讲,继续讲value functions相关的内容
先回顾Q-learning。上一讲讲到 Qϕ Q ϕ 除了tabular的情形之外,用任何function approximator(比如NN),那么算法的收敛性就无法得到保证。但本讲主要讲,怎么在实际中,让算法以较大的概率收敛。
两个问题,一个是correlation,另一个是not gradient descent!
correlation问题的解释如下,由于相关性很严重,那么最终拟合的曲线就是一部分,而无法对整条曲线获得很好的拟合,因为samples不是iid的。在actor-critic算法中也会遇到这种情况,最终的解决办法是,parallelism!这同样可以用到Q-learning中:
但上面不是唯一的解决办法,还有一种更好的(利用了Q-learning是off-policy算法):
好的,correlation的问题使用replay buffer的方法解决了,但是还有一个no gradient descent的问题!这个问题没有因为replay buffer的使用而得到解决,因为no gradient descent讨厌的原因在于,它的target y总是在变化。
对比Q-learning和regression,引出fixed target 。也就是让Q-learning more regression-like,也会更加stable。因为target不再每个iteration都变化,从原先的 moving target变成了fixed target(不过也只是阶段性的fixed)!
综合replay buffer和target networks之后的Q-learning,虽然仍然不能guarantee convergence。但是相比以前,已经使得训练稳定了许多。但是这样付出的代价是,使得训练更加费时间了。这其实是trade off speed of convergence。
经典的DQN算法:
Alternative target network
Fitted Q-iteration and Q-learning
Online Q-learning,DQN,Fitted Q-iteration其实就是general view情况下,3个process的执行情况不同!