持续发布招聘信息,欢迎推荐或自荐

这次招聘的标的还是包含两类,一类是系统优化,另一类是模型压缩及算法优化,我们期望能够吸引这两个方面的高手加盟。

1.系统优化

系统优化的工作目标是push系统层面的性能极限,充分压榨底层硬件的性能上界,包括计算设备和IO通信设备。我们期望吸引的同学最好能够具备如下背景:

1). 具备手工完成深度优化CUDA Kernel的能力,必要的情况下,能够在特定workload下去与厂商提供的library性能叫板,比如在特殊尺寸的卷积或矩阵乘上beat cuDNN/cuBLAS,我们目前在做的一部分工作包括基于CUDA进行手工优化,个别场景我们也会突破到SASS层进行更为极致的优化,同时我们也在leverage TVM这样的工具来进行更具生产效率的codegen,在部分业务上也看到了蛮promising的结果。这是一个非常有趣,也值得大家一起来投入研究推进的领域。

2). 具备基于编译技术的通用优化的sense和经验。手工优化是我们的cornerstone,但我们也期望能够通过类似于编译优化的技术将优化工作尽可能通用化、自动化起来,以获得更好的扩展性(我们会把结点内优化和结点间优化都抽象为编译优化问题),既包括对不同的workload的扩展性,也包括对不同硬件平台的扩展性。我们针对的硬件平台不会仅仅是一个,所以我们期望从更为高层次的视角来看待系统优化工作。比如基于现有的技术栈TF XLA和NNVM/TVM,结合阿里的业务场景和技术栈,推进自家以编译优化为代表的通用优化技术的执行,来压榨底层计算硬件和通信硬件的性能极限。这方面目前也取得了一些阶段性的小结果,这个过程很艰难,因为通用优化的覆盖面大,但操作难度通常来说是显著高于特定优化的,这跟数学问题的求解是一个道理,越通用抽象的问题往往越是硬骨头。不过经过前面的密集投入,我们已经取得了一些阶段性结果, 突破了先期门槛,后面的工作会越做越有意思,也期望对这个方向感兴趣的同学一起加入进来。

3). 有强烈的意愿去了解上层DL workload的计算特点,结合workload的特点进行优化。在过往的经历中,我们发现一些底层背景优秀的同学对于上层DL workload并不了解,这在相当大程度会限制系统优化工作的推进。所以我们要求系统优化的同学对主流的DL workload有清楚的把握,并具备快速catch up新model的素养和能力。比如Attention Only的模型和DenseNet模型,在推出没有多久,就进入到我们的优化视野,我们也已经在推进一些相关的优化工作,并取得了一定的结果。

4). 对社区及学术界技术进展保持敏锐的关注度。我们的目标是在state-of-art的基础上,完成更进一步的技术创新,所以对行业技术的关注和跟进非常重要。我们不期望闭门造车,我们期望是高手过招,相互促进,所以对团队同学的心智openness和技术趋势跟进能力提出同样高的要求。

2.模型压缩及算法优化

这个方向的期望是在系统优化达到近乎极限的情况下,通过算法层面的调整,来获取更多的优化空间,比如通过模型压缩量化的手法来减少workload的理论计算量,从而为系统优化争取出更大的空间,以及通过结合模型特点的优化来减少模型离线训练过程中的通信量以提升分布式训练的伸缩比等等。系统优化与算法优化是相辅相成的双生子,单靠一端都有其局限,所以需要closely work together。我们期望吸引的同学最好具备如下背景:

1). 对模型压缩方法有着清晰的技术体系认知,包括但不限于量化、稀疏化、剪枝、KD、动态图路由、小网络设计、结构化压缩等。同时能够洞察到模型理论计算量节省跟物理耗时节省的gap,能够有sense去推进跟系统优化同学的合作,来充分push模型压缩所可能取得的性能提升的极限,而不是仅执于模型理论计算量节省一端,这方面我们也取得了一些进展,通过更有效的建模手段来获取到与理论加速比更为接近的实测加速比,以及将系统优化与模型优化配合起来获得组合收益。Ideally,我们期望他/她能够写出可以work的计算kernel,性能可以不优,但至少可以work,这样才可以更有效地跟系统优化同学完成based on the same language的沟通,我们目前也已经有部分建模同学在这样操作和推进工作了。在模型压缩方向,我们已经取得一些比较有意思的结果,包括量化,也包括模型的剪枝变换和结构化压缩等,会感觉到这方面还有很多工作要做,特别是想做成一个足够通用、易用的基础设施产品,会有大量的实验细节、原理推敲乃至产品实现需要有相同志趣的同学加入进来一起推进。

2).对模型优化的原理有好奇心。DL领域中,empirical的东西很多,在业务场景中也经常能够取得一定的效果,但是作为基础技术团队,我们不期望仅仅停留在empirical的层面,我们更希望能够下探到principal的层面,对具体模型优化工作工作与否能够进行原理层面的探究,这除了技术审美品味的需要,也是为了确保基础技术工作真正能够取得扎实的效果,为上层业务提供有效可持续的支持。

3). 良好的工程素养。之所以单列出这一条,是因为在过去的从业经历里,我看到有一些算法背景的同学,其工程素养是有待提高的,而我同样观察到真正优秀的算法同学往往依托于良好的工程素养,可以快速地完成实验的迭代开发,上线推进,所以工程素养会被我专门列出来。

4). 对业界及学术进展的跟进,我想也是基本要求,就不再展开了。

这次开放的职级从P7~P8,优秀且有潜质的同学P6我们也同样愿意考虑,有意向的同学,欢迎投递简历到muzhuo.yj@alibaba-inc.com。

发布于 2018-05-23

文章被以下专栏收录