DQN 和 AlphaGo Zero 有什么区别?

人工智能 强化学习 dqn 零字母 深度学习 阿尔法零
2021-11-08 05:23:25

我已经在 Pacman 上实现了一个相对简单的 DQN。

现在我想清楚地了解 DQN 与 AlphaGo zero/AlphaZero 使用的技术之间的区别,但我找不到可以比较这两种方法的特征的地方。

有时,在阅读博客时,我相信不同的术语实际上可能是同一个数学工具,这增加了清楚理解差异的难度。例如,DQN 的变体,例如 Double DQN 也使用两个网络,例如 alpha zero。

有人对这个问题有很好的参考吗?无论是书籍还是在线资源。

2个回答

DQN 和 AlphaZero 在实现方面没有太多共同之处。

但是,它们基于相同的强化学习 (RL) 理论框架。如果您了解 MDP、奖励、回报、价值、政策等术语,那么这些术语可以在 DQN 和 AlphaZero 之间互换。当涉及到实施以及系统的每个部分在做什么时,这是不可互换的。例如,您在 AlphaZero 中读到的两个网络是策略网络和价值网络。而双 DQN 在两个价值网络之间交替。

总结 DQN 和 AlphaZero 并解释它们如何以不同方式扩展基本 RL 框架的最佳资源可能是 Sutton & Barto 的强化学习:简介(第二版) ——第 16 章第 5 和第 6 节涵盖了 DQN Atari 的设计, AlphaGo 和 AlphaZero 有一定深度。

简单来说:

DQN雅达利

  • 是无模型的
  • 使用动作值估计器(s,一个)值,基于卷积神经网络 (CNN)
  • 使用经验回放和暂时冻结的目标网络来稳定学习过程
  • 使用各种技巧来简化和标准化状态描述和奖励结构,以便完全相同的设计和超参数适用于多个游戏,证明它是一个通用学习器。

阿尔法零

  • 是基于模型的(尽管一些学习在技术上是无模型的,基于游戏样本)
  • 使用策略网络(估计π(一个|s))和状态价值网络(估计(s)),基于 CNN。实际上,为了提高效率,这些 NN 共享许多层和参数,因此有多少“网络”取决于您要如何计算它们。
    • 较早的 AlphaGo 版本有 4 个独立的网络、3 个策略网络的变体——在游戏的不同规划阶段使用——和一个价值网络。
  • 围绕自我游戏而设计
  • 使用蒙特卡洛树搜索 (MCTS) 作为估计回报的一部分 - MCTS 是一种对 AlphaZero 的成功至关重要的规划算法,并且在 DQN 中没有等效组件

您实际上可以将类似 AlphaZero 的方法与 DQN 结合起来: A* + DQN