在美国读研究生已经有段时间了,
UMichigan的ECE项目一直以来都是同学们申请的热门,今天我也和大家分享一下我在这个项目中的就读体验,希望可以帮助你更好的做出选择,已经给想要申请这个项目的同学提供一定的参考方向。
项目简介
UMich的EECS是在一个学院之下,然后分为ECE以及CSE,其中ECE项目分为EE和EES两个方向,很多同学在申请的时候都会傻傻分不清楚,接下来我就为同学们简单介绍一下。
EE的主要内容是vsli、optics、solid state等等知识,在我看来主要是电路芯片层面的知识。EES的内容则主要都是系统层面的,诸如communication、control system、power/energy等等。这两个方向还是有比较大的差别的,所以同学们在进行申请之前,一定要对自己未来的发展方向进行规划。
具体来说ECE项目下有16个track,各个track之间的课程是可以互选的,自由度是很高的。同学们在入学之后想要转track也是可以的,除了CSE不可以转之外其余的track想要进去十分的简单,但是因为同学们无论在哪个track,最后的选课情况都是差不多的,所以在我看来转track并没有什么必要,我身边也基本没有人会转。
项目录取
说完了项目的情况,接下来我和同学们介绍一下大家最感兴趣的项目录取情况,首先ECE项目每年招生的人数在150-160人左右,人数还是比较多的。ECE Orientation上说总共的申请人数是2000多人,所以录取率并不是很高。而根据我的观察,我觉得不同的track应该是分开招生的,所以各个track的规模以及同学构成是不同的。
Communication、cv以及signal三个专业的规模都比较大,人数多,而且里面中国同学的数量是比较大的。我申请的embedded方向人数就很少,只有十几个人,中国同学只有3个人,倒是印度的同学比较多,足足有8个人。所以很难说清ECE整体的录取情况,大家在申请之前最好了解一下各个track的录取情况与特点。
说到项目的录取,我觉得UMich在录取的时候很看重申请同学背景的多样性,因此各类背景的同学都可以尝试申请一下,其对于硬性成绩的要求也并不是太高,而且就算同学们的硬性成绩存在一定的短板,只要大家其他方面有比较突出的地方,在留学申请中同样是有竞争力的。
还有一点就是UMich是可以申请PhD然后降MS录取的,所以如果同学们想要读PhD的话直接申请就可以了。如果同学们先申请MS,来到这边之后再想要转为PhD名额并不是很多,所以大家一定要提早做好规划,决定自己是不是要读PhD,这样也可以避免那些不必要的麻烦。
项目选课
UMich在前几年申请十分的火爆,因为这个学校的项目对于转码的同学可以说是十分的友好,在那个时候ECE项目的同学选择CS本科课程的自由度甚至优于CSE项目的同学。但是现在CS那些热门的本科课程在选课的时候多了很多的限制,现在也有一种说法就是来到了UMich之后只能学习数学、硬件、半导体这些课程,对于想要转码的同学来说是很不友好的。
事实上UMich所谓选课的限制主要就是ECE项目的同学想要选择400level的热门课程是需要填表排队的,而那些特别热门的课是不能选择的。不过500level那些研究生的课程选择是没有什么限制的,不过那些课程的内容比较偏理论,学习起来难度很大,而且对于就业的帮助并不是很大。
接下来说一下选课的过程,在选课之初,项目会先根据我们的track给我们发一个核心课程的列表,不过并不需要学习里面的所有课程,我们只要从里面选三门左右的课程就可以满足毕业的要求了。这就意味着我们在项目的核心课程之外,还可以选7门左右的课,除了我前面说的那些有限制的CS热门本科课程,项目的选课还是很自由的,除了转码限制比较大,对于其他的同学来说这样的选课还是很友好的。在选课的时候如果我们遇到了一些课程比较抢手,我们第一节课可以去联系教授,教授和学校的工作人员都是很nice的,有些时候教授也是会联系学校换大教室,所以选到自己心仪的课程还是比较容易的。
如果同学们选择ECE项目是想要在未来做AI、CV、Machine learning、Deep learning这些方向,那么这个项目和适合大家去选择,因为在这里这些课应有尽有,大家平时都是可以选上的。而且在EECS中有很多的大牛老师,像我上这些课的时候老师都是斯坦福、伯克利毕业的,他们的实力都很强,在上课的时候也会有很多的收获。
课程推荐
在这里我为大家推荐一些大家反响比较好的课程,首先是EECE413,这门课是纯ananlog的课程,教材用的是拉扎维的书,为我们上课的是德高望重的afshari,他讲课讲的非常的好,内容很充实,平时学习的工作量也不是很大,只是最后的考试会比较难,不过老师人很好,给分还可以,所以大家都可以尝试一下这门课。
接下来是EECS427 VLSI这门课,这门课的教授是Dennis,同样是一位德高望重的业界大牛,这门课的工作量很大,不过学习的知识也的确是很多的。同学们在选这门课之前一定要做好心理准备,因为学习这门课通宵会是常事。
EECS470 computer architecture这门课也是很好,这门课的教授是Ron,同样非常有实力。这门课的内容也是很硬核的,工作量也很大,不过它和我刚刚说到的427是有一定区别的,这个课程一开始的工作量并不是很大,但是在后半学区会有一个final project,内容是设计一个乱序超标量处理器,那之后这门课的工作量将会迎来爆炸性的增长,所以这门课学习起来也是很辛苦的。
EECS570 parallel computer architecture这门课也是很不错的,上课的教授是Satish,这门课内容很丰富,同样是很棒的课程,这门课里老师会从cache coherence 讲到memory consistency,后续还会涉及interconnect的知识。平时在学习的过程中工作量比较大,一般来说每周要读4篇paper,另外还有两个双人的project以及一个group project。
不过对于大多数的同学来说,申请UMich的ECE项目主要还是想要转码,而就像我前面说的那样,虽然现在UMich对于转码选课加上了很多的限制,但是这并不会影响同学们转码,如果同学们硬要转码的话也是可以的,现在只是比过去麻烦了一些而已,下面我就和大家分享一下转码同学的选课情况以及一些建议,希望可以帮助到想要转码的同学。
下面我和大家介绍一下我觉得ECE项目中适合转码同学的课程,而这并不是所有可以选的课程,只是那些选上概率比较高,而且对于转码有帮助的课程。
首先是EECS学院的课程,我推荐大家选择EECS 483 Compiler Construction这门课,这门课一共4学分,主要内容是用Python去写一个冷系统,课程中的project是很有分量的,最后大家可以将课上做的项目放到自己的简历之中,是很有含金量的,所以很适合想要转码的同学选择。
第二门课是EECS 489 Computer Networks,这门课同样是4学分。这门课的内容是很基础的,讲的就是计算机网络方面的内容,上课的过程中会有几个作业,用的语言是C++,还是很实用的一门课。事实上这门课也在限制选课的范围之中,在申请的时候是需要填表的,不过据我了解所有填表的人最终都成功选到了这门课,所以我在这里把它推荐给想要转码的同学。
EECS 549 Information Retrieval这门课也是很不错的,这门虽然是500level的研究生课程,但是是一门直接应用型的sde课,难度并不是很大,学起来也比较的轻松,而且选课不受限制,性价比很高。
EECS 402 Computer Programming For Scientists and Engineers这门课也是很不错的,这门课主要教的是C++相关的内容。不过需要注意的是这门课不算做项目的毕业学分,但是是可以写在成绩单上的,所以我比较推荐同学们选择。
EECS 545 Machine Learning这门课也是很好的,这门课有两个老师,冬季学期的时候是CS的一位老师来上课,他在上课的时候会使用PPT,他的machine learning更注重算法编程的实现,布置的作业都是算法编程,对于编程语言则不会做什么要求,同学们一般使用的都是Matlab、Python、R之类的编程语言。而秋季学期的时候是EECS的一位老师来商科,他上课更注重的是数学的部分,这是为了让同学们更好地理解机器学习的基础,在课程中也会有编程实现的部分,使用的主要是Matlab。对于想要转码的同学来说,我觉得CS那位老师上的课更加使用,同学们在选课的时候也可以提前了解是哪位老师上课。
EECS 586 Design and Analysis of Algorithms这门课也是很好的,不过这门课真的很难,作为500level,里面的内容学起来并不轻松,选择这门课的同学最好先做好被虐的心理准备。
最后就是EECS 442 computer vision这门课,这个课程十分的抢手,我选课的时候排队人数有200多人。而让我惊讶的是这门课的选课优先级很高,甚至超过了CS的本科的同学。不过如果大家没有选到这门大牛课也是没关系的,EECS 504的内容也是计算机视觉,只是课程的内容不是那么基础,但是选课是随便选的。
上面都是一些基础的CS课程,不过如果同学们想要转机器学习以及深度学习方向的CS,那么选课时可以选的就很多了,我对于这部分不是太了解也就不详细介绍了,我先将相关课程的列表放在下面:
EECS 504. Foundations of Computer Vision
EECS 542. Advanced Topics in Computer Vision
EECS 505 Computational Data Science and Machine Learning
EECS 550. Information Theory
EECS 551 Matrix Methods for Signal Processing, Data Analysis and Machine Learning
EECS 592. Foundations of Artificial Intelligence
除了这些课程之外,还有些598方向的课程,大家也是可以随便选的,届时同学们只要结合自己的需要做出选择就可以了。
SI学院课程
说完了EECS学院中可以选择的课程之后,我还要为大家介绍一下SI学院中的课程,这也是我在这边学习之后发现的一个宝藏。SI学院的很多课程对于转码也是很有帮助的,而且SI学院里的课程难度不大,学习压力是很小的,在一定程度上可以帮助我们提高自己的GPA。理论上说SI学院的课程同学们最多只能选两门,但是如果想要选第三门的话需要找advisor说,同意的概率还是很大的。
或许有些同学觉得自己交了很多的学费,选择这种压力不是很大的课程有些浪费,因此比较抵触选择SI学院的课程。不过我觉得选这种课程一方面可以丰富自己的简历,而且还能节省下大把的时间给自己刷题,何乐而不为呢。不过这只是我的选择,同学们在选课的时候还是要根据自己的情况挑选课程比较好,下面我就为同学们介绍几门SI学院适合转码同学选择的课程。
SI 664:Database Application Design,这门课的内容相信同学们从课程的名字里就可以看出来,这门课的主要内容就是教同学们如何用Django框架来开发一个web应用。虽然这门课是6开头的课程,但是难度很低,在我看来也就是大三左右的水平,只要我们有Python基础就可以顺利完成课程的学习。而且这门课的老师是Coursera上的明星老师,上课的时候很多幽默,同时平时给分很高。不过在我看来这门课最棒的一点就是在期末可以自己做一个web app,在这个时候我们完全可以选一个难度大一点的项目,这样就可以写到简历上的。不过我当时选这门课的时候是第一节课必须自己去,然后老师会发一张表格让外系的同学去填写,大家在选之前也要弄清选课的方式,千万不要错过。
SI 507:Intermediate Programming这门课我也很推荐,这门课的主要内容是教同学们Python的各类应用,核心的内容就是运用Flask的框架,同时在这门课之中同学们还会学习爬虫、做小游戏方面的知识和技能,而final是自己做一个Flask框架的web project,我们做的难一点不仅可以写到简历上,而且也可能拿到满分。另外这门课是我在UMich中碰到唯一没有考试的课程了,拿A的几率也是很大的,所以这门课我很推荐大家去选择。
最后一门是SI 506: Programming I,我当时只选了两门SI学院的课程,因此我没有上过这门课,不过我从其他上过这门课的同学那里大概了解了一下这门课的情况。这门课的主要内容就是教大家Python的一些知识,比较简单,工作量也不是很大,可以在一定程度上提升同学们的专业背景 ,也是不错的一门课。
当然作为想要转码的同学,不学OS是有些过不去的,而UMich的OS EECS482 全部可见以及录屏都是向全校的在校生公开的,如果大家想要学的话只要用自己的学生账号登录的话就可以学习了,而且我觉得找sde工作的同学完全没有必要学习全部的课程,只要学习前面的几章内容就足够了。
以上就是我作为一个ECE项目转码前辈给大家的一些介绍和建议,不过在我看来,这些课程的虽然都对于转码有帮助,但是从实用性的角度来看,其实UMich中真正对转码有帮助的就是482、484、485三门课,而这些课虽然都很好,可是现在都在限制选课的范围之内,因此在我看来UMich的转码限制其实就是让同学们不能很好地选择CS方向的基础课程。而500level的课程虽然可以选,但是那些课程的内容太深,CS相关的课程内容其实更像是数学,不仅学的难而且还没什么大用。
不过我觉得对于想要转码并在美国就业的同学来说,其实没有必要过分看重项目中开设了什么课程。因为在美国除了那些以就业为导向的项目之外,基本上课程都是从比较高的层面开始讲课,不可能从最基础的课程开始讲起,这是大部分项目的常态,换言之如果一所高校的硕士项目中课堂上讲的都是本科阶段的知识,难道你不会为此感到脸红吗?
事实上真正想要转码,最关键的还是自学刷题以及看公开课。不过我发现很多同学和我一样都有很强的学生心理,那就是只有老师教给我们的知识我们才能学会,跟着老师走才是求知的唯一途径。在这种思维的支配下,我们会觉得如果自己选不到485这门课就做不了web,如果没有学484就写不了SQL,这种想法无疑是错误的。事实上我们应该有自己的计划,如果大家选课就是为了就业,那么或许这个项目并不是很适合你,MCIT、INI、USC37等项目才是更好的选择,UMich本身就不是就业为导向的课程,因此选了这个课就没有必要去抱怨课程设置对就业不友好了。
最后我想说的是ECE自己的课程在选课的时候对于新生不是很友好,像我当时在选machine learning这门课的时候就见识了200+的waitlist,而且所有涉及了机器学习以及代码的课程都是很抢手的,虽然有扩大规模等措施,不过第一个学期选课的确比较不利,同学们也要早做准备。另外就是SI学院的课程需要填表,EECS学院的课程一定要看清楚是不是要填表,避免出现麻烦。
转专业情况
说完了选课我再来很同学们说一下ECE中的转专业情况,ECE想要毕业需要满足两个条件,1、2门500level的专业课以及一门400level的专业课,3门500level的专业课也是可以的。2、总的500+ ECE课程要大于等于12学分。我们可以结合这两个条件来分析哪个track最适合转码,根据我的经验CV和signal是最好的两个选择。虽然说项目中换track没有什么限制,不过根据最新的信息,换专业也有了一定的要求,比方说转CV方向需要504和542这两门CV专业课中至少有一门成绩达到A。所以同学们如果想要转专业,最好提前了解一下最新的要求。
学习情况
说完了选课,最后我再来和同学们说一下项目的学习情况,在我看来这个项目的作业量还是比较大的,我一开始就很不适应,在一段时间里我也过的很辛苦,基本所有的时间都在赶due。不过这也分人,像我的同学选的课程工作量和我差不多,他平时还能去学校的食堂打工,最后还是满绩点,所以我也考虑是不是自己的能力确实不大行。另外学习状态和选课的关系也是很大的,如果我们选一些硬核的课程,工作量自然会很大,我们选一些比较水的课程则就会轻松很多。
在平时这里的老师都会有office hour,还有GSI也就是TA,他们也会有office hour,discussion一般都是他们来带。因此平时在学习的时候如果我们遇到了什么问题,找到老师都是可以解决的。这边网上还有课程对应的论坛piazza,提问之后也会有同学回答我们,只要我们在平时学习遇到问题后只要积极询问,最后都是可以很快得到解决的。
总体来说这边的课程质量还是很不错的,虽然很多课程的设计有些偏学术化,但是也有大量的project技能训练,评价体系也很合理,而经过了这些project的锻炼,那么在之后工作中遇到类似内容的时候我们就不会感到陌生。不过这边的转码氛围和CMU、GT、UC等学校比起来还是差的远了一些,这也是项目的特点决定的,总体来说这个项目的教学质量还是很不错的。
在分享了项目的选课以及学习情况之后,接下来我和大家聊一下这个项目的转PhD情况。就像我前面说的那样,这个项目并不是一个以就业为导向的项目,所以这个项目对于学术也是很看重的,因此如果同学对于学术研究比较感兴趣,想要转PhD也是有机会的。
不过根据我了解到的情况来看,转博的难度还是比较大的,不过这并不是ECE项目特有的情况,ME、IOE等项目也都存在转博困难的情况。毕竟UMich是美国中西部地区位数不多比较有实力的公立学校,所以学校中不仅人数众多,而且也有很多的学霸,所以竞争会很激烈,转博困难也是可以理解的。
不过在我看来我们能不能顺利转博,最主要的还是要看教授有没有funding。想要转博的同学最好先了解一下项目中各个教授的研究方向,在找到自己感兴趣的导师之后,我们可以选择他们上的课,并争取在课上拿到高分,这样可以给老师留下一个好的第一印象。另外在课后的时间,我们也可以去找老师多多沟通,这样也可以让我们有更多的机会。
不过想要转博的同学其实可以将自己的眼界放的开阔一些,在刚刚入学的时候,我们的advisor就告诉我们,如果想要申请PhD,大家不要只盯着UMich,也可以尝试申请其他学校,在难度上并不会有太大的差别。虽然说EECS想要转PhD不是那么容易,但是只要同学们用心,多努力还是会有机会的。
而在项目的学习过程中,我们也是有很多机会去和老师做research的,同学们需要抓住这个机会,一旦我们做的好的话,也会有做RA的机会。我建议想要做学术研究的同学,最好从第一个学期开始就联系老师,并在来之前就做好准备工作,写一个研究计划之类的。而在找老师的时候,一定要注意选课的工作量,以免因为平时学习压力太大不能完成research的任务。
因为项目本身就偏向于学术研究,加上MDP项目的加成,其中有很多实验室会得到赞助,所以research的机会也是很多的,在我看来这个项目对于那些想要走研究道路的同学是很友好的。不过我在最前面也说过,如果同学们想要读PhD,直接申请是一个更好的选择,不过这至少可以让那些本来想要就业却对研究感兴趣的同学有另一种选择。
项目就业情况
接下来说一下项目的就业情况,首先虽然这个项目并不是以就业为导向的,但是UMich对于同学们的就业情况还是十分看重的,学校的career service是很给力的。学校一学期会有一次career fair,而在秋招的时候,仅仅工学院的career fair就会有四百多家企业前来,春招也会有很多家,像谷歌、uber这样的大企业都会来。
不过我觉得career fair上找工作的效果并不是那么好,这主要是因为很多的硬件公司并不会将UMich当成target school,像Samsung、Nvidia等公司就业情况都不是很理想,而结合我的观察只有苹果对项目的同学青睐有加。
而除了学校的career fair之外,我还通过领英进行了海投,同时联系校友找内推也是很不错的方式。根据我的观察,虽然项目的地理位置不是很好,除了大厂就是底特律和它周边的一些小公司,但是整体的就业情况还是比较不错的,只要同学们真正想要找工作并为此进行准备的话,最终大家基本都是可以找到不错的工作的。
不过在我看来,学校的帮助以及项目的实力最多只是可以帮助我们通过简历的筛选并拿到面试的机会,决定我们找工作结果的还是我们自己的实力,所以我们学过的课程是很关键的。项目中的同学想要找到好的工作,自救也是很有必要的。另外实习对于找工作非常关键,像我身边有两个女生仅仅因为之前在国内有过实习后来就拿到了FB的offer,所以同学们千万不要浪费申请之后的那个暑假,在那个暑假积累自己的实习经验,就算是国内的公司也是可以的,对于我们后来的就业是很有帮助的。
我还建议同学们在项目学习期间最好可以找part time实习,我在第二个学期就拿到了两个part time的面试机会,后来都顺利通过了。不过如果大家在选课的时候选了很多的硬核课程,那么可能会没有时间去做part time,在这里我建议同学们在选课的时候可以选一些水课,为做part time预留出时间,为了找到更好的工作,我们可以将自己好学生的思维暂时放到一边。
而对于那些想要转码的同学来说,决定最终就业情况的关键无疑是大家的硬实力,所以在平时大家一定要找机会多做project来丰富自己的简历,同时更要多多刷题,这样才能提升我们在求职时的竞争力,我们的付出是会收到回报的。
整体来看UMich的ECE项目虽然并不是以就业为导向的项目,但是项目的整体就业情况还是很不错的,只要同学们做好自己发展的规划并认真进行就业的准备,那么相信大家都是有机会找到心仪的工作的。
生活状态
在最后我和大家分享一下我在安娜堡的生活状态,虽然安娜堡比较村,而且底特律在很多同学们的印象中都是一个已经衰退了的城市,环境不是很好,但是实际到了这边之后,我发现这个地方还是很不错的。
首先是同学们最为关注的安全问题,虽然底特律的安全状态让人不放心,但是安娜堡这边的安全情况简直不要太好。安娜堡是全美国受教育程度最高的城市,这里的人素质也都很好,在我看来这几乎就是一个大学城。这里大部分的居民都是学校的教职工,白人的比例也很高,因此在这里生活是十分安全的,大家也大可不必担心。
在这边平时的生活状态也是比较好的,在这里的餐厅我们可以吃到各个国家的菜色,所以吃饭还是很方便的,平时吃饭同学们也会比较习惯。不过需要注意的是这边食物的热量是比较高的,尤其是Bursely中午的汤一定要少喝一些,很多汤里面都有很多的奶油,虽然好喝但是热量实在太大,所以同学们在吃的时候一定要注意适量。不过这边在外面吃的花销还是比较大的,一份外卖的配送费基本就够我在国内吃一顿饭了。
说完了吃的,再来说一下这边的交通情况,我觉得这边的公交系统是很发达的,同学们日常出行靠公交和校车基本是可以全部搞定的。而且全市公交的费用都是包含来学费里的,所以平时同学们坐校车和公交都是免费的,还是很方便的。另外我们在下飞机之后,会有Michigan flyer,专门的大巴来接同学们到学校,也是很方便的。
还有就是这边的环境是很好的,工程学院在北校,其他的理科类学院则是在中校,那里是繁华的downtown,建筑很有中世纪的感觉,非常的美,北校而更具现代感一些,也是很美的。而在平时学习的过程中,我们可以在学校里看到很多的小动物,像鹿、松鼠等等, 有些时候还能看到小地鼠,我很喜欢这样的环境。另外平时项目中同学学习、生活的北校区距离中国超市很近,那里基本什么都有,因此购物也是很方便的。
最后就是住的问题,住在北校的话还是比价便宜的,像我当时和同学合租,住在客厅里,一个月房租只要330美金,网费60美金,水电费平均下来也就30-40美金一个月,开销很小。至于找房子学校是有专门的找房网站的,大家可以到上面查找信息,另外这边的学长学姐都是很热心的,他们也会提供很多的帮助。在这里我建议女生千万不要住willowtree,那个小区是没有门禁的,之前也有过骚扰女生的事件发生,同学们最好选择courtyard这样有门禁的小区,安全系数会高上不少。
最后说一下这边的整体开销情况,相信这也是同学们比较关注的一点,这边的生活费比较低,如果大家自己做饭的话,一个月开销基本可以控制在1000美金一下。而UMich的学费也并不是很高,一个学期如果两门课的话学费21510美金左右,三门课的话则是24110美金左右,来这里留学最好准备70万人民币左右,这样两年基本是足够的,一年半毕业的话可以节省7万左右,不过整体的花销并不是那么高。
以上就是我今天要和同学们分享的全部内容了,在我看来UMich的ECE项目还是很值得大家选择的,最后我祝愿同学们都能找到适合自己的项目,并在留学申请的过程中收获一个让自己满意的结果。