在人工智能领域,谷歌和Facebook正在进行着一场比赛,而用人工智能战胜职业围棋选手,被视为这场比赛的第一局。
1月28日,《自然》杂志以封面论文形式宣布Google DeepMind公司的人工智能程序 AlphaGo以5:0的比分战胜欧洲围棋冠军樊麾。
谷歌先胜一局。
“人工智能”概念自诞生起一直争议不断,但人类依旧在发展人工智能的道路上寻求不断地突破,在各种棋类游戏中战胜人类被视为人工智能“智商”的测试方式。
1997年人工智能第一次打败人类国际象棋选手,2006年后再无人类战胜过最顶尖的人工智能国际象棋选手。
而围棋成为了科技大拿们攻坚的下一个城堡——它是典型的人工智能命题,极其困难而充满着吸引力。
1990年代开始,就出现了如“手谈”(中国陈志行教授开发)、“Gun Go”(开源软件组织GNU开发)为代表的计算机围棋程序,但这批程序的棋力尚不及人类业余选手初段。
21世纪,以“蒙特卡洛树搜索”为全新思路的新程序开始在9×9的“小棋盘”实现突破,其中以法国的“MoGo”和“CrazyStone”为代表,棋力基本达到人类职业选手水平。
随着新程序的思路不断改进,“CrazyStone”和日本的“Zen”在真正的围棋比赛上已经能在人类职业棋手让子的前提下赢得盘面。
近年来,随着Google与Facebook这样具有强大研发实力的科技大公司的加入,计算机围棋界更加风起云涌。经过《自然》杂志的介绍,公众已经熟知“AlphaGo”。相比Google此时的风光,也在开发人工智能以战胜人类棋手的Facebook心里可不是好滋味。
这两家顶尖科技公司早已展开了一场破解围棋的人工智能竞赛,Facebook开发的人工智能Darkforest(黑暗森林)在今年1月的KGS锦标赛获得了第三名。1月28日下午,Facebook人工智能实验室负责人Yann LeCun表示:“Darkforest被AlphaGo吊打了。”
开发围棋人工智能的瓶颈在哪?你可能小时候看过一个宰相向国王求赏的故事:印度寒舍王要奖赏象棋发明人西萨·班·达依尔,西萨看似胃口不大,对国王请求在棋盘的第一个小格内放一粒麦子,第二个小格放二粒,第三格放四粒,以此类推下去直到放满64个格子。国王没有意识到指数级增长的威力而欣然答允,然而事后才发现整个国库的米都倒干净了仍然无法填满整个棋盘。西萨的结局是被国王杀掉了。
可以想见,指数级增长可算是大规模计算第一大“拦路虎”了。围棋有3的361次方种局面,而可观测到的宇宙,原子数量才10的80次方。
卡耐基梅隆大学机器人系博士、Facebook人工智能组研究员田渊栋曾说过:“围棋难的地方在于它的估值函数非常不平滑,差一个子盘面就可能天翻地覆,同时状态空间大,也没有全局的结构。这两点加起来,迫使目前计算机只能用穷举法并且因此进展缓慢。”
谷歌“AlphaGo”的核心是两种不同的深度神经网络——“策略网络”(policy network)和 “价值网络”(value network)。“策略网络”负责减少搜索的宽度,“价值网络”负责减少搜索的深度,它们合作“挑选”出那些比较有前途的棋步,抛弃明显的差棋,从而将计算量控制在程序可以完成的范围里,重点分析那些有戏的棋着,本质上和人类棋手所做的一样。
Facebook的团队也在几个月前开始独立研究围棋人工智能项目,田渊栋开发的程序“Darkforest”,同样是将卷积神经网络和蒙特卡洛树搜索进行了有机结合。
Yann LeCun在自己的Facebook上发文介绍,第一版的“Darkforest”完全是基于卷积神经网络,通过有监督模式的训练让它来模仿人类选手。研究小组将大量的比赛棋盘格局输入到卷积神经网络中,以此来训练它预测人类选手的下一步走法。