CMU ECE ML/System两开花选课攻略

avatar 310023
米高佐敦
23615
32
关于CMU ECE program的情况1point3acres.com 这篇帖子说得很详细,我主要想介绍一下对于不想做纯sde的同学如何利用ECE的选课政策学到自己想学的东西。
首先ECE三个学期96学分毕业,但实际上为了保持F1学生身份,每学期至少36学分,所以其实是108学分毕业,但是最多又只能选120学分,CMU正常课程是12学分,mini一般是6学分(没修过mini不是很了解),所以如果不选mini的话正常是9门或者10门课毕业。

ECE的选课政策允许我们选择4门CIT(工学院)以外的课程(肯定都选SCS的了),看起来不多,但是其实由于ECE有很多和CS cross-list的课程(即同一门课,一起上课但课号不一样)以及很多CE和ML方向的课程,所以对我来说其实4门SCS课完全够用了。

说到ML课程,墙裂推荐18661,ECE的Intro to ML,内容比我校网红课程10601要好很多,10601太水了,而18661能够帮助你夯实理论基础,而且还不占院外课程名额。然后由于我本人是想做NLP方向,找的实习也是做NLP,所以我把4门SCS课名额基本都放在了NLP/ML相关课程上,上学期选了11661 Search Engines (不是非常推荐,内容和作业都很好,但是考试死记硬背太蠢了),这学期选了11747 NN4NLP(牛逼哥的课是真滴挺牛逼,可能是我来cmu以来听得最认真的一门课了)以及10707 Deep Learning(后悔没选另一门deep learning 11785,10707的课程设计问题比较大,但是好在还有team project,想做啥尽管冲鸭)

System方向的话CMU也有一堆好课,比如镇校神课15513 Intro to Computer Systems,ECE有与之对应的18600,除了513的绝大部分内容以外,还加了很多instructor老沈的私货,比如hardware, superscalar blahblah,lab大纲和513基本一致,替换掉了一个,后面几个lab甚至比513要难(这学期貌似改叫18613了,课程难度更大了)。第一学期选了15513/18600是之后选其他系统课的基础,有一些教授要求很严格,如果你没有先修513/600就不给register. 进阶的系统课有18709/15719 Advanced Cloud Computing, 18746/15746 Storage Systems (ECE/CS cross-listed), 15640 Distributed Systems, 15xxx Computer Networks 和 18xxx Computer Networks(两门CN不是cross-listed,内容差别比较大,课号由于我没选过这两门课也不知道,懒得查了),当然还有CMU workload据说最大的Cloud Computing,(Advanced Cloud Computing虽然advanced,但是load小一些,然后CC不需要513/600先修,所以第一学期就可以上)。这其中我这学期在上ACC,打算下学期上DS,CN和SS大概不会上了,实在不感兴趣,然后大概再选ECE的ML4SP(和11785是同一个老师)以及18794 Pattern Recognition(大水课,但是好歹也是ML方向)。这么一来四门院外课程的名额也就用完了,三学期下来ML/NLP/System想学的基本都能cover,当然比重不一样,我偏重ML和NLP,想偏重system的同学选择就更多了。

好久没写这么多中文了,求加米!

补充内容 (2019-3-22 13:36):
P.S. ECE其实算是CMU比较自由的项目了,在我们这届之前甚至连4门院外课程的限制都没有,SCS课程随便选。有了这个限制以后其实也并没有束缚太多,而且ECE没有必修课!理论上来说你想做任何方向都可以选到合适的课程。
  • 75
32条回复