在 Q 学习(以及一般基于价值的强化学习)中,我们通常对学习 Q 函数感兴趣,Q(s,a). 这被定义为
Q(s,a)=Eπ[Gt|St=s,At=a].
对于表格 Q 学习,您有一个有限的状态和动作空间,您可以维护一个表格查找来维护您当前对 Q 值的估计。请注意,在实践中,即使空间有限也可能不足以不使用 DQN,例如,如果您的状态空间包含大量数字,例如1010000, 的状态,那么为每个状态-动作对维护一个单独的 Q 函数可能是不可管理的
当您拥有无限的状态空间(和/或动作空间)时,就不可能使用表格,因此您需要使用函数逼近来概括各个状态。由于它们的表达能力,这通常使用深度神经网络来完成。作为技术方面,Q 网络通常不将状态和动作作为输入,而是接受状态的表示(例如d维向量或图像)并输出大小为实值的向量|A|, 在哪里A是动作空间。
现在,在您的问题中,您似乎对为什么使用模型(神经网络)感到困惑,而正如您正确地说的那样,Q-learning 是无模型的。这里的答案是,当我们谈论强化学习是无模型的时,我们并不是在谈论它们的价值函数或策略是如何参数化的,我们实际上是在谈论算法是否使用过渡动态模型来帮助他们学习. 也就是说,无模型算法不使用任何关于p(s′|s,a)而基于模型的方法希望使用这个转换函数——或者因为它在 Atari 环境中完全已知,或者它必须被近似——来执行动态规划。