今天又被AlphaGo刷屏了。DeepMind的AlphaGo项目负责人David Silver博士在Nature上发表文章,介绍了新一代围棋对弈人工智能程序AlphaGo Zero【1】。
从去年3月战胜了小李的AlphaGo算起,加上去年底今年初在弈城和野狐上横扫56连胜的AlphaGo Master,这篇文章介绍的AlphaGo Zero可以算作第三代AlphaGo。虽然Zero迄今并没有参加人机对战的记录,但它在内测中完胜前两代AlphaGo,考虑到Master曾经横扫人类围棋世界冠军群,人机对战Zero版已经没有了任何悬念和意义。
三代程序,三个名字,各有深意。面对围棋这项历史悠久的智力运动,DeepMind团队一直保持谦逊的态度,他们将第一代程序命名为AlphaGo,意思是“围棋的初级测试版”,只是没想到这个alpha版本出世就以绝对优势战胜了人类围棋的多冠王李世石。第二代AlphaGo化名Master,在在线对弈网站上以全胜战绩赢遍众多高手,master既有“大师”的意思,又有“掌握”的意思,可以说这个版本的AlphaGo已经掌握了围棋的精髓,可以毫无悬念地战胜人类对手,称之为大师毫不为过。现在,第三代AlphaGo悄然面世,zero代表“零”,也代表“回归本初”。根据Nature的这篇文章介绍,AlphaGo Zero的棋艺是在没有任何先验知识的帮助下、完全通过自学和自我对弈得到提升的,与前一代Master相比,Zero的程序更为简洁,运算成本更低,而棋艺更高。
江湖上一片哗然!
按照现今流行的观点,人工智能最擅长的就是以人类已有的数据、信息和知识为样本,通过多层次神经网络系统的自我训练,从而达到模拟、替代或者超越人类现有水平。作为人工智能的基石之一,机器学习也是从对已有数据和经验的分析和提炼出发,进而自动改进算法,优化自身的性能,没有了数据支持,机器学习如何从零开始?
在人工智能给人类职业带来的可能的挑战中,除了程式化、流程化的工作(如建筑工人、收银员、翻译)以外,最容易被替代的职业就是以经验积累为主要价值的工作(如新闻记者、普通律师、全科医生)。既然Zero都可以从零开始,那么是不是所有的职业都将被AI替代?
其实,大可不必惊慌。因为AlphaGo打败的只是围棋棋手,围棋远远不是人类智慧的塔尖。
长久以来,围棋在人类至少在东亚人的心目中就是智慧的代名词。和其它常见棋类相比,围棋的变化最多,其游戏复杂度也最大。其它棋类中,国际象棋不同棋子的行走规则不一样,棋盘也较小,所以变化相对不多;中国象棋类似于国际象棋,棋子的行走限制更多,比如将帅不能出九宫。和它们相比,围棋棋盘较大,除了实眼以外,只要是棋盘的空处都能下棋。有人做过估算,在游戏树的复杂度方面,西洋跳棋是54,黑白棋是58,五子棋是70,国际象棋是123,中国象棋是150,而围棋是360【3】。人工智能在对弈程序上的发展似乎也符合这个规律,深蓝在1997年就击败了卡斯帕罗夫,而AlphaGo在最近两年才在围棋上取得了突破。
除了高计算复杂度以外,围棋在棋迷们的心目中还自带高文化仪式感。围棋起源于中国,历史悠久,最早关于围棋的记载出现在春秋战国时期,自古以来它就是文人四友“琴棋书画”之一,几千年下来围棋在中日韩东亚文化圈广泛传播,至今仍具有相当的生命力。围棋对弈中,双方正襟危坐,折扇轻摇,妥妥的文人雅士之风。反观中国象棋,虽然有“中国”冠名,但实则起源于印度,虽然“琴棋书画”中的棋实际上也应该有不少象棋的成分,但就仪式感来说,中国象棋远远不如围棋——你看公园里穿着汗衫大裤衩的大爷们下的都是象棋,哪有端着茶缸子下围棋的?
所以,AlphaGo在围棋上的胜利来自于两个方面,一方面在计算复杂度上让理工男们拜服,另一方面又在仪式感上让文艺男们饱尝挫败感,它的这一胜利具有普遍的轰动效应。
不过在我眼中,DeepMind只是成功地选对了一个项目,AlphaGo的成功还远远算不上人工智能全面成功。
一方面,围棋是一个很有意思的棋类,和它的高计算复杂度相比,它只有两色棋子,下子规则简单,判断胜负的规则更简单;换句话来说,和它的高计算复杂度相比,围棋的规则复杂度较低,决策过程中的确定性较高。作为一个决策确定性高但计算复杂的游戏,围棋正是人工智能AlphaGo的盘中菜。无论是从人类棋谱出发的第一代第二代,还是从零出发的第三代,受益于超强的计算能力和自我学习优化机制,AlphaGo将围棋变成了一项单纯依靠计算和判断、在一定复杂度下就能具有高度确定性解的游戏,AlphaGo的成功是可以被预期的。
再进一步,我们可以认为,围棋本身就是一项可以单纯依靠计算和判断、在一定复杂度下就具有高度确定性解的游戏,只不过人类受限于自己的计算能力,往往不能在更深层次复杂度下找到确定的最优解。以开局、局部和官子为例,在较低的计算复杂度下,人类总结出一些定式和AlphaGo的下法可以完全相同;但在序盘和中盘,人类的计算力不足以寻找到最优解,AlphaGo的优势就十分明显了。简单来说,柯洁在中盘下一步棋能计算到其后的十步棋的变化,而AlphaGo下一步棋则能直接看到官子阶段,这种计算力上的差距使得人类棋手在人机大战中没有任何胜机。这也就是Nature文章中说到的人类找到的“局部最优”和AlphaGo找到的“全局最优”的区别【1】。
既然在强大的计算能力和自我学习能力的支持下,AlphaGo眼中的围棋已经变成了一项确定性的决策过程,那么从零开始的学习和训练也就成为可能——甚至它将更优于以前基于人类棋谱的训练,因为这样可以避开人类的那些似是而非的经验,那些在低复杂度上的”全局最优“、但在高复杂度上却只是局部最优的定式。绕开了这些经验和定式,AlphaGo Zero能够提高学习效率,生成更为简洁的模型,在对弈中需要更少的计算资源也就不难理解了。
另一方面,虽然围棋是一项需要高智力投入的游戏,但它不是人类智慧的全部,甚至都算不上人类智慧中比较复杂的那个部分。如果拿自然科学中数学、物理、化学、生物这个系统复杂度逐步增加的序列来比较,围棋大概只能类比数学吧。人工智能要挑战人类智慧,围棋只能算成它迈过的一个小坎儿。
和AlphaGo在围棋上取得的巨大成功相比,人工智能在自动驾驶上的应用似乎还存在不小的问题。在普通人的眼中,一位世界围棋冠军和一位驾龄十年的出租车老司机相比,谁更能代表人类的智慧?可以说百分之百的人都会认为老司机不如围棋冠军。事实上,虽然自动驾驶方面的研究在1920年代就已经开始,但目前自动驾驶仍然停留在特定环境中的研发阶段。为什么人工智能能完胜围棋冠军,却替代不了一位出租车司机?
撇开汽车产业方面的限制因素,和围棋的目标高确定性相比,自动驾驶涉及的变量和参数要多很多,这里包括车辆自身的技术参数,比如速度,方向,传感装置的灵敏度;包括道路的参数,比如距离,限速,坡度和弧度;更重要的是,自动驾驶不是一对一的博弈,而是多个主体参与的共同行为。实际路况中,驾驶行为必须和多个主体的行为相适应,比如前后的车辆,路边或者斑马线上的行人,这些主体的行为具有很强的随意性和不可预见性。所以和围棋相比,自动驾驶面对的不是一个目的确定性的游戏,而是一个更为模糊、随机性更高的多方参与的体系。
在这个领域,学习和模拟人类的心理、提取人类的经验非常重要,和高计算复杂度相比,老司机丰富的经验更为重要,从零学习、封闭的自我对弈这一套在自动驾驶上没有成功的可能。这也是为什么自动泊车可以率先进入市场的原因,因为在停车场,旁边的车辆和停车位是静止的对象,自动泊车面对的是个目的确定性高、单一参与度的任务。
所以,大家大可不必以为AlphaGo Zero的出现就意味着人工智能能够从零开始“生成自己的智慧”,它只是借助于强大的计算能力和自我学习能力,针对围棋这个特定的例子,提供了一个不依赖人类对局数据、可以在更高复杂度上找到全局最优的方案。同时,在目标更复杂、多方参与程度更高的体系中,人工智能在相当程度上还得依赖人类历史中的经验和数据积累。不过,AlphaGo Zero的成功为人工智能在提高学习效率、决策剪枝和模型优化方面提供了非常有价值的研究成果。
人工智能的发展是大势所趋,它的发展同样也遵循自然规律,希望在不久的将来能够看到人工智能在更为复杂体系中解决实际问题的应用。
参考出处:
1.https://www.nature.com/nature/journal/v550/n7676/full/nature24270.html
2.https://www.inside.com.tw/2017/10/19/alphago-zero
3.https://zh.wikipedia.org/wiki/%E6%B8%B8%E6%88%8F%E5%A4%8D%E6%9D%82%E5%BA%A6
文/Athlon_BE
2017.10.19 初稿
2018.4.8 二稿