Information Retrieval

 1、信息检索/获取(Information Retrieval,简称IR) 是从大规模非结构化数据(通常是文本)的集合(通常保存在计算机上)中找出满足用户信息需求的资料(通常是文档)的过程。

 2、布尔检索模型

  

 3、文档(document)是信息检索系统的检索对象,它们可以是一条条单独的记录或者是一本书的各章。

 4、所有文档组成的文档集(collection),有时也称为语料库(corpus)。

 5、检索系统的效果(effectiveness):

  1)正确率:返回的结果中真正和信息需求相关的文档所占的百分比。

  2)召回率:所有和信息需求真正相关的文档中被检索系统返回的百分比。

 6、倒排索引(inverted index),是一个从词项(term,词项的集合也叫 dictionary / vocabulary / lexicon)到倒排记录表(posting list / inverted list)的一张表,所有词的倒排记录表构成全休倒排记录表(postings)。

  

 7、建立索引主要步骤:

  

 8、建立倒排索引

  给定一个文档集,我们假定每篇文档都有一个唯一的标识符即编号(docID)。在索引构建 过程中,我们可以给每篇新出现的文档赋一个连续的整数编号。在上述的前 3 步处理结束后, 对每篇文档建立索引时的输入就是一个归一化的词条表,也可以看成二元组(词项,文档 ID) 的一个列表(参见图 1-4)。建立索引最核心的步骤是将这个列表按照词项的字母顺序进行排序, 之后我们得到下图中部显示的结果,其中一个词项在同一文档中的多次出现会合并在一起 1, 最后整个结果分成词典和倒排记录表两部分。

  

  

  在最终得到的倒排索引中,词典和倒排记录表都有存储开销。前者往往放在内存中,而后 者由于规模大得多,通常放在磁盘上。

 9、倒排记录表的存储方式:

  1)单链表。

  2)变长数组,定长数组链表。

11. 查询优化, 对于下述查询, 一个启发式的想法是, 按照词项的文档频率(也就是倒排记录表的长度)从小到大依次进行处理,如果我们先合并两个最短的倒排记录表,那么所有中间结果的大小都不会超过最短的倒排记录表

  Brutus AND Caesar AND Calpurnia

Information Retrieval的更多相关文章

  1. Information retrieval信息检索

    https://en.wikipedia.org/wiki/Information_retrieval 信息检索 (一种信息技术) 信息检索(Information Retrieval)是指信息按一定 ...

  2. Deep Learning for Information Retrieval

    最近关注了一些Deep Learning在Information Retrieval领域的应用,得益于Deep Model在对文本的表达上展现的优势(比如RNN和CNN),我相信在IR的领域引入Dee ...

  3. Information Retrieval 倒排索引 学习笔记

    一,问题描述 在Shakespeare文集(有很多文档Document)中,寻找哪个文档包含了单词“Brutus”和"Caesar",且不包含"Calpurnia&quo ...

  4. Information Retrieval II

    [Information Retrieval II] 搜索引擎分类: 1.目录式搜索引擎. 2.全文搜索引擎. 3.元搜索引擎(Meta-Search Engine). 搜索引擎的4个阶段:下载(cr ...

  5. Music information retrieval

    Music information retrieval - Wikipedia https://en.wikipedia.org/wiki/Music_information_retrieval Mu ...

  6. Information retrieval (IR class1)

    1. 什么是IR? IR与数据库的区别? 答:数据库是检索结构化的数据,例如关系数据库:而信息检索是检索非结构化/半结构化的数据,例如:一系列的文本.信息检索是属于NLP(自然语言处理)里面最实用的一 ...

  7. IRGAN:A Minimax Game for Unifying Generative and Discriminative Information Retrieval Models

    https://arxiv.org/pdf/1705.10513.pdf 论文阅读笔记: https://www.cnblogs.com/liaohuiqiang/p/9694277.html htt ...

  8. Information retrieval (IR class2)

    1.  解析文档一般要分析哪些方面? - 首先分析文档的格式,是docx,html,xml,pdf... - 其次分析文档的语言,是英语,汉语,日语,德语... - 使用的什么字符集,ASCII编码, ...

  9. information retrieval (CMU 11642)

    1. Heap's law. predict the number of new vocabulary. 参考:https://www.youtube.com/watch?v=JDp12gU-vEQ ...

随机推荐

  1. BLE Android开发中的问题

    在此直说两个问题,第一是Android6.0 SDK23版本情况下开发的Android BLE APP,千万要记得在代码中申请到地理位置读取权限,否则你的APP在运行的时候会出现各种问题,另外就是除了 ...

  2. PHP7.2.12-Configuration-Option

    # PHP7.2.12 <pre style="background-color: rgb(255,250,233);"> `configure' configures ...

  3. 第9课 函数重载分析(下)与C、C++相互调用

    重载与指针 下面的函数指针将保存哪个函数的地址: 在给p赋值的时候,我们使用了func,但是这里并没有指明参数,编译器是怎么知道这个func函数指的是第一个func函数呢? 函数重载遇上指针: 将重载 ...

  4. tensorflow中共享变量 tf.get_variable 和命名空间 tf.variable_scope

    tensorflow中有很多需要变量共享的场合,比如在多个GPU上训练网络时网络参数和训练数据就需要共享. tf通过 tf.get_variable() 可以建立或者获取一个共享的变量. tf.get ...

  5. 安装node

    vuejs:通过npm安装vue框架(印象深刻的问题出在了npm上) 以下所有事我自己在windows系统下遇到的问题 一.安装nodejs node下载地址https://nodejs.org/en ...

  6. Visual Studio 2005 自带单元测试

    一 单元测试简介   单元测试是代码正确性验证的最重要的工具,也是系统测试当中最重要的环节.也是唯一需要编写代码才能进行测试的一种测试方法.在标准的开发过程中,单元测试的代码与实际程序的代码具有同等的 ...

  7. StringUtils.isEmpty()和isBlank()的区别

    一.概述 两种判断字符串是否为空的用法都是在程序开发时常用的,相信不少同学在这种简单的问题上也吃过亏,到底有什么区别,使用有什么讲究,带着问题往下看. 二.jar包 commons-lang3-3.5 ...

  8. PhoneGap下Web SQL实践

    HTML5里的Web SQL数据库,内置了SQLite数据库, 对数据库的操作使用executeSql执行增删改查 1. 创建数据库 function creatDatabase(){ db = op ...

  9. 安装wamp 缺少msvcr100.dll

    在一台新电脑上安装wampsever 这是百度上的解决方案,http://jingyan.baidu.com/article/0320e2c1eb49681b87507ba4.html 本人亲测 第一 ...

  10. 峰Spring4学习(8)spring对事务的支持

    一.事务简介: 二.编程式事务管理: 例子 1.需求:模拟转账,张三向李四转账50元: 数据库中存在t_count表: 代码实现: BankDao.java: package com.cy.dao; ...