Diagnosing Bottlenecks in Deep Q-learning Algorithms
发表时间:2019(ICML 2019)
文章要点:这篇文章主要是做实验研究Q-learning在加入function approximation之后会出现什么问题,以及具体是什么原因造成的。文章主要研究了function approximation, sampling error和nonstationary,然后分别回答了对应的问题。首先,作者基于Q-learning研究了三个算法,分别是Exact-FQI,Sampling-FQI和Replay-FQI。Exact-FQI就相当于是Q-learning里面加function approximation,因为这个时候的更新是所有states同时更一遍,所以这里不存在sampling error,只有function approximation error。然后Sampling-FQI就是在Exact-FQI的基础上加sampling,而不是所有states都用,所以这里除了function approximation还有sampling error。Replay-FQI就是在Sampling-FQI的基础上再加了一个replay buffer,就是说这个buffer里面会有多个policy产生的样本,是个off policy的方法了,而且可以根据不同的sampling方式得到不同的分布,所以这里还有一个distribution shift的问题。然后作者根据这几个算法一步一步做控制变量的实验,回答了这几个问题。
- What is the effect of function approximation on convergence?
虽然没有收敛保证,但是实验表明加了function approximation其实很少会导致divergence。并且随着网络结构变大(Expressive architectures),function approximation error会很小,对算法性能来说并没有影响。 - What is the effect of sampling error and overfitting?
Overfitting的问题是存在的,并且会影响性能。实验表明Sample的数量也会影响性能,sample越多,效果越好,同时replay buffer的方式也会很好缓解overfitting。另一方面,如果梯度更新太多会overfitting从而影响性能,更新太少会underoverfitting也会影响性能。 - What is the effect of distribution shift and a moving target?
Distribution shift和moving target和算法性能没有相关关系,甚至有的算法有很高的distribution shift但是well-performing。作者进一步发现on policy training distribution并不一定就好,关键在于样本覆盖的状态动作空间越大,效果会越好,也就是说higher-entropy distributions often perform better。
总结:做实验分析每个部分的影响,很充分。另外,这个控制变量或者叫unit testing的方式做得很好,基本上排除了其他因素的影响,很值得学习。
疑问:最后提出的那个adversarial feature-matching (AFM)不懂为啥那么搞,而且效果好像也就那样?