
Google 的Gary Illyes 在上一个Search Off The Record 播客中花了很多时间谈论信息检索。如果您还没有深入阅读过有关此主题的任何内容,我强烈建议您听听Gary 所说的话。
这是Gary 的一次非常有用的复习,他深入研究了Google 如何处理信息检索,包括Google 如何处理相关性和多阶段排名系统。他对排名进行了更多研究,甚至对同义词进行了深入研究,特别是买卖同义词。是的,买和卖是同义词,但谷歌甚至对同义词的权重不同,在这种情况下,作为购买的同义词,买和卖的权重低于购买。他们更深入地研究如何为买卖页面或采用我的页面编写内容页面。这很酷。
这一切都从播客的25:23 开始,所以点击下面的播放,它应该从那里开始。
如果您不想看而喜欢阅读,这里是成绩单:
我认为在之前的一集中,我们讨论了查询解析和理解,并简要介绍了同义词。例如,如果您搜索“购买汽车”之类的内容,则搜索范围将扩展到“购买汽车”和“购买汽车”或“购买汽车”等。
然后我们在索引中搜索所有这些词,对吗?因为它可能对某些人有帮助。现在,搜索索引,这是一个重载的术语,因为我们在查找这些单词时实际上并没有遍历整个索引。我们有一些我们之前介绍过的东西——称为发布列表的东西。这本质上是将术语映射到包含这些单词的页面或文档。
例如,我们可以很容易地识别出“汽车”一词出现在文档A、B、C、D、E、F 和G 中。然后“购买”出现在——我不知道——B、C、 D、E、F、G。从技术上讲,最简单的形式是返回两组的交集。基本上,您将返回B、C、D、E、F、G,因为这些是包含这两个词的文档。
事实上,事情并没有那么简单。我们会将两个或所有文档返回到我们的服务系统,并让它处理与查询不够相关的文档。
现在,相关性是一个有趣的概念,因为它是由多种因素决定的。一件事是,有一部分植根于查询本身,您可以说我的原始术语是“买车”或“买车”——我们删除了“a”,因为它与查询无关。所以我们会“买车”。然后这些将是我们最好奇的术语。这些是我们在结果集中真正想要的术语。
你可以说这些词在排序过程中的权重最高,在排序过程中。我们扩展查询的所有内容,例如“purchase auto”,其权重都低于原始术语,因为这不是用户搜索的内容——它只是与用户搜索内容相关的术语,并且可能有帮助,但这不是用户搜索的内容。
我们也将寻找这些术语,但我们会认为它们的相关性低于原始术语的相关性。在第一阶段,我们将检索所有可以检索的文档。基本上,如果我们有十亿个包含“买车”一词的文档,那么在第一阶段,我们会将所有这些十亿个文档收集到一个全局中。
然后一个排序机制启动,这基本上是我们的排名系统,它将创建一个包含所有十亿文档的反向排序列表,并在大约1,000 处进行削减。然后这1,000 个文档将在服务中被推上去——我不知道为什么我在这里用手比划,因为没有人能看到它——但基本上,这1,000 个文档被推回给用户。
在这里,我提到了一点关于排名的问题,我认为这本身就是下一集的主题——我们不会去那里。但是一旦我们有了这1000 个文档,基本上,我们就可以开始为它们提供服务了。而且他们还没有完成排名。基本上,我们只是根据我们拥有的一些信号创建了一个排序列表,但我们需要更多信号来完成对这1000 个文档的排序。基本上,按照我们认为对用户来说没问题的顺序对它们进行排序。
这发生在排名的另一个阶段。但是此时,我们可以将这些结果提供给用户,并且在大多数情况下,他们可能已经接受了。在我们的 [live for] 查询类,通常我们会显示这些预排序的列表,而且通常看起来还不错。当然,你可以搜索奇怪的东西,众所周知,互联网上有奇怪的东西,所以有时你会在这些预先排序的列表中看到非常奇怪的东西。这就是为什么进一步排名很重要的原因。
例如,我不想要关于菠萝披萨的结果,并且这些结果会被非常激进地降级,至少在我的情况下是这样。但是在预排序的列表中,它仍然存在,因为排名还没有完成。
然后约翰·穆勒展开:
约翰·穆勒:好的。所以这基本上发生在我们拥有的不同类型的索引中?
加里·伊利斯:对。
约翰穆勒:或者这几乎是一个不同的话题?
Gary Illyes:在这一集的上下文中,我们只讨论网络索引,而不是图像索引、视频索引或诸如此类的东西,因为它们的工作方式略有不同,我从未研究过它们,所以我不能权威地谈论它们, 我猜。
约翰·穆勒:好的。
Gary Illyes:在网络索引上,我确实工作过,所以我对它的了解比我们拥有的任何其他索引都多。
这是Gary 提到的关于Paul Haahr 演讲的视频:
论坛讨论在 推特.