深度 Q 网络(Deep Q-Network,DQN)是一种结合了深度学习和强化学习的方法,用于解决离散状态和离散动作空间的强化学习问题。DQN 的核心思想是使用深度神经网络来近似 Q 函数,从而学习复杂环境中的最优策略。
以下是 DQN 的主要特点和工作原理:
-
Q-Value 函数的逼近: DQN 使用一个深度神经网络来逼近 Q 函数。神经网络接收环境的状态 s 作为输入,并输出每个可能动作 a 的 Q 值。网络的权重参数被训练以最大化 Q 值的累积奖励。
-
经验回放(Experience Replay): DQN 引入经验回放来提高训练的稳定性和效率。在经验回放中,智能体 agent 将之前的经验存储在一个经验缓冲区中,然后在训练时随机抽样这些经验进行训练。这有助于打破数据之间的时序相关性,减少训练中的相关性和提高样本的利用效率。
-
目标 Q-Value 的固定目标: 为了提高训练的稳定性,DQN 引入了目标 Q 网络,其参数在训练过程中固定一段时间。目标 Q 网络的参数用于计算训练过程中的目标 Q 值,减少训练中的目标值的不稳定性。
-
ε-greedy 策略: DQN 在探索与利用的平衡上采用 ε-greedy 策略。具体地,以 ε 的概率随机选择一个动作,以 1-ε 的概率选择当前估计的最优动作。
-
深度卷积神经网络结构: DQN 常常使用深度卷积神经网络(CNN)来处理环境中的原始图像数据,例如在游戏环境中。这使得 DQN 能够直接从像素中提取特征。
DQN 在 2015 年由 DeepMind 提出,并成功应用于解决 Atari 2600 游戏中的控制问题。由于其在处理高维输入和离散动作空间上的优越性能,DQN 的思想对于强化学习的发展产生了深远的影响,也启发了后续的深度强化学习算法的发展。