价值函数近似相关内容学习,预测与控制,包括DQN网络的原理
基于表格的方法将状态价值函数或动作价值函数储存到表格当中,并且需要学习每个状态下的价值,不仅消耗内存,同时单独的学习每个状态下的价值消耗时间较长,因此提出价值函数近似的方法,采用参数化的方式储存 V 、 Q 、 π V、Q、\pi V、Q、π
采用均方误差: J ( w ) = E π [ ( v π ( s ) − v ^ ( s , w ) ) 2 ] J(w)=E_{\pi}[(v^{\pi}(s)-\hat v(s,w))^2] J(w)=Eπ[(vπ(s)−v^(s,w))2],梯度以及参数更新: Δ w = − 1 2 ∇ w J ( w ) \Delta w=-\frac{1}{2}\nabla_wJ(w) Δw=−21∇wJ(w), W t + 1 = W t + Δ w W_{t+1}=W_t+\Delta w Wt+1=Wt+Δw
线性价值函数近似:
对于价值函数近似,在RL当中并没有大量的数据进行监督学习训练参数化的价值函数,在RL有的回报,因此将 G t G_t Gt代替target V π ( s ) V^{\pi}(s) Vπ(s)进行训练,产生回报的采用遵循MC或TD算法,如下图
产生数据:多次采样完整的episode,产生了一系列(状态-回报)数据对,用于监督学习,优化近似价值函数。
优化:
线性或非线性的MC算法最终都能够收敛。
TD的方法具有偏差与低方差的性质。
训练数据:
优化:
这里的优化过程称为半梯度下降,原因是对损失函数求导时**,只考虑了预测值( v ^ ( s , w ) \hat v(s,w) v^(s,w)),而忽略了 R + γ v ^ ( s ′ , w ) R+\gamma \hat v(s',w) R+γv^(s′,w)中的w**
线性TD(0)的方法能够收敛到全局最优值
采用网络近似q函数,输入s,a得到q进行策略评估,采用 ϵ − G r e e d y \epsilon-Greedy ϵ−Greedy策略进行策略提升
对于TD的方法,采样到一个数据进行更新一次,这样具有很大的问题,因为对于有监督训练,要求数据满足独立同分布,但TD产生的数据带有序列的特性,前后具有关联,因此提出批量强化学习。
采用带有经验回放的随机梯度下降的方法
首先给出由一系列数据组成的经验D:
从经验池中随机采取数据进行训练,这样打破了数据间的关联性。
TD算法在更新参数时不遵循任何目标函数的梯度是导致它在离线策略或使用非线性近似函数可能会发散的原因,我们可以通过修改TD算法使得它遵循Projected Bellman Error的梯度进而收敛。
上述提出的VFA的控制方法,都存在着两个问题:样本间具有关联性、半梯度的问题(非固定的targets)
DQN网络提出Experience replay、Fixed Q targets解决上述的两个问题
首先将采样的数据储存在回收池当中
为消除数据间的关联性采取以下流程进行更新参数:
从经验回收池中随机采样一组数据,根据这组数据计算target
采用随机梯度下降更新网络参数
为提升稳定性,首先固定target的参数进行网络参数的更新,多轮更新后,再更新target参数固定后进行训练
具体步骤: