hi@zxh
_

2023 Fall CS PhD 申请总结

Jun 19, 2023 · 16 min · experience

我本来不打算写申请总结,因为我在申请过程中几乎没有情绪波动,所以没有动笔的冲动。而且我觉得一些往届学生的申请总结已经把需要注意的事说得很清楚了:

但前两个星期我在一个分享会上讲了一下申请经验,那既然讲都已经讲了,不如直接拿讲的内容水一篇博客。并且我后来觉得,背景不对等的人之间的经验是不完全互通的,如果只看大佬们的经验,可能会被一些幸存者效应所误导,所以我这种热爱摸鱼的菜鸡的经验或许也有参考价值。

前置信息

一个全面的资源汇总:Grad School Resources(Kalpesh Krishna)

申请材料

  • 成绩单,如果已经毕业了还要毕业证学位证

  • TOEFL & GRE

    现在很多学校的 CS PhD 项目已经不要 GRE 成绩了,所以不考问题也不大。

    我的 TOEFL 成绩已经过期了,不过我有个美国 MS 学位所以大多数学校 TOEFL 可以 waive,但还是有少数学校 waive 不了,比如我挺想申的:

    • UIUC CS:美本都 waive 不了
    • NEU CS:英语国家本科学位可以 waive,硕士不行
    • UVA CS:同上
    • Rochester CS:要读三年及以上的英语国家学位可以 waive,我只有一年半

    不给 waive 的学校我都放弃了,打死不再考 TOEFL 了,太痛苦了

  • CV

  • Statement of Purpose(SoP):记得写上 Professor of Interest(PoI)

  • Personal History Statement (PHS):我申的学校里只有 NYU、UCLA、UCSC 要了这个,大概是写跟学术无关的能体现个人 diversity 的东西(我随便写的)

  • 至少三封推荐信

  • 个人主页(可选):建议搞一个,在 CV 和套磁邮件里写上,老师基本都是会看的。我的申请邮箱、简历上写的邮箱、主页上写的邮箱是三个不同的邮箱(…),而有一两个面试邀请是发到我主页上写的邮箱里的

重要性排序

一个公认的各项背景的重要性排序是:推荐信 » 论文 > GPA » TOEFL / GRE。

这个重要性排序跟申请 MS 是完全不一样的,我感觉申请 MS 的重要性排序是 GPA » TOEFL / GRE > 其他。

SoP 的重要性我不确定,感觉有的老师就没怎么看过这东西,但写还是得认真写。

大家都说 GPA 不重要,我觉得很有道理,但如果你的 GPA 难看成我这样,那多少还是会被在意的。

当然,PhD 申请也是有运气成分的。比如你申请的老师今年可能没经费或者快退休了所以不招生,有的老师可能会把招生计划写在个人主页上,如果老师没写,那就只能靠认识的人或者套磁尽量打听。

招生制度

不同学校(或者同一个学校不同项目)的招生制度是不一样的。这里根据民间经验把一些学校分成了强 committee 制和强 professor 制两类,可以参考,但不建议完全相信。强 committee 制的学校会有一个由一群老师组成的录取委员会,录取哪些人基本上是由委员会来决定。而在强 professor 制的学校,只要你的潜在导师想录你,学校就会给你发 offer。

论文

这一项没什么好说的,大家各凭本事吧。

尽早进实验室做项目,越早越好。如果暑假想出国暑研,那每年 2 月的时候就可以开始套磁联系老师了,不要太晚,越晚暑研坑位就越少。疫情之后很多老师已经接受远程合作了,所以就算没有条件出国或者没放假的时候也想跟国外的老师合作,也可以试着给老师发邮件联系一下。

选校

选校其实更多的是选导师,导师永远比学校更重要。不过在这个阶段,你大概率只能看到老师们的研究工作,他们的人品、性格、行事风格等你是很难了解到的。当然也可以靠你神通广大的人脉进行打听,如果在这个阶段你就听闻某老师恶名远播,那申请的时候就绕开这个人吧。

在导师的研究让你满意的情况下,我认为学校的专排比综排更重要(可以参考 csrankingsairankings 等),但也不要盲目看排名。学校所在地的环境、气候、生活方式等也是需要考虑的,虽然这点跟学术无关,但毕竟你要在那里待五年,自然要考虑自己能不能住得习惯。比如有的学校一年里有半年都在下雪(比如康奈尔大学和雪城大学),在这种冬天漫长而寒冷的地方待五年你能不能接受。

我把 csrankings 上美国前 40 名的学校的老师主页都看了一遍。去掉我不喜欢的、肯定看不上我的、主页上写了今年不招生的,就不剩多少老师了。再去掉主页上写了“不要来套磁”的老师,剩下的老师我都发了套磁邮件。最后我根据老师们的回复情况,以及观察他们的最新招进去的博士生的申请背景,确定了自己的定位和选校。从结果来看我定位定得还挺准的,彩票校全拒,其他学校大部分都有面试。

我的感受是,老师回复邮件的情况只能作为参考,有热情洋溢的回复了我的老师最后没给面试直接拒,也有没理我的老师最后给了面试,只有当场给面试算得上绝对的正面信号。

Twitter一亩三分地也可以关注一下,有的老师会在上面发招生信息。

套磁

套磁邮件可以参考这个来写,大致结构是:

  • 第一段:我是 XX 大学的 XX(『这里放你的个人主页链接』),我超厉害的(比如在哪些顶会顶刊上发过论文、跟哪些大佬合作过),我想问问你今年招不招博士生
  • 第二段:简要介绍自己的每个相关研究项目,不要写太多,每个项目一两句话就行
  • 第三段:你研究的是 XX 方向,我非常感兴趣,我想在你的指导下研究 XX 问题
  • 第四段:听我说谢谢你

附件是你的简历和成绩单。

套磁邮件写好后,改一改收件人姓名和研究方向就能发给不同的老师。如果你想在邮件发送框里直接进行这种修改,建议在修改完成之前不要填收件人邮箱,否则你手一抖点到了发送键,写着别的老师名字的邮件就发出去了,然后你会尴尬得一晚上睡不好,不要问我是怎么知道的。

推荐信

推荐信是人脉的体现。因此发挥推荐信最大价值的用法,是去申请跟你的推荐人互相认识的老师。至于怎么知道哪些老师跟推荐人互相认识,最好的办法当然是直接去问推荐人,也可以去翻他们的论文找共同作者,以及去他们读博和当博后时所在的组里找人。

推荐信可以分为:

  • 黑推:在推荐信里骂你
  • 平推:正面评价,但是套模板写的(比如:XXX 上过我的课,期末拿了 A,她课上还经常回答问题,非常优秀,建议你们把她录了),没有细节
  • 强推:正面评价,且有非常多的你们一起合作项目时的细节

黑推绝对不能要,平推对 PhD 申请来说没有意义,因此你需要尽量保证你有三封强推。

推荐人分为两种,一种会让你来代替他们给自己写推荐信(国内的老师大多数是这一种),这种情况是比较好办的,至少你总不会在自己的推荐信里骂自己。这是一个教老师写推荐信的建议:

可以参考一下,也可以利用一下 ChatGPT,我觉得它写得挺好的。

另一种会自己写推荐信(国外的老师大多数是这一种)。这里有一些找这种推荐人要推荐信时的 tips:

首先,在要推荐信时,要说明白你想要的是强推(strong letter of recommendation)。比如我在邮件里写的是:

Do you feel comfortable writing a strong letter of recommendation for me? I’m currently applying for around 10 PhD programs of which the earliest application deadline is 12.15.

这样的话,如果推荐人不愿意给强推,他们会直接告诉你,然后你就可以去找别人,这总比推荐人勉强答应,但背地里给了封平推甚至黑推要好。

如果推荐人答应了给你强推,你最好整理一个选校清单(带上每个学校的申请截止日期)发给他们,方便他们核对推荐信有没有传完。还可以把你在他们那里做项目时的高光时刻也发过去 —— 他们带的学生太多,可能已经忘了。

最后,尽量早点找推荐人要推荐信。每年申请季的时候,老师可能有几十上百封推荐信要写,和几百上千份调查问卷要填。同时,美国大多数 PhD 项目的申请截止日期在 12 月,正好撞上了秋季学期末老师事情最多的时候。所以如果你很晚才找老师要推荐信,他们可能会拒绝给你写,也可能会给把给你写推荐信这件事排在他们的时间表上的很后面。

CV

我觉得用 Word 或 LaTeX 写简历太麻烦了,所以写了一个用 Markdown 来写简历的网站 ohmycv.app,我申请时用的简历就是用这个网站写的(夹带私货了属于是)。没有推荐大家用的意思,毕竟它还在早期开发阶段,只有一个现成的模板,也有可能会出现一些我还没发现的影响使用的问题。但如果真的有人用了,欢迎来找我提意见,不过我不一定会马上改

这里有一些写简历的 tips:eecsresume,虽然是针对开发岗的教程,但我觉得还是很有参考价值的。

SoP

这里收录了一些往届 PhD 申请者的 SoP:CS PhD Statements of Purpose,把它们作为训练数据喂给自己吧,稍微 overfit 一下应该也没关系(不是

SoP 不要写成堆叠研究经历的流水账,它应该是一条“我在某个研究方向上做了足够的积累和思考之后终于决定申请 PhD”的故事线。我的 SoP 的结构是:

  • 第一段写我想做什么样的研究
  • 然后写我的过往研究经历怎么把我导向了这个研究方向,又是怎么让我具备了做这样的研究的能力。写过往研究经历的时候按写论文的方式来写:现有工作有什么问题,我们的创新点是什么,效果怎么样。我把几段研究经历串成了一个故事,中间穿插了一些我对整个领域的想法和理解。
  • 最后一段写 why school,也就是夸一下这个学校,并列了一下我的 PoI

写完以后多改几遍逻辑,然后润色。逻辑可以找同一个专业的老师同学前辈来帮你改,润色可以靠 ChatGPT 和学校的文书中心(如果有的话) 。听说 fiverr 上也找得到专业对口的人改文书,但我没试过。

注意一下不同学校对 SoP 的要求。大多数学校没有格式和字数要求,只是要求两页以内。但有的学校要求了行距(如 NYU),有的学校限制了字数以内(如 UCLA)。

面试

一亩三分地上可以搜到往届面经。

从我的面试情况来看,面试氛围都比较轻松(甚至见了几个穿着睡衣来面试的老师),回答不上来问题老师还会帮我圆场(…),所以大家不要紧张。大部分时候是在聊之前做过的项目,然后老师提问,所以建议提前准备一份 slide,但也要做好在没有 slide 的情况下把项目讲清楚的准备,因为有的老师一副不打算让你放 slide 的样子。有的老师会带博士生来面试,我感觉博士生更容易从细节上找出我的项目的破绽(…)。极个别老师问了我机器学习基础,就像算法岗面试一样,但比算法岗面试简单,可因为我毫无准备,很简单的问题我硬是脑子一晕卡了很久都没卡出来。

中国老师有可能用中文面试,也有可能用英文面试,也有可能用英文聊研究用中文闲聊。但除非他们主动要求说中文,否则绝对不要直接开口说中文,所有的面试都应该默认按英文来准备。

我遇到过的最有意思的问题:“你希望几年毕业?”,我:“这是我可以决定的吗?”。

被问过为什么大一大二的专业课 GPA 那么低,还挂过概率论。这问题让我猝不及防了一下,因为大家都说 GPA 没人看的。但事实证明如果 GPA 太低了,那多少还是还会被在意的。老师当场解释了为什么要问这个问题:

  1. 专业课 GPA 太低可能说明基础没打好。比如挂概率论会显得我数学不行,这对 AI 方向的博士生来说挺致命的。并且博士生会有一个 qualification exam,就考操作系统数据结构之类的,考过了才能毕业,所以本科专业课成绩不行会让老师担心把我招进去之后我通不过这个考试。
  2. 某段时间的 GPA 低可能说明当时状态低迷,那老师会担心这种低迷的状态在我读博之后重演。

所以如果你也不幸的被问了这种问题,那在回答的时候需要尽量去解决这两个顾虑。

选导师

导师相当于你的老板,给你发工资、对你有很大的影响、并且你跳槽还很麻烦(要么在系内找到合适且愿意收你的新导师,要么重新申请别的学校),所以选导师是个需要非常慎重的事。

一般面试结束后老师都会问你有什么要问的,这是一个值得问的问题列表:The Definitive ‘what do I ask/look for’ in a PhD Advisor Guide,我问过的问题有:

  • 学生的研究方向和项目是你指定还是可以自己提(确认自己读博期间的研究自由度)
  • 你的教学风格更偏向于 hands-on 还是 hands-off
  • 每周有一次组会和一次一对一吗(别进组之后完全没人管)
  • 支持学生出去实习吗(这个问题可能还可以问出老师在工业界的人脉)
  • 对学生的期望是每年投几篇论文(研究压力有多大)
  • 对学生的期望是几年内毕业(你带的学生一般能不能按时毕业)
  • funding 够吗(别让我自费)
  • 计算资源够吗
  • 跟其他组的合作多吗,组内学生的合作多吗

拿了 offer 以后还可以继续跟老师聊你在意的细节,该问的都问清楚了再做决定。我的观点是,导师人好比能力强更重要,你的身心健康比研究成果更重要,你和导师的个性相符比研究兴趣相符更重要(你们的研究兴趣都是可能变化的,但个性合不来那就是合不来)。

其他

一亩三分地GradCafe 上都会有人分享录取情况,可以关注一下,看看哪些学校开始面试了,哪些学校开始发 offer 了。但没必要一天到晚盯着这俩网站看,除了增加焦虑以外没别的意义。

如果你不幸全聚德了,那么这里有一些在你考虑补救方案时可以参考的事:

  • 套磁强 professor 制学校的老师。如果他们今年没招满人且喜欢你,就算过了申请截止时间他们也可以直接把你的申请从后台加进申请系统里,这样你说不定还能赶上当年秋季入学。
  • 申请香港、欧洲等地区的一些学校的当年秋季入学的 PhD 可能还来得及。
Edit this page on GitHub Last updated: 3/25/2024, 4:12:13 AM