2017 年 7 月 28-30 日,由 中国计算机学会(CCF)主办的高端学术活动——中国计算机学会学科前沿讲习班(CCF Advanced Disciplines Lectures,简称 ADL)第 81 期在北京中国科学院计算技术研究所举办。
本期讲习班由北京大学计算机科学技术系主任,信息科学技术学院教授黄铁军主持,另有六名来自学界、业界的大牛,为现场百名学员讲解了“类脑计算”相关的前沿与应用。雷锋网亦到现场听讲。
北京大学信息科学技术学院教授,计算机科学技术系主任,国家杰出青年科学基金获得者,教育部长江学者特聘教授
黄铁军教授回顾计算机和人工智能的发展,提出目前我们正处于神经形态计算类脑计算机的元年。以AI的诞生、制造强AI、绘制大脑地图、神经形态计算、AI睁开眼睛为框架体系讲解了类脑计算。黄铁军认为相比于Brain Inspired Computing(脑启发的计算),Brain Like(仿脑)是取得突破的可行路线,是走向“强人工智能”的必要阶段,可能比“人工智能”(人工设计出来的智能)和“认知科学”(理解思维的机理)更早实现。
雷锋网对其演讲全文进行了不改变原意的编辑,呈现如下:
各位大家好!很高兴大家关心类脑计算、神经形态计算这样新的话题。虽然这个课题去年我就讲过,但是今年有一些新的进展,而且国家的一些相关的部署,已经开始了。所以我觉得这个讲座,还是应当会对后续的科研工作会起到一些支持和推动作用。
类脑计算的概念以及在这个方向和领域下面,需要做一些什么方面的工作,哪些层次的工作,每个人的理解可能都不完全一样,但是现在慢慢的还是形成了一定的共识。这次讲座,我们邀请了7个讲者,今天上午,我先来将我所理解的类脑计算的概念,以及一些国内外的进展。
我采用的是英文题目——Brain-like Computing类脑计算,有的老师喜欢叫Brain-inspired computing,受脑启发的计算,但是我更愿意叫类脑计算。neuromorphic computing这个词更专业一点,学术一点,然而放在媒体上去介绍,类脑计算更能让公众了解。但是它背后也有很多歧义,大家一说类脑,怎么类脑,马上有很多各自的理解和解释。神经形态计算这个词更为准确一些,我们做的这种新的计算模型、计算范式,实际上是一种神经形态,我一会儿再解释神经形态。如果是做学术写论文,我建议你用“神经形态计算”这个词,会找到一些以前的或者更为准确的文献。
实际上我觉得所有搞计算机的人 ,心理一定会有一个人工智能的梦想。计算机可以说是人类有史以来影响最大的发明,这个发明到底能干什么?搞计算机的人总会想计算机可以做越来越强的计算逻辑和各种各样的信息处理能力,是不是能够代替大脑,超过大脑。当我们把计算机跟脑做比较的时候,一般来说我们会觉得遥不可及。
大家都在媒体上看到过霍金和马斯克讲人工智能,说如果你发展人工智能,肯定对人类社会的影响会很大,但是如果出现超级人工智能的话,我们人类就会遭至灭顶之灾。很多人反对霍金和马斯克,认为超级人工智能不可能,但是都没有充分的证据。
大概在2014年前后,我就认为这条路肯定是存在的,所以就应该沿着这条路把这个事实现了。我1月7日在中华读书报上,发表了一篇源于制造超级大脑的文章。后来2月份的时候,出版了一本书叫《超级智能》。
总的来说,基本上越来越多的人认为超级智能是可能的,这样的道路是存在的。回到计算机学科,去年是图灵提出计算机的模型80年,第一台计算机发明70多年,是人工智能概念提出60多年,是深度学习那一篇Science的paper发表10周年。去年类脑计算或者神经平台计算已经出现了很多标志性事件,让我们相信新一代的计算机已经出现了,计算机已经进入了一个新的历史时期。所以我们今天重点是关于目前已经发生的一些事,大概分五个方面。
一、人工智能踏上正途
第一个是人工智能,我称之为人工智能踏上正途,当然人工智能做了60年,为什么说今天终于往正确的方向进行呢?也不是说以前都错了,只是说以前弯弯曲曲各种各样的想法,目前逐渐形成了一个比较主流的方向,而这个方向是我们终极性的问题,有可能取得突破。今天我们一说人工智能,当然大家就想可能是计算机作为一个平台实现人工智能,这基本上成为一个思维方式。但是事实上我们回头看今天的计算机,是不是能够完成这样一个历史使命,这个问题是我们首先要思考的问题——靠什么实现人工智能或者未来的强人工智能?
计算机从起源开始,实际上已经决定了我们今天的计算机,不是实现人工智能的一个合适平台。图灵当时提计算机,图灵从来没有想提出说一台计算机,那时候他为了解决一个数学问题:希尔伯特的23个问题中的第10问题,在数域里面存不存在不可计算数。为了证明这个问题,要提出一个概念模型,构造一个通用机器,这个通用机器能做所有的数学操作,但是这样的机器做不到表达刚才说的其中那些不可计算数。我们都是搞计算机,都很清楚图灵机的概念,但是图灵机是一个副产品,不是图灵为了设计计算机而设计的。图灵在80年代之前已经将计算机的极限说得很清楚了。今天很多人说只要我把程序编的好,算法设计的好,计算机什么都能做。你想想,当你回答这个问题的时候,你基于什么样的逻辑在说,计算机什么都能做的?根本不是这样,肯定是做不到的。
当然我们还要说一个伟大的贡献,就是香农的贡献。数学模型是抽象的,无法执行,香农把数学和物理联系起来,这样计算机就能真正造出来了。这个贡献大家都知道,还是想强调一下:一个数学概念模型,用机器简单的一个模型可以表达各种各样复杂的数学问题。他的伟大只要一个器件就能解决各种冲突,各种逻辑和数学的计算。那是1947、1948年的时候,那个时候还没有晶体管,物理上总是有开关,灯也是开关,我用多个开关可以组合出我们要的这种计算逻辑功能。就是把问题抽象到一个极致,然后把问题明晰化。
当然还有冯诺伊曼体系结构,这个也是一个历史性的贡献——把软件和硬件分离。计算机的伟大的地方,就是通用的计算逻辑机器,可以做基本的逻辑和运用。但是你要完成任务需要靠程序,要软件和指令。这样的话,你买一台机器,装不同的程序,就可以执行不同的任务。当然为了完成通用性,效率是有损失的,你解决一个问题,专用电路更直接,通用的会有一些符号代价,但是这些代价,使得应用范围大大扩展,所以这也是一个贡献。
所以我花时间去说图灵的模型,香农的电路和冯诺伊曼体系结构这三件事是因为我们设计新一代的计算机,类脑计算,同样要考虑类似的问题。我们要考虑,数学模型是什么,用什么样的器件去实现,你是什么样的体系机构,去实现人工智能的一些任务,不然计算机不可能实现强人工智能。计算机发展到今天,第一台计算机出现70年了,背后的逻辑很清楚,数学物理和体力结构,清清楚楚在那个地方。但是不是做智能的合适平台,你看清历史,才能知道未来怎么做。
接着我们看一下人工智能,图灵是1951年提出机器能思考,这当然是人工智能问题,只是那个时候,这个词还没有造出。1956年,一些图灵奖获得者创造了人工智能这个词。他们在申请研究经费时写道:我们有一些想法,就是通过机器仿真,学习以及智能其他课程的方方面面都可以精准描述。到现在为止,这个想法还是很多人对人工智能理解的一个经典想法。我们怎么做智能和学习?实际上我们先把它形式化,给它一个精准的描述,就能用计算机去实现。他们认为目前的计算机速度、存储能力还很慢都不是问题,问题是我们把程序写出来,这个软件就能解决智能的问题。我们今天的很多想法仍然是沿用这样的思路,当然这样的思路对或者不对,我们要考虑。
过去60年人工智能发展了很多技术路线,也有很多进步。从最早的符号系统到今天的阿尔法狗,有很多标志性事件,每一次人们都说人工智能发展这么快,是不是马上能超越人类,后来发现都没有真正的实现。在历史发展中,大致来说就是三个流派一直在竞争,第一个符号主义,这是经典人工智能,总要把它符号化、形式化、精准化,有描述,然后用机器去实现。第二个,就是神经网络,连接主义,实际上背后的思路就是说人的智能是神经网络产生的,我也做一个神经网络,希望它能产生智能,至于产生什么智能,是训练和模型的事,首先我们走的技术路线是神经网络,所以这一块也叫仿生学问或者生理学问。第三个,行为主义,主要是控制论,他们说实际上你想大家无论是我们一个人,或者一个动物,甚至我们生物最早的单细胞的原生生命形态,其实它的智能从哪来的?在于和环境交互过程中产生的。一个小孩生来,没有什么能力,但是跟环境交互中,能力会逐渐提高。当然人还要上学,学书本知识,动物是不学这个东西,当是靠交互也可以。
然而,如果不真的从大脑开始,终极性的问题仍然解决不了。这个想法并不新, 1956年的时候就想到了,这些人讨论了7个问题:自动计算机、编程语言、神经网络、计算规模理论、自我改进、抽象、随机性和创造性。目前自动计算机、编程语言、计算规模理论已经弄清楚了,而神经网络、自我改进、抽象、随机性和创造性等问题还不明晰。他们当时就在考虑,一群神经元如何形成概念,我们今天的深度学习也形不成概念,还有第五个问题,一个智能怎么能自我提升,现在深度学习靠大数据训练,一定程度上可以提升的,只要你用数据,我的智能就会产生就会自动提升,但是还没有自我性和选择性。未来的计算机,如果还叫计算机的话,要有真正的随机性,然后才有创造性。原来这个系统不会存在的东西,靠随机就能出现了。
为什么后面几个问题一直发展很有限,背后有两个原理。一个是因为我们一直在用计算机做智能,在计算机上做神经网络、深度学习,是架构在冯诺依曼体系结构上的神经网络模型。神经网络是没有什么中心的,大量的节点进行复杂交互的网络,跟计算机体系不是一回事。二是由于没有一个针对神经网络的一种体系结构的硬件,晶体管促进了计算机的快速发展,但是没有合适的神经元器件,没有物理上做出一个硬的神经网络,又能符合我们希望的模型,没有类似于香农这样的人物出现,提供一个物理的桥梁,让你实现这些想法,数学和神经网络的想法,就不像计算机发展那么快。
但是我们还是要找这样一种路径来实现神经网络。所以神经网络发展这么多年,有高潮、有低潮,但是总有人比较坚持。1985年Hinton提出boltzman机模型。今天大家用深度学习去说boltzman机说多层网络的时候,好像是一个很新的。从1985年到2006年,没有人做的时候,我也坚持去做这个,就是报着这样一种心态,在坚持做神经网络。我是1995年读博士,1996年选题,那个时候,我们所有11个博士生,就只有一个人做神经网络,这种精神就是首先你逻辑对不对,你要认定是对的,你就坚持做下去,不管别人怎么看我这个事,为什么会有这么一种精神?因为Hinton是布尔的曾孙子,布尔逻辑那个布尔的后代,这些人是有贵族精神的,不会被流俗所影响,我认为这个方向对,我就坚持做,慢慢调吧,有人给钱,我就做,没人给钱,一个人做,有人给钱,几个人做。
2006年,Geoffrey Hinton在《Science》发表关于深度神经网络的论文,现在深度学习已经过热了。2011年,深度学习没有那么热的时候,我在斯坦福的半年访问,他们就是用layer做图象识别、语音识别、自然语言处理提升的百分点数,当然都是几个百分点,没有超过10%。后来,李飞飞组织的深度学习在比赛中,对图像识别的能力提高了11个百分点。现在已经变成用更多的数据,更深的网络,调调参数,然后一个结果,这就没有什么,从研究的角度没有什么太大意义了,但是我们都喜欢干这个事。
Alpha go的实现里面有很多它新的想法,是一个标志性的事件,但这还不是强人工智能,自主智能,但是超出了我们传统上对人工智能的一种理解——总要把很多东西进行形式化然后表达。它的突破在把围棋当成一个图像去识别,这个跟人去识别的过程是类似的。所以我们讲高手就是棋感,棋感从哪来?就是你下的棋数,下的多,看的棋谱多,阿尔法狗看完3000万盘棋,棋感已经超出人了。你说棋感这种我们通常认为只有人类有的,机器一样可以有。这种神秘性,我们认为独有性的东西,逐渐被机器替代。
所以2030年国家的重大科技项目里面,潘院士提了五大方向:大数据智能、跨媒体智能、群体智能、混合增强智能、自主无人系统。 2030年的时候,计算机达到什么样的能力?当时定了一个目标,就是要逼近人脑的信息处理能力,具有自我认知,自主的通用人工智能。
以上是一些背景,花了不少时间,后来应该是相对好讲。
二、制造强人工智能
第二个话题,是制造强人工智能。强人工智能又叫通用人工智能,到现在为止,包括阿法狗在内的,都是弱人工智能,专用人工智能。专用人工智能是指就事论事,要解决某个智能问题。强人工智能是要达到人类水平,能够自适应的应对外界环境挑战的具有自我意识的人工智能。一旦达到人类水平,就会超过人类水平,所以强人工智能是我们要应对的一个挑战,这个挑战也许是我们人类出现以来,要应对最大的挑战。
实际上世界上存在超级人工智能,本来我们人就是,我们本来就是一个强人工智能,我们的强人工智能基于我们的大脑,神经系统。到目前现在为止,除了人脑之外,没有任何一个自然或者人工智能系统,具有对新环境、新挑战,能够自适应,人是最典型的具有强人工智能的。
既然人可以有,我们怎么让机器有?一开始我就说类脑计算这个词,很容易用不同的角度去理解,比如说Brain-inspired computing,受脑启发的计算,这个事已经从人工智能开始,大家都在做,脑给了我们一些模型原理,尽管很有限,但是我们得到了一些认知,认知科学给我们一些启发,我们可以设计新的算法,包括疑团算法,各种各样的。其实背后或多或少都有认知的应用。但是这样的一个理解是不能解决我说的强人工智能问题的,这样一个思路,把我们引入歧途。
我们刚才说人类大脑有强人工智能,人类大脑的强智能是怎么出现的?换一个说法,人的意识是怎么回事,或者人的思维是怎么回事,人的意识起源是什么,意识背后的原理是什么,就是这样一个问题。这样一个问题,是我们人类三大科学问题。人类面对三个最大的科学问题,第一个宇宙的起源,生命的起源,意识的起源,这三大科学问题,是一个很难的问题,要不然就不叫它大问题了。这么一个大的科学问题,什么时候能解决,你去问脑科学家,再保守的脑科学家,也不会跟你说在100年之内能解决,一般都会说大概几百年的时间,也有人说会在1000年的时间,也许永远解决不了。因为这种大问题,他们没有找到一个可行的方案,只能是说不断往这个方向探索而已,所以不能给你一个确定的答案,因为太难了。如果他们不能告诉我们,大脑是怎么产生我们的意识这种强人工智能的,我们怎么办?
别人没有给你模型,我们是不是等模型出来再去做?我们多少年来被这么教育,科学是基础,技术是基于科学我们才能发展新的技术。所以但是这种思维方式在有些情况是对的,但是大多数情况下是有问题的。比如说飞机和空气动力学,1903年莱特兄弟就造出了飞机,但是1939年才出现空气动力学用来解释飞机为什么能飞。但是今天的飞机,靠空气动力学的指导才能做得更好,但是那只是更好。第一架飞机是没有科学理论做基础的。回顾一下,我们人类历史上的技术进步和科学进步,技术进步几乎可以说都是领先于科学进步的,原创性、颠覆性的。中国四大发明,没有一个有科学原理的,你说中国没有科学技术,中国有技术,指南针早就用了,郑和也不知道地球是圆的,也不知道指南针真的指南,但是我们就做出来了。后来,等到科学逐渐的磁学,这些地球我们知道怎么回事的时候,我们才理解为什么指南针能指南。
所以我们做通用人工智能,强人工智能,是不是一定要回答——智能是怎么回事这个问题?大脑到底是怎么产生的智能,我们是不是一定要回答这个问题,如果回答等几百年之后,再去做了,那这件事就没有必要再去讨论了。实际上不是这样的,类脑计算不是Brain-inspired computing,类脑计算是Brain-like。什么是类脑计算?我们现在并不知道大脑为什么会产生这么高级的,创造性的知觉。但是我们知道是什么样的物理系统在产生这个功能。这个大脑在物理意义上讲是怎么回事,在物质上是怎么回事,我们不说精神不说思维智能,我们说神经系统是怎么回事,是什么样的生物系统,什么样的神经网络,在发生这样一个复杂现象。所以这是大脑的解析仿真,大脑能不能解剖开,能不能把大脑的画出来,我们要搞清楚,我们要看清楚 ,是什么样的结构在做,在发生这样一个行为。所以这件事可以做的,等会儿还会讲画到什么程度。
第二个,如果我们知道大脑的神经元,神经网络这样一个结构,产生了高级的功能,我们能不能用电子也做一个。当然我们不用再去复制一个生物的东西,我们可以用神经元、神经网络的功能,连接也一样,做一个同样的系统。因为神经元也是一个信号处理,图谱是信号的加工,这样的功能我们可以用电子器件做出来,人脑其实也是一样,你抓住一定程度上的结构相似形,就会出现类似的功能,如果结构的相似性精确到一定程度,复杂性就有可能出现。所以是照葫芦画瓢做一个东西,我们不问为什么。
这样一个系统,你可以去训练它,就像今天我们说深度学习没有一个人不信,深度学习的功能在那,多层网络在那个地方,你用大量的数据训练它,它就会出现抽象能力,分类识别各种各样的能力。如果你做了一个大脑神经网络的东西去训练它,用实时的,用各种各样的刺激去训练它,它也应该出现类似的现象。一个复杂网络,会产生更复杂的现象。像简单的神经网络会产生简单的现象,复杂网络会产生复杂现象。人类一定是先理解机器智能,最终理解我们自身的智能。因为从可实现上,也应该是这样。所以你看走了四步,最终实现了理解意识,但是如果按常规的科学为先的思路,上来就现问意识怎么回事,这四步都不用走,我们就在原地等着就好了,就不会有类脑计算,不会有真正的下一代计算机了。
因为今天大家给我三个小时来讲,所以我还可以详细的去说下。2015年的时候,为了给北京市说清楚,我总结了三句话,他们说明白了,你们做吧。结构层次模仿脑,器件层次逼近脑,智能层次超越脑。结构层次模仿,把大脑的神经网络结构搞清楚,仿真大脑,这就是大脑反向工程。第二个,做出神经形态器件,从尺寸、功能上,逼近生物神经元,这是神经形态工程。智能层次超越脑就像我们今天去训练一个神经网络一样,用大数据,用各种的感官,当然可以用虚拟现实和虚拟环境去刺激它,让它产生复杂的行为,就是刚才说的,类似行为主义的训练。这三个层次做完之后,这个系统就会拥有高级的复杂功能。大概是这样一个路径。
所以我们所谓的类脑计算,类脑计算机,是仿造生物神经网络,采用神经形态器件构造的,以时空信息处理为中心的智能机器。为什么要强调时空信息处理,因为我们老说复杂环境。图灵机处理的数据流,实际上是已经拆借的时空信息了,尽管可以做视频,做视觉,做现在复杂的任务。但是最终时间、空间都拆碎,变成一个一起进行的数据流。一旦时间、空间被破坏之后,很多智能的任务,就很难做了。我们生物视觉、生物听觉,从来没有把时间、空间破坏掉,我们眼睛看世界,从来没有时间、空间最后变成一个一味的流,我们在真正的实施并行在做。这种新的机器,要能直接出来,以这种方式处理信息,这就是以时空信息处理为中心,时空不能破坏,时空不破坏的情况能够满足,直接进行处理。
所以这种神经形态计算机,或者类脑计算机,在我们刚才说的不同的,跟经典计算机相比在各个层次都要做一些变化。新的神经形态计算机,它的基本器件是神经元和神经突触而不是晶体管,这个是神经形态器件,当然是人工的、电子的。第二,经典计算机是人定义的,是冯诺伊曼定义的体系结构。神经计算机是仿生物的神经网络,一个已经具备这种功能的结构,我们把它用电子用芯片的方法,把它实现,对于这样一个网络,要去管理,就像我们今天的操作系统要去管理硬件的很多功能一样,比如说网络结构配置,因为硬件一旦做出来,不能随便变。但是你上面要实现网络的各种各样,怎么把任意的一个生物网络模型,映射到这样一个固定硬件上,网络配置和管理。软神经网络到硬神经网络的映射是一个基本要求。
所以说到底,这样一种机器,它放弃了以前我们说做智能,得去问认知科学家,智能是怎么回事。他可以告诉你一些东西,那些东西真要做到计算机的模型,解决不了问题。就像中医一样,可以给你说一些道理来,但是那个道理解决不了什么问题。所以我是死心了,放弃跟他们再去论证下去,否则人都老了,将来连这个问题都解决不了。