演讲全文>>
以下内容为陈云霁演讲实录:
大家下午好,我是来自中国科学院计算技术研究所的陈云霁。
刚才郭爱克老师已经深入浅出地给我们介绍了人类大脑的神奇和奥秘。我想,它最伟大的地方应该是具备非常强的智能。应该说,我们迄今已知的所有事物里面,人类大脑有最强的智能。
我过去跟仇子龙老师和郭爱克老师经常交流,但是我的角度可能跟他们有所不同。我自己是做计算机科学的,因此我更多的是从计算机科学的角度来思考跟郭老师类似的问题。我的问题是:怎么去借鉴人类的大脑,制造出一个机器的大脑来。
借鉴人类大脑来制造机器大脑,这件事情应该是整个计算机科学皇冠上的明珠,也是所有计算机科学家都非常关注的一个问题。为什么这么说呢?因为我们每个普通人每天要做的事情,都在智能这个范畴内。包括我们去看、去听、去触摸,这些我们称为“感知”,也包括“认知”,比如说学习、记忆、语言、思维、解决问题,应该说,人类本身的各种东西都在智能的范畴。正是智能,把我们人和万物区分开来。
如果有一天我们能制造出一个机器大脑,它也具备通用的人工智能,那么这就意味着,机器可以帮助我们解决每个普通人在日常生活中碰到的各种问题。比如说我头疼的一些问题,像扫地、洗碗、抹桌子,包括带孩子。尤其是带孩子,因为我老婆今年过年前生了一对双胞胎,让我深刻地感受到带孩子真是太不容易了,特别是我老婆,现在已经是每天昏天黑地、日夜不分了。
这就使得我的科研积极性得到了进一步的提升,我觉得应该多努力一点,尽早把这种智能的机器给做出来,这样至少能够帮助我们解决带孩子的问题。这是其中的一个方面。
从更长远一点来看,我个人认为机器大脑的出现,可能会使得我们整个人类社会也发生巨大的变化。“有所发明,有所创造”,这是毛主席说的一句话。我记得他还说了一句,就是“从必然王国走向自由王国”,这是我们科大西区图书馆里有的一句话。
我对这句话印象很深,因为我觉得一旦机器的大脑能够构建出来,具备跟人类似的智能,那每个人就不再是为了生存和生活的需要去工作。因为为了生存和生活去做这些非常繁琐的体力性的或者简单的脑力性的事情,都可以用机器来完成。
我们每个人都可以把更多的精力聚焦在科学、艺术等这些需要创造力的事情上,就可以使得科学、社会乃至我们人类本身,能够得到巨大的进步和发展,迈上一个新的台阶。我相信这个台阶如此之重要,以至于可能会比从猿到人的这一次飞跃还要来得重要。
当然,说了这么多,都是我们的未来愿景。现在我们能够参考的,其实最主要的还是人的大脑。刚才仇老师已经说了,人的大脑里面有上千亿个神经元细胞,这就是人的大脑得以存在智能的物理上的根基和基础。这上千亿个神经元细胞联结在一起,它们的联结我们称为“突触”。这个“突触”的数量可能有上百万亿个,甚至更多。
有的科学家就会想,人是通过神经元网络组成的一个架构,具备了这样的大脑之后有了智能,那机器能不能也这样呢?
1943年有两位科学家,一个叫McCulloch,一个叫Pitts。那个时候还没有计算机,我们都不能称他们是计算机科学家,只能说是数理逻辑学家,或者心理学家。他们就提出说,“我们可以对人的大脑进行数字化的抽象。”
比如每个神经元细胞抽象成数字,每个“突触”抽象成数字,这样数字组成的网络某种意义上就继承了人的大脑进行智能处理的能力。所以在这个图里面,就是一个大致的抽象状态,从人的大脑到人工神经网络。
这个图是我们一个最简单的人工神经网络,它有多简单呢?只有一个人工神经元,底下虚的是一个生物的神经元细胞,上面覆盖的蓝色的东西是我们的人工神经元。它们之间有很大的区别,可能就像是老鼠和米老鼠之间的区别。
但是在某些基本的特征上,它还是继承了神经元细胞的特点。比如说它可以从外界得到输入,从X1到XN是一大堆输入,每个输入有自己的权重,可能是从W1到WN。那么当一个人工神经元把这些输入的信息进行汇总之后,再通过一个比如说非线性激活函数这样的东西决定了它总的输出,然后通过“突触”再传递到下一个神经元,这就是人工神经网络工作的机理。
大家可能会说,这么简单的一个东西,到底有没有用呢?实际上还是非常有用的。比如说在这个图里面,一个最简单的人工神经网络,只有一个人工神经元,它也可以完成一些“分类”的问题。比如说X1等于1、X2等于-1,这一类就可以分出来。
可能大家不太接触人工智能,不知道“分类”这个东西,“分类”其实是人工智能里面一个非常关键和核心的问题。比如说对面来了一个人,他是个好人还是坏人,他是男人还是女人;对面一架飞机飞了过来,是中国的飞机还是美国的飞机;对面走过来一个人,他是张三还是李四……这些都是分类问题。可见只要能把分类问题解决好,我们的人工神经网络就可以发挥很多的作用。
我们刚才讲的是一个人工神经元,如果有很多人工神经元在一起组成的东西是什么呢?实际上现在有一个非常流行的词,叫做深度学习,指的就是这种多层大规模的人工神经网络。
2006年的时候,有三位科学家Geoffrey Hinton、Bengio、LeCun做出了一个非常划时代的工作,他们解决了深度神经网络问题,就是深度学习这种多层大规模神经网络训练的问题。使得人工神经网络,特别是深度的人工神经网络,能够解决非常多实用的问题。
我们可以看到,深度人工神经网络,虽然层数很多,但最开始的思路还是借鉴人类的大脑视皮层。比如说,我们知道人类大脑一般是六层神经元的结构,我们在设计的时候最开始也是五层或者六层,而现在可能已经有几百层、上千层的神经网络出现了。
现在这种深度学习神经网络已经可以做很多有意思的事情,比如人脸识别。在一个叫做“LFW”的基准测试集上面,深度学习已经可以达到99%以上的准确度。而我们找一些成年人来看这个测试器,他们的识别准确度只能到97%多。这就意味着机器在特定的边界条件和光照条件下识别人脸,甚至可以比人还要准。这个工作最早也是科大校友汤晓鸥老师做的。
另外还有语音识别,比如说语音输入法,或者说是苹果的Siri等等,这些功能背后都是在做语音识别。很多时候语音识别的机器也可以做得比人还要好。
另外一个例子大家都耳熟能详了,就是AlphaGo,它是一个下棋的程序,能够在围棋领域战胜人类的世界冠军。但是对我们人工智能研究者来说,远远在AlphaGo这个围棋程序出来之前,我们就在关注这个事情。
大家可能知道做AlphaGo的团队是DeepMind,它在2014年的时候被谷歌花四五亿英镑收购了。那个时候很多人觉得谷歌是不是冤大头,居然花这么高的价钱收购一个初创公司。但事实证明,谷歌是非常有眼光的。
那为什么DeepMind当时会被谷歌收购?就是当时它基于深度学习提出了一个非常强大的框架,就是深度学习加增强学习的框架,它可以让机器只要看着屏幕就可以学会打很多小游戏。比如说类似我们玩的小霸王学习机上的游戏,机器只要看着你玩,自己再玩一阵子就可以学会,而且还可以打破人类的世界纪录。所以它把这套框架后来用到下围棋上,战胜人类围棋冠军也是意料之外、情理之中的。
DeepMind最近又把这套技术用在一个我们平时经常玩的《星际争霸》上面。《星际争霸》是个非常复杂的军事游戏,有多兵种协同、科技树攀爬、经济运营等等。也就是说,现代军事上的很多基本要素《星际争霸》都已经具备了。如果说我们用深度学习和人工神经网络技术,在星际争霸这样的游戏里面,能够打败人类选手,这也就意味着机器可以在军事参谋上发挥非常核心的作用。
刚才我们已经讲了,过去研究深度学习的前辈们已经做出了非常多、非常厉害的工作,它可以在很多领域做得跟人一样好,甚至比人还要好。但是这样的技术就完美了吗?事实上我们可以看到,这些技术离实用化还有很大的距离。
第一个例子,谷歌大脑。这是谷歌2012年做的工作,当时用了1.6万个CPU核,花了接近一个星期去干一件事,就是让机器学会怎么识别猫脸。这么简单的一件事情,连小朋友可能只要看半分钟,甚至看几眼就可以学会的事情,机器却要用1.6万个CPU核去学好多天。这充分的说明现在的芯片和机器,它在处理人工智能的速度实在是太有限了。
另外一个例子是AlphaGo。AlphaGo第一次跟李世石下棋的时候用了多少机器呢?它用了1000个CPU和200多个GPU,平均下每盘棋的电费大概接近3000美元。所以有人说,这是不公平的比赛,因为AlphaGo的功耗可能是几千瓦,而李世石每天吃两到三碗饭,大约功耗是二十瓦左右。
虽然这是个笑话,但在某种意义上也说明了一个现实的问题,就是现在的芯片在进行人工智能处理的时候,功耗实在是太高了。
我们设想一下,现在的这些AlphaGo或者谷歌大脑,它们人工神经网络的规模,还不到人类大脑的千分之一。如果要做这样的工作,把AlphaGo或者谷歌大脑再扩大一千倍,达到跟人脑相近或者相同的神经元突触的数量,那它需要多少电呢?可能需要一个水电站,每年的电费都要上亿人民币。
这也就是说为什么这么好的技术,人工智能算法已经发展到当前这个程度,很多时候每个普通人还很难受益?为什么机器离人的大脑还有这么远的距离?
在座可能都是唯物主义者,唯物主义者肯定知道,所有事物都要有一个物质载体,如果物质载体没有成熟,机器大脑需要的芯片没有制造出来,那么人工智能也是很难和人媲美的。
其实我们可以从别的领域得到一些借鉴和启示,比如说图形处理。上个世纪九十年代我们装机攒电脑的时候,那时候并没有显卡这个东西,那时候都是用CPU来算。但随着图形处理,比如打游戏、看片越来越重要,那么就有了GPU一类专门的芯片。
信号处理也是类似的,我们手机里做得调制解调都是信号处理,最开始也是CPU做的,但是随着这类东西重要性越来越高,可能就出现了DSP这样专门的一类芯片。
随着智能时代的到来,人工智能的处理重要性可能会非常非常高。现在的芯片和机器难以处理人工智能的应用,很自然就会出现一类新的芯片,就是人工智能的芯片,或者说深度学习的处理器。
前期我们在国际上研制了第一个深度学习处理器的芯片。为什么我们能做出这样的工作,其实一个很重要的原因是我的父母,不是别的原因,是因为他们超生了。我还有一个弟弟,我跟我弟弟都是中科大少年班毕业的,但是我们后来做的事情不太一样。
我从本科起开始做芯片,而他从本科毕业起做人工智能的算法。2008年开始,我们想合作一下,因为没有别的事情可以做了,只能把芯片和人工智能结合一下。这样一个机缘巧合使得我们做的工作比别人稍微早一些。
这是我们做的第一个深度学习处理器的架构的layout, 最开始我们想起一个英文名字,“电子的大脑”或者“机器的大脑”,起个英文名字叫“machine brain”或者“electric brain”之类的。
但是我们当时组里有一个法国合作者Olivier Temam,他给我们提了一个建议,他说你们还是起一个中文名字比较好,因为对我们外国人来说也是一个外国的东西,大家会觉得外国的东西很新鲜。所以我们就起了这样一个名字,DianNao,就是汉语拼音的名字。这样一个机器工作,它可以用CPU大概十分之一的面积和功耗,达到百倍以上的性能。
我们2013年和2014年做这个工作之后,到了2016年,我们看到国际计算机提交年会上,大概有六分之一的工作在引用和跟踪我们前面的成果,包括像哈佛、斯坦福、MIT、伯克利、哥伦比亚、UCSB、UCLA或者因特尔、惠普、IBM、谷歌等等。
更有意思的是大家看了我们的标题之后觉得特别有意思,叫做DianNao。所以《美国计算机学会通讯》上面,还有伯克利教授专门写的一篇文章,给大家介绍这汉语拼音背后的意思。
刚才已经讲了,人的大脑里面是千亿个神经元,百万亿个突触,而且做算法的人只要愿意,还可以写得更大,甚至写一亿亿个神经元和突触。但是我们知道芯片的规模永远是有限的,就是指甲盖这么一个亮晶晶的东西,不可能你想让它多大就多大,毕竟是有物理上的限制。正是这个原因,使得过去没有人做出这样一个芯片,它能够快速的把深度学习这个非常大的网络处理掉。
面对这个问题,我们有一个非常简单的思路,说白了就是一个“时分复用”的思想。比如我们要处理一个非常大的人工神经网络,背后整个大的网络都是我们要处理的,而我们的硬件又非常小,只有小框框这么大,那怎么办呢?
我们可以用虚拟化的方法,把一个大的人工神经元网络切成很多小块,每一个时刻我们用硬件只处理其中一个小块,下一个时刻我们再换一个小块处理。通过这样的“时分复用”的方式,类似于蚂蚁搬大米的形式,虽然有很多很多大米,但是蚂蚁一次一次搬,最后一定能搬完。这是我们在技术上的一个创新。
我简单说一下我们未来的梦想。我们最大的梦想是,希望能够把各种各样代表智能的算法,在处理速度和需要花的能量上,处理速度提高一万倍,所花的能量降低一万倍。
为什么我们希望是一万倍?因为我们说了谷歌大脑是1.6万个CPU核,如果能够做一万倍的提升,就意味着我们就可以把谷歌大脑或者AlphaGo这样的东西放到我们手机里。
这样手机不但可以本地实时的去看、去听、去感受和理解这个世界,能够帮助我们去做各种各样的事情,更重要它还具备本地实时训练和学习的能力,它可以不间断的观察人、社会和自然界的行为。
它跟着我们,看到人怎么做它就知道怎么做,看到我们碰到什么事情会怎么处理,看到自然界碰到什么事情自然界会有什么样的反应。通过长期的不断观察和学习,我相信它有可能会真正赋予机器强大的智能。
谢谢大家。
“SELF格致论道”是中国科学院全力推出、中国科普博览承办的科学讲坛,致力于精英思想的跨界传播,由中国科学院计算机网络信息中心和中国科学院科学传播局联合主办。登陆“SELF格致论道”官方网站、关注微信公众号“SELF格致论道讲坛”、微博“SELF格致论道”获取更多信息。更多合作与SELF工作组self@cnic.cn联系。