信息检索导论
文章平均质量分 86
继续微笑lsj
眼界决定未来
展开
-
信息检索笔记-索引构建
如何构建倒排索引,我们将这个过程叫做“索引构建”。如果我们的文档很多,这样索引就一次性装不下内存,该如何构建。硬件的限制 我们知道ram读写是随机的操作,只要输入相应的地址单元就能瞬间将数据读出来或者写进去。但是磁盘不行,磁盘必须有一个寻道的过程,外加一个旋转时间。那么只有涉及到磁盘,我们就可以考虑怎么节省I/O操作时间。【注】操作系统往往以数据块为单位进行读写。因为读一原创 2013-10-02 16:27:22 · 3891 阅读 · 0 评论 -
信息检索笔记-布尔检索
信息检索主要分为三大类:Web搜索、个人信息检索和面向企业的搜索。词项文档矩阵 在搜索的时候,一种土办法:假设我们要搜索要在一本书中搜索含有“Brutus”和“Caesar”关键字的文档,那么我从头到尾线性扫描。这种方式在某些情况下不太灵活。一种非线性的扫描方式就是给文档建立索引。假设我们先给这本书建立一个词项-文档矩阵如下图所示。 其中“lsj”,“seu原创 2013-10-01 21:08:41 · 3069 阅读 · 0 评论 -
奇异值分解SVD应用—LSI/LSA
原文:http://blog.csdn.net/abcjennifer/article/details/8131087(又看不懂的地方,原文评论有点解答)潜在语义索引(Latent Semantic Indexing)是一个严重依赖于SVD的算法,本文转载自之前吴军老师《数学之美》和参考文献《机器学习中的数学》汇总。————————————在自然语言处理中,最常转载 2013-10-06 23:27:11 · 2350 阅读 · 1 评论 -
信息检索-拼写检查器
原文:http://blog.youxu.info/spell-correct.html上个星期, 我的两个朋友 Dean 和 Bill 分别告诉我说他们对 Google 的快速高质量的拼写检查工具感到惊奇. 比如说在搜索的时候键入 [speling], 在不到 0.1 秒的时间内, Google 会返回: 你要找的是不是 [spelling]. (Yahoo! 和 微软也有类似的功能转载 2013-09-26 11:17:09 · 1654 阅读 · 0 评论 -
信息检索笔记-文档平分,词项权重计算
给定一个布尔查询,返回的结果要么满足条件,要么不满足条件,结果很多的时候就不太对了,应该按照文档的重要性排序后呈现给用户。 本文引入简单的几种权重计算。域索引权重计算 我们知道一篇文章除了内容外,还有作者、题目,写作时间等,这就是域。我们可以对文档建立域索引。 建立好域索引后,我们就可以通过域加权。考虑这样的例子,一个文档集包含3个域-auth原创 2013-10-03 16:52:44 · 4030 阅读 · 0 评论 -
信息检索笔记-完整搜索系统的评分计算
前面我们给出了文档评分中词项权重计算的理论,并由此导出向量空间模型和基本余弦相似度评分算法。当然不少策略不会精确返回与查询相匹配的K篇文档,一些策略也可以推广到余弦相似度计算之外的其他场合中去。快速评分算法以及排序 前面介绍通过计算查询与文档的余弦相似度来给文档评分: 在上面这个公式中,我们对V(q),进行了一个归一化处理。例如查询q=[je原创 2013-10-04 11:11:56 · 4204 阅读 · 2 评论 -
Latent semantic analysis note(LSA)
1 LSA IntroductionLSA(latent semantic analysis)潜在语义分析,也被称为LSI(latent semantic index),是Scott Deerwester, Susan T. Dumais等人在1990年提出来的一种新的索引和检索方法。该方法和传统向量空间模型(vector space model)一样使用向量来表示词(terms)和文转载 2013-10-07 10:41:37 · 1971 阅读 · 0 评论 -
信息检索-Bag of words模型
Bag of words,也叫做“词袋”,在信息检索中,Bag of words model假定对于一个文本,忽略其词序和语法,句法,将其仅仅看做是一个词集合,或者说是词的一个组合,文本中每个词的出现都是独立的,不依赖于其他词是否出现,或者说当这篇文章的作者在任意一个位置选择一个词汇都不受前面句子的影响而独立选择的。 这种假设虽然对自然语言进行了简化,便于模型化,转载 2013-10-06 15:49:52 · 1650 阅读 · 0 评论 -
信息检索笔记-词典及容错式检索
本文将介绍当查询中出现拼写错误时的鲁棒性处理技术。并给出可能的查询结果。词典的数据结构 第一章我们知道,倒排表包括两个部分。一个是倒排索引,另一个是倒排记录表。我们查询的时候首先要通过索引词典的词,然后再通过词的指针找到倒排表的地址,取出相应的倒排记录表。 前面,我们已经知道了倒排记录表可以通过链表或者可变数组实现。那么词典可以通过哪些数据结构实现呢?我原创 2013-10-02 14:55:13 · 3234 阅读 · 0 评论 -
信息检索笔记-索引压缩
第一章介绍了信息系统中的两个数据结构:词典及倒排记录表。本文将介绍对两个数据结构的各种压缩技术,这些技术对构建高效的IR系统很关键。 索引压缩的优点:(1)第一能增加高速缓存利用率。在搜索系统中,如果某个关键字使用频繁,那么我们可以将他放在高速缓存中,这样搜索的时候只需要查一下高速缓存就行了(不要磁盘访问操作),找到之后解压缩就行了。如果索引小了就可以在高速缓存里面放更多的索引,当然就原创 2013-10-02 19:52:35 · 2557 阅读 · 0 评论 -
信息检索笔记-词项及倒排记录表
建立倒排表的几个主要步骤:搜集文档;对文档中的文本进行词条化;对词条进行语言学处理,得到词项;根据词项建立倒排索引。 通过词条化和语言学处理我么才能确定系统的所用词项词典。词条化将原始的字符流转换成一个个词条的过程,而语言学处理主要是建立词条的等价类。文档分析及编码生成 文档一般由文件或者web中的网页组成,那么第一步我们要确定其编码方式,有时我们需要确定文档的原创 2013-10-02 11:05:45 · 4084 阅读 · 0 评论 -
全文检索的基本原理
一、总论根据http://lucene.apache.org/java/docs/index.html 定义:Lucene 是一个高效的,基于Java 的全文检索库。所以在了解Lucene之前要费一番工夫了解一下全文检索。那么什么叫做全文检索呢?这要从我们生活中的数据说起。我们生活中的数据总体分为两种:结构化数据 和非结构化数据 。结构化数据: 指具转载 2013-11-19 00:12:10 · 1396 阅读 · 0 评论