2024 年度总结 LLM System Research:过去半年的科研心路历程

教育   2025-01-09 22:05   江苏  

飞往SFO的沿途风景,Shot on IPhone

恰逢年末年度总结盛行,回国无心科研,我便强迫自己分享一下自己的过去半年的科研心路历程。目的有二:1. 继往开来,学有所思。2.受东川路第一伊蕾娜:年度总结 --2024年满血版(https://zhuanlan.zhihu.com/p/14918304358)影响,尝试记录并分享,同知乎小伙伴们交流。

知乎:Vincent
地址:https://zhuanlan.zhihu.com/p/15952348070
编辑:「深度学习自然语言处理 公众号」,已授权

PHD 第一学期结束,我非常惊奇这个学期我的身心发展速度。科研成果虽然还遥遥无期,但是科研方面的经验却累积了许多。从学期初满怀焦虑在知乎高强度搜索如何寻找科研idea到现在对科研初窥门径,仅仅过了一学期而已。这让我对未来充满了期待,对科研成果的期许倒是其次(因为目前实在觉得发文遥遥无期),主要是对未来自身思想的维度升高的期待。之前认为科研是独立的,与社会脱节的,但此学期过后,我认为各行各业都是相通的,都是不断的迭代与革新,反思与进步。本文将分享我这半年对于科研的思考,抛砖引玉,供大家参考。

LLM所有细分领域群、投稿群从这里进入!

如何入门科研?如何寻找科研idea?如何推进?如何验证?

这个问题是一个很庞大且复杂的问题,我也无法保证自己已窥得全貌,我主要分享一些他山之石附带自己的一点感悟。这篇文章主要是以分享和记录为主,无法做到面面俱到,我只分享我遇到并尝试解决的问题,对于没提到的问题可能是我没遇到或者是忘记记录,请读者自行搜索其他文章。

首先,我读了Dr. Xia Zhao总结的一系列posts(https://zhaoxiahust.github.io/blog/index.html),力求对CS科研(尤其是CS system research)有一个overview。posts多是大牛所写,如IPADS陈海波教授,包云岗教授。其中包括一些CS会议杂谈,看到里面记录的一些大牛甚至是之前接触过的教授,有种恍如隔世之感。这些posts也激励了我在科研这条路上继续发光发热。

对科研尤其是自己所在领域的科研有了大致的了解之后,我进入了读大量paper的阶段。我在入学时是没有确定具体研究方向的,这也是使我焦虑的原因之一。我给自己定的大方向是System,所以我就自己从OSDI,ASPLOS,ATC,SOSP上开始翻各种paper,挑有兴趣的读。我也订阅了Arxiv daily email (Artificial Intelligence; Hardware Architecture; Distributed, Parallel, and Cluster Computing; Operating Systems; Software Engineering)去关注最前沿的工作。因为我老板的方向是HPC和Serverless Computing,我读了许多云上调度的paper,感觉还蛮有趣的。顺带一提,陈海波教授组里的文章是真扎实,读起来非常舒服,面面俱到。读的paper多了,我发现读一些paper的过程中,有一种莫名的熟悉感,似乎在其他paper看过类似的idea,但就是想不起来在哪里看到的。这种感觉让我很痛苦,所以我认为读感兴趣的paper一定要做一些笔记和总结 (虽然目前我这方面做的还不够,可能以后可以在知乎分享来督促自己),以备未来回看,常看常新。除了老板感兴趣的方向,我其实在入学前就对MLSYS有比较大的兴趣,因此也持续关注着这个领域,主要是LLM SYS。当时恰逢Llama3的技术报告出炉,在学长的推荐下,我仔细研读了报告,发现里面提到很多SOTA的技术已经被用到Llama3的训练之中。于是我顺藤摸瓜的读了这些技术的paper,毕竟工业界都用了的技术肯定不会差。

对云计算资源调度和LLM SYS领域有了大致了解后,我就开始着手寻找一个特定的领域以及一个好的问题,因为急于开始科研,害怕耽误进度。我最终确定在LLM serving方向深挖。大致是因为我看了很多schedule的文章,但是我发现传统的云调度已经被研究的差不多了,正好我对LLM也有兴趣,LLM serving看起来像是一个不错的切入点,既涉及资源调度又涉及LLM。

确定了方向就开始explore deep,我开始恶补LLM serving的paper,同时follow了两个系列seminar:Standford ML seminar以及UCB LLM agents,感兴趣的读者可自行google。MLSYS24的一篇HeteGen让我很感兴趣,利用CPU和GPU联合推理。我当时认为这是个很promising的方向,毕竟不是每个人都有A100和H100可以用,在算力有限的设备上优化inference甚至serving似乎很make sense。于是我就进一步缩窄阅读paper的范围,奈何LLM实在是日新月异,依然有大量的paper要读。我也开始着手设计系统,参照顶会paper的思路。焦虑随之也减轻,毕竟开始动手设计了。

上手之后才知道设计一个系统有多困难,要考虑的面面俱到,涉及多领域知识,因为我也咨询了不同领域的专家,但感觉在某些领域还是缺少认识的朋友,这也是我写这篇文章的原因之一,结交不同领域的专家。大概有了一个系统雏形,我便展示给我的老板,他说非常不错,但他提了一个问题:“你是要发一个大的paper还是要把不同的方面拆成小paper?”。我当时才意识到,整个系统过于庞大了,考虑的东西太多了,做起来也太过复杂。很多其他小伙伴的文章中也提过,很重要的一点就是化繁为简,抽象出最关键的部分,并讲一个好故事。因为我便挑了系统中比较重要的部分,开始更加缩小范围的读paper,并且读的越来越细,对比不同paper,找可能的创新点。同时也开始寻找一些开源的项目,尝试阅读源码以及魔改,以便在有想法之后可以立刻开始验证以及实现,可谓养兵千日,用兵一时。这个过程中,我有一个很重要的感悟,即动手和读paper一定要同时进行,光读paper不搭系统会让你眼高手低,光搭系统不读paper会让你错过最新的paper以及沉溺于实现的细节。

下一个阶段也是快接近学期结束的阶段,我有了一些想法。之前摸索开源系统也让我能迅速验证一些想法以及现有paper的假设,通过收集数据再迭代想法。我的进度停留在想法和实验迭代的阶段,希望下个学期能有不错的进展,做出一些成果。

这几天闲来无事,刷了很久的知乎,吸收百家之长,我发现了wang yifan教授分享的一套方法论。和我的历程何其相似,王教授的方法论很言简意赅,一针见血,我的经历似乎就有些曲曲折折了,但至少令我庆幸的是,I am on the right track。

科研不是单打独斗,是通力合作

在入学之前,我一直认为,只要闭门造车,持之以恒,就一定能成功。入学之后我才意识到,团队合作的重要性远远大于我的想象。科研本是一条曲折而孤独的路,有个懂你在做什么的人和你一起前进,防止你误入歧途,防止你burnout,是非常非常重要的。可能大多数的PHD在入学时都是跟着学长干活,然后渐渐独立科研。但由于老板允许我自由探索,所以我选择了LLM serving这个实验室没人做过的方向,导致我只能摸石头过河,这就更需要同外校的人合作。所以PHD不仅仅是干活勤快就能成功,沟通能力,如何和导师沟通,如何和labmate沟通,如何和合作者沟通,都是在PHD生涯非常非常重要的事情。当然对于大佬来说,可能自己干就能出成果,对于我这种菜鸡来说,合作是必不可少的。之前对合作太过轻视,我开始审视我的交际圈,发现居然没人足够多的科研合作者candidate。这也是促使我分享这篇文章与知乎小伙伴交流的原因。

总结

2024 is end, 2025 is around the corner。希望这篇文章对初入科研大门的小伙伴有所帮助,同时也欢迎小伙伴们多多评论交流。PS,写这篇文章才发现自己的写作能力也是一坨,毕竟高中作文就没少挨老师骂,有空再完善想法吧,先写到这里。其实还是有很多零碎的想法没有总结进去的,有缘再见咯。



备注:昵称-学校/公司-方向/会议(eg.ACL),进入技术/投稿群


id:DLNLPer,记得备注呦

深度学习自然语言处理
一个热衷于深度学习与NLP前沿技术的平台,期待在知识的殿堂与你相遇~
 最新文章