检索 林琛 博士、副教授.

Slides:



Advertisements
Similar presentations
练一练: 在数轴上画出表示下列各数的点, 并指出这些点相互间的关系: -6 , 6 , -3 , 3 , -1.5, 1.5.
Advertisements

应用地球物理卓越人才培养体系构建与实践 吉林大学地球探测科学与技术学院 刘 财 经验交流.
信息检索与 Web 搜索 第 2 讲 布尔检索 Boolean Retrieval 授课人:高曙明 * 改编自 “ 现代信息检索 ” 网上公开课件( )
复习: :对任意的x∈A,都有x∈B。 集合A与集合B间的关系 A(B) A B :存在x0∈A,但x0∈B。 A B A B.
杨宇航 百度社区技术部 推荐技术在 百度UGC产品中的应用 杨宇航 百度社区技术部
SEWM2006 Web检索 山东大学 陈竹敏.
毛峰教授 北京师范大学教授,博士生导师 国家社科基金项目专家 北京华文教育顾问
建站流程 本章重点 本章介绍网站制作流程、经验、技巧以及在制作网页过程中可能需要注意的问题。 学习目的 了解网站的制作流程。
移动创星擂台 2017年3月19日星期日 2017/3/19 此模板可用作起始文件以更新项目里程碑的更新。 节
第21章 信息检索 概述 利用项进行相关性排名 利用超链接的相关性 同义词, 多义词, 本体 文档的索引 检索有效性度量 Web抓取和索引
倒排检索构建 主讲人:陈文亮 苏州大学计算机学院.
倒排检索构建 主讲人:陈文亮 苏州大学计算机学院.
不确定度的传递与合成 间接测量结果不确定度的评估
在PHP和MYSQL中实现完美的中文显示
HTML5全栈开发序列课程 《前端入门》之HTML入门 余鹏作品.
Speaker : Kuo Tung Yang 2010/03/30
如何使用CiteSpace分析Derwent专利数据
Hadoop I/O By ShiChaojie.
行動與無線通訊 第ㄧ章 無線通訊網路 陳育良.
信息检索的评价 哈工大计算机学院 信息检索研究室 2007.
李杰 首都经济贸易大学 安全与环境工程学院 个人主页:
SQL Injection.
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
基于全方位视觉的多人体运动检测跟踪 利用全方位摄像机获取360˚ 的环境信息,在室内对多个人体目标进行实时运动检测。
数 控 技 术 华中科技大学机械科学与工程学院.
從網路世界大學排名看學校的網頁設計 Speaker:楊國棟 2011/07/05
以ISI平台为例,为您演示一下如何在Endnote文献中查看该文献的References
逆向工程-汇编语言
网络营销实务 第17讲 搜索引擎优化(2) 主讲人:李小斌.
Get Started 1. Use USB cable or power adapter to power on the WisCore board. Make sure the power LED is on. Also, the WLED is flash. 2. Please download.
中国科学技术大学计算机系 陈香兰(0551- ) Spring 2009
数据说明 郝蕊.
搜 刘智 iLife信息素养协会 索.
第3章 信息与信息系统 陈恭和.
WSDM见闻 程龚.
SOA – Experiment 2: Query Classification Web Service
网页设计与制作 Dreamweaver CS6 标准教程
何勉 新浪微博: Scrum框架及其背后的原则 原始图片 何勉 新浪微博:
编程作业3:网页正文抽取 (10分).
网络信息检索的基本方法.
习题 一、概率论 1.已知随机事件A,B,C满足 在下列三种情况下,计算 (1)A,B,C相互独立 (2)A,B独立,A,C互不相容
数列.
ASP New and other UIs: Medical Videos Searchasaurus
顺序表的删除.
光子能量线性_不同灵敏层厚度 photon,Cell Size 5x5mm
Three stability circuits analysis with TINA-TI
2019/4/20 关注NE官方微信,获取更多服务.
2019/4/16 关注NE官方微信,获取更多服务.
下一代网络营销探讨 —网络营销移动化问题思考
复习.
XML備份MySQL資料庫 <html> <head>
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
项目二:HTML语言基础.
Web安全基础教程
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
组织机构栏目内容管理 青海省教育信息中心 2018年12月18日.
3.16 枚举算法及其程序实现 ——数组的作用.
数据集的抽取式摘要 程龚, 徐丹云.
Chapter 18 使用GRASP的对象设计示例.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
分数再认识三 真假带分数的练习课.
第15讲 特征值与特征向量的性质 主要内容:特征值与特征向量的性质.
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
Python 环境搭建 基于Anaconda和VSCode.
基于列存储的RDF数据管理 朱敏
插入排序的正确性证明 以及各种改进方法.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
超星电子书 让更多的人读更多的书.
《手把手教你学STM32-STemWin》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司
Presentation transcript:

检索 林琛 博士、副教授

本讲要点 从实用角度看搜索引擎架构 检索排序模型 数据获取:爬虫 查询处理:布尔检索与查询扩展 数据索引:倒排表 排序模型 检索评价 向量空间模型与Rocchio查询扩展 语言模型与查询扩展(简略)

检索与查询 查询 检索 结构化数据(数据库) 查询语言 返回对象是记录 结果集是确定的 排序由用户指定 注重效率 自然语言/html等无结构或半结构化数据 自然语言 返回对象可以是文档/人/产品…… 结果集是不确定的 一般根据相关度排序 更注重效果 现在数据库查询也发展fuzzy search等,和信息检索交叉

构建一个Web检索系统 构建一个手机智能导购系统 得到电商的产品信息库及在线用户评论数据 用户输入对手机的消费需求 在数据中找到符合需求的对象 返回并排序

数据采集:爬虫 起始页面:种子 爬虫基本流程 京东,新蛋,亚马逊,苏宁…… 初始化采集URL种子队列; 重复如下过程: 京东入口,链往 HTC New One , Nokia Lumia等 HTC New One链往更多网页 HTC New One包含了该手机的评论(需要保存该页面) 爬虫基本流程 初始化采集URL种子队列; 重复如下过程: 从队列中取出URL 下载并分析网页 从网页中抽取更多的URL 将这些URL放到队列中

爬虫的实际问题 规模问题 礼貌性问题 鲁棒性问题 新鲜性问题 如果要在一个月内采集20,000,000,000个页面 那么必须要在一秒内大概采集 8000个网页! 由于我们采集的网页可能重复、不可下载或者是作弊网页,实际上可能需要更快的采集速度才能达到上述指标 必须采取分布式设计 礼貌性问题 不要高频率采集某个网站 仅仅采集robots.txt所规定的可以采集的网页 鲁棒性问题 能够处理采集器陷阱、检测重复页面、超大页面、超大网站、动态页面等问题 新鲜性问题 必须要定期更新或者重采 优先处理高质量网页 返回

查询处理 词包模型 布尔检索 时尚轻薄的手机 时尚>轻薄 时尚 OR 轻薄 AND 手机 AND NOT 电脑 用户是否正确的表达了信息需求? 用户是否完整的表达了信息需求?

查询扩展 某篇文档 d 包含“时髦”,但是不包含 “时尚” 某篇文档d’包含“超级本”,但是不包含“轻薄笔记本” 查询扩展 基于全局建立同义词词典扩展查询(“时髦”“时尚”同义) 基于局部的相关反馈(在该查询下“超级”与“轻薄”相关) 用户提交一个(简短的)查询 搜索引擎返回一系列文档 (用户)将部分返回文档标记为相关的,将部分文档标记为不相关的 搜索引擎根据标记结果计算得到信息需求的一个新查询表示,希望该表示好于初始的查询表示 搜索引擎对新查询进行处理,返回新结果 无相关反馈的叫做ad hoc检索 循环 返回

索引 笨方法:从头到尾扫描所有评论,对每个评论判断它是否包含时尚 AND 轻薄,同时又不包含笔记本电脑 倒排索引 对每个词项t, 记录所有包含t的对象列表. 一个对象通常是一个文档,每篇文档用一个唯一的 docID来表示,通常是正整数,如1,2,3…

倒排索引进行布尔查询 在词典中定位“时尚”(B树) 在词典中定位“轻薄” 合并(Merge)两个倒排记录表 倒排记录 按docID排序 再返回对应倒排记录表 合并(Merge)两个倒排记录表 每个倒排记录表都有一个定位指针,两个指针同时从前往后扫描, 每次比较当前指针对应倒排记录,然后移动某个或两个指针。合并时间为两个表长之和的线性时间 OR:两个倒排记录的并集;AND:交集;NOT:剪 1 3 4 6 31 67 91 100 123 1:时尚 8 词典 2:轻薄 6 3:手机 5 2 4 6 16 31 倒排记录 按docID排序

查询优化 每个查询都写成如下形式的合取范式 对每个子句 按照上述估计从小到大依次处理每个子句 (a OR b) AND (c NOT d) AND (e OR f) 对每个子句 获得每个词项的df (保守)通过将词项的df相加,估计每个子句对应的倒排记录表的大小 按照上述估计从小到大依次处理每个子句

索引的预处理 努比亚手机 问题1:web检索的源数据是html格式,需要哪些部分的内容?是否有偏重? <html xmlns=“http://www.w3.org/1999/xhtml”> <head> <title>【努比亚Z5 mini】努比亚(nubia)小牛 Z5 mini 3G手机(黑色)WCDMA/TD-SCDMA/CDMA2000【行情 报价 价格 评测】-京东商城</title> <script>var jdpts = new Object(); jdpts._st = new Date().getTime();</script> <meta http-equiv=“Content-Type” content=“text/html; charset=gb2312” /> <meta name=“keywords” content=“nubiaZ5 mini,努比亚Z5 mini,努比亚Z5 mini手机报价,nubiaZ5 mini报价”/> <meta name=“description” content=“【努比亚Z5 mini】京东JD.COM提供努比亚Z5 mini正品行货,全国的价格最低,并包括nubiaZ5 mini手机网购指南,以及努比亚Z5 mini图片、Z5 mini参数、Z5 mini评论、Z5 mini心得、Z5 mini技巧等信息,网购努比亚Z5 mini手机上京东,放心又轻松" /> Mobile phone (also known as a cellular phone, cell phone, and a hand phone) are devices that can make and receivetelephone calls over a radio link while moving around a wide geographic area. It does so by connecting to a cellular networkprovided by a mobile phone operator, allowing access to the public telephone network. By contrast, a cordless telephone is used only within the short range of a single, private base station. 问题2:词项的边界在哪里?以字为单元还是词语?英语和中文相同吗? Devices=device?

索引 文档分析 确定索引单位 文档格式识别 文档语言识别 文档编码识别 词条化(Tokenization) 分词 (去除停用词) 归一化 建立词典 倒排记录表 记录位置和词组

处理短语查询 输入查询作为一个短语整体,比如 中国科学院” 解决方案 “我去了中国 农业 科学院”(不是答案) 有证据表明,用户很容易理解短语查询的概念,这也是很多搜索引擎”高级搜索”中比较成功的一个功能。 但是很多查询是隐式短语查询information retrieval textbook  [information retrieval] textbook 解决方案 双词索引(n-gram):每两个连续的词组成词对(作为短语)来索引 倒排索引

带位置信息的索引 短语查询 <term, 出现term的文档篇数; doc1: 位置1, 位置2 … ; 等等> 短语查询 对每个词项,抽出其对应的倒排记录表 合并<docID:位置 >表 考虑前后位置之间的距离不大于某个值

排序 布尔检索没有排序 信息过载 用户只希望看到一些而不是成千上万的结果 信息检索中,排序非常重要

向量空间模型 查询看作一个向量 每篇文档为一个向量 向量夹角 每篇文档为一个向量 Term1:weight1 权重 t 在 d 中的词频 反映t的信息量:t在语料C中的文档频率倒数 词项的tf-idf权重是tf权重和idf权重的乘积

向量空间模型中的查询扩展:Rocchio 向量空间模型中将文档表示成高维空间中的点 一系列点的中心:质心

Rocchio算法原理 (伪)相关反馈 最优查询是将相关文档和不相关文档分得最开 相关文档集Dr,不相关文档集Dnr 不能分开相关和不相关文档 Ur-Unr 区分效果很好

实际使用的Rocchio算法 实际使用中由于无法知道所有的相关和不相关文档 SMART系统1971年使用 一旦出现负权重即设为0.因为在向量空间模型中,权重为负是没有意义的。 正反馈价值往往大于负反馈如β = 0.75, γ = 0.25.甚至只允许正反馈,即γ=0 qm: 修改后的查询; q0: 原始查询; Dr 、Dnr : 已知的相关和不相关文档集合;α, β, γ: 权重

语言模型 文档模型:词项的分布 文档:样本 查询:样本 查询似然概率 证监会 微博 中国证券监督管理委员会(简称证监会)官方微博10月15日在腾讯微博开通,是证监会信息公开的又一重要平台。证监会将第一时间通过微博这一新媒体渠道,向社会公众公开关于全国证券期货市场的重要信息,维护市场公开、公平、公正,维护投资者特别是中小投资者合法权益,促进资本市场健康发展。 证监会开微博

估计MD 多项式模型:D是抛1个L面的骰子抛|D|次生成的,将每次朝上的那面对应的词项集合起来便生成文本D。 最大似然估计: 出现次数为0的词语 Jelinek-Mercer(JM),0≤λ≤1 Dirichlet Priors(Dir) Absolute Discounting(Abs)

语言模型中的查询扩展 相关模型 查询:语言模型->样本 相关文档的集合:语言模型->样本集

信息检索的评价(1) 不考虑结果中的序 准确率 召回率 P = TP / ( TP + FP ) R = TP / ( TP + FN ) P@N 召回率 P = TP / ( TP + FP ) R = TP / ( TP + FN )

信息检索评价(2) 准确率和召回率的trade-off 允许准确率和召回率的折中(通常取调和平均数)

信息检索的评价(3) 考虑结果中的序 平均正确率(Average Precision, AP):对不同召回率点上的正确率进行平均 结果1 结果2 结果3 结果k 结果N 信息检索的评价(3) 考虑结果中的序 平均正确率(Average Precision, AP):对不同召回率点上的正确率进行平均 未插值的AP: 某个查询Q共有6个相关结果,某系统排序返回了5篇相关文档,其位置分别是第1,第2,第5,第10,第20位,则AP=(1/1+2/2+3/5+4/10+5/20+0)/6 多个查询的AP的平均值称为系统的MAP(Mean AP) MAP是IR领域使用最广泛的指标之一 MRR(Mean Reciprocal Rank):(第一个)答案在结果中的排序的倒数作为它的准确度 对所有的查询取平均。

信息检索评价(4) 考虑结果和答案中的序 假设答案中被划分为若干个等级 最好情况下结果的排序 计算(NDCG@真实结果的位置rank) 每个等级有分值(线性/指数) 最好情况下结果的排序 假定2个3等,1个2等,4个1等 则结果[3 3 2 1 1 1 1] 计算(NDCG@真实结果的位置rank) 增益(gain):赢得等级的分值 折算增益(discounted gain)一般情况下用户会优先点选排在前面的搜索结果,结果分值x折算因子= log2/log(1+rank) 折算累积增益(discounted cumulative gain)加上真实结果中排在前面的累计增益 归一化(normalized discounted cumulative gain):除以最好情况该位置的累计增益 Pooling法产生的答案 非常相关:5/25-1 相关:4/24-1 中立: 不太相关: 不相关:

信息检索的评价:例子 结果 评价 分值 文档 Highly relevant 10 1,6 Relevant 1 2,5,7 Not relevant 3,4,8,9,10 排序 文档 1 2 3 4 5 6 8 7 9 10 DCG NDCG 1 1/10=0.1 1+10x0.63 7.3/16.3 7.3 7.3/16.8 7.3+0.43 7.73/17.23 Relevance judgement 相关度评价 指标 Highly relevant Relevant P@5 2/5=0.4 4/5=0.8 F-score P:0.4,R:1 = 0.286 P:0.8,R:0.8 = 0.4 MAP (1+1/5)/2=0.6 (1+1/2+1/4+1/5)/5=0.39 MRR ½=0.5 1/1=1 NDCG (1)P@5 (2)F-score @5 (3)MAP (4)MRR (5)NDCG