Human-level control through deep reinforcement learning-2015 DQN论文研读
DQN是强化学习的代表算法之一,它的原文是发表在Nature上的Human-level control through deep reinforcement learning,本篇博客主要从论文出发,介绍DQN的背景、算法要点、以及实验效果。
文章目录
一、解决问题
本文主要解决了在高维输入下如何利用结合深度神经网络的强化学习打Atari游戏,从而让agent控制目标使得分最高。一个agent可以挑战多种游戏。
传统方法或者过去强化学习研究的局限:要手工提取特征;应用领域局限于完全可观测并且低维度的状态空间。
实验部分将之前文献[1]中的7个Atari游戏扩展到49个游戏中,其中29个效果超过人类水平。
二、强化学习基础
强化学习是与监督学习、非监督学习并列的第三种学习方法。它通过与环境的交互学习到最大化奖励的动作选择策略。
强化学习基本要素
- 环境状态 S S S: t t t 时刻环境的状态 S t S_t St 是它的环境状态集中某一个状态。
- Agent的动作 A A A: t t t 时刻个体采取的动作 A t A_t At 是它的动作集中某一个动作。
- 环境的奖励 R R R: t t t 时刻Agent在状态 S t S_t St 采取的动作 A t A_t At 对应的奖励 R t + 1 R_{t+1} Rt+1会在 t + 1 t+1 t+1时刻得到。
- Agent策略 π \pi π:采取动作的依据,Agent会根据策略来选择动作。分为确定性策略 A = π ( s ) A=π(s) A=π(s)与随机性策略 π ( a ∣ s ) = P ( A t = a ∣ A t = s ) π(a|s)=P(A_t=a|A_t=s) π(a∣s)=P(At=a∣At=s)
- 状态价值与动作价值:
状态价值:Agent在策略 π \pi π和状态 s s s时,采取动作后的价值(value),一般用 v π ( s ) v_π (s) vπ(s)表示:
v π ( s ) = E π [ G t ∣ S t = s ] = E π [ ∑ k = 0 ∞ γ k R t + k + 1 ∣ S t = s ] v_π (s)=E_π [G_t |S_t=s]=E_π [∑_{k=0}^\inftyγ^k R_{t+k+1}|S_t=s] vπ(s)=Eπ[Gt∣St=s]=Eπ[k=0∑∞γkRt+k+1∣St=s]
动作价值:Agent在策略 π \pi π和状态 s s s时,采取动作 a a a后的价值,用 q π ( s , a ) q_π (s,a) qπ(s,a)表示:
q π ( s , a ) = E π [ G t ∣ S t = s , A t = a ] = E π [ ∑ k = 0 ∞ γ k R t + k + 1 ∣ S t = s , A t = a ] \begin{aligned} q_π (s,a)&=E_π [G_t |S_t=s,A_t=a]\\ &=E_π [∑_{k=0}^\inftyγ^k R_{t+k+1} |S_t=s,A_t=a] \end{aligned} qπ(s,a)=Eπ[Gt∣S