[1.3acres bbs精选]胡侃加拿大学校CS(计算机科学)系

把论坛里的这篇关于加拿大计算机系介绍的文章转贴在这里,给bill也给论坛宣传一下

===============================================================

应Warald大师之邀,小弟写了此挫文胡侃下加拿大的计算机系:)

转载请标明出处:一亩三分地bbs EE/CS/MIS专版 http://www.1point3acres.com/bbs/viewthread.php?tid=252&extra=page%3D1

很多申请美国的同学,都会顺带着申请下加拿大的学校保底。加拿大的学校对各位本科同学最大的吸引力莫过于给master全奖了,而美国大部分学校要想拿全奖只能申phd(插一句,加拿大这边和美国不太一样,本科生一般是不能直接申请phd的,要申请master,这边的master大都是thesis-based的master,要做研究)。另外一个好处可能是移民比较快,我认识的几个phd在读时就办了移民:)不少同学是抱有曲线救国的想法,在这边读个硕士,希望以后再申请美国的phd到更好的学校去。至于多花的时间值不值,是不是真能申到更好的学校,我在最后稍微说下吧。

加拿大大学不多,对大部分的大陆CSer,可能就知道Univ. of Toronto (UT)和Univ. of Waterloo (UW)这两个学校。这两所学校的CS program是加拿大最好的两个。加拿大的大学没有各专业的排名,更不用说CS更个方向上了。我仅就自己了解的一些信息,一些方向(主要是theory,bioinformatics & computational biology,database,AI,machine learning & data mining这些方向),给对加拿大这边的CS系感兴趣的同学介绍下,有些可能不准确不正确,请斧正:)

前面说了,Toronto和Waterloo是加拿大计算机专业最好的两个学校。至于两家谁更好些,我也说不清,不过可以肯定的是,这两家的CS在整个北美也是top级别的,我个人觉得至少可以在前20(各位不同意的tx请轻拍:)),个别方向上top 10肯定没问题。

Toronto计算机系有位Turing Award得主 — Stephen Cook,我想计算机专业的同学应该没有不知道这位老人家的吧:)Cook在哈佛跟随著名的逻辑学家王浩(王老先生也是我们山东人,自豪一个:P)攻读 phd,1966年博士毕业后到了Berkeley数学系任教,1970年在评tenure时没评上,被Berkeley扫地出门了。之后Cook来到了多伦多大学,1年后也就是1971年,他的那篇paper “The Complexity of Theorem Proving Procedures”发表在了理论计算机科学最top的会议之一STOC上了,奠定了整个NP-complete理论的基础,也给理论计算机界留下了至今尚未解决的重要问题 — P和NP是否相等。Berkeley的一位Turing Award得主Richard Karp曾经说过:“It is to our everlasting shame that we were unable to persuade the math department to give him tenure. Perhaps they would have done so if he had published his proof of the np-completeness of satisfiability a little earlier.”(引自http://www.eecs.berkeley.edu/BEARS/CS_Anniversary/karp-talk.html)可见tenure制度有时也挺害人的:)

上面光侃Cook了,下面说下我知道的UT计算机系的一些强项吧。Theory不用说了,有Cook在,不过Cook老了已经不怎么做研究了,另一位做理论的大牛是Allan Borodin。

多大的database方向以前也非常强,当然现在也很好。前几年去世的Alberto Mendelzon是Stanford大牛Jeff Ullman的弟子,做database theory的大牛,数据库理论最好的会PODS已经把该会的时间检验奖改名成ACM PODS Alberto O. Mendelzon Test-of-Time Award来纪念他了,可见他之牛;另一位大牛Ken Sevcik生前是做system的,兼做数据库,是04年的ACM Sigmetrics Achievement Award的得主,不过这两位都已仙逝了。Leonid Libkin也是做database theory的大牛,学习过finite model theory的同学估计都是用的他写的那本教材,不过他已经跳槽去了Edinburgh。现在多大数据库组还很活跃的两位教授是Nick Koudas和Renée Miller,Koudas是个水王,在数据库top的几个会–SIGMOD,VLDB,ICDE上发文极多,Miller在data integration和data sharing方面很有建树。多大的校友里做数据库最牛的,要数Phil Bernstein了,做transaction processing的几位先驱之一,原来在哈佛任教,后来跑去工业界了。CMU的教授Christos Faloutsos也是UT的phd,他和UIUC的韩家炜教授应该是data mining界在学术界的两位最大的学霸了,这两年的SIGKDD Doctoral Dissertation Award都给他俩的弟子了:)

Toronto另一个不得不提的方向就是AI、machine learning,做机器学习的同学,学习过神经网络的,应该没有不知道Geoff Hinton这位大牛的。除了Hinton大牛,Hector Levesque也很厉害,是做Knowledge Representation and Reasoning的。

U Toronto也给美国的top cs系培养了一些faculty,可以参见Matrix of universities by the number of alumni active in top 10 CS departments in the U.S.(http://pages.cs.wisc.edu/~estan/ … /Alumni_matrix.html)。MIT,CMU,Cornell,Washington,UT-Austin都有多大的phd在任教,这个表的数据统计的是05年正在任教的,像前面提到的多大的校友Phil Bernstein以前在哈佛做教授后来跳去工业界,就不算了。不过这些教授们毕业的年代都比较久远了,多大CS以前应该比现在好很多。

Waterloo规模要大些,计算机是专门的school,不像多大只是个dept.,而且比较有意思的是他们的School of Computer Science隶属于Faculty of Math,计算机的本科生和硕士生拿的学位叫B.Math和M.Math,而不是BSc和MSc。UW计算机学院的本科教育非常好,加拿大no.1无话可说;至于CS研究生教育,是否能赶得上多伦多大学,我不敢说。

Waterloo的theory组,做得很好的有两位老师,一位是华人老师李明老师,ACM Fellow,他师从Cornell的Turing Award得主Juris Hartmanis,以前是专做Kolmogorov complexity的,也成名于此,现在主要做bioinformatics。另一位做theory很好的是Ian Munro,主要做数据结构。这里不得不提theory组的一个校友–Erik Demaine,此人20岁从waterloo理论组phd毕业,就到了MIT CSAIL做Assi. Prof,4年拿下终身教职升为副教授,插一句,此天才是前面提到的多大教授Stephen Cook的徒孙。

Waterloo另一个非常强的组,就是Bioinformatics了,前面说了李明老师现在主要做这块。另外,还有个华人老师–马斌老师,他10多年前是李老师的post-doc,现在是Waterloo的副教授了,马老师本硕博都是在北大数学系读的,是少见的大陆土博可以在waterloo这种 top学校任教的例子。马老师和李老师在bioinfo这块最出色的工作要数pattern hunter了,提出了space seed的idea,另外马老师在MS/MS Protein Identification这块也有很好的成果,peaks这个软件最初的理论基础也是马老师和另一位老师合作的。马老师和李老师有自己的公司–Bioinformatics Solutions Inc,我上面说的Pattern Hunter和Peaks等科研成果都已经产业化了。

Waterloo的database group也是个强组。组里有M. Tamer Ozsu这种大牛,他是上一任(2001-2005)的SIGMOD chair,也有Ihab F. Ilyas,Ashraf Aboulnaga这种新星。

另外,Waterloo的Cryptography, Security, and Privacy (CrySP)组也很不错。组里主要有Ian Goldberg,Urs Hengartner,Doug Stinson 3位老师。Goldberg毕业于Berkeley,他最出名的工作可能就是和他的同学David Wagner(现为Berkeley cs的副教授)在Berkeley读phd时破解了Netscape的SSL。Doug Stinson是著名的密码学教材–Cryptography Theory and Practice的作者,这本书已经出到第3版。Waterloo做密码学最好的老师应该是Alfred Menezes,他是鼎鼎大名的Handbook of Applied Cryptography的作者,密码学最好的会议–Crypto 2007年的Program chair,不过此人在Dept. of of Combinatorics & Optimization,这位老师在网页上说了他们组合系一般只招本科数学的同学(http://www.cacr.math.uwaterloo.c … udies-waterloo.html)。

Waterloo也给美国top的cs系贡献过faculty,除了上面说的天才Erik Demaine在MIT之外,Stanford计算机系的David R. Cheriton教授也是waterloo的phd,这哥们儿暴有钱,给母院捐了一大笔钱,从此计算机学院挂上了他的名字,叫David R. Cheriton School of Computer Science。

上面啰啰嗦嗦一大堆,扯了下多伦多大学和滑铁卢大学这两个cs最好的加拿大学校。大陆学计算机的同学每年申请这两个学校的都很多,能被录取的少之又少。至于门槛儿有多高,我没申请过,也不好说,至少从在读的大陆学生的profile来说,还是很高的。如果不是清北科复交浙南这7个学校的本科或者硕士,申请这两个系还是要加强自己其他的背景,碰碰运气。我知道我的本科学校有两个今年拿到Duke CS phd offer的兄弟,申请Toronto和Waterloo都被拒了。当然也有非7所的本科申到多大和滑铁卢的,有个案例,西安交大少年班的某位同学,前两年就申到了这两所,cook还收他做学生,不过他最后没有去多大,去了ACO@CMU — cmu数学系和计算机学院等合办的一个phd项目,他math sub好像是考了98%, 本科GPA有97/100,大体条件可能是这样,记不太清了。

下面说下加拿大cs的老三UBC(U of British Columbia)。UBC地处温哥华,是加拿大气候最好的地方,学校也靠海,非常漂亮。UBC的database group很不错,Laks V.S. Lakshmanan和Raymond T. Ng co-chair了08年的SIGMOD,Lakshmanan是db的牛人,Ng则主要做data mining。AI里也有大牛Alan Mackworth。Anne Condon是做theory和DNA computing的女牛人,她原来是Wisconsin-Madsion的教授,跳槽到了UBC。

除了Toronto,Waterloo,UBC这3个学校,Alberta也是很好的学校,他家计算机系的AI,machine learning方向很牛,AAAI Fellow就有好几个,Jonathan Schaeffer,Russell Greiner都是很牛的。

加拿大还有一些其他很不错的学校,如Simon Fraser U(SFU), Queen’s U, McGill U, McMaster U,U of Western Ontario, U of Calgary。

SFU是搞data mining的大牛韩家炜原来任教的学校,他03年左右跳槽去了UIUC,虽然老韩走了,SFU的data mining组还是很厉害,现在还有3位active的老师,Jian Pei,Martin Ester,和Ke Wang。Jian Pei是韩家炜的弟子,原来在SUNY Buffalo任教,后来跳回去了母校,他是个牛人。另外两位老师也很不错。Greg Mori做computer vision很厉害。

McGill U是加拿大综合最好的两个学校之一(另一个就是多大),cs系theory也做得很好,Patrick Hayden是做quantum computing的牛人,Alfred P. Sloan Fellow,sloan fellowship是很难拿到的,即使在美国,也一般只给top学校的新faculty,加拿大的老师能拿到,实在很厉害。这个系貌似是加拿大最抠门的,据说一般只给phd全奖,master是发不少ad的。这点比较像美国。

McMaster U这个学校的计算机系很偏应用数学,老师们主要集中在两大块:Combinatorial Optimization和Software Engineering。组合优化是数学的东西不用说了,mac的老师做的软件工程也比较理论,主要是logic,formal methods这些东西。

Queen’s U这个学校是贵族学校,计算机学院很排外,很少招国际学生,他们cs一个老师的网页上说过他们每年只有2个左右的offer给国际学生,不建议国际学生申请。这样看这个学校估计比多大和滑铁卢还难申,虽然实力差很多。建议同学们不浪费申请费。

Western Ontario做computer algebra在加拿大是最好的,有个Ontario Research Center for Computer Algebra,是Western和Waterloo合办的,做这块的几个老师大都是法国人。另外做DNA Computing的Lila Kari是个牛人。上文中提到的Waterloo的马斌老师,原来是这个系的老师,08年时跳槽去了waterloo,他在Western时主要合作老师是张凯中老师,张老师最出名的工作应该是tree edit distance了,他在SIAM J. Comput.上的那篇文章引用率已经有500多,这对理论算法的paper来说算很高的。张老师现在主要做bioinformatics,大部分工作是和马斌老师一起合作的。做computer vision的Yuri Boykov也是个牛人。

Calgary cs有个做Security的牛人,Rei Safavi-Naini。

还有一些还算不错的学校,比如Concordia U,U of Victoria, Dalhousie U,U of Ottawa & Carleton, York U,这里就不一一说了。

下面列了个我心目中的加拿大cs排名,再所难免有偏见,请轻拍:P
tier 1: Toronto, Waterloo
tier 1.5:UBC
tier 2: Alberta, Simon Fraser, McGill, McMaster, Queen’s, Western Ontario, Calgary
tier 3: Concordia, Victoria, Dalhousie, Ottawa, Carleton, York
tier 4: Guelph, Saskatchewan, Manitoba, New Brunswick, Regina, Memorial U of Newfoundland, Winsdor
以上这些学校应该包括了绝大部分有cs phd和master program的学校了。这里面,我知道至少Toronto, Waterloo,UBC,Alberta, Simon Fraser, Queen’s, McMaster, Western Ontario, Calgary,Victoria, Ottawa, Carleton, York,Saskatchewan和Regina是有给cs master奖学金的,其他学校有待考证。

加拿大这边的学校对GPA卡得比较严,没有美国灵活,GPA低同学可能要注意些。我们系对phd的GPA要求是85/100,没过一般是直接刷,对master要求低些,但是大陆过来的硕士也都至少有80多。

大陆学生能够申到Toronto, Waterloo的少之又少,如果背景不太好,申请还是谨慎些。UBC的master大陆生源也主要来自前面说过的7个学校,对大部分人来说也是很难申。其他的学校应该都要容易不少,大家选校申请时根据自己的情况合理定位,陶瓷试试。

对于想曲线救国,想先读个硕士再申请美国phd的同学,加拿大这边的确合适。不少人都这样做,并且申到了美国的好学校。就我看到的一些大陆学生,有在多大读完master过去Michigan读phd的,有在McGill读完硕士过去Berkeley的,有在UBC读完过去Gatech的。差点儿的学校,有在Saskatchewan读完硕士过去美国cs 40多名的IUB读phd的。但是,有一点要提醒下,有一些老师是只带phd不带master的,这个申请前不陶瓷也比较难弄清楚。我当初申请某个系时看中一老师,申请的是data mining方向,结果我现在的老板给我发信说dm方向的那个老师只收phd,问我愿不愿意换方向跟他,我就阴差阳错学了computational biology。另外,有些中国老师可能很希望自己的master能够留下来接着读phd,这将来可能会给你带来一些无形的压力,老板老问你读不读phd,跟老板说是觉得委屈自己,说不是又惹老板,什么都不好,这个事儿可能也是需要考虑的。我自己庆幸我老板就非常好,不问我这个问题:)。

啰啰嗦嗦胡侃了半天,很多废话,写得也很乱,大家凑合着看看。浪费了各位看官的时间,请包涵,文章有不少有偏见不正确之处,希望大家能斧正:)

更多讨论,请进入 http://www.1point3acres.com/bbs/viewthread.php?tid=252&extra=page%3D1