您的位置:首页 > 其它

信息检索导论-第七章 一个完整搜索系统中的评分计算

2018-01-11 17:19 197 查看

第七章 一个完整搜索系统中的评分计算

7.1 快速评分及排序

之前我们讲的都是给定查询后,精确返回前K篇得分最高的文档的方法。这里,我们主要关注产生“可能”排名最高的K篇文档的方法。这样的目的在于,显著降低输出前K篇文档所需要的计算复杂度。

计算前K篇得分最高文档的主要开销来源于大量文档都参与的余弦相似度计算,下面介绍一些非精确返回前K篇文档的一系列启发式策略。

非精确返回前K篇文档的方法:

索引去除技术: 只考虑那些词项的idf值超过一定阈值的文档。

胜者表:

对于词典中的每个词项t,预先计算出r个最高权重的文档(其中r值需要事先给定)。例如对于tf-idf来说,词项t所对应的tf值最高的r篇文档构成t的胜者表。

给定查询q,对查询q中所有词项的胜者表求并集,并生成集合A。只有A中的文档才可以参加最后的余弦相似度运算。

静态得分和排序:

很多搜索引擎中,每篇文档d往往都有一个与查询无关的**静态得分**g(d),该得分取值往往在0到1之间。例如,对于Web上的新闻报道,g(d)可以用用户正面评价次数来定义。

一篇文档d的最后得分可以定义为g(d)和查询相关得分的某种组合。如score(q,d)=g(d)+tf−idfscore(q,d)=g(d)+tf−idf。

可以对胜者表进行扩展:对每个词项t构建一个全局胜者表,它包含g(d)+tf-idft,dg(d)+tf-idft,d得分最高的r篇文档。

影响度排序

簇剪枝方法

7.2 信息检索系统的组成

一个完整的信息检索系统,不仅支持向量空间模型(向量空间模型评分方法),也支持其他的查询操作符和检索形式。

1.非精确返回前K篇文档–>层次型索引

用索引去除等启发式方法来非精确返回前K篇文档时,可能会出现得到的候选集合A中元素个数小于K的情况。通常的解决方法是用层次型索引。例如,以tf为标准设置2个阈值:10、20。第1层索引只保留tf>20的倒排记录,而第2层只保留tf>10的倒排记录。

2. 查询词项的邻近性

在检索中,我们往往希望返回的文档中,大部分或全部查询词项之间的距离较近。假设有一个由多个查询词项构成的查询t1,t2,...,tkt1,t2,...,tk。文档d中包含所有查询词项的最小窗口大小记为w,w取值为窗口内词的个数。直观上,w越小,文档d和查询匹配的程度就越高。

这种基于邻近关系程度w的加权评分函数和纯余弦相似度计算方法有所不同。

3. 一个完整搜索系统的组成



7.3 向量空间模型对各种查询的支持

向量空间模型一般只支持自由文本查询,那它支持其他查询么?如布尔查询.

1.将向量空间模型和布尔查询融合不容易。

2.通配符查询和向量空间查询需要不同的索引结构来完成。

3.向量空间模型不能用于短语查询,因为向量空间模型丢失了词项顺序信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息