李国杰:“智能计算机”的历史、现在和未来:超算正与智能“历史性会合”
编者按
6月27日~29日,2019年世界智能计算机大会在深圳举行。在这次大会上,中国工程院院士、中科院计算所首席科学家、中科曙光董事长李国杰以《对智能超级计算机的几点认识》为题,深入浅出地剖析了智能计算机的历史、现在和未来。
“智能计算机”是李国杰从美国留学回来一直从事的工作,其对超算和智能计算的分析对于行业发展具有很高的借鉴价值。记者根据其演讲内容进行了论点梳理,以飨读者。
我们通常说的计算机指数字计算机。但人们一直希望“智能计算机”能像人脑一样处理信息,这是一种模拟计算。
历史:超算是超算,智能是智能
“计算机之父”冯·诺依曼曾经试图模仿神经网络设计计算机,但并未成功。1946年11月,冯·诺依曼在给“控制论之父”诺伯特·维纳的信中写道:“我们选择了太阳底下最复杂的一个对象……向世人展示了一种绝对的且无望的通用性。”
事实上,从第一台电子计算机开始,计算机的发展就与模拟神经网络分道扬镳。此后数字计算的飞速发展,使得用计算机实现人工智能的方式与人脑的思维机制几乎不沾边。
20世纪80年代末至90年代初,在日本第五代计算机项目带动下,全球掀起一阵“智能计算机热”。当时的热点是面向智能语言和知识处理的计算机,研究重点是并行逻辑推理。
日本五代机走的是“定制化路线”。我国“智能计算机”研制走的则是一条比较通用的路线:从芯片、系统到软件、应用,都是“非定制化”。
1990年,国家科委(科技部的前身)批准成立“国家智能计算机研究开发中心”,不但开展了曙光系列并行计算机的研制,还从事了人工智能的基础研究和应用研究,为今天智能超算的发展打下了基础。
钱学森先生曾发表《关于“第五代计算机”的问题》提议:“第五代计算机是什么?是第二代巨型计算机。我认为再把这个概念叫做五代计算机或者六代计算机,就不那么合适了……建议为了不要混淆起见,就干脆叫第一代智能机。”
以此为标志,所谓的第五代计算机就分成了两个叉:一个是第二代巨型计算机,一个是第一代智能机——这是两个不同的概念。
事实证明,历史的发展与钱老的预测是相符的,从20世纪80年代以后的30年,计算机的发展之路确实符合钱学森的预测,超算是超算,智能是智能。
现在:智能与超算的历史性会合
超级计算是“算得快”的计算机。但智能计算机和超算不一样:智能的本意是“算得巧”,而不是“算得快”。这是两股道上的车。
本世纪以来,深度神经网络的成功和大数据的兴起,使得超级计算和计算智能(深度学习)走到一起,出现“历史性的会合”。
过去高性能计算机主要用于科学计算,现在的高性能计算机已大量用于大数据和机器学习。一组数据可以说明这一点:2015年,中国HPC在数据分析与机器学习领域应用只有27%,至2016年达到48%、2017年提升到56%。预计这个比例今后还将继续提高。
但是也应该看到,目前大量采用的智能计算实际上是基于GPU或GPU-Like加速器的“准智能计算”。比如,图像和语音的信号处理计算还是数值计算。
智能算法可以加速传统的科学计算。举例来说,今年4月,200多名科研人员从四大洲8个观测点“捕获”了黑洞的视觉证据。此项研究历时10余年,加州理工学院曾经采用Blue Waters超级计算机进行近900个黑洞合并的模拟,花费了2万小时的计算时间。后来采用新的机器学习程序和算法,从模拟中学习,帮助创建新的模型,在毫秒内就能给出合并结束状态的答案,大大促进了关于黑洞的研究。
如今,机器学习不仅是人工智能领域研究的重点,也正成为整个计算机科学研究的热点。
未来:智能超算的十大关注方向
人类可能会发明新的智能计算机,但至少最近20年内,智能超算是要高度重视的研究方向。关于智能超算的未来研究方向,以下10个方面值得重视。
第一,未来十年是体系结构的黄金时期。近几十年计算机的飞速发展一半来自摩尔定律,另一半来自系统结构的改进。摩尔定律即将走到尽头,计算机未来的改进将主要从结构改进入手。图灵奖得主、计算机体系结构宗师David Patterson与John Hennessy预言:“下一个十年将出现一个全新计算机架构的‘寒武纪’大爆发。”
第二,“人脑级能效”将是未来智能计算机的核心特征。大脑以超低功耗实现了超级复杂的计算,从目前的发展来看,超级计算机现在的能效还满足不了需求。“超算能效增长远远低于速度增长”,是计算机发展70年未有之大变局。这给我们提出挑战,未来超级计算机要达到像人脑一样的能效层次。
第三,要研究具有“低熵”特征的未来架构。智能计算机的本事主要体现在对付“不确定性”,而“熵”就是对不确定性的刻画。要通过全栈的系统设计应对不确定性挑战,在问题不确定、环境不确定、负载强度不确定的情况下,保障可预期的性能结果。
第四,要重视研究领域专用系统结构(DSA)以及可重塑处理器。近几十年通用处理器一直胜过专用处理器,这一局面正在改变。未来大多数计算将在专用加速器上完成,而通用处理器只是配角。
第五,要重视智能超算的通用性。尽管专用化是趋势,但作为一个智能中心和超算中心,还是要本着为大众服务的目标尽量匹配更多用户的需求。
第六,模拟计算值得重视。传感器接收的都是模拟信息,人脑处理的也是模拟量,连续变量的模拟计算是非图灵计算。模拟计算是离散数字计算的前辈,经过60年的变迁,模拟计算可能有机会东山再起,连续变量与离散变量的混合计算将开启计算新天地。
第七,计算存储一体化。人类的大脑计算和存储不是分开的,不需要数据搬移,所以未来的计算机体系结构可能要改变传统的把计算和存储分开的冯·诺依曼结构。
第八,推理驱动与数据驱动可能会交替发展。目前的智能应用,主要是数据驱动。人工神经网络属于开普勒研究模式,而人工智能研究中的推理驱动则是继承牛顿的演绎推理模式。1956年的“达特茅斯会议”预设了实现人工智能要走牛顿模式:先精确描述智能。但数据驱动如何转到推理驱动需要认真探索。
第九,要重视事件驱动计算。未来人工神经网络应考虑“时间”因素,基于事件的信息流(事件驱动计算)可直接反映人脑工作的自然模式,这是一种新的“空间—时间模式”。
第十,要建立智能超算新的测试基准。长期以来,评测超级计算机的性能都采用Linpack测试程序。它可以测出几乎满负荷、满功耗下的计算机浮点计算性能,是测试超级计算机可靠性和稳定性的理想程序。但是,由于功耗的限制,当前发展通用超级计算机已遇到极大的困难,领域专用超级计算机成为热门研究方向,Linpack显然不适合作为领域专用计算机的测试标准。
建立统一的基准评价标准,有助于行业内的良性竞争。希望从过去的超算到大数据和人工智能有一套新的标准,有一把尺子衡量技术,将影响力从学术界延伸至产业界。