深度强化学习课程文档
术语表
并获得增强的文档体验
开始使用
术语表
这是一个社区创建的术语表。欢迎贡献!
表格方法 (Tabular Method): 问题类型,其中状态和动作空间足够小,可以近似值函数,表示为数组和表格。Q-learning 是表格方法的一个例子,因为它使用表格来表示不同状态-动作对的值。
深度 Q-Learning (Deep Q-Learning): 一种训练神经网络的方法,给定一个状态,近似该状态下每个可能动作的不同 Q 值 (Q-values)。它用于解决观测空间过大而无法应用表格 Q-Learning 方法的问题。
时间限制 (Temporal Limitation) 是当环境状态由帧表示时出现的一个困难。单帧本身不提供时间信息。为了获得时间信息,我们需要将多个帧 堆叠 (stack) 在一起。
深度 Q-Learning 的阶段
- 采样 (Sampling): 执行动作,并将观察到的经验元组存储在 回放记忆 (replay memory) 中。
- 训练 (Training): 随机选择批次元组,神经网络使用梯度下降更新其权重。
稳定深度 Q-Learning 的解决方案
经验回放 (Experience Replay): 创建一个回放记忆库来保存经验样本,这些样本可以在训练期间重复使用。这允许智能体从相同的经验中学习多次。此外,它还可以帮助智能体避免在获得新经验时忘记以前的经验。
从回放缓冲区 随机采样 (Random sampling) 可以消除观察序列中的相关性,并防止动作值振荡或灾难性发散。
固定 Q 目标 (Fixed Q-Target): 为了计算 Q 目标 (Q-Target),我们需要使用贝尔曼方程估计下一个状态的折扣最优 Q 值 (Q-value)。问题在于,相同的网络权重被用于计算 Q 目标 (Q-Target) 和 Q 值 (Q-value)。这意味着每次我们修改 Q 值 (Q-value) 时,Q 目标 (Q-Target) 也会随之移动。为了避免这个问题,使用具有固定参数的单独网络来估计时间差分目标。目标网络通过在特定 C 步 (C steps) 后从我们的深度 Q 网络复制参数来更新。
双重 DQN (Double DQN): 一种处理 Q 值 (Q-Values) 高估 (overestimation) 的方法。此解决方案使用两个网络将动作选择与目标 值生成 (Value generation) 解耦。
- DQN 网络 (DQN Network) 用于选择下一个状态的最佳动作(具有最高 Q 值 (Q-Value) 的动作)
- 目标网络 (Target Network) 用于计算在下一个状态采取该动作的目标 Q 值 (Q-Value)。这种方法减少了 Q 值 (Q-Values) 的高估,有助于更快地训练并获得更稳定的学习。
如果您想改进课程,您可以 打开一个 Pull Request。
本术语表由以下人员制作:
< > 在 GitHub 上更新