AI Infra 往事之异构计算篇:吴韧与他的学生们

2013年9月底,吴韧受百度邀请,以杰出科学家的身份加入百度深度学习研究院(IDL),此时正值他五十知天命的年纪。 吴韧在人工智能领域耕耘多年,当时已是一名顶尖的AI计算科学家。 2012年深度学习崛起前后,多年在AI领域的研究和工作经验让他坚信:这一轮人工智能竞争其实比拼的是计算能力。

2013年9月底,吴韧受百度邀请,以杰出科学家的身份加入百度深度学习研究院(IDL),此时正值他五十知天命的年纪。

吴韧在人工智能领域耕耘多年,当时已是一名顶尖的AI计算科学家。2012年深度学习崛起前后,多年在AI领域的研究和工作经验让他坚信:这一轮人工智能竞争其实比拼的是计算能力。

所以,当百度找到他时,吴韧觉得 IDL 是一个能让他大展拳脚的平台,便在已知天命的年龄毅然选择回国、加入百度,成为百度第四位杰出科学家。

吴韧的任务是从算力方面让百度更好地迎接深度学习带来的巨大改变和挑战,他招募团队帮助百度搭建异构计算平台,并在上面研发超级计算机。换言之,当时百度 AI 整体基础设施中的计算部分,都由吴韧来负责。

当时国内研究深度学习的计算人才屈指可数。

吴韧从各个渠道精心挑选了三个技术年青人——刘文志、颜深根、单羿——组成了异构计算团队的核心,后来实习生党青青转正、孔畅加入,加上实习生孙刚(后自动驾驶算法独角兽 Momenta 联合创始人),七人构成百度 AI 计算的起点,共同开启了深度学习时代的一段计算探索之旅。

数据、算法与算力是深度学习时代的“三驾马车”——这个说法其实是吴韧在 2014 年 GTC 演讲中最早公开提出来的。但相比前两者,AI 时代的算力人才并没有得到太多的重视。从吴韧加入百度,到他离开、异构计算团队解散,吴韧带领的 AI 计算团队一直停留在六人规模。

吴韧与他的计算启蒙

37年前,吴韧就认识到一件事:“计算能力是核心驱动力”。

吴韧在上世纪70年代生于四川德阳,爷爷和年轻时候的父亲都是一名木匠。吴韧遗传了父辈爱钻研的特质,从小也培养了极强的好奇心和探索欲,从初中开始就喜欢鼓捣家里的电器。

当时通讯技术刚兴起,电视机也刚在全国范围开始普及,吴韧的鼓捣器件就从木材变为了时兴的无线电,从矿石收音机到更高级的收音机、电子管的音响、电子管的电视机等等,无一不是吴韧的研究对象。

组装电视机时,没有电路图,吴韧就基于仅有的布线图一遍遍尝试,凭借有限的资料、更多是自己的想象去开拓、设计,最终居然组装成功。

1983年,吴韧第一次接触到计算机。当时,他在成都气象学院电子系(如今的成都信息工程大学工程)读大三,刚认识计算机后就对这个看起来像电视机、但又要神秘许多的电子物件产生了浓厚的兴趣,开始自学有关计算机的一切知识,包括编程,从此在计算的道路上越走越远。

仅三年时间,1986年,吴韧就编写出了中国大陆第一个中国象棋程序。

那时,AlphaGo 还要数十年后才诞生,在国内的计算机领域,像这种“写一个计算机程序、让它在棋局上战胜别人”的任务是完全没有资料可参考的。吴韧只有LISP语言教材中的一个简单的搜索算法(AlphaBeta 搜索算法),剩下的所有细节都要靠自己“想象”,这也成为了他进入AI领域后一个非常重要的练习。

在象棋程序的完善中,吴韧切身体会到:“它”(象棋程序)的进步是可以量化的,即计算能力的提升!

此时的吴韧便已经意识到算力在计算程序运行中的重要性。

1990年,吴韧入职美国一家做字符识别的公司,负责用AI的方法做识别前的各种分析和处理。但是他逐渐希望能获得更加专业的AI研究的训练,所以过了一年多,他便辞职去了英国,进入伦敦大学攻读AI专业的博士。

接下来,吴韧在人类象棋上的两项研究让他在AI届名声大噪。

博士期间,吴韧研究的《反溯算法及其应用》,证明了一个“被认为是平局的中国象棋残局炮高兵单士象必胜士象全”其实是可以取胜的局。该反溯算法改进了当代计算机科学泰斗、图灵奖获得者肯·汤普森发明的经典算法,震动了整个计算机界。

业界对肯·汤普森的工作有改进的工作是深蓝(97年击败国际象棋世界冠军)的前身——深思,它的作者许峰雄博士把汤普森的数百个芯片组成的国际象棋计算机做到单芯片上,取得突破,也才有了后来IBM深蓝的成功。

计算机博弈研究是AI研究的一个重要课题,是机器智能、兵棋推演、智能决策系统等人工智能领域的重要科研基础。基本上,每一次机器博弈都会引起全球人工智能热潮。

接着,2000年,吴韧加入硅谷享誉盛名的惠普实验室。

要想获得进入美国惠普实验室的门票必须要满足以下三个条件之一。第一、某个学科(分支)的学科带头人;第二、世界名人;第三、其博士研究成果要对该公司的发展有极大的帮助。

此时吴韧凭借《反溯算法及其应用》已经是世界设计计算机中国象棋程序的顶级人物。

在惠普实验室,他独立设计开发出了一款中国象棋超级程序,并用中国现存最早的象棋棋谱“梦入神机”命名。该程序两度获得计算机象棋奥林匹克比赛冠军,让吴韧成为全世界设计计算机中国象棋程序的顶级专家。

吴韧的程序跟当年的国际象棋程序类似, 追求的是极其精简的知识编码,最高效的策树搜索算法以及优化到极致的程序设计。在最顶级的竞争当中,胜出的人必须在这三方面都必须是最顶级。这种无止境的对知识、算法、效率和下面支撑的算力的追求,也让吴韧在他后续的各项工作中如鱼得水。

在研究计算机中国象棋的过程中,吴韧已经脱离了单纯享受下中国象棋的乐趣,他更大的感受是来自AI的进步:“它还使我们认识到机器能够思维,而且能达到一种什么样的水平。”

对算力的追求,也让吴韧对计算本身尤其是硬件实现额外关注。得益于惠普实验室得天独厚的条件,从2005年起,他开始采用GPU来进行通用计算。

2010年吴韧所在的实验室成为英伟达首批认证的、世界范围内7个CUDA实验室中的一个,吴韧也在其中升职为首席研究员。

在这五年里,吴韧就曾思考过:如果我的计算能力能够有数量级的增长,跟别人比能有什么不一样?世界上有没有一款新的硬件,能把计算能力做得更好?

前26年,吴韧一直致力于计算机博弈研究,加入惠普实验室后他开始认识到GPU作为新计算平台的价值,而随后在AMD收购ATI、推出异构计算时,他判断异构计算将主导世界未来计算的走向。

由于吴韧在惠普实验室对英伟达生态系统的贡献,AMD朝他抛出了橄榄枝,所以吴韧在2011年加入了AMD的异构系统架构(HSA)团队负责整个HAS软件和生态系统。

所谓异构计算,就是将CPU与GPU搭建在一起;更进一步说,是将两种或多种擅长不同任务的计算硬件结合在一起、使其发挥各自所长,完成计算任务。

早在第一次开发中国象棋程序时吴韧就已经意识到计算能力的重要性,这一次他终于真正踏进计算的世界。

在 AMD 待了两年后,吴韧便选择回国加入百度IDL,因为他认为百度IDL在新的方向上选对了。

那一阵,深度学习风靡业界,只因Hinton(“AI教父”)的研究给AI信徒指引了一个新方向——深度学习算法。

国内百度率先展开了行动,成立了深度学习研究院,并由李彦宏挂帅坐镇,亲自出任院长,由当时负责领导百度多媒体部的慕尼黑大学博士余凯任副院长。

在为深度学习研究院(IDL)网罗人才时,吴韧也收到了橄榄枝,同期因为百度的AI梦而加入的还有Facebook前资深科学家徐伟、美国新泽西州立大学统计系教授张潼、谷歌大脑项目联合创始人吴恩达等等人工智能领域的技术大牛。

英伟达过来的刘文志

2013年9月底,吴韧正式加盟百度深度学习研究院出任杰出科学家,负责给百度搭建异构计算平台。

吴韧的加入其实是王海峰拍的板,当时王海峰作为执行负责人协助李彦宏创建了IDL。

跟年轻时不同,此时年近半百的吴韧已经失去了对权力的欲望,一心想要借助百度的资源做件大事——就是用异构计算方式去设计一个专用的超级计算机,用于AI训练。因为他已经看清了算力对这一轮深度学习的重要性,他认为大算力能够给百度带来巨大竞争优势。

在其他人眼里,深度学习是全新的技术,而在吴韧的眼里,这只是历史的一次重演。

吴韧愿意来百度做超级计算机有两个前提:一,这是一个特定的领域。吴韧做事喜欢选一个特定的领域进入,不能是其他人都抢着做的领域,而百度是国内率先做深度学习,也有资源做超级计算机;二,这是他擅长的领域。从系统软件、硬件到网络,吴韧都懂。

为了做超级计算机,吴韧还跟上级王劲“借了”200万美金。当时王劲是百度技术体系的老大,他从1991年起在硅谷的多家公司担任过技术和管理职务,其中包括甲骨文、informix和E-Loan等,2010年4月加入百度后,逐步为百度构建起一个强大的技术研发体系。

“200万”的事情其实是这样的:有一次开总监会,王劲带着吴韧和其他总监们坐高铁从北京到无锡去看百度的数据中心。在火车上,吴韧就把自己想要做超级计算的想法告诉了王劲,他认为自己的超级计算机完全可以改变未来AI的竞争局面。

没想到王劲一次就听进去了,没有吴韧想象中的反复说服、磨嘴皮子,回去后便批了200万给他。

钱的问题解决了,但光杆司令吴韧还需要一个团队。经过一番挑选,刘文志、颜深根、单羿陆续加入成为核心,党青青、孔畅和实习生孙刚也逐渐加入,吴韧的异构计算团队有了雏形。

招这几个人吴韧是有所考量的,如刘文志是英伟达出身,颜深根对系统软件设计有概念,单羿是硬件背景,懂芯片加速机器学习算法,党青青主要做软件。

刘文志是第一个加入的,此时刘文志刚从英伟达出来,正在寻找新机会,他把简历发给吴韧的当天就收到了回复,两个月后百度便给他发了offer。

在这几个人中,刘文志的学历最低,只有硕士学历,但吴韧认为他极其聪明。后来,刘文志也是最先从吴韧团队撤离的那一个——早于2014年ImageNet大型图像识别挑战赛(ILSVRC)风波便离开了。

刘文志本科时就接触到高性能计算,他学的是计算化学专业,主要研究内容是利用有效的数学近似以及电脑程序计算分子的性质,例如总能量、偶极矩、反应活性等,并用以解释一些具体的化学问题。

计算化学有一个很大的问题,就是实验成本很高,其中计算机实验成本高是时间长造成的,经常需要几百台机器来计算。刘文志对解决这个问题很感兴趣,他的编程能力也不错。

那时中国高校还没人研究过这个问题,也没几个人会写这类程序。

在中科院读硕士时,刘文志便开始专心研究这个方向,第二年进研究所后用了三个月就完成了第一个计算,让他的导师很是吃惊。

硕士毕业时因为在CUDA社区很有名的缘故,刘文志顺利地进入了英伟达。

CUDA是NVIDIA在2006年推出的一种通用并行计算平台和编程模型,它利用NVIDIA GPU中的并行计算引擎以比CPU更有效的方式解决许多复杂的计算问题。今天,CUDA社区有超过400万的开发者,CUDA生态已经成为英伟达在AI芯片领域占据领先优势的强大壁垒。

2007年年底CUDA开始在中国推行,2008年刘文志就开始做CUDA,并以网名“风辰”闻名于CUDA社区,刘文志是国内最早推广CUDA的开发者之一,有名的还有周斌、赵开勇、陈实富等人。

刘文志在英伟达的上司是王鹏,王鹏喜欢工程技术胜过做领导,面试时王鹏问刘文志未来的目标是什么,刘文志说“三年后你升一级,我也升一级,我升到你的位置”,随后两个人都笑了。

从这时起刘文志便开始显露他的锋芒与聪明果决。

两人一起搭档工作到2013年,王鹏因为绿卡原因必须回美国,希望刘文志接替他的工作,但此时刘文志去意已决。

因为他发现英伟达的HPC业务很吃学历,并且中国人在英伟达不受重视,后便跟王鹏达成一致,重新找到一个更合适的人。

新人上任三四个月后,刘文志就遇上了吴韧百度IDL这个机会。

在英伟达,刘文志协助王鹏建立了北京CUDA团队,并负责将大规模GPU计算集群应用于石油和天然气行业。

彼时AI深度学习尚未爆发,石油勘探中的高性能计算是英伟达在中国最盈利的Tesla业务方向。但刘文志已经意识到深度学习的未来以及HPC(异构并行计算)对人工智能的重要性。他判断,一旦深度学习普及,对GPU的需求量级将扩大百倍以上。后来的事实甚至超出刘文志的预料——实际上是扩大了近万倍。

所以即便2013年12月百度给的offer并不是那么令他满意,刘文志也接了,正是因为他看到了深度学习与异构计算的趋势,而百度IDL是国内最早做深度学习的。

加入后,刘文志一边跟着吴韧做深度学习的AI平台和算法相关工作,一边协助吴韧建立团队,不日,颜深根、单羿、党青青、孙刚、孔畅也陆续加入。

懂系统软件设计的颜深根

颜深根是异构计算团队的第二个创始成员。

他博士还没毕业就被吴韧拉进团队,那时颜深根还在美国做访问学者,吴韧把他从美国挖了回来。

吴韧看中颜深根在博士期间负责过AMD的一个项目经验:把AMD的GPU在OpenCV上跑起来。

这个项目不仅涉及到计算,还涉及到很多计算机视觉(CV)的算法,比如要做边缘检测、人脸识别都需要专业人士去设计的这些算法。

那时颜深根还不了解深度学习,偶然一次接触还是一次他的师弟告诉他,现在出现了一个新的机器学习算法叫深度学习,非常强,跟以往的机器学习算法都不一样,边缘检测、人脸识别这些只靠深度学习就能搞定。

但由于当时要忙博士论文,所以他一直拖到2013年才开始去了解深度学习。

颜深根最早接触AI是在哈工大读本科的时候,他在那里学习了自然语言处理、搜索引擎等相关的知识,从这时起他便逐渐对AI产生兴趣。

在中科院读博士时他一开始其实是想继续研究自然语言处理,但阴差阳错之下最后选择了高性能计算,但他内心一直对算法念念不忘。

读博期间,颜深根听同宿舍的师兄说博士要发论文才能毕业,而他那位师兄博士读了五六年还没能毕业,这让颜深根非常担心自己也毕不了业。

但没想到2012年、2013年他连续两年在并行计算顶级会议PPoPP发表长论文(大陆首次),不仅不用担心毕不了业,还超额完成论文任务。

2013年的那篇顶级会议PPoPP论文发布后,颜深根获得了一次去美国北卡州立大学作访问学者的机会,在这期间他开始去研究深度学习,才发现深度学习跟高性能计算联系非常紧密,需要大量计算的支持。

也正是在美国访问期间,颜深根看到了吴韧在微博发的招聘异构计算方面人才的信息。

其实在发现这则招聘信息之前,颜深根就已经被吴韧注意到:

因为一次颜深根回答了一个网友有关高性能计算的问题,这个网友正是吴韧团队的实习生党青青。

所以颜深根很顺利地成为了吴韧团队继刘文志之后的第二个成员。

2014年初,颜深根正式加入百度IDL异构计算团队,一开始团队想在AMD的机器上把深度学习跑起来,因为团队有很多这方面的经验。

首先吴韧就是AMD前异构系统首席软件架构师,颜深根博士期间也为了把OpenCV在AMD的GPU上跑起来做了很多这方面的工作。

另一件事是组建了国内第一个深度学习超级计算机Minwa,吴韧负责系统设计,颜深根负责系统软件。

有了超级计算机之后便开始进行大规模的训练,在这个过程中,吴韧他们在Hinton之前率先发现了用数据并行和模型并行去做AlexNet神经网络。

当时有两个深度学习框架可选,一个是ConvNet,一个是Caffe。

如果要基于ConvNet去做大规模训练,但ConvNet只能做两张GPU的,做更多GPU就得做扩展。

那时贾扬清的Caffe刚出来,但也只能支持一张GPU。吴韧他们需要的是能够支持在一个集群上跑的架构,那时一个集群一般是8张GPU。

无可奈何之下,只能自己设计一个可扩展的并行方案。这个项目主要由颜深根负责,而当时行业里没有任何可参考的案例。

颜深根他们分析了AlexNet神经网络,发现有两个部分,前面是五层卷积,后面是三层全连接。但这两部的计算、通信特点都不一样。

他们发现,五层卷积其实可以用数据并行这种方式来做,后面三层全连接可以用模型并行的方式。

那会儿还没有数据并行、模型并行的概念,后面业界才将这两种并行方式命名为数据并行和模型并行。但在当时,这都是颜深根等人手推出来的,推公式,把矩阵乘拆开去做计算。

有了这个发现后,当他们准备写代码去实现时,Hinton团队发了第二篇论文,介绍了如何做AlexNet的并行方法,跟颜深根他们想的方法相同。

这个方法后来成为一个非常经典的方法,奠定了数据并行和模型并行的一个基本方式。

除此,颜深根等人也可能是业内第一个将GPU多卡计算的通信优化算法—Ring Allreduce应用到深度学习领域的研究团队。

当时,颜深根他们在做数据并行时需要做大量通信,彼时只有MPI可用,但MPI自带的Allreduce算法性能很差,他们不得不自己去优化。

颜深根想了很长时间,设计出来一种计算方式可以保证通信量不会随着GPU数量增加而增加,即用多少GPU,通信量都是恒定的。

他把这个算法讲给在美国的吴韧听了以后,吴韧非常认可,还取了个名字叫“Butterfly”,因为算法画图显示是一个蝴蝶形状。

结果一年后百度另一个团队发现这个算法早已在高性能计算的历史中存在了,叫Ring Allreduce——其通信成本是恒定的并且与系统中GPU的数量无关,并且仅由系统中GPU之间的最慢连接确定。Ring Allreduce能减少不同 GPU 之间的通信时间,从而允许将更多时间用在有用计算上。

因此这种情况下,虽然是颜深根他们自己研究出来的“Butterfly”算法,但新人老路,只能说应该是第一个将Ring Allreduce应用到深度学习领域的团队。

到了2014年底,吴韧、颜深根他们已经可以做到128张GPU同时并行了,领先国内厂商多年。

在团队里,颜深根主要跟单羿合作,两人一个负责系统一个负责算法,颜深根认为单羿是一个很有格局的人。

有硬件背景的单羿

单羿在颜深根之后加入,他清华博士毕业后就选择了创立仅一年半的百度IDL。

单羿拥有很强的硬件背景,在博士期间做了很多芯片相关的事情,基本上是用FPGA芯片加速机器学习算法。

单羿本硕博均就读于清华电子工程系,2008年起在汪玉门下读博士。

汪玉本硕博同样就读于清华,博士师从杨华中和谢源,07年开始留校任教,单羿是他的第一个博士生。

两人第一次见面时,汪玉问他想研究什么方向,单羿说自己想做跟互联网相关的(例如搜索引擎)、能赚钱的方向。

当时单羿暑假在微软亚研许峰雄博士手底下做实习生时,就是做的搜索引擎方向,汪玉提议他沿着暑假实习的话题继续做。

做的具体事情是:用芯片加速搜索引擎中的机器学习算法,这既跟电子系有关,而且搜索引擎、微软亚研也是当时 AI 领域最热的关键词。

谷歌当年提出了PageRank,是为了在搜索引擎优化中评估网页优化的成效,这背后其实是很简单的机器学习,但后来随着搜索引擎越来越重要,像SVM、PageRank越来越多的机器学习算法都应用到里面,这背后开始蕴含着大量的计算压力。

当时大家都用CPU去做这种计算,但在微软,许峰雄提出了用FPGA芯片去加速机器学习。

许峰雄曾经为IBM开发“深蓝”(Deep Blue)计算机,打败了世界棋王,因此得名“深蓝教父”,他在做深蓝时就想到可以用FPGA芯片去加速机器学习算法,后来到微软亚研后发现微软也有这方面的场景,便提出了用FPGA芯片去加速机器学习,解决搜索的延迟,算得更快。

这个项目由正式员工徐宁仪,和清华博士在读的单羿、中科大硕士在读的欧阳剑两个实习生负责。

用FPGA芯片去加速搜索引擎,即把搜索引擎里面的机器算法芯片化。

涉及的方面非常多,例如不同算法的硬件实现,当时CPU还在串行计算里面打转,单羿他们就用矩阵乘法做了很多优化,开始用并行计算发现算得更快。

08年单羿开始做稀疏矩阵向量乘(SpMV),那时SpMV是一个很数学的东西,很少有机器学习领域的人会关注,更何况当时机器学习还没火。

单羿设计了专用的芯片架构,用FPGA芯片去加速稀疏矩阵向量乘法,做到了当时世界上最快的成绩。

09年单羿还发了一篇用FPGA芯片去加速经典的排序算法RankBoost论文,成为了该领域来自中国大陆的第一篇论文。

从2007年到2010年,单羿都在微软亚研研究如何用FPGA芯片去加速搜索引擎,他每天靠微软亚研的可乐机续命,基本都是忙到凌晨三点下班,早上八九点继续上班。

同时这也是单羿博士的课题,“用芯片去加速机器学习”这个课题最后开创了汪玉博士生团队的一个研究新方向。

这三年单羿用芯片加速搜索引擎中的机器学习,做了十多种机器学习算法的芯片加速,那时他就理解到,除了计算以外,存储也很重要。如今从 Flash 到 DDR,到片上存储等等一系列存储架构,包括现在近存计算这些概念,都是单羿那时玩过的概念。

大概2010年的时候,他结束了微软亚研的实习,转去做博士的另一个方向:用芯片去做立体视觉。上一个项目“用FPGA芯片去加速搜索引擎”也被微软亚研接手,用到了搜索引擎、云计算当中。

而欧阳剑硕士毕业后没留在MSRA,去了百度,干了大概一年多时间,他还是坚定地认为在MSRA做的“用FPGA芯片去加速机器学习”这件事对百度是很有价值的,所以他又在百度继续干,后来百度也开始意识到用芯片来加速搜索引擎的重要性。

欧阳剑也从此一路高升,在此后百度宣布旗下昆仑芯片业务成立独立新公司——昆仑芯(北京)科技有限公司时,身为百度芯片首席架构师的欧阳剑出任该公司CEO,带领百度努力跨越自研芯片的鸿沟。

后来徐宁仪从微软亚研出来后也去了百度,由于他的背景便加入了欧阳剑的组,两人再次成为同事。

单羿研究立体视觉是因为汪玉跟日本三菱重工的一个合作项目。三菱重工想在新加坡做一个道路的自动通行系统,类似国内的ETC,但它不需要人,只有一个龙门架上面各种摄像头、传感器,埋在地下的线圈,降低了人的消耗,三菱重工想要在第二代系统里面只用摄像头,其他都省略掉。

这就涉及到检测追踪,例如车牌识别,车的外形尺寸识别,三菱重工的想法是在路边儿立一个杆,就像电线杆一样,然后上面挂一个双目摄像头的立体相机。

这个项目始于2009年10月,当时汪玉的电子系派单羿来做芯片实现,清华自动化系的张长学团队负责算法,派的是胡瀚,即后来 Swin Transformer 的作者、现在MSRA视觉组的老大。

单羿跟胡瀚都是 2004 级的清华本科,胡瀚在自动化读直博,单羿在电子系读直博,两人在这个项目里认识。后来同一年去百度IDL当了同事,再后来单羿去创业,胡瀚就去了MSRA。

但当时自动化系对系统和芯片的了解并不深入,他们的算法多是堆各种各样的特征,拼凑在一起,然后调调参数、权重,有一个精度不错的结果就丢给单羿。对于单羿来讲,这是不能直接运作的,因为在芯片实现的时候,每一份计算都代表的是芯片的代价,而单羿要用最高的能效去实现这个算法。

所以给到他的代码就只作为参考,单羿不得不自己去啃OpenCV那些算法,当时大概有 100 多个软件算法的模块,他把绝大部分都写成芯片的代码,还为此做了一个芯片的OpenCV库。

前面一年在做OpenCV基础算法的芯片化,后面两年都在研究立体视觉。最后在 2012 年给三菱交了差,单羿也拿到了三菱的博士生奖学金,还发了一篇ACM的文章,这篇文章讨论了用FPGA芯片来加速世界上最快的 1080P 分辨率下的立体视觉系统。

在那时,单羿已经坚定地认为视觉未来一定是往3D走的,后来随着深度学习受到广泛关注,单羿在深鉴、赛灵思、AMD时还一直有一个小团队坚持用AI来做立体视觉。

2020年用AI做双目摄像头有了突破,当时单羿在AMD,他发现赛灵思的汽车用户 Continental 跟斯巴鲁提了同样的需求——用 AI 去做立体视觉,他才意识到这件事儿必须要做,而且是件大事,能够替代激光雷达,所以单羿便出去创建了鉴智机器人。

通过三菱重工项目,单羿从最初想要用芯片去加速机器学习,慢慢才发现计算机视觉的算法也是机器学习,做搜索引擎的算法也是机器学习,所以他认为用芯片去加速机器学习是很多领域都需要的,这是一个很重要的事情。

后来他又思考能否用更多的资源去做虚拟化的加速,便引出了在博士期间做的第三个项目:单羿博士最后一年在IBM研究院实习,这期间他发了一篇有关“机器学习的芯片在云端虚拟化”的文章,被引用很多次。

单羿是第一个开始思考做这件事的人。

他结合OpeStack框架,把FPGA芯片的加速器在云端虚拟化了,这样多个用户就能共享该虚拟的加速器。

2014年博士毕业后他便加入了百度IDL异构计算团队,跟着吴韧进入互联网,当时百度还跟英特尔有合作,正是把FPGA 放在云端去加速Deep Learning算法。

刘文志、颜深根、单羿是国内最早跟着吴韧把深度学习跟异构计算结合起来的那批人。

随着刘文志、颜深根、单羿三个主力就位,后面党青青、孔畅、孙刚也陆续加入,吴韧的异构计算团队初显雏形。

黯淡离场

2014年,百度在AI的布局越来越广,4月百度成立了大数据实验室(BDL),5月百度在美国加州的科技大本营成立了硅谷人工智能实验室(SVAIL),将自家研究院建到谷歌旁边的同时,还挖了谷歌大脑的联合创始人吴恩达。

此次百度深入硅谷,正是为了与谷歌在AI上一较高下。

深度学习研究院改为深度学习实验室(沿用“IDL”的名称),百度研究院也正式组建起来,研究院当时包括IDL、BDL和SVAIL。

在硅谷的人都了解吴恩达,他在人工智能领域是公认的领军人物之一。成为百度首席科学家之后,吴恩达将全面负责百度研究院,并与百度在北京的研究人员展开紧密合作。

在百度成立深度学习研究院,将AI确定为重要战略方向时,百度的技术体系老大王劲就一直在全球寻觅一位AI领军人物,此次吴恩达加盟百度,王劲是幕后至关重要的操盘手,而吴恩达的汇报对象也正是王劲。

但也有一种说法是请吴恩达是余凯的主意,两人曾是旧识。

随着吴恩达的加入,百度研究院聚齐了一众高手,包括王劲、余凯、吴韧……

但很快吴韧的异构计算团队面临了一次分崩离析的危机。

2015年6月,百度在ImageNet国际计算机视觉挑战赛(ILSVRC)中超额提交行为暴露,国外技术媒体纷纷借机报道,称百度在超算比赛中作弊。

舆论压力下,百度随后承认了违规行为,并就此事道歉和调查。一周后百度公布事件的调查结果,开除此次参赛的异构计算团队负责人吴韧。

在当时百度研究院负责人吴恩达发布的公开信中,承认吴韧在挑战赛中曾指示初级工程师们每周进行超过2次的提交,违反了ImageNet规定。解除吴韧之后,百度异构计算5人团队由前Facebook资深科学家徐伟带领。

吴韧被迫出局,手下的成员也大部分跟随吴韧就此离开百度,一个中国异构计算的梦之队就此解散。

首先,当时ImageNet官网上写的是一个账号每周最多提交两次,但并没有规定一个团队只能注册一个账号,所以吴韧团队的行为属于无心之失,更达不到作弊的程度。

其次,这段时间的结果并不是真正意义上的参赛结果。当时2014年ILSVRC比赛结束后(百度并没有参与),ILSVRC比赛主办方允许各个研究团队继续上传结果到服务器上,但这个结果不会被主办方收录到官方网站上,各个研究队伍都会利用两次竞赛之间的时间上传结果来验证最新的研究和工程方案,真正2015年的ILSVRC比赛还没开始。

当年也有参赛者指出,这就好比百米赛跑,ILSVRC是奥运会,各选手平时提交的是训练成绩,然后选择最好的一次训练成绩公布给大家,但吴韧团队身体素质好所以比别人多跑了几次训练赛。即吴韧团队搭建的异构计算平台比别人的大,所以可以在有限时间里跑很多次。但实际上比赛成绩和跑多少次其实关系并不大,更重要的是算法本身是否有效,就像一个上限是13秒的运动员跑一千次可能也进不了10秒。

汤晓鸥当年也曾公开为吴韧发声,批驳“作弊”一说。

在汤晓鸥看来,吴韧的异构计算团队其实具备了与世界一流研究机构进行竞争甚至在某些技术点上领先的能力。他们的计算平台能够在五天之内提交40次的试验结果,也从侧面反映了他们的系统优势。而从百度披露信息表明,参赛团队成员都是高性能计算背景,并没有实际的计算机视觉的研究经验,才会导致对规则的误解。

“这次事件的发展很是不幸,我相信造成的原因更多是误解,然后被媒体过度放大。吴韧的工作是令人钦佩的,而目前部分媒体的报道有失公允。”

多年以后,再看当年的异构计算团队、他们做过的事情,吴韧当时能组建这样一个团队,而团队里的每个人都有所长,能力相互补足,还是很有远见的。毕竟当时谷歌和Facebook都没有想清楚要怎么做,国内也没有这样的团队,全球都很少有。

更何况,深度学习跟高性能计算结合本身就是 AI 领域非常重要的创新。

或许,如果吴韧能在百度再多待两年,百度或中国的 AI 发展历史还有可能会被改写。

各奔前程

多年以后,再看吴韧当年在百度IDL异构计算团队的学生们,初出茅庐时每个人各有千秋但都青涩稚嫩,在吴韧的号召下组成了一支中国异构计算的梦之队,而这支队伍在吴韧的领航下正式驶入深度学习深水区。团队设计的敏娲超级计算机,也点燃全球AI算力的军备竞赛!

当年,吴韧团队在敏娲设计中并没有采用当时英伟达自己的NVLINK,而是坚持NUMA 架构下GPU加 InfiniBand 网络的设计,这也为英伟达后来全资收购InfiniBand技术的拥有者以色列Mellanox公司埋下伏笔。今天,英伟达GPU和InfiniBand网络也已经成为AI算力的核心。

时至今日,距离百度IDL成立近十年之期,当年吴韧在百度的学生们已经全部成长为国内一线AI创业公司的中流砥柱,每个人都已成长为AI infra领域非常厉害的人物:

刘文志历经商汤、华为,负责开拓过多条AI业务线,磨练多年后,如今创立了国产智能驾驶OS公司足下科技;

颜深根在商汤磨砺七年,帮商汤搭建了上万张卡的集群,今天闯入大模型创立公司“无问芯穹”;

单羿创业深鉴科技两年后卖给了当时全球第一大FPGA厂商赛灵思(Xilinx),现在又投身于做自动驾驶方案解决商鉴智机器人;

党青青成为百度深度学习架构Paddle Paddle(飞桨飞桨)团队主力;

孙刚作为联合创始人的 Momenta 已经跻身国内自动驾驶算法公司第一梯队……

出走百度的几人,慢慢都找到了自己的人生方向。

52岁的吴韧并没有就此沉沦,回到硅谷后创立了 NovuMind异构智能,一家专为行业提供ASIC芯片+训练模型的全栈式AI解决方案的AI公司,很快便获得了1500万美元的A轮融资,估值达到1亿美元。

其他几人则分散在今天几家老牌AI公司里面,那时它们还都属于刚创业的婴幼儿阶段,急需年轻的血液补充。所以他们几人又零距离见证了中国过去十年中这些AI公司的兴衰成败,而且每个人都置身其中,有的人还亲自参与掌舵。

在2014年,大量初创的人工智能公司集中出现。此后,随着资本进一步加持,全球范围内“Al”热潮不断迭起。后来的AI四小龙旷视、依图、商汤、云从都是在这个时间段先后出现。

刘文志早于吴韧、颜深根、单羿他们离开百度,出去后他拿到了格林深瞳、旷视、商汤的offer。

最后他选择了商汤,因为他非常相信汤晓鸥。

在商汤,刘文志做出了很多成绩,例如和林达华一起推动并建立了深度学习训练框架Parrots,以及推动推理引擎PPL,PPL亦成为商汤各项业务的技术基石。

2015年,刘文志把深度学习做到手机和摄像头上,是商汤内部最早将深度学习训练和推理分开研究的先行者;此外,他也是商汤智能汽车业务的创始成员之一,协助定义了商汤智能汽车产品和组织体系,确定 DMS、OMS、ADAS和AVP等产品,建立ASPICE流程体系,拿下多个重要汽车客户。刘文志当年力推的DMS,如今已引领中国市场。

刘文志加入商汤时是抱着跟商汤共进退的想法,在商汤几次生死攸关的关键时刻,他都发挥了重要作用。

例如,商汤第一次在人脸识别上跟旷视“干架”、并取得超过旷视的成绩,就是刘文志、曹旭东和杨帆三个人联手的成绩,刘文志负责大规模的训练平台,曹旭东做AI算法,杨帆指挥人标数据。

但刘文志最大的作用应该是提醒汤晓鸥一定要抢占人脸识别在手机上的这个战场。

当时旷视吴文昊率先布局手机端的人脸识别,而商汤在这件事上一直犹豫不决。刘文志知晓后,便分析现状:如果手机的人脸识别全是旷视的技术,那么以后所有人都认为中国人脸识别技术是旷视最强,商汤发再多论文都没用,用户根本不会去看商汤有多少技术、有多少研究人员,只看手机中实际用到的技术来自于谁。

“如果手机的人脸识别被旷视占据了,商汤就不战而败了。”第二天商汤就让王晓刚带队负责手机端的人脸识别。

还有一次是给本田的项目救火,就着本田项目的机会,刘文志开始把商汤的汽车业务拉了起来,成为商汤智能汽车业务的开拓者。

从商汤出来后,刘文志加入了华为,2020年出任华为诺亚AI系统工程实验室主任,管理一个规模达一百多人的技术团队。

他在华为研发的Bolt产品为华为手机提供算力支持,研发的Vega作为计算产业的关键组件为模型生产提供支持,参与领导了华为NLP大模型和搜索大模型的研发攻关,同时和海思相关团队一起优化AI芯片软件算法。

刘文志在华为的导师是王丙福,华为的5G之父,他非常感激王老师给他的帮助,让他成功度过在华为的那些关键节点。

在华为干了2年8个月,出来后刘文志创立了足下科技,做国产智能驾驶操作系统。

而2015年经历ILSVRC风波后,颜深根去了商汤,单羿加入了地平线,党青青选择留在百度,后来成为百度深度学习框架PaddlePaddle的研发主力。

颜深根加入商汤时,商汤才100多人。他是听了孙刚的建议才下定决心加入商汤。

两人都曾在中科院软件所,同一个实验室,同一级。颜根深比他早一年毕业,那时孙刚在微软亚研孙剑团队实习,颜深根去了百度IDL后,孙刚后来也想去IDL,经过颜深根对吴韧的极力推荐,孙刚才得以进去实习。

毕业后,孙刚跟着曹旭东去了商汤,两人相识于微软亚研,都在孙剑团队。

听了孙刚的建议,颜深根加入商汤,任数据与计算平台部执行研究总监,负责搭建大规模高性能AI计算平台和深度学习训练框架,两人再次成为同事。

颜深根团队跟曹旭东团队有合作,一个负责系统,一个负责算法,而孙刚是曹旭东团队即懂算法又懂系统的人。

2016年,孙刚跟着曹旭东出去创立了自动驾驶公司Momenta,孙刚代表Momenta在ImageNet 2016中获得场景分类亚军,ImageNet 2017中获得图像分类冠军。

在商汤七年,颜深根共经历了三个阶段:15年-16年从0开始,把团队带来起;17-18年稳定发展;19年之后开始扩大规模。这也符合商汤本身的发展。

在商汤,颜深根主要负责推动了三件事:

一是搭建了商汤的AI大装置SenseCore。刚加入商汤时,每个算法同学的桌子下都放着一个台式机,在上面做模型训练,还是单机的训练。颜深根进去第一年便搭建了第一个深度学习集群,由于他在百度已经搭建了128张卡,商汤就说要超过百度,最后搭了一个200张卡的集群。七年里不断扩大,2022年颜深根离开时商汤已经有了差不多2万张卡,从200张卡的集群变成了2万多张卡的数据中心。

二是帮助商汤跟大学建立合作。创始团队是CV背景,没有高性能计算和系统背景,所以早期商汤要招聘相关人才,其实很难,也因为当时国内确实没有什么这方面的人才。颜深根便负责帮商汤在系统领域跟高校建立合作,包括清北上交、南洋理工、中科院计算所等等。均是以项目的形式合作,学校提供学生,商汤给项目。

三是给商汤创收。颜深根负责搭建的计算平台是业内比较前沿的,然后商汤把该计算平台做成一个产品对外输出,这块给商汤带来了上亿的收入。

从商汤出来后,颜深根加入互联网公司小红书担任AI平台部负责人,但只干了两个月就离开了,此时大模型风头正盛,他觉得这是一个不可错失的机会,便决定创业。

后来通过单羿,颜深根了解到汪玉也准备进军大模型,于是两人一拍即合决定合作,创立了大模型公司无问芯穹,目标是打造大模型软硬件一体化最佳解决方案。

而单羿从百度出来后,选择加入余凯创立的AI芯片公司地平线。

其实一开始余凯并没有找他,从百度出来后,15年冬天余凯跑到硅谷去为自己的新公司挖人,当时他想找一个既懂深度学习又懂芯片实现的人,但问了一圈都没找到合适的,因为这不是做芯片的事情,是一个高性能计算的事情,当时硅谷那帮设计芯片的人没几个懂深度学习。

后来谢源告诉余凯可以找单羿,余凯这才知道单羿在百度IDL的工作。谢源算是单羿的祖师爷,因为汪玉的博士导师其一就是谢源,而汪玉又是单羿的博士导师。

余凯一开始还不相信单羿的能力,问谢源这人能行吗,谢源说除了单羿他可能再也找不到更适合的人了。

就这样单羿成为地平线前十号员工,是其中唯一一个知道怎么把算法芯片化的人。

在地平线,单羿做了一个人脸检测的算法加速,黄畅当时做算法的训练,单羿负责把它翻译成芯片的代码。黄畅曾在百度深度学习研究院主任架构师,是余凯的下属,2015年跟着余凯出来共同创立了地平线。

在地平线一段时间后,单羿有了自己创业的想法,于是和汪玉、姚颂、韩松一起创立了AI芯片公司深鉴科技。

没想到很快受到国际大厂青睐,被收购了。

16年10月深鉴科技成立,2018年深鉴科技便以3亿美金的价格卖给了美国芯片巨头FPGA赛灵思,在业内引起一片轰动。

赛灵思收购深鉴是蓄谋已久,因为当时它想用AI跟英伟达竞争,补充自身AI能力最快速的办法就是收购一个AI公司,当时全世界范围内的标的不多,而深鉴是最大最早的团队。完成收购后赛灵思便以深鉴为核心搭建了自己的AI体系。

当时,深鉴获得了三星、赛灵思、联发科国际资本的战略投资,还量产了国内首批AI芯片-听涛(28nm),拿到了GM、斯巴鲁、TOYOTA等很多POC(这些POC也让赛灵思看到要在汽车领域去做智能化,做自动驾驶,深鉴是最好的选择),一切都在向好发展,为什么决定被收购呢?

2017年底,单羿跟汪玉谈赛灵思收购的事情,他认为靠他们自己不一定有能力把AI芯片商业化,必须借助大品牌的力量。

如果自己做商业化面临最主要的问题是:客户在哪里?中国客户都想自己做,海康、BAT都在自研芯片,那机会只可能在海外,被赛灵思收购便是进入海外市场的最便捷途径。

作为团队的负责人,单羿先随着深鉴打包进入赛灵思,后来又跟随赛灵思被收购进入了AMD。

第一次被收购后,单羿带着100多人去了研发线,刚进去时他跟赛灵思CEO聊,想要300个人做端到端的解决方案,但是赛灵思没同意,说他们是卖芯片,不是卖解决方案,不能抢客户的生意。

到了AMD,四年后单羿的团队终于达到了300人,但也花了三年时间。

而且这300人不只是做自动驾驶,还负责很多方向,包括汽车、工业、医疗、数据中心、笔记本、游戏,单羿想做的事情在赛灵思始终都没能实现,这也导致他在赛灵思、AMD认清了一个现实——Founder(创始人)跟职业经理人是不同的。

“创始人能决定整个企业的走向,正如英伟达在很多关键节点做出了更迅速果决的选择,因为黄仁勋不仅仅是CEO,还是创始人。”

在外企的四年,单羿的商业愿景一直没能得到完全满足。因为他被定位成一个研发的负责人,而不是一个BU的负责人,除了研发之外,他期待能主导技术-商业-资本的完整链路,从而改变行业。

所以2022年单羿成为自由身后,便跟百度IDL、地平线的同事都大龙一起创立了鉴智机器人,主打以视觉3D理解为核心的下一代自动驾驶方案。

这一次,他终于能再次以Founder的身份引领一家公司,在自动驾驶领域一展宏图。

单羿希望能亲自掌舵一家AI公司,他期待能用AI改变世界,改变整个汽车行业,在当前很多人并不相信AI能改变世界的环境里:

All in AI,这点很重要!

后记

吴韧一直有一个没有实现的梦,就是做职业摄影师。闲暇之余他喜欢带上相机,去户外观察、捕捉大自然的奇妙瞬间。

他最爱拍的是猛禽,因为猛禽是一种掠食性动物,处于食物链顶端,它们行动起来快如闪电。

从猛禽的存活之道中吴韧感受到了大自然的残酷——生存,需要速度!而吴韧的一生也一直游走在时代的前列,吴韧认为这得益于自己总能站在更高更大的维度去看待周遭世界。

2014年,吴韧怀揣着做超级计算机的梦,从硅谷回来加入百度,在他的一生中,从1986年编写出了中国大陆第一个中国象棋程序时,他便一直笃信计算能力的重要性。

他曾说过,当计算能力足够强的时候,人工智能就会获得人类右脑的能力——直觉。

2014年,吴韧曾在GTC大会上首次提出两个公式“大数据+深度学习+高性能计算=更高智能”, 和 “大数据+深度学习+异构计算=成功”公式。

不曾想十年后,OpenAI践行着“大数据+强算法+大算力”训练出了GPT大模型,人工智能第一次涌现,世界因此迎来狂欢。

吴韧无形之中成为大模型的暴力美学早期推动者之一。

算力作为大模型的基础设施,支撑着算法和数据,进而影响着AI领域的发展,今天,AI算法模型对于算力的巨大需求,推动了芯片业的发展,算力的重要性日益凸显。在当前大模型创业中,甚至有着“得算力者得天下”的趋势。

而当年因为吴韧或者说是百度的超级计算机梦,让刘文志、颜深根、单羿、孙刚……这几人相聚在百度IDL异构计算团队。

这位一直致力于站在更高更大的纬度去看周遭世界的老人,如今已是花甲之年,虽然当年的超级计算机事业中道折戟,但他在AI领域的超前认知一直影响着这些学生,今天,他们全部都成为高性能计算、AI领域的佼佼者,有些人的风采甚至横跨整个AI领域。

未来,吴韧在高性能计算领域那些未实现的梦,还等待着他的学生们继续去丰满。

数风流人物,还看今朝。

参考资料:

【独家对话】从游走世界知名公司到创办Novumind,吴韧如何练就顶级计算科学家本色?丨Xtecher 封面

关于 AI Infra,更多行业交流欢迎添加作者微信 XXX,稍后我们也将推出《袁进辉与他的分布式计算江湖》,欢迎交流。

给TA打赏
共{{data.count}}人
人已打赏
应用

采摘场面如此魔性,难怪比尔·盖茨也要给它点赞

2024-1-30 11:50:00

应用

ICLR 2024|把图象视为外语,快手、北大多模态大模型媲美DALLE-3

2024-1-30 14:48:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索