编者按:
在计算机研究领域中,系统研究是相当抽象的一个领域,它默默隐藏在各类应用的背后,不为大众所熟知;但它也是最基础、核心的研究领域,一切上层的应用都离不开系统的强力支撑。想要在AI时代立于不败之地,就要在AI系统层面有所突破。因此,在微软研究院系统研究领域有超过15年科研经验的周礼栋博士带领他的系统团队,筹建了微软亚洲研究院-微软(亚洲)互联网工程院人工智能系统联合中心,为微软的AI生态搭建最核心、最基础的系统平台。
何为
“
系统
”
?系统就是把零散、复杂的个体组织成有序的整体。在计算机领域,我们不妨将这个抽象又简单的名词理解为平台。一直以来,微软都是一个平台公司,从早期的操作系统、数据库,到云平台、分布式系统,其实都可以被称为
“
系统
”
。微软的光辉验证了
“
得系统者得天下
”
,而微软也比任何一家企业都理解系统和平台的重要之所在。
在
AI
时代,系统再次成为
兵家必争之地
。
为此,微软定位北京,成立了微软亚洲研究院
-
微软(亚洲)互联网工程院人工智能系统联合中心(
AI System Joint Center
)。
AI
的到来,让
IT
行业迎来了有史以来最好的时代。
IT
从业者拥有着史无前例的巨大机会,但对于
IT
厂商来说却可能意味着危机丛生,要在
AI
领域立于不败之地,要在
AI
系统层面占据优势,是微软思考再三的问题。在微软研究院系统研究领域有着超过
15
年科研经验的周礼栋博士临
“
危
”
受命,
筹建
了人工智能系统联合中心,为微软的AI生态搭建最核心、最基础的系统平台。
人是企业最重要的资源,企业和人一直都是双向选择,适合的环境才能让匹配的人有最好的发展。
20
年前,在复旦大学完成学业后,周礼栋去美国康奈尔大学继续攻读博士,
2002
年博士毕业后他便加入美国的微软研究院开始工作。
“
微软研究院对于很多计算机专业的毕业生来说充满向往,因为在这里你不仅可以接触到最前沿的先进技术,还可以与全球计算机领域的顶尖学者共事。在这里,图灵奖获得者、美国科学院和工程院院士、计算机多个领域的奠基人和领袖人物都可能是与你朝夕相处的同事。
”
周礼栋表示非常幸运,可以在这里开始自己的职业生涯。
微软亚洲研究院副院长,人工智能系统联合中心负责人周礼栋
加入微软研究院不久,周礼栋便有幸与计算机领域特别是分布式系统领域进行了开创性、奠基性工作的先驱们一起工作。而分布式系统可以说是最近十年引领技术革命的互联网、搜索引擎、云计算以及人工智能背后的主要支撑技术。
“
我曾经和
2013
年图灵奖得主
Leslie Lamport
博士共同合作,设计新的分布式协议。
Leslie
治学严谨,在他的要求和指导下,我为新协议撰写了长达
52
页的机器可验证的正确性证明,并且期间还发现了一个不易察觉的小错误。这些经历对我的职业生涯来说非常宝贵。
”
回忆起最初的研究工作,周礼栋觉得自己学到最重要的一点就是这些前辈的工作态度
——
有激情地做研究,同时讲求合作和严谨性
。而这样的态度后来也贯穿了周礼栋整个职业生涯,无论是在美国的微软硅谷研究院、微软雷德蒙研究院进行系统研究,还是后来回国在微软亚洲研究院带领团队开拓国内的系统研究领域,周礼栋都将这点做到了极致并不断影响着周围的同事。
系统研究是最基础的计算机研究领域,抽象且隐藏在各种应用的背后,不为大众所知
。即便同是发表论文,系统研究的论文发布相对更难
——
该领域的世界顶级学术会议只有两年一次的
SOSP
、
OSDI
等非常少量的几个,每年能够被大会选中的顶级论文只有二三十篇,可想而知想要进入这个圈子的难度。在微软研究环境的熏陶下,周礼栋成为了少数能够打入系统研究核心圈子的华人,他不仅担任过
SOSP
、
OSDI
、
NSDI
、
Eurosys
等多个国际计算机系统会议的程序委员会成员,还以第一届程序委员会联合主席的身份启动了
ACM
亚太地区系统研讨会
(APSys)
,并在中国参与成立了首个系统研究领域学会
ChinaSys
。在
2017
,他还将领域内的顶级会议
SOSP
(操作系统原理大会)带到了中国,这是该大会举办
50
多年以来首次在亚太地区举行。随着硬件和网络的飞速发展,以及搜索引擎、大数据以及云计算等大规模系统的兴起,系统的复杂度越来越高,对于系统研究的需求也更甚,周礼栋表示,
积极地推进国内外系统领域的学术交流,将加速系统研究的进展
。
随着AI技术的演变,系统的发展也在与时俱进,全新的体系架构和基础设施需求、全新的编程语言和工具包、全新的AI算法……然而每个部分的发展却很不均衡,若AI从业者想要做点事情,经常需要自己去搭建底层系统,或是东拼西凑一个平台,这使得效率和品质都大打折扣。事实上,
现阶段大家对于偏上层的AI算法、应用的关注度远远高于整个AI系统的基础搭建,这对于AI的发展并非利好
。
“
这十年来,从移动、云计算、大数据,再到如今的人工智能,大家更聚焦于这些热点本身,即便是
IT
从业人员,很多也都没有注意到这些变化背后最主要的推力还是因为底层计算机系统能力的不断增强,才让这些热点成为了可能。
”
周礼栋表示,如果没有存储技术和网络技术的突破,搜索引擎、云计算就好比空中楼阁,如果没有
GPU
、搜索技术、分布式系统的突破,人工智能也还是会驻足不前。
在周礼栋看来,
计算机系统与应用、算法的完美结合,才是推动整个计算机行业的源动力
,但是由于业界对热点的狂热追逐,使得系统研究在其中的重要性被大大低估了。而微软人工智能系统联合中心的成立,可谓恰逢其时,
“
我们希望能够从系统层面大力推动
AI
的快速发展,并逐渐形成健康、可持续发展的
AI
生态
”
。
“
系统思维,就是站在全局的角度去考虑问题。
从事系统研究多年,我对系统的体会是:第一,系统是一个跨学科的领域,比如做大数据,就必须要了解数据库、存储系统、数据处理方式、分析算法等等,如今要做人工智能系统也是如此;第二,从云计算、移动计算、大数据到人工智能,应用的热点一个接一个,但系统并不是追热点的领域,它永远是最底层的基本保障,当然系统也需要与新的应用场景相结合,才能做得更好;第三,系统方面的工作人员越来越重要,因为产品开发过程中遇到的难题通常并不是功能问题,多调试几次未必就能解决问题,所以很多时候是大规模系统的问题,一个节点没做好,就会牵一发而动全身,所以在微软,产品开发部门与系统研究组的合作越来越紧密。
”
对于系统研究,周礼栋一直有着深刻的思考,这也让他对
AI
系统平台的搭建充满信心。
在
微软亚洲研究院首席研究员杨懋
看来,系统本身很复杂,并且还在变得越来越复杂,
系统的好坏并非取决于其中某一点做得特别好,而是取决于最短的那块
“
木板
”
。他表示,这么多年在微软亚洲研究院系统组学到最多的就是系统思维,甚至延展至对任何问题的系统化思考,可扩展性、效率、延迟、机器学习、AI等,每件事能否做好都与系统化思维密切相关。
为了更好地为上层技术提供坚实的基础,周礼栋希望不同领域的研究者能合力推进开创性的、有深度和广度的系统研究,因此系统组的研究员中有不少都拥有跨领域的研究背景。
“
礼栋总是鼓励大家专注于自己的研究兴趣,所以我们系统组一直都保持着开放的研究氛围
”
,在微软亚洲研究院研究员薛卉眼中,这样的氛围激发了大家的创新和探索精神。
微软亚洲研究院研究员薛卉
原本从事自然语言处理相关研究的薛卉在加入系统组后,从自身在上层技术领域进行科研工作的切身体会出发,和杨懋一起开发了名为
Neural Network Intelligence
(
NNI
)的底层框架。薛卉介绍:
“NNI
项目源起于传统机器学习开发的繁琐流程,特别是深度学习目前还处于黑箱状态,研究人员往往需要花费大量的时间进行模型选择和超参数调试。
”NNI
的诞生不仅可以支持不同的操作系统和编程语言,自动地帮助使用者完成数据分析、模型比对、参数调试和性能分析工作,还能方便使用者将模型运行在不同的分布式系统上。近期,
NNI
就会以开源工具包的形式对外发布,这将给研究、开发人员更多尝试创新的可能性,加快科研和技术发展的脚步。薛卉表示,
“
做系统最重要的就是具有易用性,我们希望通过系统的优化、创新,赋能更多科研人员、开发者和实践者,进而推动更多技术的创新发展。
”
现阶段的人工智能有三个非常重要的支柱点——大数据、新算法和大计算。而“系统”作为连接数据和算法的纽带,是一个不为大众所熟知的关键要素,
一个好的系统可以有效支撑AI应用的架构、开发、部署和落地
。
要想在AI领域做出大的成就,必须要有系统能力的强大支撑。“现在很多AI应用不断涌现,但还没有出现一个足够强大的系统平台可以去支撑诸多AI应用的开发与运行,所以
AI发展的瓶颈可以说在于系统,系统在AI时代的重要程度不言而喻
,”
微软亚洲研究院的资深研究员伍鸣
表示,“
系统相当于一个基石,我们可以把它看作是建筑的地基,地基扎得稳,大厦才能坚固,虽然平时我们看不到地基,但它却非常重要。”
微软人工智能系统联合中心的目标就是要
为微软在
AI
领域搭建地基,甚至是为整个
AI
生态系统搭建地基
。它面向的不是最终用户,而是广大
AI
开发者、
AI
应用背后的技术团队,让他们在开发
AI
应用时更加得心应手,没有后顾之忧。周礼栋介绍道,微软人工智能系统联合中心要做一个全栈的
AI
平台(
AI Stack
),可以为
AI
开发者提供全方位支持,目前主要分为三个层次:
一,
AI
计算能力
。从硬件到基础设施再到管理系统全部覆盖,充分利用
GPU
、
FPGA
等新兴技术,以及云计算、大数据等现有的相对成熟的大规模分布式系统,让
AI
的计算能力实现价值最大化。
二,
AI
平台中间层
。其中包括编程语言、各种工具包等,供开发
AI
算法的人使用,为他们提供完善的开发和运行环境。
三,
AI
算法
。提供成熟的
AI
算法供应用开发者使用,例如让微软认知工具包
CNTK
与
TensorFlow
、
Caffe
等框架实现灵活转换,在一种框架下训练好的模型,可以在另一种框架下无缝使用,并将更多算法集成到
Visual Studio
中去。
全栈的AI平台
事实上,系统研究的发展脉络也是随着应用场景的变化在不断变化,从最早的操作系统,到数据库、存储,再到云计算、大数据,以及现在的
AI
,场景千变万化,但变化之中总有不变的规律,
系统要解决的本质问题
始终不变:
首先是可以工作
;
其次是追求速度、效率、可靠性、稳定性、可扩展性等
;
最后达到系统的自动运行,无需更多人为干预
。
系统的很多底层技术其实是相通的,甚至可以有复用的地方,例如伍鸣和周礼栋一起研究的分布式图计算,当时主要用于必应搜索,针对广告点击率的优化提升,而图计算其实也属于机器学习的子集。再如,杨懋做过的
“Tiger”
项目,解决的是大型分布式系统中的存储问题,而到了
AI
领域,之前的经验同样可以沿用。系统相关技术的演变一脉相承,一环扣一环,
“
只要有兴趣、喜欢专一,完全可以一直做‘
系统
’
这件事,”
伍鸣表示,这也是系统研究非常吸引他的地方。