淘客熙熙

主题:【原创】Google的挑战者Cuil -- 邓侃

共:💬39 🌺63 新:
全看分页树展 · 主题
家园 【原创】Google的挑战者Cuil

2008年7月28日,对于IT业界来说,或许是一个划时代的日子。Google的挑战者,Cuil(音Cool)上线了。

想挑战Google的公司很多,为什么Cuil 这么受人关注?

[1] 原因一,人

Cuil之所以可怕,最主要的是因为它的几个核心人物,掌握了Google的核心机密。

其中Anna Patterson和Russell Power是Google的前雇员,直接负责Google的索引和Page Ranking工作。

Louis Monier是最早的搜索引擎,AltaVista的创始人之一,后来加入eBay,负责搜索引擎工作。再后来,也加入Google,主管一个垂直搜索产品。

Cuil的CEO,Tom Costello, 虽然不是Google出身,但是在搜索引擎领域,也经营已久。他是Stanford计算机系的博士,毕业后留校任教,直到2000年,入职IBM,负责 WebFountain的研发工作。WebFountain区别于其它搜索引擎的特点,是给文章分类。同时,Tom是Anna的丈夫,从某种意义上说, Cuil是一家夫妻店。

[2] 原因二,规模

在Cuil的主界面里,有这么一行小字,“Search 121,617,892,992 web pages”。而且,这个数字将会不断增大。

讨论Cuil的文章陆续出现,有不少论者认为,Cuil的索引规模大,甚至超过了Google的索引的规模。索引大的好处是,用Cuil可以找到在Google搜索不到的网页。

果真如此吗?

2008年7月25日,Google官方博客中有这么几个数字。1998年,Google刚上线的时候,它的索引涵盖了大约26,000,000个网页。到了2000年, Google的索引增加到了大约1,000,000,000个网页。而目前,Google的索引进一步增加到了大约 1,000,000,000,000个网页。

如果Google和Cuil都没有说谎,那么Cuil的涵盖量非但不比Google的大,反而要小8倍。

尽管可能不比Google的大,Cuil的索引不小,这是不争的事实。所以,从网页的涵盖规模来讲,Cuil有实力与Google一拼。

[3] 原因三,信息分类

Google之所以成功,很大程度上取决于它能找到用户想要找的网页。从技术上讲,PageRanking被证明是一个行之有效的,对结果排序的算法。

Cuil不仅对搜索结果排序,而且对结果分类。譬如你搜索“Olympic games”,Cuil把搜索到的结果分为几类,包括夏季奥运会,冬季奥运会,古代奥运会等等。

不仅对搜索结果分类,而且把每一个类,再进一步细分为若干子类,依此类推,形成一个树状结构。

Cuil的界面设计,反映了分类的树状结构的顶部三层节点的内容。

如果把所有搜索结果看成是一棵树的根节点,那么Cuil界面上半部的横向的Tab,枚举的是根节点以下第一层的节点。

而Cuil界面右边的纵向的Drilldown,枚举的是第二层和第三层节点。当用户点击不同的Tab,Drilldown里的内容也相应变换。

反映三层分类的界面设计,用户体验是否好?

我把自己当着实验室的白老鼠,亲自体验了几天,感觉是,1. 层次不是关键问题,三层可以,两层其实也不错。2. 不满意的是分类不准确。明明已经进入“夏季奥运会”子类,偏偏还是看到冬运会的网页。

[4] 分类是否有意义

譬如你想搜索诺贝尔经济学奖得主,科斯在2008年7月14日,在“中国经济改革”学术研讨会的开幕致词,你不需要分类,只需要排序。

如果搜索的目标明确,只需要排序,不需要分类。

如果搜索的目标不明确,走马观花,分类是一个友好的提示,它帮助你把模糊的期望,转变成明确的目标。

[5] 是分类,还是聚类,这是一个问题

从Tom以往的论文猜测,Cuil实现搜索结果分类的办法,是根据网页内容,把网页聚类(clustering)。

Cuil表面上看是分类(classification),而暗地里是聚类(clustering),岂不是自相矛盾?个人认为,这个问题无妨大雅。不管是什么实现手段,对于用户而已,只要分类做得正确即可。Clustering也好,classification也好,甚至人工分类也好,可以兼容并蓄,相辅相成。

Cuil目前偏重于clustering,大概是因为clustering更好操作。

据说常用的英文单词只有两万多个。如果把每一个单词作为一个坐标轴,轴上的刻度是对应单词出现的频率,那么每篇网页都是这个两万多维的空间中的一个点。

如果把所有网页都作为一个点,投射到这个两万多维空间里去,会发现这些点的分布不是均匀分布的,它们像云朵一样围绕着几个中心。聚类算法的目标,就是发现这些云朵的中心,以及云朵的边缘。

[6] 聚类面临的难题,主题的缺失

当用户搜索“Olympic games”的时候,Cuil搜索到了很多相关网页,这些网页三三两两聚集成几朵云。如何给着几朵云取名是一个问题。Cuil把它们命名为“夏季奥运会”,“冬季奥运会”,以及“古代奥运会”。问题是,这些名字是怎么来的?

解决方案 1,根据每朵云的中心所对应的词命名,尤其是那些高频出现的词。但是高频词和主题词并不总是一致的,主题词是概括。一篇主题是冬季奥运会的文章中,高频词很可能是“滑雪”和“滑冰”,而不是“冬季奥运会”。所以,这个方案不太可行。

解决方案 2,预先构建一个语义网(semantic network),罗列出所有的常见词,以及词与词之间的关系。词与词的关系包括从属,同类,同义,反义等等。然后根据每朵云的中心所对应的词,找到他们共同的,而且是最小的属类。

譬如,“滑雪”和“滑冰”的最小属类是“冬季运动”,而不是泛泛的“运动”。又譬如,如果在文章中,不仅高频出现“滑雪”,“滑冰”这两个词,而且也出现“奥运”这个词,那么“冬季运动”这个属类的范围太小,需要进一步扩大,于是“冬季奥运会”成为一个合适的概括。

构建语义网(semantic network)可不是一件容易的工作。Princeton大学的研究者们制作了一个wordnet。但是用户们对wordnet不满意,原因,1.涵盖范围不广, 2. 实用性还有待提高。

譬如,假设我们想做一个生活搜索引擎,当用户输入“牙膏”,期待搜索引擎返回日用百货品商店。但是如果依赖wordnet,搜索引擎找到的,不是百货品店,而是牙科诊所。

解决方案 3,预先构建一个分类树(taxonomy)。譬如,音乐可以分为古典,爵士,摇滚等等。而古典又可以进一步细分为协奏曲(concerto),奏鸣曲(sonata)和交响乐(symphony)等等。然后找到和每朵云最相关的分类树的节点。所谓“找到”,实际上就是分类(classification)的工作。

分类树和语义网不同,它的目标不是涵盖所有词,以及所有词与词的关系。它关注的,是如何用一颗最小树,把所有内容分类。所以,比较分类数和语义网,最明显的区别是分类树比语义网,在尺寸方面要小的多。

分类树比语义网要容易构建,事实上,任何门户网站,如新浪和Yahoo!的主版面,都隐含着分类树。譬如,新浪新闻的主版面,把新闻分为政治,财经,军事,社会,体育,娱乐等等。而体育新闻又被细分为奥运,足球,篮球,田径,甚至体育彩票等等。

分类树的方案最容易操作。但是缺点是现有的分类树涵盖范围有限,需要进一步扩大。以往分类树的构建,都是人工完成,如果要进一步扩大树的规模,有没有办法让机器自动完成,或者机器和人工协作完成呢?

[7] 人立方启示录

2008年8月1日,就在北京奥运会即将开幕前夕,设在北京的微软亚洲研究院,公布了一条具有轰动性的科研成果,他们把这个成果命名为"人立方 "。我们知道奥运游泳场馆的名字叫“水立方”,水立方这个名字比较贴切,因为场馆外形是一个四四方方的盒子,而盒子里面主要是水池。但是人立方是什么呢?

我们不妨亲自体验一下,http://renlifang.msra.cn。

譬如,你可以去查查周杰伦的人际关系。你会发现,他与萧邦的关系是偶像,与蔡依林的关系是女友,而与李宇春的关系是新欢。 你也可以用它来查查你自己的人际关系图。

通常来讲,你的媒体曝光度越高,人立方的准确性就越高。反过来,如果你发现人立方对你的关系网描述极其不准,在责备人立方的质量之前,可能你应该先认识到,做人低调,是美德,但是同时也给人立方制造了难题。

既然我们有能力来发现人与人的关系网,我们也可以研究词与词,词组与词组的关系。不妨给这个技术取个名,“词立方”。或许你会问,词立方和wordnet不是一回事吗?有两个区别。

区别 1. Wordnet涵盖所有单词,而词立方不追求涵盖所有单词,它只关注用户经常搜索的那些词,还有词组。

区别 2. Wordnet的构建,主要依赖于语言学专家们人工定义每个词的含义,以词与词的相互关系。而词立方的构建依赖于统计。

通过统计,我们知道“滑雪”和“冬奥会”这两个词之间存在很强的统计相关性,但是我们并不清楚它们之间是从属关系。

我们需要不需要知道词与词的关系?换句话说,是不是知道词与词的统计相关性就足够了?

[8] 人有交际花,词有。。。?

1998年,美国圣母大学的物理学教授Albert-Laszlo Barabasi写了一本书,书名叫“链接,网络的新科学(Linked,new science of networks)”。

我们通常以为,大多数人的平时交往的人数应该在20-30人之间。有些人特别热衷社交,他们交往的人数会多一些。还有一些人习惯于离群索居,他们交往的人数低于20人。所以,人的社交范围应当服从正态分布。

但是Barabasi的研究结果表明,人的社交范围服从正态分布这个设想是不成立的,正确的分布是幂次分布(Power law distribution)。通俗一点讲,20%的人的交友面非常广泛,譬如公众人物,他们是人际关系网的中枢(hub)。而80%的芸芸众生,他们的交友面十分有限。

我们可以沿用人立方的做法,分析一下词与词的相关性。词与词的相关性的分布,是服从正态分布还是幂次分布?这将是一个有趣的问题。

Barabasi的猜测是服从幂次分布。如果他的预言是正确的,那么对于网页聚类(clustering)而言,这是一个非常好的消息。

我们前面提到,据说常用的英文单词只有两万多个。如果把每一个单词作为一个坐标轴,轴上的刻度是对应单词出现的频率,那么每篇网页都是这个两万多维的空间中的一个点。

如果把所有网页都作为一个点,投射到这个两万多维空间里去,会发现这些点的分布不是均匀分布的,它们像云朵一样围绕着几个中心。聚类算法的目标,就是发现这些云朵的中心,以及云朵的边缘。

问题是,在两万多维的空间里,网页对应的点的分布,会非常分散。分散到很难确定云朵的中心和边缘。

如果词与词的关系是服从幂次分布的,我们就可以用那些少量的中枢词(hub words)去替代两万多个常用词,这样我们就不必在两万多维的空间里,分析云的中心和边缘,而是在低度空间里去做同样的事情。这样,聚类的难度将会大大降低。

[9] 关于“理论的终结(The End of Theory)”

Chris Anderson,是美国著名IT杂志,连线(Wired)的主编,他因为写作“长尾(The Long Tail)” 一书而名声大噪。Chris早年是学物理的,毕业后曾经去美国Los Alamos国立实验室任职。Los Alamos lab,于二战后期成立,最初的目标是研制原子弹,即使到了今天,它仍然是从事核物理研究的重镇。被诬陷向中国泄露核机密的李文和,就是在这个实验室工作。但是Chris并没有埋头于物理方面的研究,他花了很多时间给杂志写稿,后来,干脆入职“经济学家(Economist)” 杂志,成了专职作家。

2008年6月23日,Chris发表了一篇题为“理论的终结”的文章。对于一个曾经的物理学家而言,这篇文章非常离经叛道。物理学家的理想,是把现实世界观察到的现象,简练地概括成一个模型。譬如,牛顿第二定律F=aM就是一个光辉的典范。

听听Chris怎么说,http://www.wired.com/science/discoveries/magazine/16-07/pb_theory

“从宇宙运动的等式到人类行为的理论,模型似乎能够圆满地解释我们周围的发生的一切,即便不能说完美。但是,这一切到今天该结束了。今天,像Google这样的公司,他们从海量数据的时代崛起,他们不需要甄别什么模型是错误的,其实,他们根本不需要模型。”

“忘却分类树(taxonomy),语义网以及心理学吧。谁知道人们为什么去做他们做的事,关键是,他们做了。而我们,可以跟踪,可以测量,我们拥有史无前例的跟踪和测量的精度。如果有了足够的数据,让数字自己发言。”

“科学家们都接受过训练,如何正确识别什么是相关性,什么是因果关系。如果仅仅观察到X和Y之间存在某种相关性,这种相关性或许不过是一个巧合,它不能说明任何问题。正确的做法是,你必须理解联系X和Y之间的隐含的机制。一旦你有了描述这个机制的模型,那么你就会对数据有信心。离开了模型,数据不过是噪音。但是面对海量数据,传统的科学方法,假设--模型--证实,过时了。”

“现在有一个更好的办法。海量数据让我们有底气说,‘有相关性就够了’。我们不必苦苦追寻模型,不做假设,我们照样可以分析数据,分析数据呈现的模式。我们可以把数据扔进史无前例的最大规模的计算机集群,让统计学算法去发现数据呈现的模式,对于传统的设定模型的办法而言,这个任务是无法做到的。”

“时机非常好,我们有海量的数据,我们有统计学工具去消化这些数据,有了这两条,我们就可以用一种新的方式去理解世界。相关性超越了因果关系。即便离开了自洽的模型,统一的理论等等机制,科学照样可以前进。”

“没有理由念念不忘旧的科学方法。我们现在该问的问题是,科学应该向Google学习什么?”

[10] 理论终结了吗?

Chris的文章非常精彩。但是心平气和地想一想,基于统计手段对海量数据的处理能力,是不是宣告了模型的终结?我个人的看法是,Chris的看法似乎有点偏激。两个原因。

1. 统计依赖于概率分布的设定,譬如在做聚类的时候,对每朵云的分布做不同的假设,例如是正态分布还是幂次分布,计算出的云中心会大相径庭。统计和模型不冲突。

2. 相关性不能完全取代因果关系。譬如一个用户搜索“恶心,乏力,低烧”,他实际上是在询问他得了什么病。搜索引擎理想的结果,应当是有关疾病的症状,进一步诊断的手段如验血,CT拍片等等,以及治疗的方法,如药物,手术等等。

类似的问题,不仅包括疾病诊治,还包括车辆维修,家电维修,甚至企业经营健康状态诊断等等诸多问题。在处理这些诊断类型的搜索问题时,贝叶斯因果关系模型(Bayesian inference network)或许会是一个非常有效的解决办法。

[11] Cuil,突破搜索引擎的传统定义

以Google为代表的传统搜索引擎,它的任务是查询与用户输入的关键词相关的网页。Cuil比Google前进了一步,它对查询到的网页,做了分类。分类的意义有两条。

1. 与用户的对话,帮助他明确真正的搜索目标。

2. 整理知识,而不是单纯地罗列网页。

但是与用户的对话,以及知识的整理,解决的办法不仅仅限于分类,贝叶斯因果模型,Wikipedia,都给了我们重要的启示。

Cuil的可贵在于,它突破了Google设定的搜索引擎的传统定义。

关键词(Tags): #Google#搜索引擎#互联网#数据挖掘元宝推荐:铁手,

本帖一共被 2 帖 引用 (帖内工具实现)
全看分页树展 · 主题


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河