Billy Ian's Short Leisure-time Wander

into language, learning, intelligence and beyond

阶段性回顾与展望

| Comments

不知不觉已经到加拿大九个月了,虽然一路上磕磕绊绊,但一切似乎都在我预想的轨道上发展,实在有些出乎意料。新的一个学期就要开始了,居然有点踌躇满志的意思呢。

生活

回顾:一开始真的不算顺利,先是遇到一个不怎么样的房东,lease没到就被要求搬走,押金也被扣了。初来乍到,只能认栽了,接下来又稀里糊涂的接了一个快到期的lease,结果住了3个月又得搬家。不到半年就搬了两次家也是醉了……还有吃饭,理发都是不小的问题。不过慢慢的自理能力也上来了,现在基本上生活上已经问题不大了,现在做饭虽然算不上多好吃,但基本饿不死了,周末还可以做个大盘鸡,炖个羊肉汤什么的,剩饭也可以炒个蛋炒饭,感觉还是挺滋润的。不过刚过来的时候碳酸饮料喝的有点多,导致现在牙齿有点敏感,可惜国外看牙太贵了,有机会回国的话一定得把牙齿好好检查一下。

展望:碳酸饮料需要戒掉,甜食也尽量少吃;多多学习烹饪,尽量少出去吃些快餐;多注意一下形象管理,别太邋遢了;还有就是平时多注意锻炼,吃完饭犯困了,可以出去走走,玩会儿pokemon go~

时间管理

回顾:出国后有段时间每天整体手机刷个没完,严重影响效率。之后下了不少时间管理的软件,也读了“Soft Skills: The software developer’s life manual”,加上一些机缘巧合(主要是被网上一些极易被煽动、且喜欢强加意志于别人身上的群体感到恶心),终于慢慢的把刷手机的习惯的淡化了。之前读pluskid的博客,他每周平均的工作时间居然是50h+,当时我也想达到这个水平,可我后来发现这对我来说根本不可能。每个人每天每周的精力其实都是有限的,如果超过一定的threshold,时间和生产力未必就是正相关的。提高效率的关键还是在于每天能否在有效的几个小时里做到专注,用短暂时间片来保持专注确实是个不错的方法(Pomodoro Method)。还有一点就是每天都要对今天要做的事有一个明确的规划,否则很容易在无所事事中浪费大量的时间。现在我平时差不多每天可以脱离手机专注工作学习6-7小时左右了,而周末的话基本只学习2-3小时。

展望:现在的节奏不错,希望可以继续保持,还有就是在工作学习的时候还是希望注意力能够更加集中(偶尔还会刷网页版的微博,或者总去看跑着的实验)。

科研与学业

回顾:过来的第一个学期,基本就是上课。一过来就选了三门graduate level的课,基本每天就是上课做作业,准备presentation,做project。一个学期一共做了4次presentation,3个project。一门PGM,一门NLP&IR相关的课还是收获比较大的。而且作为project在Kaggle上拿了第一个top10%,也算掌握了data science in python的一系列工具:pandas, numpy, scikit-learn, xgboost。之后又仔细读了winning solution的code,熟悉了Kaggle比赛的一整套的pipeline。最近自己稍微改了改套到另一个比赛里,用basic feature ensemble一下已经top10%了,可惜这个比赛得用neural nets,完全没这方面的经验,加的feature都一点improvement都没有,各种调参也没什么效果,sigh~

由于是winter term才入学,又是course-based的所以没有认识到太多人,着实比较遗憾,也挺尴尬的。3月份偶然看到Google Summer of Code开始申请了,由于课上介绍knowledge bases 时提到过DBpedia,作业里也有用到,所以抱着试一试的心态去申了DBpedia的项目,没想到就申请上了。学期结束等成绩时还挺忐忑的,最后发现担心完全是多余的,两门A,NLP&IR相关的A+。然后和教NLP&IR的老师谈了一谈,基本上就确定可以转thesis-based了。然后整个暑假就是搞GSoC了,其实感觉前半部分都挺颓废的,随便找了篇paper搞了一下。到后半段整个人才调整过来,边打Kaggle,边读paper做实验完善code。整个暑假还把Coursera上EPFL关于Scala的三门课程学了(虽然Coursera现在要收费了,但我发现只要申请助学金,还是可以拿到verfied certificate),晚上偶尔会自学Stephen Boyd的convex optimization和做做statistical inference上的exercise。今天Google Summer of Code的结果出来了,没什么意外的通过了,一个暑假赚了5500刀,和去美帝读硕,各种FLAG实习的小伙伴差距太大了,说多了都是泪。不过通过GSoC这个项目,我还是确定了自己之后的研究方向(至少是研究生阶段)会在knowledge graph及其相关任务和应用了,比如link prediction,entity resolution之类的。和GSoC的mentor的交流也挺愉快的,之后应该还会继续合作,可能会造个关于DL on Scala and Spark的轮子,想想还有点小激动呢~

展望:新学期开始前其实还不确定能不能顺利拿到TA,一方面是钱的问题,另一方面就是来国外也挺久了,然而用英语和人的交流还是太少,有TA的话应该会有更多的机会。没想到的是,转成thesis-based之后,和管TA的教授聊了聊,居然拿到了Machine Learning的TA,offer也很快下来了。这实在属于意外之喜了,一般的MSc甚至PhD刚开始一般都只会TA一些比较基础的本科课程。这门课其实是undergraduate和graduate混合的课程,本来我还差点去选,从需要花钱上课到拿TA,这转变真是让我始料未及。但我其实ML的底子也一般,就在网上走马观花的上过几门课,在Kaggle上随便水水,几次想尝试啃大部头,最后都放弃了。之后也一直有意识的想要加强自己的数学底子,然而进展缓慢~现在反而要去回答本科生甚至是研究生的问题,我还是有点虚的,所以这学期我决定认真准备这门TA。这门课相当一部分作业就是Andrew NG的那门ML课里的,网上Python版本的也有不少,我决定用R全部重写一遍(可能的话,也可以用scala基于spark写一写distributed的),然后就是好好搞定statistics和convex optimization,争取能跟着课程进度把”Elements of Statistical Learning”啃一遍,顺便写点blog什么的。

这学期我就选了一门课,不过是门神课”Reinforcement Learning”由大牛教授rachard sutton亲自上。毕竟是University of Alberta计算机最为出名的研究领域,肯定要上一上,不过看了看材料,压力显然不会小,还有midterm和final,需要踏踏实实的学好。除此以外,Coursera上Geoffrey Hinton的Neural Networks for Machine Learning又重新开了,决定去上一遍。还有EPFL关于scala and spark的后续课程如果开了,估计也会去跟一跟。本来还想上点关于finance的课,毕竟手上有了点闲钱,想去捣腾下美股,后来想想还是算了,就算我annual return能翻倍也没几个钱,投入太多精力在这上面根本不划算。

至于在research方面的话,主要就是和mentor合作用scala and spark to factorize DBpedia。另外,刚来国外比较空虚,关注女明星比较多,所以用新浪的API写了个检测明星微博数据的小玩意,准备维护个营销号玩玩,可能也会根据名人之类的,搞个construct a knowledge graph from scratch之类的玩意。还有想到大公司都有自己的knowledge graph,所以就想抓google的搜索结果可以当做一些research的benchmark或者做improvement之类的。没想到google也太流氓了,几乎瞬间被block,搞得我有些心灰意冷,没办法,只能先抓抓Bing和Baidu了,等程序框架成熟了、Proxy IP池什么的都有了,能大规模抓Bing和Baidu之后再试着去抓Google吧。

洋洋洒洒的写了这么多,对未来的畅想实在是有点太理想化了,如果有机会的话,还想搞篇paper什么的呢。差不多就这样了,希望一个学期以后计划的事能做到一半以上吧~

Comments