在谷歌发起“寻找围棋小先锋”全国青少年围棋推广活动的2天之后,谷歌母公司旗下DeepMind团队再次取得突破性成果,人类在棋类游戏上或许已经无法挑战人工智能。
继今年10月在《自然》杂志上发表论文正式推出人工智能围棋程序AlphaGo Zero后,Alphabet旗下机器学习子公司DeepMind团队近日又发表论文称,最新版本的 AlphaZero 在经过不到一天的训练后,“令人信服地”打败了国际象棋和日本将棋顶尖的计算机程序 。
DeepMind称,AlphaGo Zero算法在围棋上实现了超人类的成绩,使用深度卷积神经网络,通过强化学习进行自我对弈训练。此前的的Alpha Go需要与人类进行数千次对弈,从中获取数据,但AlphaGo Zero从零开始,只有空白棋盘和游戏规则,达到了超人的性能,以100-0战胜了曾打败李世乭的Alpha Go。
近日,该团队发文表示,在国际象棋和日本将棋上采用了AlphaGo Zero 的通用化版本AlphaZero(只输入游戏规则,没有输入任何特定领域的知识)。研究显示,通用的强化学习算法,可以实现从零开始,在许多具有挑战性的领域超越人类水平。
该团队在上述三种棋类游戏使用相同的算法设置、网络架构和超参数,为每一种棋类游戏训练了独立的 AlphaZero。训练从随机初始化参数开始,进行了 70 万步(批尺寸为 4096),使用 5000 个第一代 TPU 生成自我对弈棋局和 64 个第二代 TPU 训练神经网络。
结果显示,在国际象棋中,AlphaZero 仅仅用 4 小时(30 万步)就超过了 Stockfish。在日本将棋中,不到 2 小时(11 万步),AlphaZero 就超过了 Elmo;在围棋中,AlphaZero 用 8 小时(16.5 万步)超越 AlphaGo Lee((与李世乭对弈的版本)。
Stockfish是2016 年 Top Chess Engine Championship(TCEC)世界冠军。Elmo是 Computer Shogi Association(CSA)世界冠军 Elmo。
人工智能领域的标志性事件是 1997 年深蓝(Deep Blue)击败了人类世界冠军卡斯帕罗夫。在之后的 20 年内,国际象棋的计算机程序水平一直稳定处于人类之上。Deepmind团队称,当前国际象棋最好的程序都是基于强大的搜索引擎,能搜索数百万个位置,利用人类专家手动编写的函数和复杂的特定领域适应性。Stockfish和深蓝这种强大的国际象棋程序也使用了类似的架构。
在计算复杂性方面,日本将棋比国际象棋要更难。将棋棋盘更大,任何被吃的棋子都可以改变立场,被放在棋盘的其他位置。之前,最强的将棋程序,如世界冠军 Elmo 也是到 2017 年才打败人类世界冠军。这些程序和计算机国际象棋程序采用了相似的算法,基于高度优化的α-β搜索引擎,并针对特定领域进行调整。
AlphaZero则完全不同,使用了一个通用的蒙特卡罗树搜索(MCTS)算法,通过随机的对游戏进行推演来逐渐建立一棵不对称的搜索树。AlphaZero 是一个通用的强化学习算法——最初为围棋设计,在除了给定象棋规则之外没有任何领域知识的情况下,可以在几小时内达到更优的结果,少了几千倍的搜索量。此外,该算法不需要修改就可以应用到更具挑战性的日本将棋上,并再次在数小时内超过了当前最好的程序。
谷歌大脑GoogleBrain负责人Jeff Dean也曾介绍过深蓝和AlphaGo的区别。他称,深蓝是通过蛮力搜索,知道接下来该怎么走。但围棋比象棋复杂,由于其复杂性很难穷尽算法,“如果没有足够的计算能力去探索围棋的世界,那么你需要帮助程序认识游戏过程中的规律以及怎么样才能够像人一样有本能的去思考如何走棋。”
不过,Deepmind团队最新公布的Alpha Zero又在AlphaGo Zero上进行了升级。首先,AlphaGo Zero假设对弈的结果为胜/负两种, 会估计并最优化胜利的概率;而 AlphaZero 则会估计和优化期望的结果,会同时考虑平局或其它可能的结果。
对于围棋而言,旋转棋盘和镜像映射都不会改变其规则。AlphaGo 和 AlphaGo Zero 都运用了这一事实。通过为每个位置生成8次对称,来增加训练数据。 但国际象棋和日本将棋是不对称的,因此AlphaZero不会增加训练数据,也不会在进行蒙特卡罗树搜索算法时转变棋盘位置。
此外,AlphaZero的自我对弈由之前所有迭代过程中最优玩家生成。每次训练后,新玩家的性能与之前的最优玩家对比,如果新玩家以55%的胜率胜出,便取代之前的最优玩家。相反,AlphaZero 只是维护单个神经网络连续更新最优解,而不是等待一次迭代的完成。
最后,AlphaGo Zero 通过贝叶斯优化(Bayesian optimisation)搜索超参数,而 Alpha Zero 对所有的对弈重复使用相同的超参数,无需进行针对特定某种游戏的调整。
DeepMind评估了经充分训练的AlphaZero 在国际象棋、将棋和围棋上分别和与Stockfish、Elmo 和经过 3 天训练的 AlphaGo Zero 进行的 100 场比赛结果,比赛时间控制在一步一分钟。AlphaZero 和 AlphaGo Zero 使用 4 个 TPU 的单个机器进行比赛。Stockfish 和 Elmo 使用 64 个线程和 1GB 的哈希表进行比赛。AlphaZero “令人信服地”打败了所有的对手,没有输给 Stockfish 任何一场比赛,只输给了 Elmo 八场。
除了继续强化AlphaGo的技能,谷歌也正推广着围棋教学。
12月4日,谷歌宣布与聂卫平围棋道场共同发起“寻找围棋小先锋”全国青少年围棋推广活动,该活动将包含针对全国4—18岁小棋手的全国青少年围棋公开赛,公开赛将在全国6个城市举行分站赛并于北京举行总决赛。皮查伊和谷歌就是要在这些孩子当中发现最具潜力的“围棋先锋”,并用DeepMind发明的AlphaGo围棋教学方法培训他们。
谷歌 CEO 桑达尔·皮查伊透露,DeepMind将会基于AlphaGo发明一套围棋教学工具,很快可以免费下载,让所有人学习AlphaGo如何下棋。他还表示,这套围棋教学工具中的数据是从20多万场人类棋手比赛,以及75场AlphaGo和人类的对抗中积累的。