围棋 alphazero围棋go zero 有多强 第三集

原标题:三天屠狗、三周灭师,DeepMind发布千年以来最强围棋选手“AlphaGo Zero” ‖ 论文+棋谱

北京时间19日凌晨01:00,谷歌旗下的DeepMind团队公布了进化后的最强版AlphaGo,代号AlphaGo Zero。研究论文发表在国际顶级学术期刊《自然》(Nature)上。

新版本的AlphaGo究竟有多厉害?打败李世石的AlphaGo用了3000万盘比赛作为训练数据,AlphaGo Zero用了490万盘比赛数据。

  • 0天:AlphaGo Zero对围棋一无所知,仅录入了基础知识

  • 40天:AlphaGo Zero超越所有版本的AlphaGo,完全通过自我对弈,且不依赖任何数据

DeepMind 创始人哈萨比斯表示:Zero 是迄今为止最强大的 AlphaGo 版本,人类将见证这项技术很快应用到其他领域当中。

DeepMind联合创始人兼CEO 、AlphaGo之父戴密斯·哈萨比斯(Demis Hassabis)和AlphaGo团队负责人大卫·席尔瓦(Dave Sliver) 等人同时在官方博客上发表文章,详解最强版本阿尔法狗是如何炼成的,与前代有何不同。

与学习大量人类棋谱起步的前代AlphaGo不同,AlphaGo Zero是从“婴儿般的白纸”开始,通过3天数百万盘自我对弈,走完了人类千年的围棋历史,并探索出了不少横空出世的招法。

席尔瓦在乌镇人机峰会上发言

从语音识别、图像分类到基因和药物研究,人工智能发展迅速。这些专家系统,很多是借用海量人类经验和数据开发出来的。

然而,在有些特定问题上,人类的知识要么过于昂贵,要么不靠谱,要么无法获得。因此,人工智能研究的一个长期目标就是跳过这一步,创造能在最有挑战性的领域,不用人类输入就达到超人水平的算法。我们发表在《自然》期刊上的最新论文,展示了实现该目标的关键一步。

论文介绍了首个战胜人类围棋冠军的电脑程序AlphaGo的最新进化版本:AlphaGo Zero。AlphaGo Zero更为强大,可以一争史上最强围棋手。AlphaGo的前几代版本,一开始用上千盘人类业余和专业棋手的棋谱进行训练,学习如何下围棋。

AlphaGo Zero则跳过了这个步骤,自我对弈学习下棋,完全从乱下开始。用这种方法,它很快超过了人类水平,对阵此前战胜人类冠军李世石的前代AlphaGo取得了100连胜。

AlphaGo Zero之所以能当自己的老师,是用了一种叫强化学习的新模式。系统从一个对围棋一无所知的神经网络开始,将该神经网络和一个强力搜索算法结合,自我对弈。在对弈过程中,神经网络不断调整、升级,预测每一步落子和最终的胜利者。

升级后的神经网络与搜索网络结合成一个更强的新版本AlphaGo Zero,如此往复循环。每过一轮,系统的表现就提高了一点点,自我对弈的质量也提高了一点点。神经网络越来越准确,AlphaGo Zero的版本也越来越强。

这种技术比此前所有版本的AlphaGo都更为强大。这是因为,它不再受到人类知识的限制,而能够从婴儿般的白纸状态,直接向世界上最强大的棋手——AlphaGo本身学起。

AlphaGo Zero相较前代还有几点明显的差别:

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

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

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

所有这些差异,都提高了系统的表现,使其更为普适。不过,是算法上的变化使得系统更为强大和高效。

仅仅自我对弈3天后,AlphaGo Zero就以100:0完胜了此前击败世界冠军李世石的AlphaGo版本。自我对弈40天后,AlphaGo Zero变得更为强大,超过了此前击败当今第一人柯洁的“大师”版AlphaGo。

通过数百万次自我对弈,AlphaGo从零开始掌握了围棋,在短短几天内就积累起了人类几千年才有的知识。AlphaGo Zero也发现了新的知识,发展出打破常规的策略和新招,与它在对战李世石和柯洁时创造的那些交相辉映,却又更胜一筹。

这些创造性的时刻给了我们信心:人工智能会成为人类智慧的增强器,帮助我们解决人类正在面临的一些严峻挑战 。

AlphaGo Zero采用了新的算法—强化学习算法。在每一次训练后,AlphaGo Zero都能根据训练结果,进一步优化其算法。

上海交通大学计算机科学领域的一位教授认为,AlphaGo Zero发展了强化学习(Reinforcement Learning)算法。受到AlphaGo Zero的启发,该算法可能应用在更多的“求解”类问题上。

他将强化学习的算法比作“摸着石头过河”。并描述了“求解”类问题的共同特征:这些问题的求解,都要分很多步骤才能完成,整个过程相对漫长,但在结束后,可以根据结束时的状态,来评判此前每一步决策的质量。像蛋白质折叠的预测,新材料的设计等,都属于此类问题。

他表示,“求解”类问题相对简单,它们不同于我们人生中的选择,人生中的每个决定不太容易评价其决策质量。

上海纽约大学计算机科学教授张峥表示,从算法上来说,AlphaGo Zero比其“前辈”更简洁、漂亮。这一次,AlphaGo Zero摆脱了人为的大数据,在人类给定的一个规则下,自主发现新知识,并且纠正人类的错误知识,而且是以惊人的速度达到这一点。有趣的是,AlphaGo Zero却无法解释(它是如何完成这一切的),只能demo(样本)给人类。

复旦大学计算机科学技术学院教授危辉表示,AlphaGo Zero的算法、程序,如同一个黑箱,在一次又一次的自我训练后,有了很多优化。拷贝那一行行代码,就可以“继承”这个被优化过的算法。但算法中的详情,人们并不知晓。

危辉将围棋盘面上各种变化比作宇宙中的星辰,通过人类智力、直觉,人们可能已经触及了其中百万分之一的情形,AlphaGo Zero可能触及了其中其中百万分之五的情形,“比人类多,但肯定没有穷尽。”

张峥表示,AlphaGo Zero等人工智能及地球上的计算能力是否穷尽搜索了围棋盘面的各种可能,他不清楚,但AlphaGo Zero等人工智能一定比人更快,而且有新的发现。换句话说,会产生新的棋谱。

上海交通大学软件学院教授陈海波认为,从理论上说,强化学习的算法本来就可以实现自我训练,AlphaGo Zero提供了一个非常好的范例。人工智能的发展依赖三个要素:算法、平台和数据。像AlphaGo Zero一样,人工智能如果使用合适的算法,并改进算法,降低其对数据与平台计算能力的依赖,有助于其推广和应用。

中国科学院自动化研究所复杂系统管理与控制国家重点实验室任主任王飞跃表示,大家应该理性看待AlphaGo Zero的研究成果。Deepmind公司的这一论文一发表,TPU的销量可能就要大增了。他说,AlphaGo的程序的确越来越简洁、有效。但那种“看了AlphaGo Zero,就认为人类经验没用了,人工智能已经超过人类智力”的观点不正确。

王飞跃表示,真正智能的是AlphaGo Nothing,即人类,为定规则而生。而机器是为执行而造的。

此外,他认为,AlphaGo Zero 以100:0的成绩,战胜AlphaGo Master,其结果十分令人鼓舞,但有误导,且有"造"真的嫌疑。“这让我想起成语‘自相矛盾’。”

AlphaGo 中的树搜索使用深度神经网络评估位置,选择棋招。这些神经网络通过监督学习从人类专家的棋招中学习,然后通过强化学习进行自我对弈。本文介绍一种算法,该算法仅依靠强化学习,不使用游戏规则以外的人类数据、指导或领域知识。

AlphaGo 无师自通:我们训练一种神经网络来预测 AlphaGo 的下一步以及 AlphaGo 游戏的获胜者。该神经网络提升树搜索的能力,带来下一次迭代中更高质量的棋招选择和更强大的自我对弈。新程序 AlphaGo Zero 从头开始学习,并达到了超人的性能,以 100-0 的比分打败曾经战胜人类世界冠军的 AlphaGo。

AlphaGo Zero 所采用的神经网络是一种新颖的强化学习算法,即自我对抗(self-play)的竞争性训练。此前,OpenAI 曾发表论文表示自我对抗训练可以在简单环境下产生远超环境复杂度的行为。而这一次 AlphaGo Zero 和此前 AlphaGo Fan 与 AlphaGo Lee 的很大区别就是采用了这种自我对抗式的训练策略。

a:AlphaGo Zero 和自己进行 s_1,...,s_T 对弈。在每一个位置 s_t 处使用最新的神经网络 f_θ执行蒙特卡罗树搜索(MCTS)α_θ(见图 2)。根据 MCTS 计算的搜索概率选择棋招(a_t ? π_t)。最终位置 s_T 的得分根据游戏规则计算,进而计算游戏获胜者 z。

b: AlphaGo Zero 中的神经网络训练。神经网络使用原始棋盘位置 s_t 作为输入,使用参数θ将其传播通过多个卷积层,然后输出代表棋招概率分布的向量 p_t,和代表当前选手在 s_t 获胜的概率标量值 v_t。神经网络的参数θ得到更新以最大化策略向量 p_t 和搜索概率π_t 的相似性,并将预测获胜者 v_t 和获胜者 z 之间的误差最小化(见公式 1)。新的参数将在下一次迭代的自我对抗中使用。

根据神经网络 f_θ,在每一个位置 s 处执行 MCTS 搜索。

a:每一次模拟通过选择最大化行动价值Q的边来遍历整棵树,加上上面的(依赖于一个已储存的先验概率P)置信边界U,并访问边的总数N(每遍历一次增加1)。

c:行动价值Q被更新以追踪当前行动下的子树的所有评估V的平均值。

d:一旦搜索完成,会返回搜索概率值(search probabilities)π,和N^(1/τ)成比例,其中N是每一次行动自根状态(root state)以来的访问总数,τ是控制温度(temperature)的参数。

DeepMind构建了4个神经网络,分别是在 AlphaGo Lee 中使用的分开的策略网络和价值网络,或者在 AlphaGo Zero 中使用的合并的策略和价值网络;以及 AlphaGo Lee 使用的卷积网络架构,或 AlphaGo Zero 使用的残差网络架构。

每个网络都被训练以最小化同一个损失函数(公式1),训练使用的是 AlphaGo Zero 在72小时的自我对弈之后产生的同一个自我对弈棋局数据集。

使用残差网络的准确率更高,误差更低,在 AlphaGo 达到600 Elo(等级分)的性能提高。将策略(policy)和价值(value)结合到一个单一的网络中的话,走子预测的准确性略微降低了,但是价值错误也降低了,并且将 AlphaGo 的性能再提高了600 Elo。这在一定程度上是由于提高了计算效率,但更重要的是,双目标使网络成为支持多个用例的常规表示。

图4:AlphaGo Zero 和 AlphaGo Lee 的神经网络架构比较。使用分开的策略和价值网络记为(sep),使用组合的策略和价值网络记为(dual),使用卷积网络记为(conv),使用残差网络记为(res)。“dual-res”和“sep-conv”分别表示在 AlphaGo Zero 和 AlphaGo Lee 中使用的神经网络架构。

每个网络都在同一个数据集上训练,该数据集由 AlphaGo Zero 的自我对弈产生。

a:每个训练好的网络都与 AlphaGo Zero 的搜索相结合,以得到一个不同的玩家。Elo等级分是由这些不同玩家之间的评估游戏计算得到的,每一步棋有5秒的思考时间。

b:对每个网络架构的职业棋手的走法(从GoKifu数据集得来)的预测准确性。

c:每个网络架构的人类职业棋手的棋局结果(从GoKifu数据集得来)的MSE。

a:AlphaGo Zero训练期间发现的五个人类定式(常见的角落序列)。

b:自我对弈中爱用的5个定式。

c:在不同训练阶段进行的3次自我对弈的前80步棋,每次搜索使用1,600次模拟(约/s/1ge3HK1l 密码: j7uh

用或其他应用扫描二维码

若未安装客户端,可直接扫此码下载应用

我要回帖

更多关于 alphazero围棋 的文章

 

随机推荐