为何AlphaGo Zero如此成功,而人工智能离整体成功仍然遥远?
作者:周熠
前言
AlphaGo Zero [1]提出了新的估算搜索评价函数的方法,即基于蒙特卡洛树搜索的强化学习;部分地解决了超大状态空间搜索的难点;成功地应用到围棋领域并完胜了人类;证明了强化学习的有效性,是人工智能史上一座里程碑。其学术贡献中上,学术意义上,社会影响上上。
AlphaGo Zero虽然不是开创性工作,但它所提出的方法很好地结合了已有的两种重要方法。对于类围棋智力游戏,AlphaGo Zero是一个重要的结论性工作。但故事并没有完全结束,因为围棋的必胜策略还没找到。对于能转化成搜索问题的人工智能领域和难点,AlphaGo Zero有很大的用武之地,但这需要研究者们的艰辛努力。而对于人工智能其他领域和难点,或许能触类旁通。但至少目前,AlphaGo Zero并不能提供直接帮助。
对AlphaGo Zero的评价,既没有必要贬低,也不用神化。本着实事求是的精神,还原其真实面貌。更重要的是,期望AlphaGo Zero取得的成功能鼓励同侪做出更好的工作,从而进一步推动人工智能发展。
AlphaGo Zero的意义
AlphaGo Zero的成功意味着什么?我们从学术贡献、学术意义和社会影响三个方面来谈谈。
从学术贡献的角度,虽然AlphaGo Zero是一个里程碑式的工作,但不应该对其过分神化。前文已经论述,AlphaGo Zero的主要学术贡献是提出了新的估算评价函数的方法,即基于蒙特卡洛树搜索的强化学习方法。该方法是把已有的两种方法,即蒙特卡洛树搜索[2]和强化学习[3, 4],融合到了一起,在围棋领域取得了很好的效果。所以,AlphaGo Zero在人工智能学术界不算最顶级的开创性工作。
AlphaGo Zero更重要的,是其学术意义。首先,AlphaGo Zero某种程度上攻克了围棋领域。至此,可以论断,机器下围棋可以完胜人类。由于围棋难度在同类智力游戏中居首,由此推论,在同类智力游戏中,机器可以战胜人类。
另外,AlphaGo Zero也再次验证了深度学习的有效性。深度学习给人工智能带来了革命性的变革,使人工智能整体水准有了质的飞跃,并能真正应用到不同的领域,取得商业上的成功。
►图1 AlphaGo Zero学习过程,图片来源:Deepmind
更值得称道的是,AlphaGo Zero摒弃了有监督学习,仅使用强化学习就达到了很好的效果,而且发现了以前没有被人类所有选手发现的知识。因此,AlphaGo Zero在围棋这个领域,解决了困扰机器学习的两个最重要的问题,数据的来源以及数据的质量。如果这种方法能够推广到其他领域,那AlphaGo Zero的学术意义就会更加巨大。
同时,由于没有用到人类先验知识和原始数据,AlphaGo Zero再次强调了算法的重要性。算法比数据重要一直是人工智能界的主流观点,但近年由于基于大数据的人工智能应用取得了重大的成功,“数据是王道”成为了一种新的潮流,某种程度上稍微忽略了对算法、原理以及理论的探索。AlphaGo Zero再次表明,算法、数据、原理和理论都很重要。
在上一段的论述中,笔者加了很多看似拗口的修饰词,如“某种程度上”、“围棋领域”、“同类智力游戏”、 “如果能够推广”等,而这些修饰词是有其深意的。 “某种程度上”意味着AlphaGo Zero并没有完全攻克围棋领域。完全攻克需要找到围棋的必胜策略(理论上一定存在)。战胜世界冠军和找到必胜策略之间存在相当大的距离,前者代表相对于人类 “更好”,而后者代表绝对意义上的“最佳”。就象西洋跳棋程序一样,Chinook 1994年战胜了人类世界冠军,2007年才找到必胜策略[5]。“围棋领域”、“同类智力游戏”意味着AlphaGo Zero能够应用的领域,虽然可能很广,但并不包括人工智能的全部。 “如果能够推广”意味着把AlphaGo Zero中的技术推广和应用到其他领域,并不是一个想当然的事情,需要人工智能研究者们付出相当大的努力。其根本原因在于其他领域的基本难点于环境和围棋有本质上的区别。
►图2 1992年,Chinook与Tinsley人机对战现场,图片来源:google
为何AlphaGo Zero取得了如此大的成功,而人工智能离总体成功却仍然遥远?这就要先从人工智能的原理说起。
自人工智能出现以来,人们对于智能本质是否可描述、可用数学刻画就有不同的观点。观点的分歧导致了两种截然不同的人工智能发展思路,即强人工智能和弱人工智能。前者强调需要弄清楚智能原理,而后者不管三七二十一,只要造出来的机器能够体现某种智能行为即可,比如下棋、驾驶、高考、翻译、玩游戏等。在弱人工智能中,又可以分为通用和专用。通用是指要让造出的机器体现通用的智能,既可以用来下棋、又可以用来驾驶、高考、翻译和玩游戏;而专用是指对每一种不同的智能行为,打造专用的机器,如程序A用来下棋,程序B用来驾驶等等。当前的人工智能进展,主要在专用弱人工智能上,通用弱人工智能和强人工智能几乎没有革命性的突破。
►图3 人工智能在翻译软件中的应用,图片来源:google
AlphaGo Zero再次为专用弱人工智能添砖加瓦,而且是最亮丽的一片琉璃瓦之一。AlphaGo Zero对通用人工智能和强人工智能可能会有些启发,但至少目前并不明朗。但话说回来,从应用角度,专用弱人工智能已经非常强大非常重要,因为很多人类的工作就是在某种特定的场景下做特定的事情。
除了智能原理之外,再深入一点,人工智能可以细分为很多困难点,我试图用九点来大致概括,插入与AlphaGo Zero战胜人类的的围棋问题作对比,供大家了解。
第一,建模。很多人工智能问题,连一个完整的数学模型都很难建立。例如玩星际争霸游戏、高考、自然语言理解等,虽然很容易对其中的某一部分建立一个模型,但很难把整个模型完整地统一起来。而围棋的建模非常简单。
第二,如何处理复杂函数,特别是是嵌套分层的函数。在围棋中,作为数据的<输入,输出>对被定义得很清楚,输入就是棋盘状态而输出就是当前状态下的选择。但在很多开放问题上,函数的定义没那么清楚。比如机器人足球,传球这个行动,不仅有参数,本身不好定义,而且可以进一步细分成很多更加细粒度的行动,如抬脚、踢球等等,而这些行动又可以进一步细分。
第三,行动后果的不确定性。在围棋中,每个行动都有确定的结果,落子必定会成功。然而很多人工智能问题,行动的后果是不确定的,并不保证一定成功。例如传球的时候,球可能被敌方抢走,导致这个行动失败。
第四,环境的部分可观察性和动态性。例如星际争霸游戏中,敌方的军队位置和动向都是部分可观察的,并且不是一成不变的。而在围棋领域,这些都是完全可观察的和静态的。
第五,表示的规模和鲁棒性。比如在自然语言理解中,自然语言的规则不仅相当之多,而且很多情况下这些规则并不对所有情况都适用。而在围棋中,规则都是很简单且很通用的。
第六,意外和突发情况。例如在自动驾驶中,可能有很多意外情况,如突然蹿出来一个小孩。在这些领域中,几乎不可能列举所有的突发情况。而在围棋领域,完全没有意外和突发。
第七,很多问题并不能简单的规约成搜索问题,比如带有微分方程的混合动力系统等。或者即使表示成搜索,搜索空间是不完整的或者是无穷的。而围棋的搜索空间虽然非常巨大,但总归是完整的和有穷的。
第八,如何获取大规模高质量的数据。在围棋中,奖惩机制相当清楚。所以很容易获取强化学习需要的数据。获取有监督学习的数据(即棋谱),相对困难一些。然而在有些领域,比如新闻的自动分类以及我们人类本身的终身学习,并没有严格定义好的奖惩机制。
第九,也是唯一AlphaGo Zero某种程度上真正解决的难点,如何搜索庞大的搜索空间,因为这往往需要的计算量极为巨大。在围棋领域中,只有最后一个才是难点,其他几个方面难度几乎等于零。当然,AlphaGo Zero能做到这一点,已是很大的突破。
AlphaGo Zero的成功可不可以用来解决其他的难点?或者说移植到其他领域呢?这个答案没有那么简单。首先可以肯定的是,AlphaGo Zero对解决一类特定问题,即可以表示成超大状态空间搜索并有明显奖惩机制的问题(如很多智力游戏),有很大帮助。而对于这类问题之外的,比如高考、星际争霸、机器翻译、自然语言理解等,至少从文章和和目前的情况来看,并没有直接帮助。其次,对于某些难点以及某些领域,比如逻辑推理和人工智能规划等,AlphaGo Zero可以有帮助,但这需要人工智能研究者们付出艰辛努力。
在之前提到的难点中,有些是可以通过某些技术手段转换成超大搜索空间问题的。例如第三点行动的不确定性,可以通过引入一个行动后果的概率分布。又如第七点的连续函数,可以通过采样来离散化。但是这些技术手段往往会导致搜索空间急剧增长。所以,把AlphaGo Zero借鉴过来,并不是一件容易的事。最后,对于其他一些难点,如建模、如智能原理等,可以说AlphaGo Zero的技术很难有用武之地。基于蒙特卡洛树搜索的强化学习,并没有揭示人类下棋的智能原理。
与其学术贡献和学术影响相比,AlphaGo Zero更重要的是它的社会影响。虽然有相当多学者认为社会影响不应该被严肃对待,但在当今的社会,特别是对于和工业界及应用极度紧密相关、且如日中天的人工智能领域来说,社会影响的重要性不言而喻。AlphaGo Zero是前沿人工智能技术的一个杰出代表。对于大众来说,围棋就是人工智能的皇冠。再加上Google完美的营销策略以及围棋在中国文化中的神圣地位,AlphaGo Zero红遍了全球。尤其在国内,AlphaGo Zero几乎成了人工智能的代名词,也让很多大众对其既爱(因为感觉很厉害很高大上)又恨(因为担心人类会被人工智能取代)。
所以,有必要给AlphaGo Zero一个正确公允的评价。严格意义上,围棋问题在人工智能领域不能说是最难或最重要的,同样,AlphaGo Zero也不能说是目前人工智能最先进最重要的工作。只是因为它表述简单,其效果非常容易理解,易被大众所接受,因此成为人工智能成就的代表展现在人们面前。
在全球范围内,AlphaGo Zero虽然也引起了广泛关注和一片赞美,但并不像在国内被捧到神坛的地步。AlphaGo Zero在技术上固然取得了重大突破,但它能解决的只是人工智能很多困难中的一种,而且只是部分解决。虽然这个技术可能对人工智能其他领域会有帮助,但这并不是显然的,需要做大量努力。所以,AlphaGo Zero的成功并不代表人类会被人工智能取代。当然,随着AlphaGo Zero还有一些其他技术的出现,越来越多领域会被人工智能攻克,越来越多人类职业会被人工智能部分取代。但这点并不能完全归功于AlphaGo Zero,它只是这一类工作的一个杰出代表。
机器战胜人类,一直在发生。以前有,现在正在进行,以后会更多。从弱人工智能的角度,人工智能的发展史,就是人类各种智能行为被机器复现并超越的历史。只是这些都是在特定的领域,如西洋跳棋、国际象棋、问答秀、围棋等等。暂时来说,还看不到机器在所有领域都能战胜人类的希望。所以,至少现在还没有到要担心人类灭亡的时候。
粗略来分,智能的层次,从低到高,可以分为基础智能(包括计算、记忆、行为能力等)、感知智能(包括语音识别、图像识别等)、认知智能(包括智力游戏、智力测试等)和创新智能(包括艺术创作和科学发现等)。虽然每个层次都有机器战胜人类的案例,但总体来说,越高层次的智能,机器做的越差。基础智能,比如计算和记忆,总体上机器早就远远超过了人类。当前深度学习的崛起,加速了机器在感知智能上接近并有时超过了人类水准。然而,对认知智能和创新智能,机器整体上比人类差了太多。AlphaGo Zero诚然是机器在认知智能上对人类的又一次重大胜利。但从整体来看,并未改变整个格局。
►图4 人工智能在电商物流中的应用,图片来源:baidu
此外, AlphaGo Zero的宣传文章上有着不少春秋笔法,有抬高工作之嫌。例如,宣传100:0战胜了AlphaGo李世石版本[6],而不是89:11战胜了AlphaGo Master,不与最近的成果作对比,不仅蹭前辈机的余光,还用100:0吸引人眼球;又比如,AlphaGo Zero号称学到了围棋知识(即定式),但这种基于使用频率就判断为之知识的做法某种意义上属于事后诸葛亮,并不足够令人信服。而且这些所谓的知识在AlphaGo Zero中完全没有用上;又比如宣传文中称围棋是“最有挑战的领域”,这并不确切。之前论述过,对人工智能来说,围棋只算最有挑战的领域之一。这些写法虽然不算错误,但某种程度上误导了读者。这种自我标榜的做法,甚至遭到了部分人工智能学者的反弹。
AlphaGo Zero的未来
AlphaGo Zero是一个人工智能史上的一座里程碑。对于它与人工智能的未来,我认为还大有可为。比如,在AlphaGo Zero大放异彩的围棋领域,就仍有三个方向值得继续耕耘。
一、将战胜人类转化为必胜,找到比人类 “更好”的策略后,继续寻求“最佳”策略。理论上,围棋存在必胜策略,因此,后AlphaGo Zero时代的一个重要挑战,就是把它找到。这个挑战不仅是为了追求完美,而且有很大的实际意义。机器学习的最大优点之一就是面对复杂问题时迅速找到很好的近似,避免计算复杂度的障碍。但这也是一个软肋,即没有找到复杂问题的最优解。如果AlphaGo系列能突破这个软肋,这将是非常伟大的学术贡献。
二、现在的AlphaGo Zero是针对正规棋盘(19*19棋盘),如果能推广到一般的情形,即n*n棋盘,也是很有意义的。机器对问题输入的规模往往非常敏感,对于围棋这类的问题,机器求解的难度随着棋盘大小而指数递增。AlphaGo Zero之前,人工智能已经解决了7*7的围棋问题,它出现后才解决了19*19的围棋问题。相对来说,人类对于棋盘的输入规模没那么敏感,人们下7*7围棋和19*19围棋策略差别不大。这点对机器学习相当重要。原因之一,这是从专用弱人工智能朝通用弱人工智能迈出的一步,即解决同样问题不同规模的差异。原因之二,这能揭示从一个规模中学到的东西(如策略和赢面估算)是否能平移到另一个规模中。
三、AlphaGo Zero学到了不少围棋的知识,也就是定式。但它下棋的策略和这些知识无关,还是通过评价函数来做的。所以这些知识,即使在学到了之后,在AlphaGo Zero中也没什么用处。如果能够先使用AlphaGo Zero学习知识,然后再仅仅表示和使用这些知识来下棋并战胜人类,也将是非常大的贡献。因为这连接了两种完全不同的人工智能方法(机器学习和知识的表示与推理),也更加接近于人类下围棋背后的智能原理,从而对强人工智能有所帮助。
AlphaGo Zero另一个可能的未来是把它应用到围棋之外的领域。AlphaGo Zero中应用的新评价函数具有一定的普适价值,因为很多人工智能中的问题都可以归结为大规模搜索的问题。
这里仅枚举两个重要的领域,第一是命题逻辑推理,以及更广义的约束可满足问题。简而言之,约束可满足问题是给定了一些变量(如x,y),每个变量有其值域(如x只能是1或2,y只能是0或1);同时给定一些这些变量需要满足的约束条件(如x+y=2),目的是求解满足这些约束条件的变量(如x=2,y=0)。约束可满足问题可以转换成搜索问题,其中每一个节点是变量们部分赋值的某一个状态,而它的子节点们是对下一个变量的不同赋值。既然约束可满足问题能转化成大规模状态下的搜索,那么AlphaGo Zero就可能有帮助。
第二是人工智能规划,即从给定初始状态找到一系列行动达成某个目标。同样,因为规划问题也能转化成搜索,所以AlphaGo Zero有其用武之地。但是,注意到约束可满足问题和规划终极目标都是要找到“最优解”,AlphaGo Zero作为一种寻找“较优解”的手段在这些领域里面到底能走到哪一步,还需要深入探索和时间来检验。
除了这些明显可以转化成搜索问题的领域外,还有一些人工智能领域有可能借鉴AlphaGo Zero的思路,因为这些领域可以看成是搜索的某个变种,比如带有概率分布的搜索。这些领域包括马尔科夫决策、博弈论等等。总而言之,AlphaGo Zero有很大潜力被广泛地用到人工智能其他领域,尤其是和搜索密切相关的。但是,这并不是一件水到渠成的事情,需要研究者们付出艰辛努力,这些应用并不比AlphaGo Zero本身简单。
►图5 视频网站利用人工智能优化搜索,图片来源:google
更重要的未来在于用AlphaGo Zero来解决人工智能的其他难点。虽然目前从论文中来看,并没有直接帮助,但如之前所述,人工智能的其他难点中有些能够转化成更大状态空间下的搜索,比如部分可观察、行动不确定性、连续函数、甚至突发意外情况等,但这种转化往往伴随着状态空间的指数上升,极有可能其搜索难度比19*19的围棋还要大,甚至大很多。所以,怎么更好地转换?转化后AlphaGo Zero能不能处理?这都需要人工智能研究者们付出艰苦的探索和努力。
End.
转载请注明来自36大数据(36dsj.com): 36大数据 » 为何AlphaGo Zero如此成功,而人工智能离整体成功仍然遥远?