《信息检索导论》学习笔记

一、布尔检索
二、倒排索引
三、索引优化
1、布尔索引模型概述

布尔模型:

对于关键词表示的文档使用布尔查询表达式进行查询,当且仅当文档满足布尔表达式时才将其检索出来,二值匹配,是或不是

2、一个简单的搜索示例

线性搜索:搜索全部文档

非线性搜索:构建索引,按照索引进行查找

非线性:索引查询

建立词项文档矩阵,可以通过词项查询符合的文档,出现用1,否则用0

查询出现单词的文档时,取出词项向量,进行布尔处理,1表示该文档满足布尔查询式

当数量集过大,词项文档矩阵是稀疏矩阵,此时可以只存储1,即变成倒排索引

3、倒排索引

倒排索引:词典和倒排索引表组成,倒排索引表中只存储出现该词项的文档ID

将所有文档转换成词条,即词条化

然后进行语言学预处理,产生归一化的词条

且每个文档使用ID来进行存储

先对词项排序,然后对于相同词项的文档ID排序,如图所示

将相同的词项合并成倒排表,并且词汇的文档频率也记录在词典中,构成倒排索引表

建立好倒排索引表后,对布尔查询即可根据词典查找倒排表,进行都安排表的合并处理

在词典中定位Brutus,找出他的倒排表

在词典中定位Caesar,找出他的倒排表

合并倒排表求交集

4、布尔检索模型

对倒排索引表进行布尔查询可以检索出符合条件的文档

对于每一次布尔查询,求交集非常关键

所以对于布尔查询优化要考虑的一个主要因素是倒排记录表的访问顺序

1、先合并最短的倒排记录表

2、保守估计每个or的结果大小,然后从小到大顺序执行and

信息检索笔记(一):布尔检索相关推荐

  1. 《introduction to information retrieval》信息检索学习笔记1 布尔检索

    第1章 布尔检索 信息检索的定义:信息检索(IR)是从大型集合(通常存储在计算机上)中寻找满足信息需求的非结构化性质(通常是文本)的材料(通常是文档). 1.1一个信息检索的例子 问题描述:确定莎士比 ...

  2. 信息检索技术——布尔检索

    前一阵子和大家分享了一系列排序算法,希望对大家能够有一些帮助.从今天开始,本人打算开展一个新的领域,介绍一下信息检索相关的技术.信息检索技术可以说现如今发展非常迅速,使用也极其广泛,甚至可以说是随处可 ...

  3. Information Retrieval(信息检索)笔记01:Boolean Retrieval(布尔检索)

    Information Retrieval(信息检索)笔记01:Boolean Retrieval(布尔检索) 什么是信息检索(Information Retrieval) 布尔检索(Boolean ...

  4. 信息检索格式 布尔检索式

    信息检索格式 布尔检索式 名称 符号 表达式 功能 逻辑与 * 或and AB 同时含 有提问词A和B的文献,为命中文献 逻辑或 + 或or A+B 凡是含有提问词A或B的文献,为命中文献 逻辑非 - ...

  5. 1信息检索-布尔检索-倒排索引

    提示: 信息检索 布尔检索 倒排索引 布尔查询 文章目录 信息检索 举个例子(词项-文档关联矩阵一个题目) 相关术语及概念 倒排索引 倒排索引示例 倒排索引构建 布尔查询处理(案例) 两个倒排记录表的 ...

  6. 信息检索格式 布尔检索式

    信息检索格式 布尔检索式 名称 符号 表达式 功能 逻辑与 * 或and AB 同时含 有提问词A和B的文献,为命中文献 逻辑或 + 或or A+B 凡是含有提问词A或B的文献,为命中文献 逻辑非 - ...

  7. 布尔检索——短语检索,含位置索引与双词索引

    目录 前言 一.对文本进行分词 二.获取文本文件 三.词法分析 四.布尔检索类 五.调用 总结 前言 此专栏记录信息检索课程的学习. 部分代码框架来自温柔的助教小哥哥. Talk is cheap. ...

  8. 计算机信息检索的常用算符有哪些,计算机信息检索的基本技术布尔逻辑算符.ppt...

    计算机检索技术及中文数据库使用方法职工专题培训主讲段晓玲一计算机信息检索的基本技术布尔逻辑算符截词算符位置算符字段限定检索等等在进行计算机检索时有时有一些比较复杂的课题如在建筑中的应用既涉及又涉及建筑 ...

  9. 信息检索(IR)——索引与检索

    信息检索(IR)--索引与检索 1. 索引 在介绍这部分内容之前,我们先来回顾一下信息检索系统的基本架构: 1.1 索引的作用 首先,当用户提交一个query的时候,我们考虑一下,应该如何生成结果?如 ...

  10. 【SQL.Cookbook读书笔记】——1检索记录

    SQL.Cookbook读书笔记 前言 1检索记录 1.1从表中检索所有行和列 1.2从表中检索部分行(where) 1.3查找满足多个条件的行(where.and.or) 1.4从表中检索部分列 1 ...

最新文章

  1. 正则表达式用单个空格替换多个空格
  2. weekend110(Hadoop)的 第二天笔记
  3. C++中class与struct的区别
  4. Java自动装箱与拆箱及其陷阱
  5. 决战9小时,产品上线的危机时刻
  6. 机器学习(七)——规则化和模型选择
  7. ATLAS数学库编译
  8. 3dmax模型转换为*.FLT格式的建模要点
  9. 减治法在排序算法中的应用(JAVA)--插入排序
  10. 计算机网络 校园网规划,计算机网络课程校园网规划设计
  11. [Erlang 0079] RabbitMQ 初探
  12. JAVA:eclipse文本中文支持
  13. python和c++哪个好-c语言和python哪个好入门?
  14. Mac电脑上最好的3个txt阅读器
  15. 计算机三维制图描述零件绘制过程,计算机三维造型及创意设计ppt.ppt
  16. 单片机|CC2530实验入门
  17. 前端Hack之XSS攻击个人学习笔记
  18. Gym 101350E Competitive Seagulls
  19. 英特尔、高通等多家科技巨头禁止员工与华为交流!
  20. 浅析缓冲区溢出漏洞的利用与Shellcode编写

热门文章

  1. saas 系统租户个性化域名租户绑定自己域名的解决方案
  2. nii格式转化为png格式或者img格式
  3. 思维万能体系——申论
  4. hadoop中HDFS的NameNode原理
  5. 什么是Xcelsius
  6. 你一定要看的安装及卸载测试用例的步骤及方法总结
  7. 有谁知道win10appdata文件夹可以删除吗,删除的方法是什么
  8. Windows Server 2019 配置DHCP
  9. 怎样自己创建一个个人网站,怎样将自己写的网站发布到外网?
  10. java batter_android电池管理系统从上层的java到底层驱动的调用(转载)