|
本帖最后由 RowitZou 于 2017-7-11 15:52 编辑
楼主本科是中国科学技术大学,在计算机学院排名前20%,六级500,无竞赛无论文,只有一段在实验室的研究经历。目前参加了fdu的计算机学院夏令营,拿到了学硕offer。现在和大家分享一下整个夏令营过程的心得体会。
-------------------------------------------------------------------------------------------------------------------
没想到帖子加精了,我再补充一些机试和面试的细节。
-------------------------------------------------------------------------------------------------------------------
7.4 Day 1
一大早就醒了,透过酒店的窗能看到复旦张江校区西门(夏令营5天食宿报销,几十个学生住锦江之星,复旦还是有钱啊。隔壁上交夏令营食宿自理)。来之前我没有做什么准备,还有些迷之自信。其实进了夏令营之后,不管从什么学校来,大家都是在同一起点公平竞争。
复旦张江校区并没有想象的大。整个校区就只有计算机学院、软件学院和微电子学院,以及药学院(总觉得有些格格不入)。路上都是穿着营服的学生,匆匆而过。我注意到接近一半的都是女生,计算机专业男女比大家都清楚,可见复旦为了调整男女平衡不择手段,拒绝了多少男生的申请(以后学妹多报复旦吧,录取率高哦)。
进教室排队签到,之后就出去集合拍照了,女生占一排多,男生两排多。复旦计院院长王晓阳坐中间,左右都是院里领导,还有两个美女教秘。老师们很友好很耐心。整个上午下午,包括未来的一天,都是各个实验室的带头老师做宣讲。关于这一点,我感觉复旦充满了一种人文关怀,起码能让学生充分了解实验室的情况,让学生有充分的时间做出决定他未来三至五年的选择(有些学校的夏令营活动只有机试、面试,诸如清华)。
因为之前联系过导师,这一天下午我就去与她见面。没错,是一个女导师,黄萱菁。黄的团队是做nlp的,最近几年势头很猛,在ACL、IJCAI顶会上发过数十篇论文。人均论文数超过哈工大等老牌nlp组。而且据说黄对待学生非常好,十分关心学生,研三会让学生自由发展。此次复旦行,这也是我唯一的目标。
进门就见到黄老师了,同时也惊讶地发现已经有几个学生在她办公室了(果然十分抢手,竞争压力很大啊)。坐在旁边的还有张奇老师和邱锡鹏老师(邱是开源项目FNLP的主负责人,是我4月份就尝试套的老师,不过他一直没有回复我。之前也看过不少经验帖,介绍怎么套磁。不过我认为,老师在不确定一个学生是否能进夏令营之前,根本没有必要、没有可能做出任何承诺,所以在入营前套磁没有什么实质作用,当然某些大牛除外)。
上来就是自我介绍了呗。一共有6个人,我第一个介绍。我的策略是针对老师在宣讲时候的招生要求逐点陈述(宣讲会一定要好好听,做笔记),说清自己的优势,感觉黄老师对我挺满意的。接下来,其他人也介绍了自己。有两个华师大、一个山东大学、一个厦大、一个成电,有人拿过ACM省赛银牌,有人拿过国奖,有人项目经历丰富,听上去都是势在必得。
接下来,三个老师想和我们一个个聊,我又是第一个。关上门后,我以为老师会问我项目经历、读研打算什么的,结果张奇老师直接抛出一个问题:听说你用SVM做过文本主题分类,那你详细说一下它的原理。说完给了我一张纸。
纳尼?上来就要面试?我之前一直以为是简单聊聊,于是没有做什么准备,整个人直接懵了。我尝试简单说一下SVM原理,结果张奇老师立刻打断我:我想要你写出来。我大脑一片空白,最后只能说不会。之后,张奇老师又问了好多问题:C++的new和malloc有什么区别,堆和栈有什么区别,什么是随机变量,如何从无序数组中找中位数并说出时间复杂度,如何反转一个单链表,如何用HMM做分词......
我因为一开始有些不知所措,后面几道题虽然简单但我也没答好。结束之后,我以为药丸,结果张奇老师突然露出笑容:这次压力面只是简单测试你一下,你要做好正式面试的准备。我将信将疑点了点头(这不就是说明我现在还没准备好,欢声笑语打出GG)。
回去以后,我状态不太好,思前想后,还是发了短信跟老师做了解释。黄老师回了信:你们几个我们组都想要,争取机试面试好好发挥。哎,nlp组的一个下马威确实让我感受到了夏令营的不容易。总之,只能在6号的机试和面试中好好发挥才能证明自己了。
7.5 Day 2
第一天面试出师不利,晚上辗转难眠,今天5点多钟就醒了(导致我夏令营回来之后也是5、6点醒)。但是我惊讶地发现室友已经起来刷九度OJ了,愈是临近考试愈是效率高啊。
今天是软件学院的宣讲,我没有仔细听。趁着有时间,我把周志华的《机器学习》复习了一下,几个简单模型的推导又过了一遍,脑中穷举了一下面试可能问到的问题。机试的话随缘吧,没参加过ACM,刷一两天题是不可能有大突破的,只能把C++常用stl模版和函数过了一遍。
听说这次计算机学院夏令营58人,招30个直硕(15个学硕、15个专硕,名额比往年多了不少,去年总共是14个)。相反,直博生招得很少,只有几个,不像清北和上交大量招直博生。想要拿到学硕名额,基本上要挤到前15名。
接下来,就要战斗了。
7.6 Day 3
上午机试,下午英语面试和专业面试。
按往年学长学姐的经验,机试非常重要,得机试者得天下。机试成绩会计入总评,而且面试时老师会看到你的机试成绩,所以一个好的成绩会给面试老师留下好印象。
一大早就去机房等了。复旦机房是崭新的阶梯教室,总共有80多个机位。机子估计也是全新的,标配三系统,win7、win10和ubuntu,具体配置没注意看,因为忙着测试环境了。复旦给的上机环境很舒适,vs2010、codeblocks、eclipse、intellij随便选(第一次遇到可以用Java的研究生机试,某些学校只能用DevC++、VC6.0,连C++11特性也不支持,不过还是建议不要用Java)。
机试3道大题,后两题各有两小问,数据规模不一样,第一题20分,第二和第三题的每个小问20分,总共100分。两小时,OJ形式,无测试点得分(一道题要么AC,要么0分,真残酷。据说往年复旦本校生参加夏令营还有6个机试0分的)。每道题每小问后面会给数据规模,一般来说,数据规模不会太大,第一小问不用最优解也可以AC。
第一题,简单dp,不过理解题意很难,给了一个长达两行的权值公式,要求一个数组中的最大权值。
第二题,求图中s节点到e节点所有可能路径中最大边权与最小边权的差值的最小值。第一小问只有10个节点,可以用回溯穷举法。
第三题,给定一个01矩阵,和k个矩形(大小任意),标为1的位置需要被矩形覆盖。求用到矩形数目不大于k,且满足覆盖条件的被覆盖单元数目的最小值。第一小问中,输入的矩阵确保只有一行。
第一题很快就AC了。第二题调了我好久,最后发现它竟然节点之间不止一条边,而我是用邻接矩阵表示的,时间紧迫,我就把邻接矩阵改成3维了。在最后10分钟提交才AC,真是有惊无险。
机试结果出来,才发现原来还有罚时(没进行过类似比赛真是吃了亏)。我做出两道题(第一大题和第二大题第一问),不过因为罚时扣了太多分排在16名(不过机试的排名似乎没用,还是看做对的题数,因为我瞥见老师的面试名单上只记录了做对的题数,基本上5道AC两道就稳了)。16年的机试三大题,各有三小问,共9道题,据说有学长只AC了两题,最后还是拿到了offer。所以机试真的不是很难,要乐观面对。接下来就是面试了,继续加油吧。
下午英语面试我又是第一个(汗,每次首当其冲,这样就没有人给我透露面试细节)。只能硬着头皮上,其他同学还有时间做些准备,我基本就是临场发挥了。
不过英语面试很简单,面试老师非常和蔼可亲,我先自我介绍,接着与老师稍微聊了几句。专业问题就一个:Describe a sorting algorithm that you are familiar with. 我就讲了一下快排,讲完了就可以走了。
专业面试才是重头戏。
一共六个老师围着,主面是周水庚,复旦计院一把手。老师都在翻我的简历和成绩单。整个气氛就是严肃安静的。
自我介绍。之前准备了很久,这次信手拈来,关键是强调自己的兴趣和优势。
觉得自己哪门课学得好?这是个需要认真思考的问题,因为一旦说了一门课,老师就会顺着课程内容问下去。我就说了一下我重点复习的AI。
果然,之后的问题基本就和AI有关了。模拟退火算法的原理是什么?SVM和其他分类器的异同点?一阶逻辑和命题逻辑有何不同?k-means有哪些优化思想?深度学习了解多少?这些问题我都认真准备过,都答得不错,我还将模拟退火和爬山、遗传算法进行了比较,将SVM和贝叶斯做了比较,并说了一下自己的心得体会。老师们都觉得有些惊讶,周水庚还咕哝着:科大的就是不一样啊(没给科大丢脸2333)。唯一一个我没答出来的问题是:模拟退火的论文是什么时候发表的?(我感觉这是刻意刁难我,不过周水庚给我撑了场面:你不能为难一个本科生啊。我受宠若惊)。
自我感觉机试怎么样?此时一定要谦虚一些,即使自我感觉良好,也不能太过分。我明确说了自己没参加过ACM,此次属于正常发挥,还需努力。
之后又聊了一下我在科大“佳佳”组做的工作。这种关于科研和项目的问题一定要实事求是,自己做了什么就说什么,千万不要信口开河,因为老师很喜欢问细节。当然,面试前必须要把简历上的东西过一遍,才能处变不惊。
之后,一个老师问我:你为什么不留在科大读研呢?这是一个非常刁钻的问题,千万不能说是为了来上海,我就赞了一下复旦和nlp组,说了一下强烈的研究意向。
之后就是闲聊,开始与我谈推免的事了。
面试总共20多分钟,结束之后整个人都累趴了。晚上回去等结果。
总之,机试不是很难,平时多刷刷leetcode、九度OJ、北大百练就行了,如果参加过ACM基本没问题。复旦的英语面试就是划水。专业面试主要的目的是选拔一个正常人(一个宣讲老师说的,千万不要因为紧张一句话都说不出,这种学生百分百刷掉。往年有个考研第一名的学生,因为面试太紧张被刷)。不会的问题就说不会,老师不会刻意刁难。当然如果老师觉得你很不错,会进行一些试探(比如问我论文哪一年发表),问的难度会大一些,此时应该觉得高兴才对。
最后,功夫不负有心人,我拿到了黄萱菁的口头offer,7月10号收到了学硕的录取通知。张奇老师已经给我布置暑假的任务了TAT。估计毕业设计也会在上海做。
不过,这也只是刚刚开始,一切还要归功于科大残酷的数理基础磨炼(数学一定要好好学,大一大二都没有意识到)。今后读研还会遇到更多挑战,fighting!
|
|