ImageVerifierCode 换一换
格式:PPT , 页数:25 ,大小:692KB ,
资源ID:3507757      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-3507757.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(倒排检索构建.ppt)为本站会员(oil007)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

倒排检索构建.ppt

1、倒排检索构建,主讲人:陈文亮 苏州大学计算机学院,提纲,2,倒排索引 布尔查询的处理,一个简单的例子(金庸小说),金庸的哪本小说包含郭靖和黄蓉但不包含洪七公? 布尔表达式为 郭靖 AND 黄蓉 AND NOT 洪七公 笨方法: 从头到尾扫描所有小说,对每本小说判断它是否包含郭靖和黄蓉但不包含洪七公,3,词项-文档(term-doc)的关联矩阵,若某小说包含某单词,则该位置上为1,否则为0,郭靖 AND 黄蓉 BUT NOT 洪七公,上述查询的结果文档,倚天屠龙记,5,IR中的基本假设,文档集Collection: 由固定数目的文档组成 目标: 返回与用户需求相关的文档并辅助用户来完成某项任务

2、相关性Relevance,6,大文档集,假定N = 1 百万篇文档(1M), 每篇有1000个词(1K) 假定每个词平均有6个字节(包括空格和标点符号)那么所有文档将约占6GB 空间. 假定 词汇表的大小(即词项个数) |V| = 500K,7,词项-文档矩阵将非常大,矩阵大小为 500K x 1M=500G 但是该矩阵中最多有10亿(1G)个1 词项-文档矩阵高度稀疏(sparse). 稀疏矩阵应该有更好的表示方式 求方法?,8,Why?,词项-文档矩阵将非常大,应该有更好的表示方式 比如我们仅仅记录所有1的位置,倒排索引(Inverted index),对每个词项t, 记录所有包含t的文档

3、列表. 每篇文档用一个唯一的 docID来表示,通常是正整数,如1,2,3 能否采用定长数组的方式来存储docID列表,10,Brutus,Calpurnia,Caesar,2,31,文档14中加入单词Caesar时该如何处理?,174,54,101,倒排索引(续),通常采用变长表方式 磁盘上,顺序存储方式比较好,便于快速读取 内存中,采用链表或者可变长数组方式 存储空间/易插入之间需要平衡,11,按docID排序 (原因后面再讲),Posting,Brutus,Calpurnia,Caesar,2,31,174,54,101,词典,倒排(记录)表,倒排记录,索引构建过程: 词条序列,二元组,

4、I did enact Julius Caesar I was killed i the Capitol; Brutus killed me.,Doc 1,So let it be with Caesar. The noble Brutus hath told you Caesar was ambitious,Doc 2,索引构建过程: 排序,按词项排序 然后每个词项按docID排序,索引构建的核心步骤,索引构建过程: 词典 & 倒排记录表,某个词项在单篇文档中的多次出现会被合并 拆分成词典和倒排记录表两部分 每个词项出现的文档数目(doc. frequency, DF)会被加入,为什么加入?

5、后面会讲,存储开销计算,15,指针,词项及文档频率,倒排索引,docID表,第一讲:布尔检索,提纲,16,倒排索引 布尔查询的处理 (继续),第一讲:布尔检索,假定索引已经构建好,如何利用该索引来处理查询?,17,第一讲:布尔检索,布尔检索,针对布尔查询的检索,布尔查询是指利用 AND, OR 或者 NOT操作符将词项 连接起来的查询信息 AND 检索信息 OR 检索信息 AND 检索 AND NOT 教材,18,AND查询的处理,考虑如下查询(从简单的布尔表达式入手): Brutus AND Caesar 在词典中定位 Brutus 返回对应倒排记录表(对应的docID) 在词典中定位Cae

6、sar 再返回对应倒排记录表 合并(Merge)两个倒排记录表,即求交集,19,128,34,2,4,8,16,32,64,1,2,3,5,8,13,21,Brutus,Caesar,合并过程,每个倒排记录表都有一个定位指针,两个指针同时从前往后扫描, 每次比较当前指针对应倒排记录,然后移动某个或两个指针。合并时间为两个表长之和的线性时间,20,128,34,2,4,8,16,32,64,1,2,3,5,8,13,21,2,8,假定表长分别为x 和y, 那么上述合并算法的复杂度为 O(x+y)关键原因: 倒排记录表按照docID排序,其它布尔查询的处理,OR表达式:Brutus AND Cae

7、sar 两个倒排记录表的交集NOT表达式: Brutus AND NOT Caesar 两个倒排记录表的减 一般的布尔表达式 (Brutus OR Caesar) AND NOT(Antony OR Cleopatra)查询处理的效率问题!,21,查询优化,查询处理中是否存在处理的顺序问题? 考虑n 个词项的 AND 对每个词项,取出其倒排记录表,然后两两合并,Brutus,Caesar,Calpurnia,13,16,查询: Brutus AND Calpurnia AND Caesar,22,查询优化,按照表从小到大(即df从小到大)的顺序进行处理: 每次从最小的开始合并,23,这是为什么

8、保存 df的原因之一,相当于处理查询 (Calpurnia AND Brutus) AND Caesar.,Brutus,Caesar,Calpurnia,13,16,布尔检索的优点,构建简单,或许是构建IR系统的一种最简单方式在30多年中是最主要的检索工具当前许多搜索系统仍然使用布尔检索模型: 电子邮件、文献编目、Mac OS X Spotlight工具,24,布尔检索的缺点,布尔查询构建复杂,不适合普通用户。构建不当,检索结果过多或者过少 没有充分利用词项的频率信息 1 vs. 0 次出现 2 vs. 1次出现 3 vs. 2次出现, 通常出现的越多越好,需要利用词项在文档中的词项频率(term frequency, tf)信息 不能对检索结果进行排序,25,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报