前言
我是一个缺乏行动力、贪婪、迷茫的人,凭着不错的幸运加成在 22 Fall 申请季拿下了一些不错的 EECS MS/Phd offer。我并不认为我的经历有太多的可借鉴之处,贯穿本科阶段冗长的申请准备过程也很难系统地总结记录下来,因此在这里就随机地分享一些感触好了。
为什么要出国?
● 我自认为我不是一个能 settle 下来的人,换换地方总是好的~
● 有不少朋友、前辈都选择了出国这条路,难免有点从众
● 在现实方面,无论就业还是找教职,前景都听起来不错
● ...
对我而言这还是一个 open question,希望能在以后的日子搞清楚!
选校:Master or Ph.D.?
这个问题我其实一直到网申 submit 的时候我都搞不清楚。在大三上学期找中介的时候,我一直被问:“你要申硕士还是博士?” 那时候我对于自己的未来毫无概念——硕士还是博士、找工还是科研?我不知道。
一直到大三下学期的时候,我有幸接触到了自己感兴趣的研究方向,才发现我是不抗拒、甚至有点享受 research 的。再后来,我怀着一腔“兴趣”在暑研中屡屡受挫,最终抱着学长的大腿在申请截止前的不到一个月才有了唯一的一篇共一在投 paper。
11 月因为赶 CVPR ddl,我经常凌晨才离开实验室,看着杭州前半夜见不到的星空,再侧过头瞅见曹楼里好几间实验室依然灯火通明,猛然意识到我的科研经历、成果、能力其实很难匹配上我对科研的兴趣。于是在12月申请的时候,我选择了大量的(8个)Master 项目,PhD 只摸奖式地申请了印象不错的几所(UC Berkeley、Princeton、UIUC、Gatech、NUS)。
我的选校标准:申的都是愿意去的,真的全聚德的话就 gap 一年再战嘛。
GPA?
我有一点强迫症 + 完美主义,总想着要把事情做到“让自己满意”;这让我在校内课程中获得了比较高的 GPA(top 1~2),但也让我在每个学期的中后期常常因为焦虑睡不好觉。更得不偿失的是,在课程上花了过多的精力导致我在科研上没有足够的付出。我认为的最优解:GPA 够用就行(最好90+),争取在科研/实习 & 校内课程上找到一个合适的平衡点。
语言
够硬标准就行啦(当然托福口语高一点可能会在申请中有意想不到的作用)。
本科科研杂谈
我的科研之路不怎么顺利。
我的第一段科研是大二下学期开始的一段国创 SRTP (本科生科研训练项目)。作为一个“本科生科研训练项目”,其实主要是导师给一个大的课题方向(System Security),然后靠我们本科生三人自己摸索。这个系统安全课题对知识栈有很高的要求(硬件、系统、运行时),这对于才刚开始上“计算机组成”、“密码学”的我们来说显然是很难 handle 的。于是,课题从风光的“立项”之后便进入了停滞不前的“调研”环节。
直到大三上快要中期检查的时候,作为队长的我感觉到了不少的压力,才试图凭借着上个学期刚掌握的的一点相关知识推进度。由于课题的选择比较硬核,导师、组里的学长都很难给出能直接上手做的 idea。我只能更多地着眼于代码实现,尝试在我们的能力范围内做一些 coding 工作。和队友每周 meeting 了好几次后,我们决定利用简单的密码学去设计、实现一个系统层面的(很弱的)安全协议,从而努力圆我们开题画的饼。一年下来尽管跌跌撞撞,我们也算是自力更生地完成了还不错的 coding 工作、设计出了一个或多或少有点用的开源框架、投了一个水专利(当然也成功结题了)。
我的第一段科研拖泥带水,一直到大三下学期的时候才基本结束,我也并没有对这段经历的 System Security 方向产生什么兴趣。(在这里也建议学弟学妹多尝试不同的方向,不必选择 SRTP 这种看起来正式实则会将你禁锢住的的科研项目,直接联系相关导师就好。)虽然我到现在依然后悔这段宝贵的时间或多或少有点浪费掉了,但不可否认这段独特的经历也对我有着潜移默化的影响。在申请季 Princeton 面试的时候,面试教授还专门让我讲了这段 research,表示我既有 System 又有 AI 的背景非常 impressive。
按照普遍的申请准备流程,这个时候应该套磁海外暑研了;这也是我在21年2~4月份一直在做的事。因为对之前唯一接触过的科研方向(System & Security)不感兴趣,又想展示自己已有的科研经历,还想着往火热的 AI/ML 方向蹭一下,我便把它们排列组合了下,主要选择:
● AI/ML + Security
● System + ML
这两个杂交方向的教授进行套磁(基本就是对着 csranking 按领域从高到低一个一个筛选)。但事实上,由于我毫无 AI/ML 知识和经历,我的几封套磁几乎都石沉大海。与此同时,我开始通过校内 & 线上(Stanford CS229 CS231N)课程恶补 AI/ML 知识。
大概从这个黑暗的时候开始(22年3月),我的幸运属性开始显现了。一切的开始要从我刚好点进 MIT 某相关方向 Lab 的主页、刚好看到一个名字有印象的Z学长的名字、发现他刚好在我的微信朋友列表里说起。Z学长很热心地跟我聊了我的科研,很直接地点出了我科研经历的欠缺,并介绍我认识了我刚好想尝试的 AI/ML + Security 方向的X学姐(,还在后续一直 followup 我的科研进展)。X学姐向我推荐了在这个方向做的很不错的校内实验室,建议我可以先跟着校内实验室尝试一下。
在联系了该校内实验室、被实验室老师推荐了几篇值得读的 paper后,我意识到:“这个方向的 paper 可比我之前读过的 paper 有意思多了!” 同时,我也没有停下套磁。一件很巧妙的事——我在 csranking 翻到 Penn State University 这一栏时,找到了一位 ZJU 本科校友教授(W老师),做的方向还是我刚巧有一定兴趣的 AI/ML + Security,而且他还和我刚联系的校内实验室老板有不少共同署名的 paper。可能因为 ZJU 算是很强的 connection,教授对我的套磁回复很积极,马上就约了 chat,向我介绍了实验室的小方向,再之后给了我一个具体的课题以及可能的思路。我跟校内实验室老师提了想跟着 PSU 这个 Lab 做线上海外暑研这件事后,老师也非常体贴地表示“我们合作很多、很支持”。
22年5月~8月,我基本全身心地投入暑研:
● 我向导师的科研反馈非常积极主动,(邮件频率基本一两天汇报一次)
● 每次汇报内容会用 Notion 做成一个比较有描述性的笔记页面
● 遇到了问题后会思考、分析、整理后向导师请教
● 导师在我困惑时给出方向后,我能够思考、很快地 implement 再反馈结果
● 积极 coding,代码进展让导师看到
虽然最终暑研进展不太顺利,没有论文产出,但我认为我给导师留下了不错的印象。
22年9月,在一个暑假的科研碰壁后,我刚好通过飞跃手册联系上了同方向的Q学长。Q学长刚好有个需要完善实验部分的项目,计划投11月的 CVPR,便邀请我加入。现在看来,Q学长是手把手领我进科研门的人(一箩筐的科研常识、如何 sell a good story、实验该怎么设置、论文该怎么写、对于大方向的见解...)。在Q学长的提携下,这段项目收尾地很顺利(虽然也很肝),投稿时大家也算是胸有成竹(最终中了 CVPR oral)。在把这篇共一 paper 挂上 arXiv 之后,我空空如也的简历上终于有了“Publications/Manuscripts”一栏,我也终于能建起自己的 Google Scholar。至此,我的申请材料集齐了最最最重要的一样。
最终我的推荐信来源:海外暑研老板、大三下校内实验室老板、在投 paper 的合作校内教授。我在科研方面的起步并不顺利,科研能力不够出色,但也算是凭借着突如其来的运气 + 自己时有时无的主动性(initiative)完成了结局看起来还不错的“自救”。
海外经历
除了线上暑研之外,我还在大四上学期有一段 Oxford 访学经历(一直有个 Oxford dream)。由于疫情原因,我在 Oxford 访学一直是线上的:线上听 lecture、做作业、coding、最后完成结课论文。在线上交流的三个月里,我的英语交流能力(听、说)得到了很大的提升;同时,我也在牛津形式非常自由的课堂中探索了不少自己感兴趣的学术问题。但对我而言,线上的形式让我失去了不少参与感,而且交流的课程本身压力就不小,导致我当时在做的科研很难全身心投入,再加上没办法亲身感受 Oxford 校园带来的魅力,我在第一个学期结束后就退出了项目(很艰难的选择,但也算是及时止损了)。
一段海外交换的经历能够很好地给个人简历增色,而且相信在非疫情时期去另一个环境学习生活也会特别有意思,但希望大家申请、参与交换经历的时候多权衡下利弊。
申请季开奖
最终拿到了 UC Berkeley EECS PhD(最终拒)、Princeton ECE PhD(最终录)、NUS CS PhD(最终录) 的面试,Gatech CS PhD 无面试录取(两个推荐老师都有 Gatech PhD 学位),以及一些 MS offer。
申请材料作用分析
GPA:一个足够高的 GPA 让我稳定收获了不少 MS offer,也让我在 PhD 申请中更容易地过了不少学校的 committee 关(我申请的时候完全没想过 UC Berkeley、Princeton 会给只有一篇在投 paper 的我发面试)。另一方面,部分学校几乎完全不看 GPA,比如 CMU(看软实力、匹配度;我申请了 CMU 5个 MS项目,最后只收到了 CMU MSML 一个 offer)、UIUC MSCS/PhD(完全看教授捞不捞你)。所以再说一次我认为的最优解:GPA 够用就行(最好90+),争取在科研/实习 & 校内课程上找到一个合适的平衡点。
GRE、TOEFL:对申请的增益为0。
海外经历:Oxford 的经历在 UC Berkeley、Princeton 面试的时候都有被面试教授问起,但是我不觉得这段经历在申请时除了让我的 CV 看起来 fancy 一点之外有什么太大的作用。
Paper:支撑起我申请材料的主心骨,我完全不敢想象没有这篇 paper 我的申请会怎么样(可能还是会有不少 MS offer,但 PhD 申请估计会差很多)。申请的竞争越来越激烈,本科申 PhD 的同学(尤其是泛 AI 领域)往往都有 paper,所以还是应当尽可能地去参与论文的发表。我认为申请时不同情况的理想程度排序:有独立一作顶会 ≥ 有独立一作顶会在投 > 有共同一作顶会 ≥ 有共同一作顶会在投 ≈ 有数篇二三作顶会 > 有已接收的 paper > 有在投 paper > 无 paper。当然,卷 paper 的难度也因方向而异(例如 System/Hardware 方向本科生很难产出独立一作),90+%能成功发表论文的本科生都是做着不错的方向同时遇上了不错的实验室、不错的老板。申请的学校和教授都非常清楚科研方面的不确定的因素,也不必过于担心,相信每段科研中只要付出了总会 pay off 的!但假如申请时在 paper 上没有优势,那么推荐信和 SoP 很重要了。
CV:这是别人了解你最快速且方便的途径。如何撰写可以参考在读 PhD 的 CV。如果没有足够的 publication、research experiences 就把课程项目往上包装。略。
个人主页:同样是别人了解你最快速且方便的途径。在申请 PhD 的时候,一个不错的个人主页还是相当必要的。
SoP (Statement of Purpose):申请材料中最花费精力的就是它了。SoP 的作用就是把你的经历、目的以书面的形式呈现给学校:在个人 CV 中没有提到/一笔带过的东西就可以在这里尽情发挥,在申请的时候如果没有足够强的硬实力(GPA、paper),那么 SoP 就是你的核心武器。由于我的申请是科研向的,我的 SoP 主要内容便是我的三段科研经历。每段科研经历(即便没有产出)都需要在一段里具体而微地概述出来(what, why, how, outcome),最好能够找到经历之间内在的联系(串起来讲通一个故事)。具体怎么写 SoP 我也不擅长,就不展开来讲了。
套磁:我申请 PhD 的五所学校中,除了 UIUC 是教授直接捞人之外,都需要申请者的材料先过 committee 关,然后才会被发面试(或者直接录取)。有的教授会在主页写明白了“你只管申请,不用给我写信”,那就意味着套磁确实没什么用了(除非极少数情况你有特别的背景)。我最终只套了 Princeton(秒回“我鼓励你申请”)、NUS(无回信)、UIUC(无回信)、UCLA(无回信,最终也没申 PhD)、CMU(无回信,最终也没申 PhD)的各一位教授;UC Berkeley 和 Gatech 我感兴趣的教授都写明了不必套磁,我也就没有套了。总的来说,我不认为套磁对我的申请而言有什么额外加成;但毕竟我的样本数量过少,大家在申请时(甚至申请提交后)还是应当尽可能地 reach out 感兴趣的实验室、教授,争取让教授“注意到你”。
推荐信:推荐信是 PhD 申请里最重要的一环(甚至 > paper),一方面推荐人能够通过推荐信展示你的能力,另一方面提交推荐信其实就是在利用推荐人的 connection(“Connection is all you need”)。我的推荐信构成全部都是 AI Security 方向的教授,猜测对于我的申请有着巨大的帮助(海外教授应该给我写了强推,校内的两封都是我自己拟的初稿)。
再来一次的话...
● 大二的时候应该多尝试几个不同的科研方向,早点找到最合适自己的实验室和方向。
● 校内课程/ GPA 差不多就得了,不用把自己逼得这么焦虑的,还不如多腾点时间去科研/实习。
● 申请的时候有点打退堂鼓了,不少项目直接觉得够不着压根就没敢申;现在想想,当时还是应该申一下 MIT、Stanford、CMU PhD 项目的!
● Berkeley 的 POI(Professor of Interest)面试让我谈我的 research interest(接下来想做什么),我讲得有点天马行空、不实际、不太 match 教授 major focus 了,当时应该贴着教授更熟悉/主要在做的东西讲,也许录取的几率就更大了一点吧hh。
...
Princeton ECE PhD 项目
Princeton 的 ECE PhD 项目对陆本申请非常友好,今年似乎录了 13 清华 + 7 北大 + 2 浙大 + 1 交大 + 1 复旦。相比 Princeton CS PhD 一类的项目而言,Princeton ECE PhD 不会有“只招N个陆本”这类的“多样性”指标,也就不那么卷,因而录取的陆本数量比较多,甚至可能会占总录取人数的一半左右。19、20、21、22 Fall 申请季,Princeton ECE PhD 项目在 ZJU 每年分别录取了1、3、1、2人。
感谢
感谢有家人和朋友一直的支持和陪伴,同时非常非常非常感激能够遇到那么多 nice 的老师、学长、学姐!
世毕盟发挥的作用
● 申请时帮着修改完善了很多版的 SoP;有 mentor 帮助改善行文逻辑上的问题,还有 世毕盟native expert team 帮忙润色。
● 在申请前期和 mentor meeting了挺多轮,mentor 作为 top CS PhD(当年横扫四大的所有CS博士) 申请亲历者提供了不少科研、申请上实用的建议。
● 在大三申请 Oxford 交换项目时他们也全程帮助改了我的申请材料,最终也成功收获了交换的 offer。
● 很多申请的细节问题可以直接问培训老师,效率特别高。