研究生课程:现代信息检索-第10讲 相关反馈及查询扩展
《现代信息检索》课程笔记:第10讲 相关反馈及查询扩展
第10讲 相关反馈及查询扩展
动机
考虑查询q: [aircraft] . . .
某篇文档 d 包含“plane”, 但是不包含 “aircraft”
显然对于查询q,一个简单的IR系统不会返回文档d,即使d是和q最相关的文档
提高召回率的方法:
局部(local)方法:对用户查询进行局部的即时的分析
全局(Global)方法: 进行一次性的全局分析(比如分析整个文档集)来产生同/近义词词典
关于相关反馈和查询扩展:
相关反馈的本质是将检索返回的文档的相关性判定(不同的判定来源:人工或非人工)作为返回信息,希望提升检索效果(召回率和正确率)。
相关反馈常常用于查询扩展,所以提到相关反馈往往默认为有查询扩展
而查询扩展的最初含义是对查询进行扩充,近年来越来越向查询重构偏移,即现在的查询扩展是指对原有查询进行修改。
- 基于相关反馈(局部方法的代表)进行查询扩展/重构
- 基于本讲的全局方法进行查询扩展/重构
- 局部和全局方法相结合的方法
相关反馈基础
相关反馈的基本思想
- 用户提交一个(简短的)查询
- 搜索引擎返回一系列文档
- 用户或系统将部分返回文档标记为相关的,将部分文档标记为不相关的
- 搜索引擎根据标记结果计算得到信息需求的一个新查询表示。当然我们希望该表示好于初始的查询表示
- 搜索引擎对新查询进行处理,返回新结果,会有更高的召回率
显式相关反馈:用户显式参加交互过程
隐式相关反馈:系统跟踪用户的行为来推测返回文档的相关性,从而进行反馈。
伪相关反馈或盲相关反馈:没有用户参与,系统直接假设返回文档的前k篇是相关的,然后进行反馈。
相关反馈详细介绍
相关反馈中的核心概念:矩心
矩心是一系列点的中心
Rocchio算法是向量空间模型中相关反馈的实现方式
相关反馈中的假设:
假设 A1: 对于某初始查询,用户知道在文档集中使用哪些词项来表达
假设A2: 相关文档中出现的词项类似 (因此,可以基于相关反馈,从一篇相关文档跳到另一篇相关文档)
相关反馈的评价:
基于存留文档集(residual collection):用户没有判断的文档集
一轮相关反馈往往非常有用,相对一轮相关反馈,两轮相关反馈效果的提高有限。
用户相关反馈存在的问题:
- 用户相关反馈开销很大
- 相关反馈生成的新查询往往很长
- 长查询的处理开销很大
- 用户不愿意提供显式的相关反馈
- 很难理解,为什么会返回(应用相关反馈之后)某篇特定文档
- Excite搜索引擎曾经提供完整的相关反馈功能,但是后来废弃了这一功能
隐式相关反馈
通过观察用户对当前检索结果采取的行为来给出对检索结果的相关性判定。
判定不一定很准确,但是省却了用户的显式参与过程。
用户行为种类:鼠标键盘动作和用户眼球动作
隐式相关反馈小结:
优点:
- 不需要用户显式参与,减轻用户负担
- 用户行为某种程度上反映用户的兴趣,具有可行性
缺点:
- 对行为分析有较高要求
- 准确度不一定能保证
- 某些情况下需要增加额外设备
伪相关反馈
伪相关反馈对于真实相关反馈的人工部分进行自动化
伪相关反馈算法:对于用户查询返回有序的检索结果,假定前 k 篇文档是相关的进行相关反馈 (如 Rocchio)
优点:
- 不用考虑用户的因素,处理简单
- 很多实验也取得了较好效果
缺点:
- 没有通过用户判断,所以准确率难以保证
- 不是所有的查询都会提高效果
相关反馈小结:
- 文档选择:从检索结果中选择相关或不相关文档。用户显式/隐式,或者系统假设。
- 词项选择:从相关不相关文档中选择需要处理的词项
- 查询扩展/重构:修改原始查询
查询扩展
查询扩展是另一种提高召回率的方法
使用 “全局查询扩展” 来指那些 “查询重构(query reformulation)的全局方法”
在全局查询扩展中,查询基于一些全局的资源(同义词或近义词)进行修改,这些资源是与查询无关的
查询扩展的方法
- 基于相关反馈的查询扩展
- 人工词典法:通过人工构建的同(近)义词词典 (人工编辑人员维护的词典,如 PubMed)来扩展原始查询
- 自动词典法:自动导出的同(近)义词词典 (比如,基于词语的共现统计信息)
- 其他外部资源法:比如基于查询日志挖掘出查询等价类(Web上很普遍,比如上面的 “palm” 例子)
交互式查询扩展 (Interactive QE):用户通常很懒,用户提交的扩展词项并不一定有用
基于词项相似度的查询扩展:
基于候选词和原始查询词项共现 (co-occurrences)的查询扩展
查询扩展的优点:
- 通常可以检索到更多的相关文档
- 统计测试表明MAP显著提高
- 在伪相关反馈的应用场景下,如果反馈集文档质量很差,会严重降低检索效果
- 可能会产生查询漂移
- 对于某些查询任务,例如主页搜索,由于相关文档总数非常少,查询扩展通常无效
使用外部资源进行查询扩展(External QE)
选择性查询扩展(Selective QE)
- 在伪相关反馈应用场景,如果预测反馈集质量很低,则不再执行QE
- 适用于对排名靠前文档查准率(early precision)有要求的任务
搜索引擎中的查询扩展主要依赖的资源:查询日志