AlphaGo背后这项核心技术,后来怎么样了?( 三 )


DRL是DL领域中迅猛发展起来的一个分支 , 目的是解决计算机从感知到决策控制的问题 , 从而实现通用人工智能 。 以Google DeepMind为首 , 基于DRL的算法已经在视频、游戏、围棋、机器人等领域取得了突破性进展 。
2015年 , Google DeepMind在《自然》杂志上发表的“Human-level control through deep reinforcement learning”论文 , 使得DRL受到了广泛的关注 。
2016年 , DeepMind推出的AlphaGo围棋系统使用蒙特卡罗树搜索与DRL相结合的方法让计算机的围棋水平达到甚至超过了顶尖职业棋手 , 引起了世界性的轰动 。 借此案例 , 我们来简单了解一下蒙特卡罗树搜索和DRL的相关过程 。 如图1.5所示 , 蒙特卡罗树搜索的每个循环包括以下4个步骤 。

  1. 选择:从根节点开始 , 选择连续的子节点向下至叶子节点 。 后面给出了一种选择子节点的方法 , 让游戏树向最优的方向扩展 , 这是蒙特卡罗树搜索的精华所在 。
  2. 扩展:除非任意一方的输赢使得游戏在叶子节点结束 , 否则创建一个或多个子节点并选取其中一个子节点 。
  3. 仿真:从选取的子节点开始 , 用随机策略进行游戏 , 又称为playout或者rollout 。
  4. 反向传播(backpropagation):使用随机游戏的结果 , 更新从选择的子节点到根节点的路径上的节点信息 。
每一个节点的内容代表胜利次数/游戏次数 。
AlphaGo背后这项核心技术,后来怎么样了?
本文插图
▲图1.5 蒙特卡罗树搜索过程
对于DRL来说 , 目前的算法都可以包含在actor-critic框架下 。 actor-critic属于TD学习方法 , 其用独立的内存结构来明确地表示独立于值函数的策略 。
策略结构被称为actor , 因为它用于选择动作;而估计值函数被称为critic , 因为它评价actor所做的动作 。 对于actor-critic框架 , 我们会在后面章节详细讲解 , 现在我们重点探讨DRL , 如图1.6所示 。
AlphaGo背后这项核心技术,后来怎么样了?
本文插图
▲图1.6 DRL的Actor-critic框架
把DRL的算法视为智能体的大脑 , 那么这个大脑包含两个部分:actor行动模块和critic评判模块 。 当然 , 这两个模块都是由深度神经网络构成的 , 也正是DRL中“深度”一词的由来 。 其中actor行动模块是大脑的动作执行机构 , 输入外部的环境状态s , 然后输出动作a 。
而critic评判模块则可被认为是大脑的价值观 , 根据历史信息及回馈r进行自我调整 , 然后对整个actor行动模块进行相关的更新指导 。 这种基于actor-critic框架的方法非常类似于人类自身的行为方式 。
在actor-critic框架下 , Google DeepMind相继提出了DQN、A3C和UNREAL等DRL算法 , 取得了非常不错的效果 , 大大推动了DRL的发展和应用 。
2017年DeepMind又推出了更强大的围棋系统AlphaGo Zero , 通过自我对弈 , AlphaGo Zero不再受限于人类认知 , 在三天内以100比0的成绩战胜了AlphaGo Lee , 花了21天达到AlphaGo Master的水平 , 用40天超越了所有的旧版本 , 与之前版本相比 , 其棋法更像人类 。
如图1.7~图1.9所示 , AlphaGo Zero在使用DRL算法学习到3小时的时候 , 就能够像人类围棋新手一样 , 不注重考虑长期战略 , 而只专注于尽可能多地吃掉对手的棋子 。

AlphaGo背后这项核心技术,后来怎么样了?
本文插图
▲图1.7 AlphaGo使用DRL算法学习3个小时成果示意图
AlphaGo背后这项核心技术,后来怎么样了?
本文插图
▲图1.8 AlphaGo使用DRL算法学习19小时效果示意图


推荐阅读