Re:从零开始的研究生生活
奥运会结束了,新的学期也开始了。
不知不觉地,一年过去。一直想找个时间对研一做个总结,但就是拖延不想动笔。仿佛也没什么可说的。但是我一直奉行这样的「理念」——经历过的事情总该多少记录点什么,或用以回顾反思;或用来备忘;或构建知识缓存,好在下次需要的时候快速搜索;亦或,仅仅是因为习惯而记录,哪怕以后再也不看。正如旅行时要拍照,看完电影写篇影评,读完一本书写读后感一样,而且要及时,最好把当时的感受记录下来。不然总觉得缺少点什么,太匆匆。
所以,本文,是为研一学年的小结。
前奏
研一一年,白驹过隙。仿佛有种感觉:随着年岁的增长,时间也过得越快。再次迈入大学校园,心态和第一次时已有所不同。大学里的事物带给我的新鲜感和大一时早已无法相提并论。更准确地说,是关注点的转移。再也没有欲望去尝试耳闻目睹的所有东西,更多地,是在自己所关注的事情上投入精力。我不知道客观上而言这是好是坏。主观来说,好处是多于坏处的,因为在我的意识里,少了许多迷茫和不确定性,大方向也不像曾经那么模糊,渐渐清晰起来。
一直认为,研究生时代不应再如同本科时代那样度过,否则就和读7年大学没什么两样了。在那种意义上,「读研」,不过是另一种逃避的借口,是为步入社会的时刻新建一个推迟的Deadline。而我也觉得那时的自己所做出的选择,多少带着这么点味道。不过好在,虽然偶尔会吐吐槽,对这个选择,自己始终是坚定的。利威尔兵长的那句话永远是那么掷地有声:「不管做了多么明智合理的选择,在结果出来之前,谁都无法知道它的对错。而到头来,我们被允许做的,就是坚信那个选择,尽量不留下后悔而已」。
主旋律
研一的主旋律就是上课,和本科时差不了多少。有喜欢的课,有不怎么喜欢的课;有认真听了的,也有整个学期就上了几节课的。一个体会是,在研究生的教学上,大体来讲,授课不如本科时候细致,不少课程的讲授潦草枯燥。姑且认为是老师们默认研究生都有了良好的基础和自学能力,倘若从这个角度来说,也尚属合理现象。当然,也有少数老师讲课是非常认真的,无论是备课还是幻灯片的制作还是讲解都能感受出来——他们当属教育界的脊梁。另外就是,某些课,是对青春的浪费、对心灵的戕害。
在这里,特别提一下给自己印象比较深的课吧。毕竟如果不能对自己所学讲出一二,那也和白学没什么两样。
其一,《算法设计与分析》。这是计算机科学专业课的重中之重。本科学,研究生还要往深了学,其地位差不多如同通信专业的《信号与系统》。它并不是一门容易的课,好在,也不枯燥。这门课是上座率最高的课,几乎堂堂座无虚席。算法的有用已无需再强调,从那么多IT企业投入重金组织各类算法竞赛就可见一斑;对个人来说,哪怕仅仅是学习算法的过程,就足够享受:构思并付诸实践,推敲与不断优化;有时候冥思苦想一两天,最后发现解法如此简洁优美,不禁叹服。一台Laptop就带来所有创造的快乐。
其二,《机器学习》。个人觉得,我们通常所谓的「机器学习」,其实和人工智能关系不大,而是计算机科学、统计学和数学的交叉学科。或者说它是人工智能的一个很小的子集更准确些。通过对数据特征的挖掘,用统计和数学优化的方法建模,并用模型对数据所描绘的对象进行分类,或者对事物的发展趋势进行预测,这就是我眼中的机器学习。随着云计算和大数据的发展,无论在学术界还是工业界,机器学习都是宠儿。感觉好像现在全民都在搞机器学习——互联网上充斥着机器学习的教程;各种机器学习讲座开得如火如荼;谁都能写一本机器学习的书(嗯,然后加上「从入门到精通」的小标题:P);路边「专业贴膜」的小摊旁,摆的是「专业深度学习调试,SVM核函数3元一个」的广告牌……虽然《机器学习》只是我的一门选修课,自己也不是这个方向,但是都能感觉出这种浮躁,而南京大学周志华老师的一席话也一针见血:「深度学习现在差不多就是民工活。调来调去,刷来刷去,文章发得飞快,貌似热闹,但有多少是能积淀下来的实质真进展,又有多少是换个数据就不靠谱了的蒙事撞大运?既缺乏清澈干净的内在美感,再不致力于去伪存真正本清源,只图热闹好看,迟早把arXiv变成废纸堆」。什么热门就追什么,当年SDN(软件定义网络)刚被提出来时好像也是这般场景,谁都能插上一脚。不过,时间是个很好的过滤器,浮躁的人终将被滤去。
其三,《组合最优化》。这是数学学院的一门课。当然在选它之前,我没有对听课的难度进行评估,或者说,我有一种盲目的自信,觉得它不难。然而开始上课以后,我就被狠狠地打了脸——加上我只有四名学生选了这门课,其他三名都是数院的(数院的研究生少,所以这么少的人数也允许开课)。老师在第一堂课就认识了我们,可以清晰地喊出每一个学生的名字。上一次完整地听数学课应该还是大一的时候,所以好久没有听过数学课的我,花了非常大的力气去适应。而直到学期结束,我也不曾完全听懂过。但是很感谢我的任课老师关秀翠女士,她考虑到我是计算机学院的学生,而把考试形式由卷面改为了Project编程,这让我亲身体会到了什么是「因材施教」。整个听课的过程也慢慢改变了我之前对数学的许多认识。有用的数学是什么?数学的用途在哪里?也许不少人的一个观点是:数学的作用在于训练人的思维方式。诚然,这是一大「用途」,也是普及数学的目的之一。但是这种观点却也成为了一些人找不到更好回答时的挡箭牌。所以现在我为他们提供一个较好的参考答案:组合优化就是数学直接在现实世界中发挥作用的一个场景。它直接导致了运筹学的诞生;其中最简单、也是理论最成熟的模型——线性规划,被广泛地应用于人们的生产活动,解决了大量的实际问题,并节省了巨大的资源开销。所以我建议你可以不懂优化理论,但是应该懂一点优化建模的方法(至少是线性规划),并会使用至少一种优化工具箱来求解模型。正如一个女孩不需要懂图像处理算法和滤镜的工作原理,但最好会熟练使用一款图像处理软件并对拍摄角度有所掌控一样:)
上面提到了三门课,但是并不是说只有这三门课给我留下了深刻的印象。在做《数字图像处理》大作业的过程中,我学会了编写高级图像处理算法对未经任何处理的医学X-光片进行图像增强;《思维导图》的课堂上(数院老师开的课,我去旁听了)我们做游戏,进行有趣的思维活动,并动手画出一张张色彩斑斓的结构图,又勾起了儿时用彩笔天马行空般画画的回忆……
比赛
研一的第二学期特别的短,好像参加了一个历时三个月的比赛,然后学期就结束了。这个比赛就是「2016华为软件精英挑战赛」。那段在论坛和QQ群里和众多参赛伙伴讨论问题,和队友调代码调到深夜,看自己队的名字在排行榜上沉浮,赛区四强队伍一起集训、晚餐后绕着南研所的天鹅湖散步的日子,现在想来,让人感到平静而幸福。
后来还参加了阿里音乐(也就是之前的虾米音乐)主办的「流行音乐趋势预测大赛」。我们是把它当作《机器学习》的大作业来做的。正愁大作业做什么呢,正好发现了这么个比赛,数据也不用找了:P 不过在这个比赛上就没怎么投入了,集中花在上面的时间大概也就在比赛结束前最后几天。虽然课程报告选题是有着落了,但是还是想着最好能进入全国500强,至少还可以继续玩数据嘛(参赛队一共5000+支,前500名可以进入第二赛季)。我们之前建立的数据模型并不好,名次一直在500开外,初赛结束前的最后一天,我决定赌一把,换个模型,看能否悬崖勒马。
征得队友的同意后,我赶紧开始将自己的想法付诸实践。把最终结果提交到比赛官网后,已经凌晨1点多,而第二天,我们还有英语期末考试。第二天的考试结束后,我用手机查了成绩:名次前进了近300名……只记得那天阳光明媚,走过身边的女孩们一个个都格外漂亮。
助教
研一第二学期做了本科生《算法设计基础》的助教,旁听了所有的课,对算法设计又有了新的认识。那群大二的孩子,学得很认真,在课堂上非常活跃,聪明、而且可爱。我除了会给同学们答疑,也负责为他们设计作业并批改。作业全部在印象笔记的一个公共账户里布置,每个小组建一个笔记本上传作业,所有组都可以查看其他组的作业。即便如此,我也从没看到过雷同的代码,他们都是独立编写程序,而且经常有让我眼前一亮的解法。他们善用工具,心灵手巧,比如,有些同学用Markdown对自己的作业进行排版,无论是文字还是代码阅读起来都赏心悦目;有些同学已经开始使用GitHub(一种分布式版本控制系统)来对程序进行管理,让一切都有条不紊。后生可畏。相比之下,我大二的时候在干什么呢?那时我连GitHub是什么都不知道。我担任助教的同时,也从这群孩子身上学到了不少东西。在我的助教工作结束后,一位学妹给我发了一封邮件:
这对我而言真是莫大的欣慰。付出,然后被认可,是一种很美妙的感觉。
科研
然后就是「科研」方面了。坦率地说,自己并没有做到all in,多数时候都是导师主动找我,了解我的研究进展。所以用「不务正业」来形容自己一点都不为过。不过这一年的接触,我对真正的科研也有了更多的认识。我的导师吴老师是一名年轻有为的计算机科学家。如何阅读文献、如何发现问题、如何思考问题、以及如何做出一篇世界顶级的Paper……吴老师用自己的学者日常向我们不断地诠释着这些最常被提及的问题。如果说我从吴老师身上看到的最闪光的品质,那一定他发自内心的对科研的兴趣。我认为这是一个优秀的科学工作者所不可缺少的品质,也是最强大的动力所在。
当前,自己的一项研究课题也正在进行中,理论和实验都有了初步的结果。我开始用英文论文的形式把它呈现出来,想必这将是一个困难的过程,但是自己做好了心理准备。同时,也在导师的指导下挖掘新的研究课题,虽然进展缓慢。要说自己在科研上面,倒没有什么雄心勃勃的计划,研究生期间,倘若能发表一篇较高水平的论文,也就心满意足了。
在这一年里,我也常常考虑要不要将来走学术道路。有时候会觉得,进入学术界也挺好的,自己选择感兴趣的研究课题,带着一群朝气蓬勃的年轻学生,有充足的自由时间,人际关系也相对单纯。身边的朋友和我聊天时,也说过我挺适合搞学术。但是,也不止一次地,我已忘了那是什么样的思绪,自己告诉自己:你并不适合做学术。我喜欢把进入工业界和学术界看作是两种生活方式。不同的人依据不同的理由选择不同的生活方式,有人喜欢稳定,有人敢于冒险,有人擅长独自一人的体系,有人不能没有团队的怀抱。而我更想循着能够让个人价值最大化的方向前进,那才是我所理解的幸福。无论别人的评价如何,自己对自己的认识加上内心真正的期望才应该是做选择的最终衡量标准。我曾计划用研一一年的时间来考察自己适不适合读博,现在一年过去了,我也有了初步的答案。
对了,最近正在阅读Philip J. Guo写的《The Ph.D. Grind》,一个本科MIT研究生Stanford的华裔学生写的博士回忆录,我喜欢把它称为《博士磨砺》。在作者的个人主页上即可下载到电子版,推荐给大家(豆瓣评分9.1)。要提醒的是:这不是一本励志书。
尾声
到这里,我的小结也写得差不多了。总的来说,研一的生活精彩纷呈多于平淡无奇。我最大的感觉还是自己在不断成长,心智也在渐渐改变。同时也觉得自己还太弱小,做得不够的地方太多太多,有待提升的地方,也太多太多。
所以,再次从零开始。