信息索引技术.ppt
- 文档编号:1425197
- 上传时间:2022-10-22
- 格式:PPT
- 页数:87
- 大小:1.27MB
信息索引技术.ppt
《信息索引技术.ppt》由会员分享,可在线阅读,更多相关《信息索引技术.ppt(87页珍藏版)》请在冰豆网上搜索。
搜索引擎技术,主讲教师:
王旭博士深圳大学计算机与软件学院未来媒体技术与计算研究所Email:
1,模块一:
商用搜索引擎架构与原理,搜索引擎基础网页抓取技术网页信息预处理技术信息索引技术信息查询与评价技术参考书籍:
袁津生,李群编著,搜索引擎基础教程,清华大学出版社其他文献/互联网资料,深圳大学未来媒体技术与计算研究所,2,深圳大学未来媒体技术与计算研究所,信息索引技术,经过网页预处理后,可以建立索引数据库。
对于数目庞大的文档数据库使用简单匹配方法是不可行的,需要对文档的表示建立索引。
为了提高检索效率,应该按照一定的规则建立索引。
索引文件一般是按照倒排文件的格式存放的,索引的建立包括:
(1)分析:
处理文件中可能的错误。
(2)索引:
完成分析的文件被编码存入索引数据库。
(3)排序:
将索引数据库按照一定的规则排序,产生全文索引。
3,深圳大学未来媒体技术与计算研究所,信息索引技术,5.1顺排检索5.2倒排索引5.3文本压缩技术,4,深圳大学未来媒体技术与计算研究所,5.1顺排检索,顺排文档检索的主要思想是将文档中的每一条记录依次去匹配用户的检索提问集合,文档处理完毕后,将各提问的命中结果归并分发给有关用户。
顺排文档检索是用文档中记录一条一条去匹配提问的,是顺序对文档记录检索的方法,所以称为顺排文档检索。
顺排文档的关键技术是采用列表处理方法将提问逻辑式(检索式)变换成等价的提问展开式,按提问展开表的内容对顺排文档的每篇文献进行检索。
常用的顺排文档检索方法主要有:
表展开法、逻辑树法等,5,深圳大学未来媒体技术与计算研究所,表展开法,表展开法的主要思想是:
将代表用户提问的逻辑提问式转换成表的形式,该表规定了表的内容走向和是否命中的判断,检索时根据表的走向及其他相关信息来判断每条记录是否命中。
展开表概念用表来表达逻辑提问式,要求能够将提问式中复杂的逻辑运算关系充分体现,每个检索词的检索匹配要求能够精确反映,记录最终的命中与否应能准确给出,6,深圳大学未来媒体技术与计算研究所,表展开法,地址栏确定了每个检索词在表中的位置,当检索条件满足或不满足时应做什么处理指向告之当该词满足(不满足)检索条件后应做什么处理。
7,深圳大学未来媒体技术与计算研究所,展开表生成,生成展开表是一个复杂的过程,需要考虑到检索词、检索运算符、改变运算次序的括号等,并生成可供检索匹配的表格形式。
整个生成过程分为两部分:
前处理和后处理。
前处理的任务是:
逐个检查逻辑提问式中的字符,并从上至下填写表格。
后处理的主要任务就是填满整个表的空白单元,填表的依据是表中“级位”栏的前后级位值,填表的顺序是从下向上,直至表的顶部,从而得到一个完整的提问展开表。
8,深圳大学未来媒体技术与计算研究所,展开表生成示例,逻辑提问式A*(BC)(D*(EF*G)的展开表生成过程:
9,深圳大学未来媒体技术与计算研究所,表展开法的检索,检索时,需将所有提问展开表输入内存以提高查比速度。
查比时,每从数据库中读取一条记录,就为该记录生成一个检索标识表,检索标识表由该记录的可检索项组成,然后将检索标识表中的每一检索项去查对展开表,并对命中的检索词做上标记。
当该记录标识表中的所有检索项查询完毕后,再根据每一展开表的查询情况,分析提问是否命中。
对于命中者,就在相应的提问号下记下记录号及相关信息,然后再取下一条记录进行对比。
全部查比完毕后,才能得到本次检索的最终结果。
10,深圳大学未来媒体技术与计算研究所,逻辑树展开法,逻辑树展开法是将逻辑提问式展开成树型结构(下称主树),运算符构成树的结点,检索词被视为树叶,所有检索词也按照有限自动机原理构造成字符树(下称辅树),主树与辅树间的相关元素用指针链接。
检索时,采取爬树原则,先用文档中的索引词逐字符的对比爬行辅树,走到树的一个端头(树叶),然后依照指针登记主树,并根据倒爬树方式分析提问是否命中。
逻辑树展开法包括三个部分:
逻辑提问式的分解、字符树的生成、检索实现。
11,深圳大学未来媒体技术与计算研究所,逻辑树展开法,1逻辑提问式分解逻辑提问式分解的分解目标为:
提供可直接用于检索实现的主逻辑树表、检索词地址表以及检索词在检索式中的位置表。
这些表在检索实践中分别发挥着应有的作用。
(1)主逻辑树表主逻辑树表是逻辑提问式的一种树形表达形式,它用层次型的树形结构把运算符、运算项关联起来,其主要内容包括;运算种类、子项个数、父项地址以及检索处理登记栏。
12,深圳大学未来媒体技术与计算研究所,逻辑树展开法,
(2)检索词地址表检索词地址表是主逻辑树表与辅表的联系纽带,在检索中,当一个检索词命中以后,通过辅表找到其在检索词地址表的位置,再根据该表中记录的主表位置进行检索处理(在检索处理栏加1等操作)。
该表由两个字段组成:
检索状况登录区、检索词在主表中位置。
13,深圳大学未来媒体技术与计算研究所,逻辑树展开法,(3)检索词位置表检索词位置表是在逻辑提问式转换成逻辑树表的过程中,临时生成的一个中间处理过程表,该表还将作为从逻辑提问式到词逻辑树(辅表)的桥梁,一旦辅表生成完毕,该表将被清除。
14,深圳大学未来媒体技术与计算研究所,逻辑树展开法,(4)中间工作表由于在进行逻辑提问式到逻辑树表的转换过程中,涉及一些中间数据,这些数据在生成逻辑树时需多次使用,因此需要建立一个中间过程工作区(中间工作表)来记录这些数据,一旦主逻辑树生成完毕,该表即可以清除。
15,深圳大学未来媒体技术与计算研究所,逻辑树展开法,(5)主逻辑树表的生成主逻辑树表的生成算法思想为:
采用多次扫描的分层分解构造法。
首先分解出逻辑式中最外层“”号下的子项,括号内的项暂时不分解;其次扫描已分解出的子项(在最外层没有“”项的情况下对整个逻辑式进行)中的“*”号的运算子项,若该子项为括号括起项,则仍分解“”号子项;最后分解“-”号子项。
16,深圳大学未来媒体技术与计算研究所,逻辑树展开法,2检索词字符树表检索词字符树表的生成吸收了Aho和Corasick的思想,将所有检索词构造成有限自动机状态表,该表是一个由字符(英文字母、数字及其他符号)和状态层次组成的二维表。
17,深圳大学未来媒体技术与计算研究所,逻辑树展开法,字符树表内容根据状态转移函数g(n,x)填写,一个检索词结束就调用函数output(x)填写地址表指针。
例如,检索词簇he,she,his,hers,shot,history,它们在检索词地址表中的位置如下:
18,深圳大学未来媒体技术与计算研究所,19,深圳大学未来媒体技术与计算研究所,检索词字符树结构,20,深圳大学未来媒体技术与计算研究所,逻辑树展开法,3逻辑树法检索逻辑提问式最终转换为逻辑树的三个表:
主逻辑树表、检索词地址表、检索词字符树表。
这三个表构成了用户检索提问档,整个检索主要依赖这三个表。
21,深圳大学未来媒体技术与计算研究所,BF(Brute-Force)算法,BF算法是一种串的模式匹配的算法。
BF算法的设计思想是将主串S的第一个字符和模式T的第1个字符比较,若相等,继续逐个比较后续字符;若不等,从主串S的下一字符起,重新与T第一个字符比较。
直到主串S的一个连续子串字符序列与模式T相等。
返回值为S中与T匹配的子序列第一个字符的序号,即匹配成功。
否则,匹配失败,返回值1。
22,深圳大学未来媒体技术与计算研究所,BF(Brute-Force)算法,主串S=“abbcdefg”,模式串T=“cde”,则模式匹配的过程。
23,深圳大学未来媒体技术与计算研究所,KMP(Knuth-Morris-Pratt)算法,假设P为给定的子串(也叫模式串),T是待查找的字符串(也叫目标串),要求从T中找出与P相同的所有子串,这称为模式匹配问题。
我们先来看个例子。
从T的最左边开始比较,使得TK=PK,则匹配成功。
24,深圳大学未来媒体技术与计算研究所,KMP算法,若P=“aaaba”,T=“aaabbaaaba“。
用P中的字符依次与T中的字符进行比较,遇到不相等的字符,则可将P右移一个字符,重新进行比较,直到某次匹配成功或者到达P的最右字符移出T为止。
25,深圳大学未来媒体技术与计算研究所,BM(Boyer-Moore)算法,给定一个特定的字串P(通常又称为模式),在一个大的文本T中进行查找,确定P是否在T中出现,出现则给出相应位置。
BM算法的基本思想是先对模式P进行预处理,计算两个偏移函数:
BadChar和Goodsuffix,然后将文本和模式对齐,从右往左进行匹配,当文本字符与模式字符不匹配时,根据函数BadChar和Goodsuffix计算出的偏移值,取两者中的大者。
将文本指针往右移,匹配成功则予以输出。
26,深圳大学未来媒体技术与计算研究所,5.2倒排索引,Indexesaredatastructuresdesignedtomakesearchfaster,WebSearch的需求:
快速响应时间(fasterresponsetime)支持更新(supportsupdates)基于Ranking的文本搜索方法文件内容QueryRanking算法Ranking抽象模型,27,Ranking抽象模型,深圳大学未来媒体技术与计算研究所,28,Ranking抽象模型(例子),时效性,重要性,深圳大学未来媒体技术与计算研究所,29,深圳大学未来媒体技术与计算研究所,倒排索引,倒排文档是一种面向单词的索引机制,相对顺排文档而言,是将顺排文档中可检索字段的作者名、关键词、分类号等取出,按一定规则排序,归并相同词汇,并把在顺排文档中相关记录的记录号集合赋予其后,以保证通过某一特征词能够快速、方便地获取相关记录。
30,倒排索引示例“Collection”,深圳大学未来媒体技术与计算研究所,31,最简单形式的倒排索引,深圳大学未来媒体技术与计算研究所,32,包含计数信息的倒排索引,深圳大学未来媒体技术与计算研究所,33,包含位置信息的倒排索引,深圳大学未来媒体技术与计算研究所,34,ProximityMatches,短语匹配e.g.,tropicalfish,or“findtropicalwithin5wordsoffish”包含位置信息的倒排索引,深圳大学未来媒体技术与计算研究所,35,域(Field)和ExtentList,搜索中的文档结构信息限制性信息:
时间,来源等重要信息:
标题解决方案:
根据域的类型建立倒排索引倒排索引添加域信息使用extentlists,深圳大学未来媒体技术与计算研究所,36,ExtentLists,Extent:
文件中的邻近区域单词位置信息每个域属性都有相应的Extentlist,extentlist,深圳大学未来媒体技术与计算研究所,37,其他,预先计算出倒排索引中的分数“fish”(1:
3.6),(3:
2.2)提升速度,降低动态调整的性能基于分数顺序的索引只关注与分数最高的文档对单词索引队列效果最佳,深圳大学未来媒体技术与计算研究所,38,深圳大学未来媒体技术与计算研究所,倒排索引,倒排文档的检索算法一般分成如下三步进行:
(1)词汇查找将查询串中的单词和模式分割成独立的部分,短语和近似查询串被分割成单个词汇。
(2)查找词汇出现的情况获取与查询串中所有词汇相关的出现情况列表。
(3)词汇出现情况的操作主要是通过对上一步中获取的词汇出现情况的操作实现短语查询、近似查询和布尔查询。
39,深圳大学未来媒体技术与计算研究所,倒排文档,倒排文档的组成元素主要包括:
关键字(作者、主题词、分类号等)、目长(含有该关键字记录的条数)、记录号集合(所有与该关键字有关的记录号)。
倒排文档的建立是建筑在顺排文档(主文档)的基础之上,它是从主文档中提取可检索字段内容,也有采取自动从标题、文摘或全文中提取关键词,利用所得到的这些属性词来建立倒排文档。
40,深圳大学未来媒体技术与计算研究所,倒排文档的建立,由顺排文档构造倒排文档需要经过抽词、排序、归并和组织等过程,具体实现步骤如下:
选择需要做索引的字段属性(如作者、关键词等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 索引 技术
![提示](https://static.bdocx.com/images/bang_tan.gif)