排名和邻度
到目前为止,我们一直专注于匹配阶段:为一个给出的查询高效地找出所有命中的问题。不过正如之前强调的,第二个阶段“排名”对于一个高质量的搜索引擎是绝对必不可少的:这是挑选出前几个命中并展示给用户的阶段。
让我们更细致地来检验排名的概念。一个网页的“排名”究竟取决于什么?真正的问题不是“这个网页和查询匹配吗”,而是“这个网页和查询相关吗”。计算机科学家们使用“相关度”(relevance)这个术语来形容一个结果网页和某个特定查询有多么相配或多么有用。
举个具体的例子,假设你对导致疟疾的原因感兴趣,并在一个搜索引擎中输入查询malaria cause(导致疟疾)。简化考虑,假设搜索引擎对这一查询只有两个命中——下图显示的两个网页。现在来看看这两个网页。作为人类,你很快就知道第1页和疟疾起因有关,而第2页似乎是对刚刚发生的一些军事行动的描述,只不过恰巧使用了“cause”和“malaria”这两个词。因此,和第2页相比,第1页无疑和查询malaria cause更具相关性。可计算机不是人,让计算机理解这两页的主题也很难,似乎不可能让搜索引擎正确地对这两个命中进行排名。
不过,事实上,有一种很简单的方法让这个例子中的排名正确。查询词彼此相邻的网页比那些查询词相距很远的网页相关度更高。在疟疾这个例子中,“malaria”和“cause”在第1页中仅相距1个词,而在第2页中则相距17个词。(记住,搜索引擎只通过查看索引项就能高效地发现这一点,无须返回查看网页。)因此,尽管计算机并不真正地“理解”查询的主题,它也能猜测网页1比网页2更具相关性,因为网页1查询词之间的距离要比网页2更近。
总而言之,尽管人们不经常使用NEAR查询,搜索引擎也在不断地使用和邻度有关的信息,提高搜索排名。而它们能高效地做到这点的原因则是,它们使用词位置把戏。
一个网页范例集,每个网页都有一个标题和一段正文。
我们已经了解到,早在距今5 000年以前,巴比伦人就开始使用索引。而词定位把戏也不是由搜索引擎发明的:这是互联网出现以前,另一种信息检索中用到的著名技术。不过,在下一部分,我们将了解一个看起来的确是由搜索引擎设计者发明的新把戏:元词把戏(metaword trick)。对这一把戏和众多相关思想的精巧运用,使AltaVista搜索引擎在20世纪90年代晚期迅速成为搜索行业的领头羊。