PhD Grind的原文地址

Philip Guo写的这个回忆录我觉得对有志于读博的同学非常有用,他记录了自己博士六年每年的经历,然后又给出自己的思考,让人了解一个计算机科学博士生的日常。

首先,Philip的本科和研究生都就读于MIT,然后拿了NDSEG和NSF的奖学金去Stanford读的博士。这个背景是非常强的,用Philip的话说是he paid his dues,因为前期有良好的基础(名校本科,奖学金),他才有自由能不做导师最感兴趣的课题,因为他没有从导师的项目里拿钱,但即使是这样强的背景他的科研之路也不是一帆风顺的。

他在斯坦福的导师是著名漏洞分析软件Klee的作者Dawson,他博士前三年大部分时间也都贡献在Klee这个工具上,但是因为他的导师和师兄Cristi非常的厉害已经将Klee做到一个很高的水平,在这个基础上再改进非常的困难了。具体有多困难呢?一直卡在这上面的除了大师兄Cristi以外的两个博士,一个九年没论文只能drop out(退学),另一个也是九年勉强发了一篇论文毕业。看到这个情况我觉得这裡两个老博都很可怜,因为能录取到斯坦福的话肯定已经是高水平的学生了,但是因为这个方向这个topics已经非常完善的了,所以他们之后的工作也只能是修修补补的增强/增加一些功能。博士最后也只有pity-graduate,未来申请教职的话已经不太有希望了。对于老板来说因为Dawson已经有终身教职的保证了,所以即使他的尝试有失败的,他也是能接受的,但对学生来说,这种尝试可能就是博士生涯(lifecycle)的全部了。所以除非自己有足够的经济来源,否则还是不要直接尝试特别困难的项目。不过因为我还没有申请PhD的经历,所以现在也只是空谈。

Philip科研事业的转折是在微软研究院实习的时候,他遇到了一些其他学校的很棒的研究员,并且因为微软有用户实际的数据所以有一些数据壁垒,这对发表top-tier的会议还是很有帮助的,因为数据是真实的,有说服力,而且因为在微软工作才有,所以其他人就在这点上没法与之竞争。这点我深有体会,在浙大这边老师也很注重和企业的合作,一是希望能获得独家的数据,二是为学生就业铺路。不过,国内高校还有一点好处(也可能是我正好遇到的)是购买一些敏感的设备会比企业容易。

读完Philip的Grind,我再想想我之前一年在南洋理工和浙大的科研经历,觉得有些自惭形秽,感觉跟导师的沟通效率比较低下,自己做的也不多,主要还是读论文和调超参。总结下我能想起来的具体问题和可能的解决方法:

  1. meeting的时候经常没什么主题:刚开始去的时候也不知道做啥,导师有一些想法,比如贝叶斯问题下的一些证明,但感觉跟我自己的不太符合。然后感觉很多时候都是尬聊。不过后来导师在微信群里统一说了一次我觉得很有道理的话,就是meeting的时候我们应该讨论这周/下周要做什么,而不是上周的总结,上周的总结应该在之前就发给导师。
  2. 没什么记录:我觉得我之前很大的一个问题:重复实现,因为我做过某个实验后没有记录,导致了我之后可能还会使用同样的方法再测试,这样的效率就很低下,经常在同一个地方犯错。到后来,感谢队友mengyao,她会把她试过的参数记下来,一个是方便报告,一个是不做重复工作,自己很清楚做过哪些事情,很快我也学会了这个方法。

我在浙大的控制学院访问,比较senior的博士生还是做传统的控制原理的,很多都不涉及机器学习等比较“前沿”的技术,我一开始有些看不上,觉得不cool,但是现在感觉senior的博士生还是很厉害的,他们虽然课题跟我不太接近,但是他们已经经过了grind,对自己的领域非常了解,经常会给我很多insight,比如有哪些有意思的题目可以进行研究的。

之前跟baohua老师也谈过,他说有两种phd,一种专注于算法的改进,一种专注于架构的设计,然后我感觉我是希望做第二种system的,因为我觉得架构的改进的影响力会更大,而且更有挑战。不过我现在感觉前期的话还是start simple,从简单的入手,先解决一下小问题,等到博士中后期(如果我读的话)再 tackle on hard problems such as system design.