反馈(Feedback)

来源:互联网 发布:数据库外键的设置语句 编辑:程序博客网 时间:2024/05/04 05:35

 说明:文章内容来源于课程视频和课程ppt。我只学习了课程没有做习题。文章不是翻译,是我对课程的理解。
 终于到了第四部分了。之前提到过的,一个文本检索系统=分词+索引+打分+反馈。前面三部分都已经在前面的文档中介绍了。现在看反馈。反馈是根据用户的动作反馈,对现有的搜索引擎做改进。

反馈的类型

  文本检索的相关度反馈分为三种类型:显示反馈、伪反馈、隐式反馈。

显示反馈

  Explicit Feedback是基于用户行为的。在搜索结果列表,用户判断文档是否相关。搜索引擎再根据反馈的信息调整搜索结果。
  优点:反馈的结果是准确的。
  缺点:用户需要做额外的工作。
 

伪反馈

 伪反馈是基于搜索结果的Top k 做调整。返回结果的Top k 文档即使不是最相关的,也应该是相关的。把Top k文档的词频与文档集中的词频做比较,选出在前者频率高而在后者频率低的词,这些词作为补充的查询条件加入查询,提高查询结果。
 优点:无需用户参与。
 缺点:不可靠。
 这里写图片描述

隐式反馈

 隐式反馈是基于用户点击行为的反馈。在搜索结果列表,用户点击的文档认为是相关的,用户跳过的文档认为是不相关文档。依据这些再调整搜索引擎。
 优点:无需用户参与,反馈基本可靠。

这里写图片描述

VSM模型的反馈

 如何根据正样本、负样本提高搜索引擎的准确率?第一、可以添加一些新的term,扩展查询;第二、可以调整现有term,让现有的向量逼近正样本的中心,或者远离负样本中心。
 下图所示的方法被称为Rocchio Feedback。
 这里写图片描述

 Rocchio Feedback的公式:基本分为原始query、正样本的中心、负样本的中心。
 
这里写图片描述

 实践中:
 1 负样本通常情况下不重要;
 2 term经常很长需要截断,只留下权重比较高的一些term。
 3 避免过拟合,保留原始query中权重较高的term。因为在反馈集的样本是小样本,过拟合在整体集上测试效果会差。

LM模型的反馈

 上一节讲到反馈改进搜索效果的一种方式是扩展查询。前面讲语言模型的时候也提到了我们的假设是查询语句是来自于一个文档语言模型的。这两者之间其实就产生了冲突。为此,研究人员提出了Kullback-Leibler (KL) divergence retrieval model 来解决问题。
 
 
 在模型中分为文档模型θD,查询模型θQ,得到正负样本集以后我们还可以计算θF。用θF来改变θQ
 
 
 
 接下来的问题是:如何计算θF。一种解决方法是:生成混合模型(Generative Mixture Model).首先通过各种方法得到反馈集文档。这里用到了一般文档集,找到在反馈文档集中频率高,但在一般文档集中频率低的词,作为改进的query。
 还有一个参数λ,表示反馈集中的噪音影响。
 
 

原创粉丝点击