搜索引擎中的查询模型
posted by Andrew (justAStriver@gmail.com)
2013-03-03
搜索排序也是搜索引擎的核心部分,技术已经比较成熟,其中的查询检索模型主要有以下几个:
1.布尔模型
布尔模型是最简单的查询模型,文档包含查询词标记为1,否则为0,最后通过使用与或关系进行匹配。如用户查询词A && B && (C || D),假设只有4个文档,包含查询词A,B,C,D的文档分别为A(1,0,0,1);B(1,0,0,0),C(1,1,1,0),D(0,0,1,1),则包含A&&B的文档为(1,0,0,0),包含C||D的文档为(1,1,1,1),则A&&B&&(C||D)为(1,0,0,0),即最后返回文档1。
布尔模型最为简单,计算复杂度较低,但查询效果并不理想,没有体现相关度这个概念,同时只考虑查询词的包含/不包含关系,逻辑较为简单。
2.向量空间模型
向量模型考虑到单词在文档中出现的频率,考虑到了相关度的问题。向量空间模型最关键的是特征提取,对于查询词组特征提取成向量q,文档D特征提取向量为d,则可以通过计算cos(q,d)来表示查询词与文档的相似度。如下图所示。
通过文档相似度理论的假设,比较每个文档向量和原始查询向量(两个向量的类型是相同的)之间的角度偏差,使得在文档中搜索关键词的关联规则是能够计算的。 实际上,计算向量之间夹角的余弦比直接计算夹角本身要简单。