专业简介
华盛顿大学的EE(电子工程)专业于2018年更名为ECE(电子计算机工程),相应地也增设了不少计算机相关课程。UW的ECE专业在美国的专业排名在19名,其学院楼与CS相邻,选课相对自由。
身边不少同学,从就读ECE硕士开始到毕业,几乎上的都是CS相关课程。
华盛顿大学EE专业的硕士学位下有两个项目,MSEE和PMP,毕业要求分别为42个credits和45个credits,皆没有论文要求。由于华盛顿大学是公立学校,每年的学费在3w刀左右,比起私立学校的5w刀相对便宜。
当然,对于一心想做科研的同学,可以在入学后给感兴趣研究方向的professor发邮件,征得同意后可以加入实验室。据我所知,实验室的门槛并不高。
MSEE的课程偏理论,PMP(professional master program)项目的课程偏实践,且有一定的选课限制,有些课程需要在晚上上,但是录取标准也会相应地低一些。
关于选课
括号内的编号可能每个学期都会有变动,以课程内容为主。
专业内(ECE)
Statistic Learning (EE 511, 4 credits):
老师是和蔼可亲,主要是做NLP(自然语言处理)的。
上课主要讲机器学习模型,有期中考试和final project。作业项目每周一次,除了理论计算,就是每周给你一个数据集去处理。
项目偏实践,包括推文(tweet)处理,星际图片处理等,与实际Machine learning engineer 的工作较为相近。
Machine Learning (EE 596, 4 credits):
老师来自MIT,认真得有点 “变态” ,学校通知停课也照常上课,可以学到机器学习模型的底层原理。
作业很花时间,有时候一周40个小时也不为过。本人因为写过random forest和GBDT的底层算法而自豪,但至今都没有机会用上这些东西。后来这个老师开的deep learning,我没敢选。
Independent study (EE 598, 1-4 credits):
这是科研课,找到一个教授,可以是学院内,也可以是别的学院,征求教授同意就可以加入实验室。一般是给PhD打下手,参加实验室周会,特别优秀的同学也可以自己做科研发paper。
Machine Vision (EE 596, 3-4 credits):
老师是CS学院的老教授,上课是机器学习算法。
作业比较坑,用QT和C++处理图像,习惯了还好,可以学到不少图像处理的算法代码。
期末是final project,主题自定。
Capstone project (EE 598, 8 credits):
学校和西雅图的公司合作的项目,每年参加的公司都不一样,大到亚马逊微软,小到几个人的创业公司。
开课之前可以参加晚会(免费的晚餐),听每个公司代表人介绍他们的项目(记得注意听项目内容和公司介绍,别只顾着吃)。
项目分两个quarter,也即半年,3人合作完成。对有些人而言,是找工作的好机会。同专业的有两个同学因为和公司合作项目,最后公司提供了实习和全职的offer。公司的选择是双向的,我们可以选公司,然后学校把我们的个人简历发给我们所选的几个公司,公司再进行反选,故而简历也十分重要。
当然,如果分到的公司不满意,也可以做做项目,然后为简历添一笔,跟一次实习差不多。
项目的最后,需要做poster展示项目成果,学校会请很多公司过来参观,也是一次锻炼的机会。
Capstone final presentation
Auto driving (EE P 545, 4 credits):
自动驾驶,这门课很花时间。上课讲控制算法,然后给你一辆小车,据说小车挺贵的,经常需要泡实验室调车或者写code。
Internship (EE 601 1-2 credits):
暑期实习需要选这门课,part-time一个学分,full-time两个学分。当然,倘若学分修满却还没找到理想的工作,可以延期一个quarter毕业做做实习,只选EE 601的学期学费几乎没有。
Android development(EE 590,4 credits):
老师有口音,估计是法国口音,上课不怎么听得懂。但作业还行,不难,且有趣。Final project可以和小伙伴开发一款软件,算比较水的一门课。
Seminar (EE 500, 1-2 credits):
每周去学院楼听讲座,lecturer是美国各个高校的教授,讲他们自己的研究成果。MSEE的同学需要签到,PMP的同学写小paper。
专业外(CS)
Data structure and algorithm (CS 373) :
这门课强烈推荐。其实,本人在本科阶段上过数据结构,但同项目一个找到Facebook SDE工作的姐姐强烈推荐了这门课,所以本着复习复习的心态,我也选了。
让人惊喜的是,国内外对于计算机基础课的教学有较大差异。相同的是,都上课,都有考试,这点国内外通用。
但这门课的作业,每周一次的项目甚是有趣,从一开始的自己写链表,哈希表底层代码,再到最后用自己写的模块去搭建网页搜索引擎,迷宫游戏。
个人觉得是一门作业需要花很多时间的课,但学到的东西,对软件工程师的求职面试很有帮助。
Introduction to database (CSE 414) :
适合非计算机专业的同学补补基础,本人没有上,但不少EE的同学推荐。