本文主要是介绍全文检索:倒排索引的理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一.定义:是基于单词-文档矩阵的一种存储形式,它描述了一个term词项集合和文档集合之间具有映射关系的数据结构。
1. term词项集合列表:定义要搜索的一些词。
2. 词项文档映射集合列表:定义单词id,单词,单词在文档中的位置,单词出现的频率,文档出现的频率等信息。
文档列表:
词项集合 :
词项文档映射表:
以单词“公司”为例,其单词编号为w0,文档频率为2(集合中有两个元素t1,t3),代表整个文档集合中有两个文档包含这个单词,对应的倒排列表为:{(t1;1;<16>),(t3;1;<23>)},其含义为在文档t1和文档t3出现过这个单词,单词频率都为1,单词“公司”在两个文档中的出现位置是16,23”。
注意:记录单词频率信息、文档频率信息的好处:
而利用单词频率信息、文档频率信息即可以对这些候选搜索结果进行排序,计算文档和查询的相似性,按照相似性得分由高到低排序输出,此即为搜索系统的部分内部流程。
二,使用倒排索引的优点:
1.可以根据单词快速获取包含这个单词的文档列表,提高查询效率。
都看到这里了,就顺手点击左上角的【关注】按钮,点击右上角的小手,给个评论,关注一下,再走呗!☺
这篇关于全文检索:倒排索引的理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!