AlphaGo Zero论文分析与模型可移植性的思考

Abstract:从用棋谱到扔棋谱,阿元狗完败阿法狗显示强化学习(∈非监督学习)不依赖人的经验也可以通过自学做的很好。其意义在于做AI应用不再需要人工去标注大量样本(非监督学习之区别于监督学习),通过摆脱对人类经验和辅助的依赖,类似的深度强化学习算法或许能更容易地被广泛应用到其他人类缺乏了解或是缺乏大量标注数据的领域。
本文分析了Zero与旧版AlphaGo相比的改进,以及思考该模型是否具有可移植性?文末提出了自己的几个疑问,待解答。

AlphaGo VS AlphaGo Zero

Deepmind:”从空白状态学起,在无任何人类输入的条件下,它能够迅速自学围棋,并以100:0的战绩击败“前辈”。AlphaGo Zero采用了新的reinforcement learning(强化学习的算法),并给该算法带了新的发展。”

阿法狗:基于海量数据样本训练而获得分类预测的能力。

阿法元AlphaGo Zero:在没有任何训练样本的前提下,通过完全的自学,在极具挑战的领域,达到超人的境地。不再被人类认知所局限,而能够发现新知识,发展新策略。

技术:强化学习(reinforcement learning)

训练过程和效果区别:阿法元只需要在4个TPU上,花三天时间,自己左右互搏490万棋局。而它的哥哥阿法狗,需要在48个TPU上,花几个月的时间,学习三千万棋局,才打败人类。

AlphaGo Zero降低了训练复杂度,摆脱了对人类标注样本(人类历史棋局)的依赖,让深度学习用于复杂决策更加方便可行。最有趣的是证明了人类经验由于样本空间大小的限制,往往都收敛于局部最优而不自知(或无法发现),而机器学习可以突破这个限制。

AI学习人类下法,而人类的下棋数据将算法导向了局部最优(local optima)了;放弃学习人类下法而使用完全随机的初始下法,训练过程也一直趋于收敛,未出现难以收敛的现象。

AlphaGo Zero如何实现无师自通?

AlphaGo采用传统增强学习技术+深度神经网络DNN完成搭建。其基于深度学习的增强学习方法按照使用的网络模型数量可以分为两类:

1.一类使用一个DNN”端到端”地完成全部决策过程(比如DQN),这类方法比较轻便,对于离散动作决策更适用;
2.另一类使用多个DNN分别学习子策略网络(policy)和胜率值网络(value)(比如之前战胜李世石的AlphaGoGo),这类方法比较复杂,对于各种决策更通用。

DNN缺点:DNN的一个缺点日益明显: 训练过程需要消耗大量人类标注样本,而这对于小样本应用领域(比如医疗图像处理)是不可能办到的。

AlphaGo Zero如何实现无师自通?

1.将策略网络和价值网络合并,组成一个可以同时输出策略p和价值v的新策略-价值网络:AlphaGo Zero采用类似DQN的一个DNN网络实现决策过程,并利用这个DNN同时输出输出policy和value,然后利用一个蒙特卡罗搜索树完成当前步骤选择。

Q: 为什么变分开训练为同时输出?
A:policy与value网络相当于共用之前大部分的特征提取层,输出阶段的最后几层结构仍相互独立。
作用:节省训练时间 + 混合的policy与value网络也许能适应更多种不同情况。
为什么之前要分开学习和输出:当时暂时做不到。

2.训练过程从完全随机开始:只用随机落子作为初始训练样本,且省去快速走子(需要输入大量人类先验知识),从而解除对人工标注样本的依赖。

Q:为什么可解除依赖?
A:其特征提取层采用了20或40个残差模块,每个模块包含2个卷积层。与之前采用的12层左右的卷积层相比,残差模块的运用使网络深度获得了很大的提升。AlphaGo Zero不再需要人工提取的特征应该也是由于更深的网络能更有效地直接从棋盘上提取特征。这两点结构上的改进对棋力的提升贡献大致相等。

  1. 改CNN为残差网络结构:DNN网络结构上吸收最新进展,采用ResNet网络中的Residual结构作为基础模块.

ResNet使用的Residual结构比GoogLeNet使用的Inception结构在达到相同预测精度条件下的运行速度更快。

Q:为什么旧版AlphaGo没有做这些改进?
A:分拆策略,价值网络,快速走子,是旧版AlphaGo暂时的妥协,而在新版终于得以解决。旧版没有做这些改进,应该是当时还做不到吧。

Zero的意义

  • 通用人工智能:Google的目的是造出通用人工智能,而通用人工智能是不需要专业知识的。Zero从零学起而达的成就意味着离通用人工智能进了一步。
  • 不必样本:从应用角度,以后可能不再需要耗费人工去为AI的产品做大量的前期准备工作。
  • 没有充足样本:通过摆脱对人类经验和辅助的依赖,类似的深度强化学习算法或许能更容易地被广泛应用到其他人类缺乏了解或是缺乏大量标注数据的领域。

分析:Zero的模型是否具有可移植性?

1.事实(Zero利用强化学习击败哥哥)

算法拥有了在一张棋盘上,自我进化出近乎理论上限的能力。

2.提问(是否能以同样的思路迅速攻克其他领域?即模型是否有可移植性?)

3.答疑(不能,因为外部环境的规则是不稳定的变幻莫测的,受很多外部噪声干扰)

围棋规则三千年不变,而其他领域(诸如交通,投资等)没有这样一张亘古不变的棋盘让算法进行计算。

4.解决方法(造一个优秀的外部环境使之尽可能符合业务需求且简单,在模拟环境中对算法和策略迭代)

外部环境复杂,不意味着增强学习算法无法应用。因为我们可以造一个“棋盘”,即模拟出来一个优秀的外部环境去训练算法和优化策略。

5.问题(缺少“棋盘设计者”,需要既深度了解业务,又深度了解算法的人,如AlphaGo的缔造者之一黄博士是围棋高手+算法大神)

Questions

  • 如何让AI在其他领域(规则不稳定,噪声多)也能实现从零开始地自我进化?可能有什么解决方法?
  • “造棋盘”真的可以解决上述问题吗?
  • 如何理解棋盘设计者这一“概念”?
Thanks!