人工智能引发的奇迹恐怕早就不再是新闻了,这热潮当然是在去年三月李世乭与AlphaGo(阿法狗)的对弈开始广为世人知道。前天(10月19日),一篇Nature重磅论文“Mastering the game of Go without human knowledge”引发国内广泛热议,人工智能再次刷新人们的认识。
新一代的AlphaGo Zero,被翻译为阿法元,不依赖于任何人类的棋谱,不参考人类任何先验知识,完全靠自己强化学习(reinforcement learning)和参悟,它花三天时间就可以自己左右互博490万棋局。阿法元棋艺增长远超阿法狗,以100:0,百战百胜。此前,阿法狗曾花了几个月时间,学习人类三千万棋局,才打败人类。
阿法元不再被人类认知所局限,能够发现新知识,开发新策略,它让深度学习用于复杂决策更加方便可行。美国杜克大学人工智能专家陈怡然说:我觉得最有趣的是证明了人类经验由于样本空间大小的限制,往往都收敛于局部而不自知(或无法发现),机器学习可以突破这个限制。
无怪乎纽约客最近的封面文章《人类未来只能给机器人打下手》,并配了一幅人类向机器人乞讨的场景的图片。
这篇文章,就着重说一下,人类要向人工智能学习的三堂课。
深度学习
事实上,带动这波人工智能背后的关键技术——深度学习(deep learning),早在2012年就开始在各种国际舞台上发光发热。在全球最知名的ImageNet机器视觉舞台上,由深度学习之父Hinton领军的团队,首次参赛就让原本停滞难以再进步的正确率大幅提升。(2010为72%,2011年为74%,2012年为85%)。不仅如此,这个数字进步的速度令人咋舌,在短短三年的时间内,微软研究院用了高达152层的神经网络让正确率提升到95.06%,这个数字背后的意义在于,机器终于跨过了人类视觉的94.9%的壁垒。
从此之后,深度学习就一再创造奇迹,2017年在语音转文字上,以95.51%的正确率赢过了人力速记员的单词正确率94.9%(这数字的确跟视觉的壁垒是一样的,人类为何常常卡在95%这关,值得研究)。DeepMind团队则是在唇语领域上以超高的93.4%赢过了人类79.6%的水平。来自卡耐基梅隆大学操刀的Libratus,也在一对一不限注的德州扑克国际竞赛中,击败所有的人类参赛者。
在看到这一波波的机器的胜绩之后,大家首先会担忧工作是否会不保,但是让我们今天先把这件事放一边,我们从算法原理(放心,后方无致人昏睡的数学)的角度来看看,到底是什么关键点造就了这些成果。身为深度学习的从业人员的我,有时觉得这些神经网络不仅是单单模仿人类,在某些地方甚至是人类没有做到位的部分,却能在深度学习身上看到。
第一堂课:分享、共享
深度学习是从机器视觉领域开始展露头角的,可是要知道,神经网络(neural network)这项技术至今已经将近80年了。我依然记忆犹新的是我之前在教授机器学习的课程中,常常告诉学生神经网络的权重又多又复杂、缺乏好的方式进行优化,所以耗费时间极长,没事不建议使用……之类云云。但是为何现在更深更复杂的网络却能够处理,除了现在是一个前所未有充满计算力的时代,大家手上任何一台智能手机的计算力其实都超过当初阿波罗号登月美国太空总署后台的超级计算机,这些计算力当然也是助力之一。但是其实真正关键则是来自于“共享权重”的概念,分享正是人工智能要教人类的第一堂课。
拿人类的视觉来说,当一只猫不管出现在我们视野的哪个位置,他始终就是一只猫,不会变成任何其他的动物。这个现象意味着我们人类视网膜的1.2亿个视杆细胞,其实都是用同一套规则在解读世界的。所以现代的深度学习有别于以往神经网络每个神经元各自学习的做法,而改为同深度神经元共享权重(在此各位可以把权重视为学习到的特征)。如此一来不但节省了数亿倍的运算量,而且每个神经元都能学习到比过去各自学习时更完整的特征。
回头看看人类,共享难道不是推动人类进步的一大助力吗?现在人工智能风潮能够比过往来的更强烈,其实跟现在所有主流分析框架都是开源有着密不可分的关系,对,全部都是开源且免费….。2008年,全球最大的面向开源软件项目的托管平台Github问世(我们常戏称这是全球最大的同性交友平台),带动了程序代码分享的风气,而这些分享其实也是人类文明在近期能够以前所未有的速度进步的主因。对许多人来说分享往往会变成滥好人的同义词,我们先跳开那些共享单车、共享充电宝这些前景还不明确的商业模式,若是仔细解读这两年硅谷拿到高额投资的初创企业,有一半以上都有将技术开源。把视为公司核心竞争力的技术开源是否意味着公司贬值?但是事实上透过开源冷启动所获得的用户基数,以及透过开源来提升代码与产品的质量,这些新创公司从开源上得到的好处其实是远超过敝帚自珍的。
第二堂课:专注
除了共享权重之外,另一个概念“感知域”也是深刻地影响机器视觉的效果。在以前的神经网络中,我们总是企图要让每个神经元学习与全体所有神经元之间的关联,这个想法造成计算量膨胀到人类无法解决,但是想想我们人在看东西时,总是把目光聚焦在一处,其他周遭的画面就变得模糊,这个概念被用在了深度学习带来了感知域的观念,也就是说只需要专注在周遭的神经元就可以,其他较远的都可以不用管他,专注,正是人工智能要教人类的第二堂课。
再来我们把角度从视觉换成听觉,语音识别是大家最普遍使用的人工智能应用之一,从早期的语音转文本,到现在更进一步的去理解句子中的语意,用的是我们称之为递归神经网络(RNN)的技术。它一样有着共享权重的特性,而且它具备了本次的输出就是下一次的输入这样的递归结构,很适合用来处理本质就是序列的语音与语言。像是神经网络翻译技术就是广为人知的,但是毕竟语言的本质比图像抽象很多,所以早期深度学习处理语意这块并不能得到很好的成果,这个问题一直到了一个新的技术观念问世为止,那就是“注意力(attention)”。这个技术概念其实非常直接,当我们在翻译一段英文时,通常是看完整句后,然后除了要翻译的字词之外,还会推敲一下上下文,有些字是特别重要的,会造成语意的极大差异,而有些字则是有或没有都不至于造成严重的影响。评估这些特定范围的字的影响力的机制就被称为“注意力”。
人类世界也是这样,就像是有些新创公司急着每种商业模式都想碰一碰钻一钻,但是往往只会落到徒劳无功的下场。唯有专注,不仅要在特定领域中做到最好,而且要具备强大的“注意力”机制,才能够从千丝万缕的信息中,找出真正值得全心投入的领域。
第三堂课:全局观
人工智能要教人类的第三堂课是“全局观”。还记得柯杰在人机大战后谈到AlphaGo说到,“感觉AlphaGo和去年判若两人,当时觉得他的棋很接近人,现在感觉越来越像围棋上帝……”。为何会让人感到不像人而像神,而这中间的差别是什么,我认为巴菲特的名言在此分外贴切——“人们总是在该恐惧的时候贪婪,在该贪婪的时候恐惧”,我想这就是人性的一个很好的批注。说人工智能像神其实有点言过其实,但是若是说到让人感受到神性的部分,恐怕在于人类总是会被当下的情势、被自己心中的贪嗔痴所束缚而做出错误的决定,而机器却能够完全不被影响,只往最后目标前进。
在每个深度学习神经网络中,我们都会给予它一个损失函数,神经网络的任务就是要想办法透过学习来让损失降低。那如果两个任务不同且损失不同的神经网络铐在一起时(我们称之为联合学习),会发生甚么事。如果是人类的世界,恐怕两个人都会着眼于自己的损失最小化,而做出错误的决定,最后导致双输。那深度学习呢?下面这张图是我之前在处理这种联合学习的截图,当时看到这个景象其实整个人是深受感动的。神经网络的做法是,它们可以一起接受短期的损失增加,甚至像图中是短期损失高到吓人,但是他们却能携手度过,一起迈向整体损失更低的新境界,在深度学习的眼中,只有全局目标,不会受短期损失影响。仔细想想人类的文明,多少资源都浪费在大家为了巩固自己的短期利益,而造成全体众人皆输的惨境,有时想想也荒谬,在商业世界失去了的人性,反而能在人工智能身上找回来。
我不知道未来的世界会如何,我只知道现在是站在新的工业革命的起点,既然分享、专注、全局观,能将没用的神经网络改头换面,我相信人类也能再次进化,创造新的文明奇迹,更何况这些本来就是我们曾拥有但是丢失的初心……