最近,谷歌 DeepMind 的研究人员发表了一篇论文,他们描述了一个击败当前最好的计算机程序和人类欧洲冠军的围棋系统。
我快速浏览了那篇论文,它似乎使用了以前论文中的许多有趣的想法。他们做了什么不同的事情使他们取得了如此惊人的进步?
最近,谷歌 DeepMind 的研究人员发表了一篇论文,他们描述了一个击败当前最好的计算机程序和人类欧洲冠军的围棋系统。
我快速浏览了那篇论文,它似乎使用了以前论文中的许多有趣的想法。他们做了什么不同的事情使他们取得了如此惊人的进步?
AlphaGo 之前的现有程序基于:
1)卷积神经网络(CNN),在现有游戏的数据库上训练。
或者
2)蒙特卡洛树搜索(MCTS)
AlphaGo 基于以下组合:
A) 强化学习:通过让不同版本的 CNN(见上文)相互对抗来训练网络。
和
B) MCTS 使用步骤 A) 生成的移动
最重要的是,通过使用具有大量 CPU 和 GPU 的分布式计算进一步提高了性能。
因此,新颖之处在于上述技术 A) 和 B) 的结合。
他们使用的组件中没有什么是新颖的。已经探索了所有方法。检查他们的参考资料,您会发现许多研究人员都在做类似的工作。新颖之处在于他们遵循的管道以及无模型和基于模型的强化学习方法的结合。我将尝试为您提供关于他们捕获的内容的非技术性不同观点。
无模型方法通常尝试近似函数,例如价值函数(表示在特定状态 - 董事会配置 - 未来奖励方面有多好)或参数化策略函数(在给定状态下选择动作的概率。简要说明,你的模型获得了某种“直觉”,在这种直觉上走法相对较好——类似于职业围棋选手的直觉,当他们宣称自己走棋是因为“感觉”很好时。这在早期阶段非常重要当计划使用效率低下时的游戏。
基于模型的方法试图以决策树的形式模拟游戏的每一个可能的轨迹。因此,它们对于计划很有用(在您在游戏中真正采取行动之前,您检查并评估所有可能的意外情况,然后您决定从当前位置采取哪些行动)。MCTS 就是这样一种算法,它从当前棋盘位置创建一个关于游戏未来可能进程的决策树,并根据某些标准评估这些启发式方法。迄今为止,Go 中最好的算法都是基于该算法(并被视为 RL 算法)。
所以在新颖性方面,一句话:计划与直觉的结合,即MCTS算法与函数逼近器的结合,用于评估模拟的游戏轨迹。在这种情况下,他们对“直觉”部分使用了非常深的卷积神经网络。除此之外,整个模型是数据驱动的,因为它首先是针对人类专家动作进行训练的(这可能在除游戏之外的许多其他领域的应用中有用)。如果你检查每一个组件,没有什么新奇的……但是有效地结合所有这些元素并在那个复杂的领域达到精通的整个过程是新奇的。希望能帮助到你!