首页 > 其他分享 >2-分词与倒排索引

2-分词与倒排索引

时间:2023-09-23 12:24:00浏览次数:32  
标签:倒排 位置 单词 索引 文档 分词

什么是全文检索

  • 全文检索是指计算机索引程序通过扫描文章中的每一个词。
  • 对每一个词建立一个索引,指明该词在文章中出现的次数和位置。
  • 当用户查询时,检索程序就根据事先建立的索引进行查找。
  • 将索引中单词对应的文本位置、出现的次数返回给用户。
  • 因为有了具体文本的位置,所以就可以将具体内容读取出来了。

正排索引

文档 id 到文档内容和单词的关联,类似于 MySQL 的 Id 主键那样

倒排索引

单词到文档 id 的关联

倒排索引原理

image-20220105223422777

倒排索引项:

  • 文档 ID:用于获取原始信息
  • 单词频率 TF:记录该单词在该文档中的出现次数,用于后续相关性算法
  • 位置 Position:记录单词在文档中分词的位置,用于语句搜索 (phrase query)
  • 偏移 Offset:记录单词在文档的开始和结束位置,实现高亮显示

标签:倒排,位置,单词,索引,文档,分词
From: https://www.cnblogs.com/lzAurora/p/17724171.html

相关文章

  • 5-IK分词器安装
    ES的默认分词设置的是standard,会单字拆分进行拆分。POST_analyze{"analyzer":"standard","text":"我是中国人"}概述IKAnalyzer是一个开源的,基于Java语言开发的轻量级的中文分词工具包。下载Ik分词器下载地址:https://github.com/medcl/elasticsearch-anal......
  • 痞子衡嵌入式全部原创文章 - 汇总索引
    --------------------------------------------------------------------------------------职场经验与见闻感悟痞子衡在嵌入式行业也摸打滚爬了不少年,有一些个人经验可以给大家参考。所谓他山之石可以攻玉,希望痞子衡的经验对大家的职场之路有所帮助。职场经验篇(持续更新中........
  • 索引
    什么是索引?索引是再数据库表上添加的,是为了提高查询效率而存在的一种机制,一张表的一个字段可以添加一个索引,当然,多个字段也可以联合起来添加索引。索引相当于一本书的目录,通过目录可以快速找到我们需要的数据。注意MySQL中的索引需要进行排序,并且这个索引的排序和TreeSet数据结构......
  • 搜索引擎喷一喷
    1.bing搜索 childContextTypes和getChildContext搜出的结果不如google优质,google会直接显示React的文档,第一条就是精准的结果  bing搜索出的都是博客,居然第一页搜到了本人的博客,本人这篇写的还不错2.bing在网络不好的时候,会显示该词条搜索不到结果,不是搜索不到,而是网......
  • 在“百模大战”重生,搜索引擎又行了?
    文丨智能相对论作者丨沈浪“我想让人们知道,是我们(微软)让他们(谷歌)‘跳舞’。”当加入ChatGPT功能的新一代Bing上线,微软CEO纳德拉就已经按耐不住向谷歌发起了挑战。他认为加入新一代人工智能对搜索是一次重新思考的变革,从现在开始,包括核心排名在内的几乎所有东西都可以重新想象。微软......
  • nlp八股-中文分词
    分词基于字典的分词,基于标注的分词基于字典的分词基于字典博客列出所有分词可能,算出每种分词概率马尔可夫假设:每个词的出现只跟前一个词的出现有关n-gram:每个词的出现跟前n-1个词有关构建有向无环图,viterbi算法求最优路径效率更高jieba分词原理加载字典,生成......
  • 搜索引擎排名因素有哪些具体的细节?
    搜索引擎排名因素有很多,以下是一些常见的因素:关键词密度和位置:搜索引擎会考虑关键词在网页上的出现频率和位置。关键词密度指的是关键词在网页内容中出现的频率与整个文本的比例。关键词的位置也很重要,例如,如果关键词出现在页面的顶部或标题标签中,则更有可能被搜索引擎重视。页......
  • Oracle数据库索引
    索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。数据库索引什么是索引数据库索引好比是一本书前面的目录,能加快数据库的查询速度。例如这样一个查询:select*fromtable1whereid=44。如果没有索引,必须遍历整个表,直到ID等......
  • Lucene为数据库建索引
    如果要构建一个全文检索系统,并且文章全部保存在数据库中,那下面的例子会有很大的帮助.importjava.sql.*;importorg.apache.lucene.analysis.standard.StandardAnalyzer;importorg.apache.lucene.document.Document;importorg.apache.lucene.document.Field;importorg......
  • 慢SQL原因分析之索引失效
    现象最近收到一个慢sql工单,慢sql大概是这样:“selectxxxfromtabelwheretype=1”。咦,type字段明明有索引啊,为啥是慢sql呢?原因通过执行explain,发现实际上数据库执行了全表扫描,从而被系统判定为慢sql。这时有一定开发经验的同事会说:“字段区分度不够,这种字段作单独索引是......