加载中...请稍后..

自主学习的开端——算法完爆大数据

发布日期:
2018-10-15
浏览量:
67875

10月19日凌晨,在国际学术期刊《自然》(Nature)上发表的一篇研究论文中,谷歌下属公司Deepmind报告新版程序AlphaGo Zero:

· 从空白状态学起

· 在无任何人类输入的条件下

· 它能够迅速自学围棋

· 并以100:0的战绩击败“前辈”

团队称,AlphaGo Zero的水平已经超过之前所有版本的AlphaGo。在对阵曾赢下韩国棋手李世石那版AlphaGo时,AlphaGo Zero取得了100:0的压倒性战绩。DeepMind团队将关于AlphaGo Zero的相关研究以论文的形式,刊发在了10月18日的《自然》杂志上。


一、AlphaGo Zero进化之处

一年多前,AlphaGo便是2016年1月28日当期的封面文章,Deepmind公司发表重磅论文,介绍了这个击败欧洲围棋冠军樊麾的人工智能程序。今年5月,以3:0的比分赢下中国棋手柯洁后,AlphaGo宣布退役,但DeepMind公司并没有停下研究的脚步。

伦敦当地时间10月18日,DeepMind团队公布了最强版AlphaGo ,代号AlphaGo Zero。可以从一张白纸开始,零基础学习,在短短3天内,成为顶级高手。


1、不再受人类知识限制,只用4个TPU

AlphaGo此前的版本,结合了数百万人类围棋专家的棋谱,以及强化学习的监督学习进行了自我训练。在战胜人类围棋职业高手之前,它经过了好几个月的训练,依靠的是多台机器和48个TPU(谷歌专为加速深层神经网络运算能力而研发的芯片)。

AlphaGo Zero的能力则在这个基础上有了质的提升。最大的区别是,它不再需要人类数据。也就是说,它一开始就没有接触过人类棋谱。研发团队只是让它自由随意地在棋盘上下棋,然后进行自我博弈。值得一提的是,AlphaGo Zero还非常“低碳”,只用到了一台机器和4个TPU,极大地节省了资源。

经过几天的训练,AlphaGo Zero完成了近5百万盘的自我博弈后,已经可以超越人类,并击败了此前所有版本的AlphaGo。DeepMind团队在官方博客上称,Zero用更新后的神经网络和搜索算法重组,随着训练地加深,系统的表现一点一点地在进步。自我博弈的成绩也越来越好,同时,神经网络也变得更准确。



2、AlphaGo Zero习得知识的过程

AlphaGo Zero使用新的强化学习方法,让自己变成了老师。系统一开始甚至并不知道什么是围棋,只是从单一神经网络开始,通过神经网络强大的搜索算法,进行了自我对弈。

随着自我博弈的增加,神经网络逐渐调整,提升预测下一步的能力,最终赢得比赛。更为厉害的是,随着训练的深入,DeepMind团队发现,AlphaGo Zero还独立发现了游戏规则,并走出了新策略,为围棋这项古老游戏带来了新的见解。

除了上述的区别之外,AlphaGo Zero还在3个方面与此前版本有明显差别。


3、AlphaGo-Zero的训练时间轴

首先,AlphaGo Zero仅用棋盘上的黑白子作为输入,而前代则包括了小部分人工设计的特征输入。

其次,AlphaGo Zero仅用了单一的神经网络。在此前的版本中,AlphaGo用到了“策略网络”来选择下一步棋的走法,以及使用“价值网络”来预测每一步棋后的赢家。而在新的版本中,这两个神经网络合二为一,从而让它能得到更高效的训练和评估。

第三,AlphaGo Zero并不使用快速、随机的走子方法。在此前的版本中,AlphaGo用的是快速走子方法,来预测哪个玩家会从当前的局面中赢得比赛。相反,新版本依靠地是其高质量的神经网络来评估下棋的局势。

以上这些不同帮助新版AlphaGo在系统上有了提升,而算法的改变让系统变得更强更有效。

经过短短3天的自我训练,AlphaGo Zero就强势打败了此前战胜李世石的旧版AlphaGo;经过40天的自我训练,AlphaGo Zero又打败了AlphaGo Master版本。“Master”曾击败过世界顶尖的围棋选手,甚至包括世界排名第一的柯洁。


4、实现“无师自通”

DeepMind的新算法AlphaGo Zero开始摆脱对人类知识的依赖:在学习开始阶段无需先学习人类选手的走法,另外输入中没有了人工提取的特征 。

首先,在AlphaGo Zero出现之前,基于深度学习的增强学习方法按照使用的网络模型数量可以分为两类: 一类使用一个DNN"端到端"地完成全部决策过程(比如DQN),这类方法比较轻便,对于离散动作决策更适用; 另一类使用多个DNN分别学习policy和value等(比如之前战胜李世石的AlphaGoGo),这类方法比较复杂,对于各种决策更通用。

此次的AlphaGo Zero综合了二者长处,采用类似DQN的一个DNN网络实现决策过程,并利用这个DNN得到两种输出policy和value,然后利用一个蒙特卡罗搜索树完成当前步骤选择。在网络结构的设计上,与之前将走子策略(policy)网络和胜率值(value)网络分开训练不同,新的网络结构可以同时输出该步的走子策略(policy)和当前情形下的胜率值(value)。实际上 policy与value网络相当于共用了之前大部分的特征提取层,输出阶段的最后几层结构仍然是相互独立的。训练的损失函数也同时包含了policy和value两部分。这样的显然能够节省训练时间,更重要的是混合的policy与value网络也许能适应更多种不同情况。

另外一个大的区别在于特征提取层采用了20或40个残差模块,每个模块包含2个卷积层。与之前采用的12层左右的卷积层相比,残差模块的运用使网络深度获得了很大的提升。AlphaGo Zero不再需要人工提取的特征应该也是由于更深的网络能更有效地直接从棋盘上提取特征。根据文章提供的数据,这两点结构上的改进对棋力的提升贡献大致相等。

其次,AlphaGo Zero没有再利用人类历史棋局,训练过程从完全随机开始。随着近几年深度学习研究和应用的深入,DNN的一个缺点日益明显: 训练过程需要消耗大量人类标注样本,而这对于小样本应用领域(比如医疗图像处理)是不可能办到的。所以Few-shot learning和Transfer learning等减少样本和人类标注的方法得到普遍重视。AlphaGo Zero是在双方博弈训练过程中尝试解决对人类标注样本的依赖,这是以往没有的。

第三,AlphaGo Zero在DNN网络结构上吸收了最新进展,采用了ResNet网络中的Residual结构作为基础模块。近几年流行的ResNet加大了网络深度,而GoogLeNet加大了网络宽度。之前大量论文表明,ResNet使用的Residual结构比GoogLeNet使用的Inception结构在达到相同预测精度条件下的运行速度更快。AlphaGo Zero采用了Residual应该有速度方面的考虑。

因为这些改进,AlphaGo Zero的表现和训练效率都有了很大的提升,仅通过4块TPU和72小时的训练就能够胜过之前训练用时几个月的原版AlphaGo。在放弃学习人类棋手的走法以及人工提取特征之后,算法能够取得更优秀的表现,这体现出深度神经网络强大的特征提取能力以及寻找更优解的能力。更重要的是,通过摆脱对人类经验和辅助的依赖,类似的深度强化学习算法或许能更容易地被广泛应用到其他人类缺乏了解或是缺乏大量标注数据的领域。


二、AlphaGo Zero进化成功原因分析

1、AlphaGo具有局限性

很多阿尔法狗的新闻标题写着不依赖于人类的任何知识或者完全自通,但实际情况是阿法狗(零)在开始运行时,是需要程序员输入人类制定的围棋规则。阿法狗(零)依然依赖于人类设定的规则,而这其实是人类最为强大的知识。

关于AlphaGo是否具备创新创造性问题,金准数据认为它依然是依托人工支持的大数据训练形成的策略模型,同时在比赛中结合比赛对手的落点数据,根据其内部的运算规则,来不断形成自己的落点数据,这些落点数据最终形成比赛数据集合。AlphaGo根据围棋规则与对手的比赛数据集合进行计算和比较,判断输赢,整个过程完全在人类设定的规则下运行,无法体现其自身的创造性,如图所示。

即使AlphaGo形成的落点数据集合很可能是人类历史上没有出现过的,也不能说明AlphaGo具备了独立的创新创造功能。例如,我们用计算机程序实现下述过程:从1万到100万的自然数中随机选取两个数进行相乘,记录相乘结果,重复此过程361次,即使得出的自然数集合很大,并且可能是人类历史上没有出现过的,我们也不能认定该计算机程序具有创新创造性。

如果AlphaGo在没有人类协助更改程序的情况下,能够自动理解比赛规则的任意变化,并主动更改内部设置,自动改变自己的训练模型,用于实战比赛、战胜对手,那么在这种情况下,我们才可能认为AlphaGo具备创新性。但从人工智能的发展过程看,AlphaGo还完全无法实现这一点。


2、AlphaGo Zero 算法强势

AlphaGo Zero除了使用围棋规则,完全摈弃了人类棋手的知识和棋谱,利用强化学习和深度学习模型、左右手互搏的自学习,获得功力。它高强度的使用了搜索(模拟),蒙特卡罗树搜索(MCTS),但实际上,这个树搜索实际上是在产生标注数据。

因为围棋下到一定程度,最极端的情况是大家都无子可下的时候,是能通过规则计算胜负的。也就是说,模拟(搜索)到一定程度,就能产生一个输或赢的棋局数据。正是由于这一点,围棋是能够在没有人类棋手的知识(用来减少搜索空间和加速搜索进程)的情况下,使用非监督学习来学习的。机器的计算速度很快,能够在极短的时间内模拟大量的有胜负的棋局,并且从中学习。大众媒体指出AlphaGo只用到了深度学习,但是实际上它是 Monte Carlo树搜索算法+深度学习。许多强化学习任务是由NEAT算法(通过增强拓扑的进化神经网络)实现,不是基于BP的神经网络算法。

很多的游戏也具有类似的能够模拟(搜索)产生最后能用规则判别胜负的样本,所以它们无需人类的知识,确实能从零学习。但是,像语音识别、图像识别、自然语音理解等领域,就缺乏用简单规则就能判别的样本,它们需要大量的人工标注,然后才能监督或是半监督学习。

明白了这个可用简单规则判别结果的先决条件,知道AlphaGo Zero 确实算法和工程很强势,但是不要被误导,任何东西都可以无需人类知识或是领域数据就可以从零学习的。

从AlphaGo Zero的论文中,描述的Self-Play和Neural Network Training,我们看到最终状态St是需要根据围棋规则来计算胜者z的,实际上,用模拟(搜索)产生了一个(或是几个)训练样本(棋局)。


三、总结

阿法狗(零)的进展的确是人工智能领域伟大的进展,但这种伟大并不应该让人类自惭形秽,反而是衬托出人类的伟大。因为人类可以自主的进化,拥有发现规则、制定规则、使用规则、判断规则价值使之有利于种群的进化。这四点中,阿法狗(零)只做了其中的一小部分,从宏观上说,AI与人类仍然有很长的一段距离。

沉思科技的首席执行官杰米斯·哈萨比斯表示,“人工智能有可能推动人类的智力向前发展,给全人类带来积极影响”。沉思科技与英国国家医疗服务体系(NHS)展开合作,除了将人工智能用于早期发现疑难杂症外,还将用于调整电力供需等方面。将来,还期待人工智能在依靠人类力量难以解决的新材料开发、探究蛋白质生成机制等方面做出贡献。

新技术将来还可能在产业方面做出贡献。例如,从大量数据中发现人类难以意识到的提升效率的方式等。据悉,以各种用电数据为基础,人工智能将有助于节省电力。由于像AlphaGo Zero一样的人工智能可以“无师自通”,在宇宙和海洋等观测数据不足的领域也有可能做出贡献。