从零开始纯自学的 AlphaGo

根据 DeepMind 的官方网站,AlphaGo 推出了最新的升级版,名为 AlphaGo Zero,这个版本完全依靠机器自己进行强化学习,在摆脱了大量的人类棋谱后,机器根据围棋的规则左右互搏,在三天之内就超越了去年三月对阵李世乭的版本,接着在第 21 天战胜了对阵柯洁的版本,到第 40 天,在对阵此前最先进的版本时,已经能保持 90% 的胜率。

021ednc20171020

DeepMind 官方表示,这毫无疑问是史上最强的围棋棋手。

但你也知道,仅仅是棋艺的升级不足以让它一夜之间霸占中外媒的头条,是什么让再次升级的 AlphaGo 吸引了这么多人的关注呢?

022ednc20171020 柯洁和古力纷纷转发微博感慨机器的强大

DeepMind 在自己的官网上发表了一篇博客文章,同时表示新版本 AlphaGo 的研究论文已在权威学术期刊《自然》上发表。对学界来说,这是一个非常重磅的消息,总结来说这个版本特别的原因有三:

1、AlphaGo Zero 只使用围棋棋盘上的黑子和白子作为输入,而 AlphaGo 之前的版本中包含了少量人工设计的功能。

2、它使用的是一个神经网络而不是两个。AlphaGo 的早期版本使用「走棋网络(policy network)」来选择下一个动作和一个「价值网络(value network)」来预测游戏的赢家。AlphaGo Zero 合并了两者,使其能够更有效地进行训练和评估。

3、AlphaGo Zero 不使用「Rollout」——其他围棋程序使用的快速、随机的游戏来预测哪个玩家将从当前的棋局中获胜。相反,它依赖于高质量的神经网络来评估棋局。

以上这三点大大改善了 AlphaGo 的表现。

摆脱人类经验后下得更好

但 DeepMind 同时指出,是算法的改变让这个系统更加强大且高效。

72 小时自我对弈,AlphaGo Zero 就以 100-0 的成绩战胜了此前对阵李世乭的版本;40 天训练之后,它成功超越了击败柯洁的改良后的 Master 版本。

从下面的动图可以看到,因为从零开始的缘故,AlphaGo Zero 的初期表现非常糟糕,但水平提高的速度也非常快,仅仅三天就超越了对阵李世乭的版本。

023ednc20171020

「它比此前的版本更强大,是因为灭有使用人类的数据,也不使用任何形式的人类经验,我们已经消除了人类知识的局限,它能够创造知识本身,」AlphaGo 的首席研究员 David Silver 说道。

这个系统通过强化学习来提高它自身的技巧水平。每当 AlphaGo Zero 走了一步好棋时,它就会获得系统的「奖励」,反之则有损失。

根据一些外国棋手的观察,AlphaGo Zero 在棋局的初期表现仍与人类千年来的套路相同,但到棋局中期就会变得令人难以理解。

AlphaGo Zero 强大的秘密在哪里?

AlphaGo Zero 采用了新型的「强化学习」模型,让自己成为自己的老师。尽管一开始,对弈双方的水平都不怎么样,但经过将神经网络与强大的搜索算法相结合,不断地对棋路进行调整,最终得以预测对手的动作,并取得胜利。

AlphaGo Zero 进行自我对弈的好处在于,每一场对决,双方的棋力都处在同一水平线上,每场对弈过后,系统性能都会小幅上升,自我对弈的水准越来越高,AlphaGo Zero 也随之变得越来越强。

025ednc20171020 AlphaGo Zero 不同阶段的棋局变化,图片来源:DeepMind

这项技术让 AlphaGo Zero 得以完全摆脱人类的束缚,创造自己的知识体系。虽然调用的算力更少了,却能成为了更强大的棋手。

与之前版本相比,AlphaGo Zero 有几大差异:

AlphaGo Zero 仅仅调用棋盘上的黑子与白子下棋,而过去版本的 AlphaGo,多少还有一点人工设计的功能

AlphaGo Zero 只使用了一套神经网络。早期版本的 AlphaGo 里内置了两套神经网络模型,其中一套「策略网络」,用于判断下一步该怎么走;另一套「价值网络」,用于预测到底哪方才是胜利者;而 AlphaGo Zero 将二者合而为一,能够更高效地进行训练,并且提升对赛况的判断力

AlphaGo Zero 不再使用「Rollouts」——大部分围棋程序会通过快速、随机地落子来判断棋局的走向,但 AlphaGo Zero 则是通过优质的神经网络来对下棋位置进行评估。

这些差异让 AlphaGo Zero 的系统性能更强、更具普适性。算法的改进让整套系统变得更加强大、运行更为高效。

硬件与算法的进步也让 AlphaGo Zero 所需要的算力大大降低,仅仅需要 4 个 TPU(由 Google 开发的人工智能专用芯片),而与李世乭对弈的 AlphaGo Lee 所需要的算力多达 48 个 TPU,是 AlphaGo Zero 的 12 倍。

024ednc20171020 历代 AlphaGo 所需的算力对比,图片来源:DeepMind

长期以来,不少人有这样的误区:机器学习最重要的就是大数据和海量计算。但 AlphaGo Zero 的出现证明,合适的算法,可能比数据和算力更重要。DeepMind 的 CEO Demis Hassabis 表示: 我们正在努力尝试建立通用算法,这仅仅是一小步,但足以振奋人心。

未来,我们或许能在围棋之外的多个领域见到 AlphaGo 活跃的身影,也许是帮助医疗人员设计新药,也可能是帮助气象专家预测天气——如果通用算法诞生,那么许多科学问题也可以借助 AI 的力量来解决。

AI 是否真的能够超越人类,现阶段我们无从得知。但或许正如柯洁言:

一个纯净、纯粹自我学习的 AlphaGo 是最强的……对于 AlphaGo 的自我进步来讲……人类太多余了。

(本文整合自:ifanr、geekpark)

20160630000123