shineyon 2017-10-23
人工智能研究在语音识别和图像分类再到基因组学和药物发现等各个领域都取得了快速进展。但在许多情况下,这些都是利用大量人力资源和庞大的数据支撑才完成的专业工作。
然而,对于某些问题,知识和数据的成本太高,太不可靠或者根本无法使用。因此,AI研究的长期目标是绕开这个困境,创造算法,在没有人工投入的情况下,挑战最具挑战性的领域实现超越人类的表现。在我们最近发表在Nature杂志上的论文,我们展示了实现这一目标的一个小小的进步。
本文介绍了最新发展AlphaGo版本的AlphaGo zero,AlphaGo是第一个在围棋的古代中国游戏打败世界冠军的计算机程序。AlphaGo是强大的,但是AlphaGo zero是更强大的,可以说是历史上最强的围棋玩家。
以前版本的AlphaGo最初是接受了数千业余和专业人的游戏训练,学习如何玩围棋。而AlphaGo Zero跳过这一步,整个学习过程是通过自己玩游戏,从完全随机的游戏开始。这样做的时候,它很快超过了人类的水平,而且还击败了以前发布的冠军版本的AlphaGo。
AlphaGo zero通过使用一种新颖的强化学习方法,AlphaGo Zero成为自己的老师。AlphaGo zero从一个不知道围棋游戏的神经网络开始,然后,通过将这个神经网络与强大的搜索算法相结合,自身与自身进行游戏。当它自己与自己下棋的过程中,神经网络被不断的调整和更新,以预测下一手以及最终的赢家的布局。
然后将这个更新完毕的神经网络与搜索算法重组,创建一个新的、更强的AlphaGo版本的AlphaGo Zero,并且让过程再次开始。在每次迭代中,AlphaGo zero系统的性能都会提高一小部分,自我游戏的质量也提高了,这导致了越来越精确的神经网络和更强的AlphaGo Zero版本时代的出现。
这个版本的AlphaGo zero比以前版本的AlphaGo更强大,因为它不再受到人类知识的限制。相反,它还可以从世界上最强的玩家:AlphaGo那里学习。
它也有不同于以前的版本在其他方面。
·AlphaGo Zero仅使用围棋棋盘上的黑白石头作为输入,而AlphaGo的以前版本包含少量手工设计。
·它使用一个神经网络而不是两个。AlphaGo的早期版本使用“策略网络”来选择下一手的落点以及一个“价值网络”来预测落在每个位置游戏的获胜的概率。这两个网络被完美的结合在AlphaGo Zero中,这使其能够进行更有效地进行训练和评估。
·AlphaGo Zero不使用其他围棋程序使用的快速随机游戏来预测玩家将子落在何处才能获胜。相反,它依靠其高质量的神经网络来评估位置。
所有这些差异都有助于提高系统的性能并使其更为通用。而且,算法的改变使得系统更加强大和高效。
经过短短三天的自我训练,AlphaGo Zero就打败了以前发布的AlphaGo版本。经过40天的自我训练,AlphaGo Zero变得更强大,超越称为“大师”的AlphaGo版本,AlphaGo大师版本是击败了世界上最好的围棋选手及世界排名第一的柯洁。
在数以百万计的AlphaGo和AlphaGo对战中,系统从零开始逐渐学习了围棋游戏,在短短几天的时间里积累了数千年的人类知识。同时,AlphaGo Zero还发现了新的知识,开发非常规的策略和创新了新举措,它超越了在与李世石和柯洁的比赛中所发挥的新技术。
这些创造力的瞬间使我们相信,人工智能将成为人类智慧,帮助我们与我们的使命,解决一些人类正面临着最重要的挑战。
虽然这些还在早期,但AlphaGo Zero是迈向这一目标的关键一步。如果可以将类似的技术应用于其他结构化问题,如蛋白质折叠,减少能源消耗或寻找革命性的新材料,这些突破将对社会产生积极的影响。
大卫·席尔瓦:AlphaGo项目首席研究员在接受采访时所说:
AlphaGo Zero是世界上最强大的围棋程序,胜过以往所有的AlphaGo版本。尤其值得一提的是,它击败了曾经战胜世界围棋冠军李世石的AlphaGo版本,成绩为100比0。过去所有版本的AlphaGo都从利用人类数据训练开始,它们被告知人类高手在这地方怎么下,在另一个地方怎么下。AlphaGo Zero不使用任何人类数据,而是自我学习,完全从自我对弈中学习,凭借自我学习取得比通过人类数据学习更好的成绩是因为,首先AlphaGo的对手总是和它正好水平一致,所以它从非常基础的水平开始,从非常随机的招式开始。但是在学习的过程中每一步,它的对手或者可以叫陪练,都正好被校准为匹配其当前水平。一开始,这些对手非常弱,但是之后渐渐变得越来越强大,人们一般认为机器学习就是关于大数据和海量计算。 但是,我们从AlphaGo Zero中发现,算法比所谓计算和数据可用性更重要。事实上,我们在AlphaGo Zero上使用的计算比在过去AlphaGo版本上使用的少一个数量级,但是它的性能更强大,因为我们使用了更多原理和算法,我可以代表我们的团队说,我们对它的表现感到惊喜,它最终超过了我们的所有预期。它的胜率一直上升,直到过了40天左右,我们发现它击败了过去所有版本的AlphaGo,成为世界上最强大的围棋程序。该全系统完全从零开始训练,从随机招式开始,建立于基本原理,来弄清怎样从零学围棋,AlphaGo Zero最重要的理念是它完全从零开始学习,它意味着它完全从一块白板开始,仅仅依靠自我对弈来学习,不依赖于任何人类知识,人类数据,人类案例,人类特征,或是人类的介入,。它完全通过基本原理去探索任何下围棋,从零学对于DeepMind的目标和雄心而言是非常重要的,
因为如果你可以实现从零学习,你就拥有了可以从围棋,移植到其他任何领域的媒介,你从所处的细分领域中解放出来,通过一个可以应用于在任何地方的普遍算法。对于我们来说打造AlphaGo不是为了出来击败人类, 而是为了探索研究科学的意义和让一个程序能够自我学习知识是什么?所以我们开始发现,AlphaGo Zero不仅仅是重新发现,人类偏好的模式和开口以及人类在角落用固定模式,它还会审视这些并进行更多的自主探索,最终放弃那些偏好来自主做出人类还不知道或无法实现的变化,所以我们可以说真正发生的是在非常短的时间内,AlphaGo Zero理解了人类数千年积累的对围棋的认知,它进行分析,开始审视这些知识,并自主探索出更多的东西,有时候它的选择实际上超越并带来的一些人类现阶段尚未发现的东西,产生出在很多方面富有创造力的,新奇的知识,对于AlphaGo Zero已经达到的水平,我们非常激动,最让我们激动的是看它能在现实世界里走多远,事实上我们已经看到一个程序可以在像围棋这样的,复杂并具有挑战性的领域中达到很高水平,这意味着我们能够开始着手为人类解决最困难的问题。
从零开始的训练
DeepMind发表的论文中写到,应用了强化学习的pipeline来训练AlphaGo Zero,训练从完全随机的行为开始,并在没有认为干预的情况下持续3天。
训练过程中,生成了490万盘自我博弈对局,每个MCTS使用1600次模拟,相当于每下一步思考0.4秒。下图显示了在自我对弈强化学习期间,AlphaGo Zero的表现。整个训练过程中,没有出现震荡或者灾难性遗忘的困扰。
令人惊讶的是,AlphaGo Zero在训练36小时后,表现就优于击败李世石的版本AlphaGo Lee。当年那个版本经过了数月的训练。AlphaGo Zero使用了4个TPU,而击败李世乭的AlphaGo使用了48个TPU。
译者认为:AlphaGo Zero这种完全不依赖于人类数据的创新是有其根本因素的,因为围棋的下法是有一定的规则的,只要是在规则之内AlphaGo Zero自己可以和自己模拟,进行创造新的下法。举例来说:一个学生学习了基础知识之后,可以利用这些基础知识解决一系列复杂的问题,但是这些复杂得多问题其实还是限制于这些基础知识不断组合上,一旦超出了基础知识的界限,那么学生就不会做题了。这就是当前版本的AlphaGo Zero的核心。但是,不得不承认的是,这种方式极大的释放了人工智能在围棋领域的创造性,人类可以从中获得更多。
AlphaGo Zero证明了纯强化学习的方法是可行的,注意这里的纯强化学习其实强化的是基础,这跟我们人类的思维是相通的。Deepmind团队也称,AlphaGo zero对结构化知识的领域更适用,其实与其说是结构化,不如说成是规则化。因为如果说结构化的话,那么文本翻译也属于结构化,但是这个领域没有标注化,它还是需要大量数据来支撑的。
论文的共同第一作者是David Silver、Julian Schrittwieser、Karen Simonyan。
关于这篇论文,可以直接从这个地址下载。
DeepMind还放出AlphaGo Zero的80局棋谱,下载地址在此。
本文由北邮@爱可可-爱生活老师推荐,阿里云云栖社区组织整理。
文章原标题:《AlphaGo Zero-learning-scratch》
作者:
译者:虎说八道,小学生一枚。审校:主题曲哥哥。