Sunday, November 6, 2011

搬家

今天搬家,又累又折腾是肯定的了,不过还算一切顺利,只用了半天就全都搞定了。

新家很不错,房间很大,最主要的是,终于有一个很大很舒服的书桌了,其实这次决定租这间屋子,最主要的还是因为这张桌子。有个舒服的桌子对我来说太重要了,工作、学习最重要的场所,可以放台灯、电脑、书、本子,还特意去超市买了支新笔,明天再去买个台灯,就完美了。这里唯一不好的地方就是离公司比原来远了,也算有舍有得。

这个月有好几件重要的事情要做,搬好家算是了了一桩麻烦的事情。

Friday, November 4, 2011

只能勇敢

现在北京早晚已经有些冷了,必须要穿外套才行,也几乎没再见到短袖的人了,夏天也算完全过去了。在北京也算过了第一个完整的夏天。北京和上海、杭州还是很不一样的,这半年来我经常想起上海和杭州那些熟悉的地方和人,也很想回趟学校,前段时间和实验室师兄们聚会,很羡慕他们可以回学校宣讲,可以回实验室看看。
昨天晚上洗完澡,无聊看了一集波士堂,是采访如家的CEO孙坚(好像是这个名字),我不知道他私下是怎样一个人,但节目中他所表现出的那种温和、大度以及对周围人的奉献,都是我非常欣赏的。前几天Kathy给我发了封信,问我还记不记得以前晚上一起回寝室路上我跟她说的话。以前有一次回寝室她问我以后想做啥,我说想做对周围人都好的事情。我当然一直都没忘,并且一直在坚持,其实从严格意义上来说这算不上坚持,更像是一种努力。这是个很宽泛的说法,甚至不适合作为目标,因为目标需要是一个明确的东西。但是我愿意把这件事作为一个指引的方向。
云风前段时间从网易离职了,他的博客我常看,没见过这个人,但是挺佩服他。前几天翻google reader里的一些文章,无意中看到他博客里的一段话:
我觉得吧,如果你真打算一个人做点东西的话,最大的敌人不是你个人的精力不够;而是不够坚定,总想以后会有人进来一起干。
你获得的好处是,不会有人跟你争论设计方案,不会有人讨厌你的编码规范。如果你发现做错了,通宵改掉就行,不用担心其他人的开发受到影响。过程本身,无论是苦是乐,都是值得回忆的记忆,乐趣不在于最后的结果。而且,做完了,东西再烂,你也至少拥有一个用户。
看了以后突然很多感触,尤其是最后一段。乐趣不在于最后的结果。
题目是因为刚突然听到一首歌,是萧煌奇的《只能勇敢》,歌词是写什么的没仔细听,歌名算是现在心情的一个写照吧。

Monday, July 18, 2011

关于理想

从前年到今年,一直比较匆忙,放弃了很多,也得到了很多。
应该要放弃去读PhD了,甚至选了一条相反的路,去工作了。很多朋友问起,我也只是轻描淡写几句,其实这对于我,确实是一个很艰难的决定。曾经有那么一段时间,我全心全意地想献身科研,这个想法当然现在还在继续。甚至今年年初找工作的时候,能不能继续做跟research相关的工作也成了最重要的原则。我越来越觉得research是一种做事情的态度,而不是一个职业。最后甚至没有去读研,则是想珍惜这两年的时光,不想把这几年花在我完全可以预见到的事情上,我想让这几年过的更有挑战性一些。
不管大家怎么评价老罗,他有几句话还是很有道理的,我摘几句:
有些鸟来到世间,是为了做它该做的事儿,而不是来躲枪子儿的。
通过干干净净地赚钱,让人相信干干净净地赚钱是可能的。
通过实现理想让人相信实现理想是可能的。
通过改变世界让人相信改变世界是可能的。
我很庆幸的是经历了这么多的事,我仍然没有放弃理想。有句话说“出发太久,以至于忘了当初上路的目的”。时刻提醒自己,坚持理想。

Thursday, March 17, 2011

两篇paper

[1] Ranking by calibrated AdaBoost, R. Busa-Fekete, B. Kégl, T. Éltető & G. Szarvas; 14:37–48, 2011.
[2] Web-Search Ranking with Initialized Gradient Boosted Regression Trees, A. Mohan, Z. Chen & K. Weinberger; 14:77–89, 2011.

两篇paper都来自Yahoo! Learning to Rank Challenge 2010的优胜者队。

介绍

[1] 主要用pointwise的方法作为学习器,在最后做model combination的时候用listwise的方法。主要的几个创新点:1)做了querywise的feature normalization; 2)用了Adaboost的多分类(没有用回归); 3)对于分类结果做了回归校准; 4)在最后做model combination的时候用了指数权重的方法(listwise)。在训练model时,用了不同的label grouping的方法,同时用了decision tree和decision products[4]作为base learner, 增加了model的多样性。在这篇文章中,listwise的model combination是亮点。

[2] 主要将Random Forests(RF)和Gradient Boosted Regression Trees(GBRT)做了一个sequence的combine.他们用RF得到了非常不错的效果,甚至比GBRT还要好。他们最后所用的方法是先用RF学习一个ranking function, 用这个ranking function的输出去初始化GBRT,做一个sequence 的combine, combine的结果要比他们单独的结果都要好。他们最后分析也认为,分类能比回归得到更好的效果,这个结论和[7]相同,很值得尝试。从他们的结果看,RF和GBRT的combine还是很有意义的,RF的一些优点在最后的model中都有体现,比如对parameter choice不敏感,不容易过拟合等。RF和GBRT的combine也解决了一个GBRT的缺点,因为GBRT是一个gradient boosting的方法,这一类方法存在一个trade-off, 就是step size和迭代轮数之间。如果要达到真正的global minimum, step size就必须很小,迭代轮数就必须增大,通过与RF的combine,对这个问题有所缓解,RF给了GBRT一个接近终点的start point, 这样即使step size比较小,也能比较快的结束迭代。

几个point

[Preprocessing] Raw Feature Normalization

如果用基于tree的分类器,global的normalization是没有意义的,这一类的分类器对于任何单调的变化都不敏感。对于learning to rank,大多数feature都是一些计数型的值[3],比如tf, df之类,绝对值之间的比较意义不大,一些很popular的词可能值会非常大。所以经常用一些querywise的方法做raw feature normalization.

[Preprocessing] Label Grouping

对于query-document的label, 表明了document和query的相关性,不可避免的带有标注人员的主观性。但是document和query是否相关,还是相对容易判断的。为了减少label noise,可以将相邻的label合并,合并方法可以有多种,如果用boosting的方法,用不同的label grouping的方法,可以增加model的多样性,减少label noise的影响。

Pointwise VS. Pairwise VS. Listwise

一般认为,pairwise和listwise的方法效果要好于pointwise[5][6], 但是复杂度也更高,训练model对于时间和memory的开销也更大。从今年Yahoo LRT Challenge来看,前12名公布的方法中,pointwise占80%. [1] 也尝试用了一些pairwise的方法,但在他们的实验中效果并不好,但最后model-combination的方法是一个轻量级的listwise的方法,效果提升很明显。虽然这样,[1]也提到,如果有足够的计算资源,对所用的pairwise或者listwise方法足够精通的话,pairwise和listwise的方法仍然是最好的选择,但是pointwise的方法也有很多优点,比如简单,计算低廉,鲁棒性很好。

Classification VS. Regression

大多数pointwise的方法都是用回归算法预测label. [1]用Adaboost构造了一个多分类器,最后通过回归校准得到了一个实数,但是回归校准对最后的效果提升帮助并不大。[2]所用的所有算法都是回归算法,但是线下也做了分类算法的评估,在他们的评估中,RF, GBRT, RF和GBRT combine的model如果用分类,效果在Yahoo和Microsoft的大多数数据集上都要好于用回归算法,评估方法为ERR和nDCG. [7]也得到了类似的结论,分类的效果要好于回归。

Feature Selection

GBRT是一个非常适合做ranking的算法[8][9],实际上2010 Yahoo Learning to Rank Challenge中成绩比较好的team基本上都或多或少用到了GBRT的各种变换[10]。包括Adaboost也都宣称可以handle noisy featues, 但根据以往的经验,feature selection也许还是需要尝试做一下。[11]也做了一些尝试。在LTR问题中,不管是提升效果或者效率,还是分析feature, 分析case,feature selection都有必要尝试做一下,在做feature selection的过程中,fature ranking, feature contribution都能得到,对于feature的分析也有助于提升结果和解决bad case的能力,提升learning算法的可控性。

总结

[1]和[2]都用的pointwise的方法,而且效果并不比pairwise和listwise的方法差,pointwise的方法有很多优点,前面都已经提过。对于LTR,pointwise的方法大多数都用regression,但[1]用的classification,[2]线下的评估也证明classification能得到更好的结果。[1]最大的亮点是最后model combination的时候用了listwise的方法,在后面的评估中也能看到效果很明显。[2]主要是结合了RF和GBRT的优点,用RF的结果初始化GBRT,使GBRT能有一个较好的start point,解决了GBRT很尴尬的一个trade off( step size和迭代轮数).最后的结果也比两个model单独的效果都要好。从两篇文章中,得到的主要信息有:1) raw feature的normalization,对于单个model的效果提升有比较重要的影响,对于如何normalization,要视具体算法,如果是tree-based算法,querywise的normalization效果在[1]中体现的还不错;2) 对于pointwise, pairwise还是listwise,不必拘泥于到底用哪种方法,要综合考虑效率,内存,效果,pointwise也可以达到很好的效果;3) 用分类来解决LTR也是一个很值得尝试的方向(可以根据分类的结果做回归校准);4)RF和GBRT的combine是一个很好的启发,结合了两个算法的优点; 5)在用boosting的算法时,即便base learner是pointwise的,在最后的model combination还是可以尝试一些listwise的方法,效果在[1]中提升很明显。

References

[1] Ranking by calibrated AdaBoost, R. Busa-Fekete, B. Kégl, T. Éltető & G. Szarvas; 14:37–48, 2011.
[2] Web-Search Ranking with Initialized Gradient Boosted Regression Trees, A. Mohan, Z. Chen & K. Weinberger; 14:77–89, 2011.
[3] http://research.microsoft.com/en-us/projects/mslr/feature.aspx
[4] Kegl and R. Busa-Fekete. Boosting products of base classifiers. In International Conference on Machine Learning, volumn 26, pages 497-504, Montreal, Canada, 2009
[5] Cao et al., Learning to rank: from pairwise approach to listwise approach. In Proceedings of the 24rd International Conference on Machine Learning, pages 129-136, 2007
[6] Valizadegan et al., Learning to rank by optimizing NDCG measure. In Advances in Neural Information Processing Systems 22, pages 1883-1891, 2009
[7] Li et al., Learning to rank using classification and gradient boosting. In Proceedings of the International Conference on Advances in Neural Information Processing Systems(NIPS), 2007
[8] Zheng et al., A general boosting method and its application to learning ranking functions for web search. Advances in Neural Information Processing Systems, 19, 2007
[9] Burges. From RankNet to LambdaRank to LambdaMART: An Overview. Microsoft Research Technical Report MSR-TR-2010-82, 2010
[10] http://learningtorankchallenge.yahoo.com/workshop.php
[11] http://jmlr.csail.mit.edu/papers/volume3/guyon03a/guyon03a.pdf

Friday, March 4, 2011

从杭州到北京

昨天是我在阿里的最后一天,断断续续算下来,也在阿里待了一年半了。中午跟大家聚餐,晚上集体去K歌,跟大家各种告别。告别难免的有一点伤感,在我不喜欢的事情里面,分别很早就占了一席。搬家是我一直不喜欢的事情,旅行我喜欢,但是不喜欢搬家。

去年rp走的时候,我说希望今年我check out的时候,是一个happy ending, 也是一个new start,确实是一个新的开始,但是不是happy ending,其实我真的不知道。

在阿里工作的这一年多,成长了很多,得到了很多人的指导和帮助,好像也找到了自己真正感兴趣,想做的东西。还是很感激阿里的,容许我从一个很生疏的新手慢慢熟悉,慢慢成长,甚至把有些东西交给我一个人做。最后几个leader找我谈话,没有留在阿里,我内心还是挺内疚的,我对阿里和阿里的很多人都很感恩的,这里有我敬重的老师,崇拜的师兄们,还有很nice的leader,最后没有留下来,还是有一点点自己的私心。一方面是想得到更多的成长,寻找更多的挑战,想在技术方面有更深入的了解,另一方面,有些事情,确实是只有在一些地方才可以做。至于大家普遍想到的待遇问题,其实是我考虑的最后一个因素。

阿里确实是一个很不错的公司,至少人与人之间比较真实。对阿里的那些同事和朋友们最想说的还是感恩和不舍,工作是暂时的,朋友却是一辈子的。

本来想学rp写一下在阿里的工作总结的,发现还是写成了抒情文,工作总结以后慢慢再说吧。

Saturday, February 19, 2011

青春是什么

白岩松有一次接受采访,他说,巴蒂当年退役的那天,他整天都关了手机,一个人在外面,突然就在那天感觉自己的青春逝去了。

2.14那天罗纳尔多也宣布退役了,地球太危险,他要回火星了。其实早知道这天会到,只是提前了半年。还是有种怅然若失的感觉,突然想起白岩松说的那段话,或许逝去的,是一代人的青春。

水源上又开始那老掉牙的讨论,梅西强还是R9强。我回骂了几个帖子后突然发现特别没意思,就像我对贝利没感觉一样,那些刚开始看球的同学们自然也对R9没什么感觉,他们刚开始看到的R9,可能已经是死过好几回的R9了。

其实我不是很懂足球,看的也不是很多,但我还是可以有自己喜欢的球星和球队,每当有他们的比赛,我会像个真球迷一样紧张和兴奋。我开始看球是98年世界杯,R9刚刚过去96,97的疯狂状态,但仍然是98年世界杯上最闪亮的外星人。那年我买了人生第一件球衣,巴西队的9号,黄色上衣,蓝色短裤,那年我个子还比较矮,穿着球衣能盖着屁股。这确实是一件我很珍惜的球衣,我一直穿到小到无法再穿,还都在我家里的衣柜。98年的决赛是我在马路上看的,在小姨家开的大排档。巴西0:3输给了法国。多少年以后我还再为那场比赛感到伤心和遗憾。

R9的荣誉和伤病史不用我罗列,他已然是他那个时代足球的代名词,他是真正的球王。

从国米离开让他受了很多非议,国米对他来说真的是恩重如山,不离不弃。02年在对拉齐奥的那场比赛,相信很多人都无法忘记,那个在场边失声痛哭的R9,别说是他,就算是我作为一个观众,都觉得遗憾非常,等了13年的冠军啊,就在最后一刻功亏一篑。跟库珀的矛盾让他有点精疲力竭,他选择了离开,我并不认为他是背叛,莫拉蒂对他如此关爱,他肯定也是做了很艰难的决定,最后即便在遭受了那么多非议,出于对莫拉蒂的尊重,他还是选择了沉默。

在足球场上奔跑了18年以后,他终于也累了,选择了一个这样浪漫的日子,让人们更加难以忘怀。

外星人走了,他带走的不仅仅是我们的遗憾和伤感,也是青春。

Tuesday, January 11, 2011

好久不见的朋友

早上收到老妈发来的短信,说一个小学同学的爸爸去世了。

心情突然好复杂,他是我小学时候最好的朋友,古惑仔流行的那段时间,我们还在我家拜过兄弟。我们称兄道弟地过了我这辈子最无忧无虑的一段时光,我们一起打游戏,去地里面偷菜,一起去打架,一起当优秀学生,一起帮家长干活,一起去师专的金鱼池捉鱼..任何一件事,都能让人怀念一辈子。

晚上跟老妈打电话问这件事,大家都觉得好意外,他爸爸也只比我爸大2岁,好多事情来的真是太突然了。

自从小学毕业后,就很少见他了,后来到了高中,就更少了,06年我准备从兰州到上海上大学,他来我家喝酒,那是小学毕业后第一次比较长时间聊天,他喝了很多。到大学后,就没有联系过了,甚至每次回家,都没有再见过,只是偶尔从我妈那儿听到些他的消息。听到他爸爸的消息,好想去他家看看,小学的时候经常去他家,去和他聊聊。可是现在我在杭州,隔了这么远,回去好难,只能让爸爸过去他家看看。他很有大哥的气质,韩寒有本书里写他有个兄弟很有大哥的气质,很有大哥的感觉,你会仿佛觉得,他爸爸见了他也得叫他大哥,当时觉得像是写他。

最近和老妈打电话,每次都问我车票买好了没,着急让我回去,说好久不见,很想。其实谁又不会想家,不会想亲人爱人呢,世上的人,不管是好人坏人,富人穷人,总有些共同的地方。不知道我们出来读书,赚钱,舍弃了很多友情,亲情,是为了什么。我去年见到一个人,说,“我这辈子就这样了,我过的好与不好,一点都不在意,我只要我身边的人都过的好”。

今天听到他爸爸去世的消息,好像一盆凉水从头到脚,一天都没缓过神来,生命真是说去就去的。

Friday, December 31, 2010

2010

2010马上就要结束了,也只剩几个小时而已。这不是一篇总结,跟去年一样,今年不写总结。

今年一整年,心情都暗暗的,好像有个东西罩住似的。也许到2011年会改善很多。这种不确定的状态很不好,至少,我很不喜欢现在的样子。晚上公司的人很少了,很多人今天早早就回去了。

下午跟唐总打了电话,说了很多没跟别人说起过的话题,说了一些自己难受的心情。晚上跟欣欣的妈妈打了电话问候了下,他们关心的,也是我关心的。本来想给爸妈也打个电话,刚打没人接,等会儿再试试。可能还要给郑龙打个电话,他心情一直不是很好。

2010是比较尴尬的一年,这一年我毕业了,从上海到了杭州,从学校到了公司,从apex到了阿里云。其实变化没那么大,这里的老师,师兄还都是apex熟悉的人。因为这一年太多的不确定性,让我过得有点累,很多长期的计划都没法做,很多事情没有好好做规划。

前年跨年的时候,我跟傅欣在思源湖的小白桥待到很晚。去年跨年的时候,也跟傅欣在一起。好像能记得的,都是认识傅欣以后的事了。到明年跨年的时候,不知道我会在哪儿,会在听什么歌,会跟谁在一起。

2011祝你好运,也祝我好运。

Saturday, November 20, 2010

Gnome环境Skype修改字体

Ubuntu下因为是gnome的桌面环境,刚装好的Skype字体非常难看,中英文都支持不够好。如果不想装KDE,用qtconfig就可以改字体了。

这里注意一下Qt的版本就好,我装的是Skyep 2.1 beta版,是依赖Qt4编译出来的,所以装qtconfig的话注意一下是要装Qt4-qtconfig. 装好之后在font tab设置一下字体就好,设置界面很简单。设置好之后重新启动Skype,这下看着舒服多了。

Wednesday, November 17, 2010

暂别RP和庆庆

和去年很相似的一幕,不过换了个角色。去年是他们送我,这次是我送他们,我们离开的竟然都是同一个地方。看了RP的blog,感觉他确实收获了很多,在阿里的这段时间也扮演了各种开发角色。RP和庆庆的技术都很好,从他们身上学到了很多东西。在阿里的这些师兄,第一次让我感觉到了师兄的感觉,很多事情都想问问他们的意见,不只是技术方面的。

祝RP和庆庆以后一切顺利,前程似锦前程似锦.. 希望明年我check out的时候,是一个happy ending,也是一个new start.