AlphaGo是人工智能研究的一座里程碑。图片来源:Unsplash
■本报见习记者 程唯珈 记者 卜叶
2016年,谷歌围棋人工智能“阿尔法狗”(AlphaGo)以4比1的成绩战胜世界围棋冠军李世石,这场人机大战成为人工智能史上一座新的里程碑。近日,美国计算机学会(ACM)宣布,将2019年ACM计算奖授予AlphaGo研发团队领导者David Silver,以表彰他为计算机游戏表现带来的突破性进展。
“在专用人工智能向通用人工智能发展过程中,AlphaGo是一个重要阶段。”北京大学教授、北京智源人工智能研究院院长黄铁军告诉《中国科学报》。
从深蓝到“阿尔法狗”
人机对弈,AlphaGo并不是首例。
就计算机的“棋艺”而言,十几年前IBM的“深蓝”与AlphaGo相比,也不能同日而语。尽管如此,1997年“深蓝”击败了当时的国际象棋冠军卡斯帕罗夫,震惊了当时的学术界。
“深蓝的算法核心是暴力搜索。”中国科学院自动化研究所研究员赵冬斌告诉《中国科学报》,其原理是生成尽可能多的走法,执行尽可能深的搜索。采用的alpha-beta剪枝算法,可以快速削减搜索的路径,并不断对局面进行评估,找到最优走法。
换言之,它每走一步,几乎都是在遍历后续所有可能的情况下作出的决策,因此,很多人认为这是计算机的胜利,而不是人工智能的胜利。
而AlphaGo之所以能达到人类顶尖棋手的棋艺水平,依靠的是“自学成才”。
“围棋是一项变数极多、充满不确定性的竞技活动。下棋的可能性都是一个几乎无法穷尽的量级。棋手起手就有361种落子选择。理论上,如果不考虑限制条件,棋盘状态共有3的361次方种,下法共有361阶乘种选择,这个数字大约是10的768次方,几乎是无穷大。要知道人类已知宇宙中的原子数量,也不过是10的80次方。”清华大学计算机科学与技术系教授孙富春告诉《中国科学报》,AlphaGo Zero在某种程度上部分突破了人类认知学习的能力,原理上可以习得包括围棋在内的其他观测信息是完备的、状态动作空间是可数的各种人类技艺,甚至展现出“直觉”判断能力。
除了与人类越来越接近的“头脑”之外,AlphaGo的学习速度之快也远远超出人们的想象,其进步的空间似乎难以估量。
“感觉就像一个有血有肉的人在下棋一样,该弃的地方也会弃,该退出的地方也会退出,非常均衡的一个棋风,真是看不出出自程序之手。”柯洁曾在接受媒体采访时表示,AlphaGo有好几次落子极其“非常规”,许多专业棋手都表示“看不懂”。
2017年,AlphaGo进一步升级。在《自然》发表的一篇研究论文中,Silver 团队报告了新版程序 AlphaGo Zero:从空白状态学起,在不利用人类任何围棋比赛数据作为训练数据的条件下,它能够迅速通过2900万次自我博弈、自学围棋,并以 89比11 的战绩击败“前辈”。
“AlphaGo从惊人的海量博弈数据中习得能力。如果AlphaGo有内心世界,看到人类落完一步棋,他或许会微微一笑,心想‘这招我昨天刚下过’。”浙江大学人工智能研究所所长吴飞调侃道。
与此同时,AlphaGo Zero在国际象棋、围棋等游戏中都取得了超人的表现,展现了前所未有的游戏方法的普适性。
“阿尔法狗”的“三驾马车”
自AlphaGo打败李世石后,人们惊奇地从公开的程序中发现:打败这些围棋高手的不仅仅是计算机强大的计算能力,更依赖其精妙的算法。
吴飞解释说,AlphaGo的算法主要依靠强化学习、深度学习和蒙特卡洛树搜索“三驾马车”并驾齐驱,而这也是其中的核心技术。
在南京大学计算机科学与技术系教授王崇骏看来,强化学习让AlphaGo有了自学能力,深度学习让AlphaGo通过数据驱动的机器学习有了估值量化能力,蒙特卡洛树则是一个连接所有技术和动作的框架。
例如,在围棋博弈中,“局面判断”用于衡量某一局面的价值,越大的值表示对当前行动的选手越有利。“最优策略”是通过在某局面下选择能带来最大价值的动作来获得。
在AlphaGo的强化学习中,科学家使用策略函数和局面函数进行度量。有了这两个估值函数,机器在搜索的时候尽量选择估值更大的行动,达到缩小思考范围的目的。同时,即使在未达到终局的情况下,也可以依靠局面函数对当前局势优劣做判断。
由于大部分博弈游戏状态空间巨大,严格计算评估函数无法实现。利用深度学习和大量数据,AlphaGo可以自动找到特征,同时拟合出估值函数。而蒙特卡洛树搜索是集以上技术于一身的搜索框架,通过反复模拟和采样对局过程来探索状态空间。
“蒙特卡洛树搜索的特点是非常容易并行、可任何时候停止,其引入了随机性采样而减小估值错误带来的负面影响,并且可以在随机探索的过程中,结合强化学习,自学式地调整估值函数,让算法越来越聪明。”王崇骏告诉《中国科学报》。
分析AlphaGo成功的原因,赵冬斌认为,深度神经网络在其中起到了重要作用。“传统的基于规则的计算机围棋方法只能识别固定的棋路,这类似于背棋谱。基于深度学习的AlphaGo自动提取棋谱局面特征并将其有效地组合在一起, 极大增强了对棋谱的学习能力。”
其次,局面的准确评估也是AlphaGo成功的关键。价值网络和快速走子网络在局面评估时互为补充,能够较好地应对对手下一步棋的不确定性,对得到更加精确的评估结果至关重要。
此外,硬件配置的大幅提升也功不可没。AlphaGo采用了异步多线程搜索,用CPU执行模拟过程,用GPU计算策略网络和价值网络。最终单机版本AlphaGo使用了48个CPU和8个GPU,分布式版本的AlphaGo则采用了1202个CPU和176个GPU。正是这些计算机硬件的支持,才得以让AlphaGo发挥出强大的实力。
人工智能发展的一小步
在AlphaGo诞生后的几年中,其背后的神经网络、深度学习、蒙特卡洛树搜索法等技术,开始从“下棋”这样的场景,延伸到更多具有商业化价值的场景中。
在中国,这些技术催生了游戏领域人工智能的研究和发展。腾讯旗下游戏王者荣耀的“觉悟”、微软亚洲研究院的麻将“Suphx”以及启元的星际争霸“指挥官”等虚拟“玩家”一时间如雨后春笋般涌现。
这些技术还推动了其他领域包括机器人、智能驾驶、智能制造、电力优化、量化金融、智慧医疗等纵深应用领域的技术进步,包括且不局限于提高英国电网的效率、降低谷歌数据中心的能耗,以及为欧洲航天局设计太空探测器的轨道等。
不过,AlphaGo的胜绩是否代表着人工智能的胜利?答案是否定的。
“AlphaGo的胜利,只能说明这个算法在围棋等比赛中战胜了人类。但是,就人工智能的发展而言,几乎所有人都认同目前人工智能发展水平还处在初级阶段。”王崇骏说。
他表示,目前人工智能算法大多依赖高质量的海量数据,需要的功率也远高于人类大脑的能耗水平,同时也很难应用于多种场景。“一个明显的例子就是,AlphaGo的实现方法在明确定义的环境下效果明显,而在开放环境下,结果往往不尽如人意。比如AlphaGo下围棋很厉害,但面对图像识别问题肯定就不行了。”
赵冬斌表示,在围棋、麻将和其他具有类似评级制度的游戏等测试平台,或能客观地衡量一些算法的人工智能水平,但是在某些难以量化的领域,很难对算法的智能水平给出客观评价。“比如,自动驾驶有5级划分,但是不够明确。驾驶涉及技术链条较长,包括定位、感知、预测、决策、规划和控制等。若想全面衡量驾驶人工智能的水平,还需要更细致的分类工作。”
在黄铁军看来,人类面临的很多问题都是开放性问题。应对开放性挑战,需要通用人工智能。“AlphaGo是人工智能研究的一座里程碑,创造了一种能够解决很多智能问题的通用方法,但还不是真正意义上的通用人工智能。人工智能已经走上了正确方向,但也才刚刚开始。”
原文链接:http://news.sciencenet.cn/sbhtmlnews/2020/4/354451.shtm?id=354451