信息检索导论 第一章 阅读笔记

《信息检索导论》 Christopher D.Manning 等著

1. 信息检索:信息检索是从大规模非结构化数据(通常是文本)的集合(通常保存在计算机上)中找出满足用户信息需求的资料(通常是文档)的过程。

2. 检索方式:

    1)线性扫描:在文档或者文档集中从头到尾地查找所需信息,扫描过程中可以通过使用正则表达式来支持通配符查找,使用于小规模的文档集。

    2)非线性扫描:一种方法是事先给文档建立索引(index)。对每篇文档都事先记录它是否包含词表中的某个词,得到一个布尔值构成的词项-文档关联矩阵(incidence                matrix)。

     词项(term)是索引的单位,它通常可以用词来表示。在矩阵中,行向量表示每个词项对应的文档向量,即词项在哪些文档中出现或不出现;列向量表示每个文档对应的词项向量,即文档中哪些词项出现或不出现。可以进行行向量的位与操作来获得查询结果文档集。

3. 布尔检索模型:布尔检索模型接受布尔表达式查询,即通过AND、OR及NOT等逻辑操作符将词项连接起来的查询。在该模型下,每篇文档只被看成是一系列词的集合。

4. ad hoc检索任务:任一用户的信息需求(information need)通过一次性的、由用户提交的查询(query)传递给系统,系统从文档集中返回与之相关的文档。

5. 倒排索引(inverted index):倒排索引由词项词典(dictionary)和全体倒排记录表(postings)构成。每个词项都有一个记录出现该词项的所有文档的列表,该表中的每个元素记录的是词项在某文档中的一次出现信息(posting)。每个词项对应的整个表称为倒排记录表(posting list/inverted list)。

    建立索引的主要步骤:

    1)收集需要建立索引的文档

    2)将每篇文档转换成一个个词条(token)的列表,这个过程通常称为词条化(tokenization)

    3)进行语言学预处理,产生归一化的词条来作为词项

    4)对所有文档按照其中出现的词项来建立倒排索引,索引中包括一部词典和一个全体倒排记录表

    在最终得到的倒排索引中,词典和倒排记录表都有存储开销。前者往往放在内存中,而后者由于规模大得多,通常放在磁盘上,我们还可以对每个部分进行存储优化来提高访问效率。

6. 内存中倒排记录表的数据结构:

    1)单链表:便于文档的插入与更新,因此通过增加指针的方式可以很自然地扩展到更高级的索引策略。

    2)可变长数组:既可以节省指针消耗的空间,也可以采用连续的内存存储,可以充分利用现代计算机的缓存技术来提高访问速度。如果索引更新不是很频繁的话,变长数组的存储方式在空间上更紧凑,遍历也更快。

7. 布尔查询(布尔检索模型):

     对于简单的布尔查询来说,以"Brutus AND Calpurnia"为例,使用倒排索引完成查询的关键就在于对 Brutus 和 Calpurnia 各自的倒排记录表进行“与”操作。每个索引的倒排记录表都进行排序,对两个有序列表都维护一个位置指针,比较两个指针指向的文件是否一致,并让两个指针同时在两个列表中后移。这种方法的时间复杂度是Θ(N),其中N是文档集合中文档的数目。

     如果要处理更复杂的查询,可以对查询进行优化,即如何通过组织查询的处理过程来使处理工作量最小。对布尔查询进行优化要考虑的一个主要因素是倒排记录表的访问顺序。一种启发式的想法是,按照词项的文档频率(即倒排记录表的长度)从小到大依次处理,这样处理所需要的工作量很可能最少。

8. 排序检索模型(ranked retrieval model):

      不是通过具有精确语义的逻辑表达式来构建查询,而往往是采用一个或者多个词来构成自由文本查询。

 

转载于:https://www.cnblogs.com/summerkiki/p/5129943.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值