我目前正在阅读使用 Scikit-Learn 和 Tensorflow 进行机器学习的手,我想知道为什么 Q-learning 需要演员模型和批评者模型来学习?
在第 465 页,它指出:
正如我们将看到的,我们将使用的训练算法需要两个具有相同架构(但参数不同)的 DQN:一个将用于在训练期间驱动吃豆人女士(演员),另一个将观看演员和从它的试验和错误中学习(批评者)。
这是典型的 Q-learning 实现吗?如果不是,那是什么?
我目前正在阅读使用 Scikit-Learn 和 Tensorflow 进行机器学习的手,我想知道为什么 Q-learning 需要演员模型和批评者模型来学习?
在第 465 页,它指出:
正如我们将看到的,我们将使用的训练算法需要两个具有相同架构(但参数不同)的 DQN:一个将用于在训练期间驱动吃豆人女士(演员),另一个将观看演员和从它的试验和错误中学习(批评者)。
这是典型的 Q-learning 实现吗?如果不是,那是什么?
您正在阅读的这本书的条款有些松懈。它使用术语“actor”和“critic”,但还有另一种算法,称为actor-critic,它最近非常流行,与Q learning有很大不同。Actor-critic 确实有两个函数估计器,它们具有引用中建议的角色。Q-learning 有一个这样的估计器*。
我已经更详细地查看了这一章,它在哪里说:
一个将用于在训练期间驾驶吃豆人女士(演员),另一个将观察演员并从其尝试和错误中学习(评论家)。
我会替换:
一个将用于从当前动作中学习,另一个将记住一些时间步骤前的结果,以便估计下一个动作的值。
这不是 Q-learning 固有的一部分,但它是 DQN 在将 Q-learning 与神经网络相结合时调整的一部分。经验回放和拥有两个学习网络副本(一个是另一个临时“冻结”版本)对于稳定学习算法都很重要。没有它们,它可能会在数值上变得不稳定。
这是典型的 Q-learning 实现吗?
这是基本 DQN 的典型实现,现在有多少人会用神经网络实现 Q-learning。
您可以忽略对“演员”和“评论家”的引用。相反,更容易考虑只有一个“行动价值”网络,并且您保留它的旧副本以帮助稳定。
* 通常在 RL 中,术语“模型”是为环境模型保留的——Q-learning 和 actor-critic 都没有提供。因此,您还将了解到 Q-learning 是一种“无模型”算法。在本书的其余部分,您将看到“模型”指代任何统计学习算法(或架构和学习参数)。. . 您将在 RL 文本中看到的是对“函数估计器”或其他网络术语的谨慎使用,这些术语学习了环境行为之外的其他内容。