分词与倒排索引
什么是全文检索
- 全文检索是指计算机索引程序通过扫描文章中的每一个词。
- 对每一个词建立一个索引,指明该词在文章中出现的次数和位置。
- 当用户查询时,检索程序就根据事先建立的索引进行查找。
- 将索引中单词对应的文本位置、出现的次数返回给用户。
- 因为有了具体文本的位置,所以就可以将具体内容读取出来了。
正排索引
文档 id 到文档内容和单词的关联,类似于 MySQL 的 Id 主键那样
倒排索引
单词到文档 id 的关联
倒排索引原理
倒排索引项:
文档 ID
:用于获取原始信息单词频率 TF
:记录该单词在该文档中的出现次数,用于后续相关性算法位置 Position
:记录单词在文档中分词的位置,用于语句搜索 (phrase query)偏移 Offset
:记录单词在文档的开始和结束位置,实现高亮显示
标签:
ElasticSearch
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具