科研节奏与选择
WARNING
本篇章中讨论的内容,均以功利主义视角为主,且仅适用于计算机科学领域,有待其他领域的读者自行判断与补充。
上文篇章中进行了科研的介绍,而其中不乏少量人文关怀的阐述,笔者希望读者不要忘记科研的初心与意义,然而无论如何,本篇章中的讨论均会集中在更加功利主义的视角之中。
我们需要认识到,当下计算机科学领域的科研,主要集中在人工智能领域中,而少量的并非人工智能领域的相关内容,或许集中在 system 与 security 方向。本篇章中主要介绍人工智能方向,这是因为这一方向所要求的前置内容并不算多,而同时,这一方向所涉及的内容,也相对容易入门。
科研节奏
科研节奏,在这里指一名本科生,从对于科研知识的零掌握,到正式进入课题组,参与科研课题,这一过程的时间规划与消耗。
尽管人工智能领域中包含着大量的优化知识以及数学理论,然而这些内容在现如今的大多数科研产出中,并不是主要探讨的话题。当下的人工智能领域的科研聚焦于更加宏大的叙事之中(即故事线),同时通过调节宏观的数据流/数据处理/数据量/模型结构等内容,优化某一任务的性能。尽管有必要指出人工智能领域的科研远非此等内容,但是此类内容对于入门而言,无论是产出的成果还是上手的难度,均可以说是恰到好处。正因如此,对于一名本科生来说,想要浮于表面地参与科研之中,并不需要过于深厚的数理知识(但是相关内容在后续的学习之中需要不断地探索强化)。
一般来说,我们认为你们本科生需要具备基本的数理基础以及编程基础,同时阅读过一定量的论文,并可以参加实质的科研实践。参与科研实践的方法已经在上一章中提及,而本篇内容则主要聚焦于,一种较为恰当的科研节奏是什么样子的。
首先,读者需要进行基础的积累,在这里不做过高的要求,而假如可能,本教程将在后续给出一个较为极端的案例。读者需要根据正常的本科教学培养方案,系统学习高等数学/线性代数/概率论与数理统计这三门经典课程,但在这里需要指出的是,高等数学与线性代数在大一阶段便已经完成教学,而专业的培养方案不同,教授概率论的时间也并不相同,假如追求更高的效率,至少在大一下学期开始学习概率论是一个较为合理的选择。
其次,读者需要具备一定的编程水平,在这方面中,科研以 Python 语言为主,因此需要读者在大一阶段完成,对于 Python 语言的学习。同时,在人工智能领域中常用的深度学习库,即 Pytorch,也是读者需要了解的内容之一。这些内容的学习可以伴随 ChatGPT 的辅助进行,一方面就可以优化学习内容,而另一方面也同样可以辅助编程流程。
最后,适当的论文阅读也是有必要的,论文的阅读常常令人谈之色变,毕竟这种来自学术的产物,好像不是仅仅学习了基础课程的大一新生可以掌握的,然而事实并非如此,只要具备对于深度学习算法的一定理解,看懂论文并非是一件难事。
关于人工智能的入门技能以及成长路线,笔者制作的 人工智能自学指南 中给出了详细的指导,欢迎读者进行查阅。
按照一种正常的节奏来说,读者应该在大二上结束之前,完成至少包括机器学习经典算法以及经典的深度学习论文的阅读和学习,这些内容会成为加入课题组科研的重要基础以及加分项,之后,读者可以按照上一篇章中的加入课题组部分内容进行申请,而后正式开始在组内的科研。
需要指出的是,就很少一部分的本科生,可以在加入课题组之后便开始主持属于自己的课题,另外的很多同学,则需要先在其他课题中进行历练。这其中较为善良的,其内容包括代码的撰写/范式的构建/论文的润色,这些内容均是在科研流程中的必备技能,在老师或学长的指导下,进行上述的练习,并可以在某一论文产出中获得作者位次,已经是十分理想的结果;而并不善良的历练,则或许包括参与数据集的清洗工作,并无法参与论文的核心讨论,这些内容会导致读者仅是付出了时间,然而并没有学到任何实际技能。
科研选择
上述讨论,便引出了关于科研的第二个话题,也就是科研的抉择。这其中一共包括几部分,有是否停留于某一课题组的抉择,有是否投身于某一方向的抉择,也有是否继续进行科研的抉择。
首先阐述是否停留在某一课题组的抉择。正如上述内容所说,事实上,即使在西交,并不是每一个课题组都可以为本科生带来充裕的科研条件,某种程度上这是可以理解的,资源是有限的,自然优先倾斜到更具科研潜力的研究生与博士生身上,但是,从另一个角度思考,在这些课题组进行科研实习的本科生,是否有继续停留的必要?这是一个问题。
或许有许多本科生,一是碍于情面,诸如老师毕竟是老师,曾经也给过自己一些教导,自己如今说要退出课题组是否不太合适;二是处于畏惧,诸如担心退出课题组之后,依然与老师低头不见抬头见,老师可能在学习或其他科研场合中对自己加以针对,这有该如何是好。
但事实上,就像这些老师不会为组内的本科生倾注资源一样,他们也同样不会因组内本科生的离去而恼怒,这种担心被报复的心理,完全是多虑了。而从另一个角度来说,读者也需要认识到自己的价值:四年大学时光,时间是有限且宝贵的,我们要将时间花在更加有意义的事情上去,而非在重复的劳作中虚度光阴。
其次阐述是否投身于某一方向的抉择。出于算力的限制等原因,事实上西交的课题组大多数并不能进行那些最为炙手可热的课题,如大模型或者多模态的一些基础性研究,而大多数的读者接触到人工智能便是从这些开始的,抑或者来自于 AI 绘画,而不巧的是,这些领域中的基础研究对算力的需要,使得本科生很难参与。
因此,大量的本科生被要求参与或者主持一些所谓“下游任务”的相关科研,这些内容事实上确实没有前者吸引人,因而也让部分的同学产生了自己所进行的不是真正的科研这样的想法。但是需要指出的是,事实上在学术界中,能够进行那些基础性的大型的研究的课题组,只是凤毛麟角,而剩下的课题组则均在其他的任务中发光发热。
读者需要意识到,参与下游任务的研究并非是可耻的,这是一种常态。一方面,这些任务对于领域内的研究以及现实均存在一定的意义;而另一方面,对于想要进一步进取的同学来说,在这些领域中取得的学术成果,也同样可以成为自己前往更好的课题组,进行更多科研的跳板。诚然,一种更好的选择是,在一开始便凭借优异的个人素质直接前往外校进行科研实习。
最后,是关于是否将继续进行科研的抉择。无数的同学对于大学中的科研工作具有一种美好的滤镜,但是正如我们在无数的媒体与平台中所见闻的,科研事实上常常存在的是坐冷板凳,常常出现的是努力许久而不得回报,负反馈在科研的过程中时常存在,而每一个科研工作者,除了继续努力则别无他法。读者在参与科研之后,便可以对科研具有更加全面地了解,选择是否继续进行科研便也有了答案。科研是一条充满了荆棘的路,并非一腔热血便可以轻松完成的,需要深远考量。