为了多一些缓冲的时间,我当时申请了cmu的双学位项目,这样总共在CMU是4个学期。当时每个项目都有一些必修课,所以需要把每个学期的学分上限通过申请的方式调整到54/60学分,下面是一些我上过的CS相关的课程:
. .и
10-601 Introduction to machine learning:这门课是一门machine learning入门课,我当时上的是Roni的版本 (https://www.cs.cmu.edu/~roni/10601-f17/)。总的来说coding作业还比较多,把常见的模型都讲了一遍。每个模型会要求徒手写一下,当然作业写的模型工业界不可能用的,只是为了理解概念。适合作为ML的入门课。个人给四颗星. check 1point3acres for more.
CS6457 Video Game Design: 这是一门用Unity写video game的课,整个课程介绍了各种游戏的理论,包括具体的算法,也有一些概念比如怎么设计游戏玩家才能一直玩下去。这门课会有team project写一个3D的游戏,如果你对游戏感兴趣的话我非常推荐。这门课我给4.5颗星
CS7632 Game AI:还是同一个老师的课,这门课主要讲各种AI的逻辑,每个作业老师都会把图形界面画好,你只需要实现一些算法(e.g. A*)就可以看到非常有成就感的动画,state machine控制的小黄人打热血躲避球,fuzzy logic控制的小车都贼有趣,这门课我给4.5颗星,这个老师的主要问题是讲课有点啰嗦并且有点听不懂
CS6200 Introduction to operating systems: 这门课我觉得是gatech的神课之一,和CMU的15-213有不同的侧重点,这个课夏季的project只有三个,第一个是写一个multi thread的client/server,需要处理好锁和信号。第二个作业是IPC相关,debug有一定的难度,写完这个对系统的inter process communication都有一个比较好的了解。第三个作业是grpc相关,算是业界比较通用的了。总的来说我觉得这门课很值,老师Ada讲的也很清楚,我给5颗星。她的另外一门课CS7210分布式则是因为作业太难被喷的比较惨,貌似作业是实现一个paxos. From 1point 3acres bbs
CSE6220 High Performance Computing: 这门课主要讲的是并行计算,建立多机器协作的概念。这门课会比较handy的用C去实现诸如scatter, gather这类的运算,也会使用相对比较新的技术比如CUDA去实现并行运算。并行运算是比较复杂的,很多时候理论上会加速的实现,最后一测更慢了。这门课我觉得很有意思,我给五颗星
CS-6515 Graduate Algorithms: 这门课是必修课,而且比较理论。一开始的devide and conquer, DP等应该是比较实用的,毕竟LC也会有,而且一般都是medium/hard题目,学习如何系统思考还是挺好的。后面则逐渐变得更理论/数学,先是一些图的算法,还挺有趣的。之后还有一些加密算法(e.g. RSA),NP证明等等。总的来说值得一学,但是学习体验不好。我给三颗星,我觉得还是值得一上的
MGT-6311 Digital Marketing:这不是一门CS课,takeaway就是其实business idea有时候比起技术来说更重要。我觉得这门课挺好的,不花太多时间就能学期一些常见的商业例子(比如social media,search engine等等),了解他们的盈利方式等。同时了解到leadership vision对一个公司的重要性。这门课我给5颗星.google и