EE@Columbia 一学期后感(重点介绍选课)
2281523
我是转码的,18fall,这里主要介绍一下EE选课的情况
- 哥大EE项目要求是总共10门课,前两个学期至少选4门,以保证full time 学生身份,最后一个学期可以选两门。
- 10门课中至少选5门EE相关的课,这个范围很广了,单独EE开的是ELEN打头的,还有很多和CS合开的课,以CSEE打头也可以选,比如CSEE4119 computer networks之类。另外,前两学期中至少每学期有两门是EE的课。
- 10门课中至少5门是6000+的课程,这个有点坑,因为CS很多好多课是4000开头的,比如大热的Analysis of Algorithm, Database, Machine learning等等。
总的来说哥大EE项目对转码很友好的,特别是这两年新开一个concentration: data-driven analysis and computation. 新增了很多data science相关课程,比如各种deep learning, reinforcement learning。再加上其他5门可以选成cs的课,基本可以全选软课。这里稍微对比一下CE项目,CE项目是有EE必选课范围的,所以可能做不到全部选软课。但是比EE有优势的在于可以和CS同一批开始选课,热门课选上的几率大些。不过以我个人的经验来看,EE的同学只要事先准备工作做好,选课有一定策略,最终想选的课都能选上,每学期选课期间选上的课和waistlist里的课加起来一共可以是6们,最后从里面留4门。我自己第一学期CS的machine learning, algorithm,database都选上了,最后考虑workload,退掉了algorithm。以下是我对选课策略的几点建议:
- 尽早明确是否转码,转码的话是想找哪个方向工作,sde还是ds,方向明确了才能针对性选课。
- 明确方向后,多个渠道了解课程,到各个学院网站提前了解往年开课list,然后google课程Syllabus。也可以和其他program的同学多了解他们的选课情况,比如cs和data science。
- 把秋季和春季的开课情况都了解一下,整体规划一下10门课选哪些,分布在哪个学期,有些课只在秋季选,要是第一学期不选,可能就选不了了。
- 有些课有多个session,这个时候就可以去了解不同老师的评价(如Vergil):上课口音、作业量、给分情况等等。
- 有些cs热门课老师会布置HW0按成绩筛选,比如algorithm,ML,database(Wu的session)害怕选不到的话,可以把握这种需要做题的,就跟cs同学一样优先级选课了。
- 有些热门课会有网课session,比如算法,database。是课程直播,可以调整播放速度,重复播放,在教室有位置的情况也也能去教室听,个人觉得完全没有问题,我这学期就选了database的网课,基本都去教室上,没有差别。
- 开学前两周试听,尽可能多试听一些课程,第一次课基本都是课程介绍,会讲课程内容,是否有mid term和final,有几次作业几个project,成绩组成,最后是否curve等等。
最后介绍一下这学期我了解的一些课程情况
1.COMS 4771 Machine Learning
这门课是公认的硬课,主要涉及线性代数和统计的知识。应该算是machine learning基础课。有两个session,两个session都要先做一个home work0。我两个session的题都做了最终也都选上了。Daniel的是选择题,最后好像只最多错一个才能选上;verma的是主观题,线性代数和统计的基础题。verma的题要难一些。我选的是verma的session,课程链接cs.columbia.edu
verma比较会讲课,容易让学生focus,但是讲的很慢,经常大半课都在推定理,内容覆盖也少,连deep learning也是没讲的。一共4次作业,组队做,基本是4-5题理论题加1题编程题(可用MATLAB或者Python),作业量很大,有midterm和final。总的来说这门课还是推荐上的,不过后面肯定还要修一些偏应用的machine learning的课,或者网上自学一些相关的课程。
2.COMS 4111 Introduction to databases
这课有三个session,Wu的是通过做home work 0来选的,另外两个都可以直接选。我选的donald的session,课程链接:github.com
Donald真的是我见过最认真负责的老师了,会给超级多office hour,给分也相当友好。虽然作业编程量很大,有5次作业,都是python编程。但是能学到东西,特别是对之前没有上过data base,编程基础也有限的同学。
3. EECS E6893 Big data Analytics
这门课教用hadoop、spark等工具做数据分析。课程链接ee.columbia.edu
我是之前在地里看到说是门水课,然后第一学期又必须要选两门ee的课才选的。事实证明每个人对水课定义不一样,水课也不一定表示workload轻,个人觉得课程level还是很高的,老师上课只是大方向或者案例介绍,工具等等都要自己学。所以像我这种完全没基础的,基本就觉得浪费很多时间敲TA给的代码,然后自己没真学到啥。不过这个课最后有个大project,好好做的话简历上可以多个项目。
4.ELEN 6767 Internet Economy, Engineering & Society
相比其他课,这门课可以说没有workload了,老师是个大牛,之前在bell实验室待了很久。
总之,大家还是要多个途径了解课程情况,别人的建议也只是建议,不要盲目听从,结合自己情况,结合workload(作业次数,project个数,有无考试)和自己以后想发展方向,提前准备,多做权衡。
辛苦码字,求大米呀~~谢谢大家{:4_112:}
