美文网首页
搜索引擎索引-倒排索引

搜索引擎索引-倒排索引

作者: 何小Ai同学 | 来源:发表于2018-08-23 14:43 被阅读60次

倒排索引基础


倒排索引基本概念示意图

倒排索引示范

Elasticsearch中使用一种称为倒排索引的结构,适用于快速的全文搜索。
一个倒排索引由文档中所有不能重复词的列表构成,对于其中每个词,有一个包含它的文档列表。

示例:

1、假设文档集合包含五个文档,每个文档内容表所示,表的最左端一栏是每个文档对应的文档编号,我们的任务就是对这个文档集合建立倒排索引。


2、中文和英文等语言不同、单词之间没有明确分隔符号,所以首先要用分词系统将文档自动切分成单词序列。这样每个文档就转换为由单词序列构成的数据流,为了系统后续处理方便,需要对每个不同的单词赋予唯一的单词编号,同时记录下哪些文档包含这个单词,在如此处理结束后,我们可以得到最简单的倒排索引。
“单词ID”一栏记录了每个单词的单词编号,第二栏是对应的单词,第三栏即每个单词对应的倒排索引。

3、索引系统还可以记录除此之外的更多信息,下表还记录了单词频率信息(TF)即这个单词在某个文档中出现的次数,之所以要记录这个信息,是因为词频信息在搜索结果排序时,计算查询和文档相似度是很重要的一个计算因子,所以将其记录在倒排列表中,以方便后续排序时进行分值计算。


4、倒排列表中还可以记录单词在某个文档出现的位置信息
(1,<11>,1),(2,<7>,1),(3,<3,9>,2)
有了这个索引系统,搜索引擎可以很方便地相应用户的查询,比如用户输入查询词“Facebook”,搜索系统查找倒排索引,从中可以读出包含这个单词的文档,这些文档就是提供给用户的搜索结果,而利用单词频率信息、文档频率信息既可以对这些候选搜索结果进行排序,计算文档和查询的相似性,按照相似性得分由高到低排序输出,此即为搜索系统的部分内部流程。

示例:

1. The quick brown fox jumped over the lazy dog
2. Quick brown foxes leap over lazy dogs in summer
倒排索引(x代表存在于的文档中):
3.搜索quick brown(计算相关度分数时,文档1的匹配度高,分数会比文档2高):
4、标准化规则(normalization):

Quick 和 quick 以独立的词条出现,然后用户可能认为它们是相同的词。
fox 和 foxes 非常相似,就像 dog 和 dogs,它们由相同的词根。
jumped 和 leap ,尽管没有相同的词根,但是它们的意思很相近,是同义词。
搜索含有 Quick fox的文档是搜不到的。
使用标准规划规则,建立倒排索引的时候,会对拆分出的各个单词进行相应的处理,以提升后面搜索的时候能够搜索到相关联的文档的概率。

相关文章

  • Elasticsearch使用

    一、搜索引擎基础 搜索引擎是倒排索引,Elasticsearch必须成为索引才支持查询搜索引擎两大组件:搜索组件:...

  • 用Golang写一个搜索引擎(0x02)--- 倒排索引技术

    这一篇,我们来说说搜索引擎最核心的技术,倒排索引技术,倒排索引可能需要分成几篇文章才说得完,我们先会说说倒排索引的...

  • 设计数据持久层(下):案例介绍

    搜索引擎 搜索数据的存储该怎么设计呢? 倒排索引 (Inverted Index) “倒排”,指的是存储的结构不再...

  • Lucene、Elasticsearch、Kibana 入门教程

    信息检索模型 信息检索模型最重要的概念就是倒排索引,倒排索引是搜索引擎中常见的索引方法,用来存储在全文搜索下某个单...

  • 2017 12-01 ELK的应用

    一.搜索引擎的介绍 (1)索引组件:获取数据-->建立文档-->文档分析-->文档索引(倒排索引)(2)搜索组件:...

  • 倒排索引原理简析

      倒排索引是一种源于搜索引擎中根据关键字对文档进行搜索的技术,lucene就是基于倒排索引实现的。这种索引表中的...

  • MapReduce算法模式-倒排索引模式

    一、倒排索引 倒排索引,是一种为了提高搜索效率而创建的索引,是一种数据结构。在搜索索引中输入关键词,然后让搜索引擎...

  • 搜索引擎索引-倒排索引

    倒排索引基础 倒排索引示范 Elasticsearch中使用一种称为倒排索引的结构,适用于快速的全文搜索。一个倒排...

  • 机器学习基础——倒排索引与搜索引擎

    本文始发于公众号:TechFlow 今天的文章,我们继续探讨搜索引擎,和大家聊聊搜索引擎最重要的一环——倒排索引。...

  • 【ES】ElasticSearch analyzer 和 ana

    [TOC] 一、分词 搜索引擎的核心是倒排索引,而倒排索引的基础就是分词。所谓分词可以简单理解为将一个完整的句子切...

网友评论

      本文标题:搜索引擎索引-倒排索引

      本文链接:https://www.haomeiwen.com/subject/jdzpiftx.html