2017 Fall CS294 Lecture 8 Advanced Q-learning algorithms
今天接著上一講,繼續講value functions相關的內容
先回顧Q-learning。上一講講到除了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的執行情況不同!