一、倒排索引
建立索引时,将文档分词
后生成Token,建立Token到文档的映射,表示Token在这些文档里出现过。
Token | 文档 |
---|---|
token1 | doc1、doc2 |
token2 | doc2、doc3 |
token3 | doc2、doc4 |
查询时,将查询文本分词后生成Token,比如生成了token1、token2和token3,那么文档doc2中含有查询文本的3个分词,而doc1仅含有查询文本的1个分词,因此doc1比doc2相关度高。
二、倒排索引的数据结构
- 关键词的doc list
- 关键词在每个doc中出现的次数(TF)
- 关键词在整个索引中出现的次数(IDF)
- 关键词在当前doc中出现的次数
- 每个doc的长度越长,相关度越低
- 包含整个关键词的所有文档的平均长度