Seize the day

匆匆收拾了包裹,离开了这个培养自己两年多的团队,和待了六年多的城市。 我倒是早就习惯了离别,每半年换一个工作环境对我来说不是什么新鲜事,唯一不舒适的地方是搬迁:我的随身物品不多, 搬家公司来总嫌东西太少,亲自搬行李又嫌太重,每次又过于匆忙,总是落下一些重要证件(身份证、毕业证等等); 这几年来最大的教训莫过于,要尽量少地去买纸质书,反正平时看也看不完,搬家时就像带着一大块又硬又重的原木。

与一起共事的同事和项目告别自然有几分不舍,可能以后见面的机会也不是太多。但人终究是流动的,我很骄傲曾经是 AWS Shanghai AI Lab 的一员,也坚信延续当前的模式下去,这里未来会成为上海地区顶尖的 AI 研发中心。 两年后离开是我一开始就做出的决定,人需要有一定的定力,也不能一直呆在他的舒适区里,对于过去的我而言,两年的时间或许刚刚好。

过去两年的经历我总体而言是满意的。有人觉得工业界的经验对读博是有益的,有人也认为工程上的东西跟科研不能混为一谈。 我个人倒是看得挺开,从科研的角度上来说,我不觉得我做了什么真正的系统研究;但同时,我也能清楚地看到大部分的系统/体系结构 论文的实际意义——大量的不公平比较(10x 的性能提升,可能有 8x 是由于改进了工程实现带来的,剩下的 1.25x 才是系统设计带来的), 投入生产环境可能带来的额外问题,以及它所解决的场景的通用程度(可能 90%的场景已经被解决,而这篇论文只在剩下的 10%场景下有 提升);这些现象广泛存在于哪怕是“顶会”文章中。而且由于硬件的发展,哪怕是一个在几十年前已经被研究烂了的问题,在新时代又因为 硬件的瓶颈不同带来了新的解决方案,而过往的研究结论通通作废。对于工程性质>>普适的科学性质的学科,做出有影响力的系统(例如 LLVM/RISC-V/Spark/TVM/…)的意义显然是更大于发一篇顶会的。(1)造轮子意味着极大的工程投入和直面大公司的竞争压力, 而(2)做 真正 创新的想法则意味着需要有敏锐的嗅觉,超前的意识和难得的好运气,于我而言,我会把主要的精力放在(1), 同时时刻把握做出(2)的机会。

原因其一,系统研究者不能在手头没有一个可定制化的代码框架前提下空谈想法,从这个角度说,深度学习框架极大地降低了深度学习领域实现想法的成本。而理解前人的代码架构(例如各种数据库)通常是非常耗时的,因此成为开源项目的贡献者则是收益最大的一种选择,一方面可以及时跟进开源社区的进展,另一方面通过提交 PR/审核代码保证对代码库的熟悉程度。

原因其二则是PyTorch的教训,PyTorch 的成功是一个在系统研究者看来非常匪夷所思的一件事情,它放弃了基于数据流图的设计,同时也放弃了静态图上的优化机会,简单地构建了一个兼容 CPU 和 GPU 的算子库,和在 C++端完成的自动求导,便实现了对 Tensorflow 和其它一众框架的反超,大家肉眼可以看见这个系统有那么多的地方需要优化。但是盖不住其核心足够简洁,对动态图足够友好,性能上的损失也是可以通过供应商的努力去弥补的:英伟达的 CuDNN/Apex,Uber 的 Horovod,这么多年下来竟然相比其它引擎复杂的框架不落下风。这是 worse is better 的胜利,教会了大家如何做产品和敏捷开发,如今的 PyTorch 也在向符号化的方向努力,但很显然这是他们在已经牢牢抓取了深度学习用户的前提下所做的选择:同时代的产品,除了 Jax 以外,看不出任何一个框架有撼动 PyTorch 地位的可能。PyTorch 给大家带来的启发是:

以上的经验其实跟系统研究没有什么特别大的关系,但是却很能说明一个问题:很多热门领域并不需要系统研究者的介入研究大而全的框架,做机器学习的人凭借自己的一些经验就可以写出性能不错的代码,因此系统研究者应该把精力转投到更有意义的子问题上,例如专用芯片、分布式训练、高效算子生成、低时延高吞吐的部署等等。

离职之后突然闲下来让我有点微微不适,读博期间的会议明显比公司要少,但这也意味着大部分时间可供自己挥霍:我需要成为自己的产品经理,管控 每一个项目所花的投入和进展,主动地去社交/合作,于我而言是一种全新的挑战。

前些日子与本科同届系统方向博士在读的同学有一些交流,他们中的很多都有退学的想法,对此我并不感到惊讶也尊重他们的选择——坚持做自认为无意义的事情与浪费生命无益,而很多时候我们并不能把控自己的项目成功与否。但我也绝不会做一个虚无主义论者,任何人的经历和经验都是无可复制的,做出适合自己的选择同时并不需要给事物定性,散布极端情绪则是可憎的——这世界上总需要有那些天真且积极的人。

如陈大岳老师所言

非常遗憾,由于你选择出国,你对国家的贡献将少于那些身着戎装的同龄人,你的收入将少于那些大大小小的黄光裕们。由于国内经济的快速发展,你去国几年将付出极高的机会成本;

既然已经用脚投出了票,不妨多做点实事,少去考虑“意义”这样的主观问题。探索上宜大胆,而评估上需严谨——不要被现有思路束缚了手脚,但万不可忽视前人的努力,万丈高楼平地起。

属于我自己的时间,开始了。

Author: expye(Zihao Ye)

Email: expye@outlook.com

Date: 2021-03-22

Last modified: 2021-10-25 Mon 21:58

Licensed under CC BY-NC 4.0