第7卷第1期 智能系统学报 Vol.7 No.1 2012年2月 CAAI Transactions on Intelligent Systems Feh.2012 D0I:10.3969/i.issn.16734785.201101001 网络出版t地址:htp://www.cnki.net/kcma/detail/23.1538.TP.20120218.1616.001.html 智能文本搜索新技术 王占一12,徐蔚然12,郭军12 (1.北京邮电大学模式识别与智能系统实验室,北京100876;2.北京邮电大学信息与通信工程学院,北京100876) 摘要:面对当今互联网上海量的信息,以及搜索信息准确、高数、个性化等需求,提出了一套包括信息检索、信息抽 取和信息过滤在内的智能文本搜索新技术.首先举荐了与信息检素新技术相关的企业检索、实体检索、博客检索、相 关反馈子任务.然后介绍了与信息抽取技术相关的实体关联和实体填充子任务,以及与信息过滤技术相关的垃圾邮 件过滤子任务.这些关键技术融合在一起,在多个著名的国际评测中得到应用,如美国主办的文本检索会议评测和 文本分析会议评测,并且在互联网舆情、短信奥情和校园网对象搜素引擎等实际系统中得到了检验. 关键词:智能文本搜索:文本检索:文本分析 中图分类号:TP393文献标识码:A文章编号:16734785(2012)010040-10 New technologies of intelligent text search WANG Zhanyi2,XU Weiran'2,GUO Jun'2 (1.Patter Recognition and Intelligent System (PRIS)Laboratory,Beijing University of Posts and Telecommunications,Beijing 100876,China;2.School of Information and Communication Engineering,Beijing University of Posts and Telecommunications,Bei- jing100876,China) Abstract:To adapt to the massive amount of information on the internet and the need for accuracy,efficiency,and individualization,a set of technologies of intelligent text search including information retrieval,extraction,and fil- tering were proposed.First,new technologies of information retrieval were illustrated including the subtasks of en- terprise retrieval,entity retrieval,blog retrieval,and relevance feedback.Second,the subtask of entity linking and slot filling related to information extraction was introduced.Finally,the subtask of spam e-mail filtering related to information filtering was described.These technologies were converged for application in many well-known interna- tional evaluations.These include the text retrieval conference (TREC)and text analysis conference (TAC)spon- sored in the USA,and these technologies of intelligent text search were proven in practical applications such as public opinions on the Internet,short message opinions,and the campus object search engine (COSE). Keywords:intelligent text search;text retrieval;text analysis 随着互联网技术的飞速发展,网络上的信息呈 传统的文本搜索基于数据库查询、关键词搜索 爆炸式增长.用户需要在这些海量信息数据中找到 等技术,有很强的局限性.而智能文本搜索解决的是 自己需要的内容,不是简单定位到某一个网站或网 数据海量、数据稀疏、大量并发请求、数据特征演进、 页,而是越精准、全面越好.同时他们希望使用尽量 主客观交叉等困难问题,从技术角度来说,智能文本 少的描述就可以找到自己感兴趣的内容,不带有任 搜索融合了信息的检索、抽取、过滤等方面.检索是 何垃圾信息.如何满足用户对这些信息的高精度、高 由用户提出查询请求,系统根据这个需求对Web信 效率、个性化、完备性等需求,是当前信息检索和数 息进行查询并给出结果,抽取是把文本里包含的信 据挖掘面临的新问题, 息进行结构化处理,变成表格一样的组织形式.过滤 是系统根据预先设定的条件,对W©b中与该条件相 收稿日期:20110102.网络出版时间:2012-02-18. 符的信息进行获取、隔离或封堵山 基金项目:国家自然科学基金资助项目(60905017);高等学校学科创 新引智计划项目(B08004). 为了探索前沿技术,解决上述问题,各国学术 通信作者:王占一.E-mail:wangzhanyi@gmail.com. 界、产业界和政府部门都给予了高度关注,一系列评
第1期 王占一,等:智能文本搜索新技术 41 测活动应运而生.文本检索会议(text retrieval con- 段是普通的文档检索,找出一定数量的相关文档,计 ference,TREC)作为文本检索领域最权威的评测会 算出查询Q和文档D:的相关度S(D,Q);第2 议,关注着检索技术的最新发展,比较客观地反映了 阶段计算事先确定好的专家E,和这些文档的相关 十几年来的研究趋势.TREC是由美国国家技术标 度S(E,D:);最后综合文档和查询的相关度得到 准局(NIST)和美国国防部(DOD)联合主办,创立于 查询和专家的相关度Sm(E,Q),就可以对和查询 1992年,主要目的是通过提供评价大型文本检索方 相关的专家排序了. 法所必需的基础设施来支持对信息检索的研究2], Som (E;,Q)= 关注TEC,有利于加强各个科研机构和企业之间 N 的交流,有利于评价检索方法在实际问题中的效果, A(3(D.0》x5(ED,》. (1) 也有利于加快实验室的技术商品化的速度 式中:V,表示第1阶段得到的文档中,用于第2阶 TREC的参赛队伍从开始的22个发展到2010 段的文档数量 年的75个.北京邮电大学模式识别实验室多年来致 文档检索使用的算法包括语言模型、KL距离、 力于模式识别和网络搜索技术,从2005年开始参加 BM25等.计算专家E和这些文档的相关度 TREC的多项评测并取得了较好的成绩,如垃圾邮 Se(E,D:)可以使用式(2): 件过滤、企业检索、博客检索、实体检索、相关反馈 Sne(Ei,D:)= 等.同时,该团队还参加了国家“863”计划项目中文 N+1 本分类、SigHan分词、TAC和中文倾向性分析等评 nf)×loga分)+0.5 (2) 测.评测中涉及的任务除了用于新技术的研究,也是 式中:n(f)表示文档D:中某一专家的名字和邮箱 为了解决实际问题.基于评测中的智能文本搜索新 出现的次数,N是语料集中文档的数目,d(f)是出 技术,一些实际系统也相应地被开发出来,并在实际 现该专家名字和邮箱的文档数目。 应用中得到了检验, 二阶排序模型思路清晰,有理论依据且易于实 本文以权威评测为主线,详细介绍智能文本搜 现,但它以整篇文档为桥梁,单纯以专家名或邮箱代 索新技术.第1部分以企业检索、实体检索、博客检 表全部的专家信息,方法较为粗糙,没有在文档中做 索和相关反馈为例介绍信息检索新技术;第2部分 更细致的挖掘, 以文本分析会议评测为例介绍信息抽取新技术;第 1.1.2专家经验模型 3部分以垃圾邮件过滤为例介绍信息过滤新技术; 专家经验模型的主要思路是提取专家在文档中 第4部分介绍以上述技术为核心的实际应用系统, 的上下文组成该专家的“经验”,再计算专家经验的 如互联网舆情系统、短信舆情系统、校园对象搜索引 概率.提取上下文的过程相当于为该专家开了一个 擎系统等:最后是总结和展望部分 “窗口”,因此也叫作专家窗口模型.笔者认为专家 名或邮箱的上下文是与该专家密切联系的信息,那 1信息检索 么在确定一个专家的同时将其前后一定数量的词也 1.1企业检索 提取出来组成新的文档,这个文档就是包含该专家 文本检索会议从2005一2008年制订了企业检 相关信息的文档.因此只要检索到这个文档就认为 索(enterprise track)评测任务[3),企业检索的目的是 该专家和查询是相关的.这个过程表示为 研究在企业内部数据中的用户检索行为,主要包含 P(E/Q)=P(E./Q). 邮件检索(2005-2006年)[451、文档检索(2007 式中:E表示由专家经验组成的文档.另外,经过反 2008年)[6]和专家检索(2005一2008年)任务.其 复的实验发现,窗口的长度取专家前后各150个词 中,专家检索是重点和难点,它的目的是寻找企业中 效果最好.表1给出了二阶排序和专家经验2种模 关于某一主题的专家.具体地,专家检索需要分成两 型的性能比较。 部分来解决:一是确定所给语料集中的专家,二是计 表12种专家检索模型的对比 算查询与专家的相关度.专家的标识主要是姓名和 Table 1 Comparison of two kinds of expert track model 邮箱,定位专家的方法主要有命名实体识别、查询人 模型 MAP Bpref P@10 名列表、匹配邮箱、称谓、职务等.在实际中,这些方 二阶排序 0.1833 0.4182 0.3080 法经常综合运用, 1.1.1二阶排序模型 专家经验 0.2160 0.5180 0.3400 二阶排序模型的主要思路是通过文档为桥梁, 1.2实体检索 计算查询和专家的相关度.如式(1),检索的第1阶 实体检索,或称实体追踪(entity track)是2009
42 智能系统学报 第7卷 年TREC评测新增加的一项任务].它可以看作是 中的二阶思路,不同之处在于专家换成了实体.第1 从2005一2008年的专家检索任务发展而来.与专家 阶段计算查询和文档的相关度使用的是语言模型和 检索相比,它具有更新更丰富的内容.许多使用搜索 推理网络.第2阶段计算实体和文档的相关度也是 引擎的用户本意并不是找出各种各样的文档,而是 一个检索的过程,可以采用概率模型等,将实体转换 想知道答案是哪些具体的实体,因此,文本搜索的核 成查询后就和第1阶段相同了. 心任务是相关实体查找(related entity finding,. 实体中心模型是实体处在结构的中层,文档或 REF).REF需要解决的问题是:给出一个输人实体, 文档的片断在底层支撑实体,实体与顶层的查询直 连同它的名字、主页、目标实体的类型,还有描述它 接相连.与文档中心模型不同,实体中心模型只需要 们之间关系的文本,找出与目标类型相符的实体,这 1次检索过程, 些实体能够表示前面要求的与输入实体的关系.对 单纯用文档支持实体过于粗糙,参考专家经验 于每个查询,要求输出实体的排序,且每个实体必须 模型,取实体的上下文作为与实体相关的信息.这里 有惟一的主页.笔者的工作主要关注3个方面:针对 的上下文称为片断,同样也取实体前后的150个词, 每个查询,找出相关的实体;依据检索模型,对实体 将某个实体的各个片断汇集在一起,形成一个新的 进行排序;为每个实体赋予一个主页, 文档.实体与实体文档一一对应,利用查询与这些文 1.2.1实体抽取 档的相关度就可以直接对实体进行排序.排序的具 与专家检索首先要定位专家相似,实体检索的 体算法有前面提到的语言模型、BM25等. 前提是必须找出与查询相关的实体,而且尽量提高 1.2.3确定主页 查准率和查全率,这就要用到实体抽取的技术.通 与专家不同,实体需要一个主页与之对应,也是 常,实体抽取主要分为基于统计和基于规则2种.基 在网络上的惟一标识.为实体分配主页的方法主要 于统计的方法例如最大熵(maximum entropy)[8]或 有3种:1)计算实体和各相关文档的相关度,取相 条件随机场(conditional random field)[9]将人名、地 关度最高的作为主页,这种方法依赖于文档的内容; 名等命名实体标识出来.基于规则的方法例如构建 2)制定规则,将实体与文档的URL作比较,找出相 命名实体词典,用词典过滤出符合要求的实体, 似度最高的作为主页;3)利用已有的外部资源,如 为了更准确、更全面地抽取实体,可以将几种方 搜索引擎排序靠前的网页、维基百科的参考链接等, 法混合使用,即规则统计-规则.首先通过观察语料 实际应用中混合使用这3种方法,相互补充,达到尽 集、构造查询在搜索引擎或维基百科中查找特殊网 量准确分配主页的目的 页,这种网页多数以表格的方式呈现,或者有其他明 1.3博客检索 显的特征.然后通过适当的规则将这些可信度较高 文本检索会议TREC从2006年起制定了博客 的实体抽取出来.这种方法可以保证准确率,但是实 检索任务(Blog track),最初只对博客的观点度及其 体的数量不够.接下来使用文档检索得到相关度最 与查询的相似性进行研究.博客检索从2008年起开 高的前N(N=5)篇文档,使用基于统计的命名实体 始关注对博客倾向性的分析,并于2009年提出博客 识别工具抽取出与目标实体类型相同的实体,调整 精选任务,该任务将博客的倾向性分为3类:“个人 N可以保证实体的数量,但是准确率不高,这就又要 的(personal)”或“官方的(of出cial)”;“深人分析的 用到基于规则的方法.利用维基百科中每个词条的 (in-depth)”或“浅层描述的(shallow)”;“表达观点 语义标签建立各种实体类型的映射规则,如对于组 的(opinionated)”或“描述事实的(factual)”,其目的 织名(organization),以“组织”、“公司”等开头的标 是在博客关于查询的相似性检索的基础上进一步对 签,采集这些标签对应的实体,建立实体词典,前面 博客的倾向性进行检索和排序.笔者参加了2007一 用工具抽取出的“实体”再经过词典过滤,添加到实 2010年的博客检索任务,并于2009年在多项评测 体列表中 指标中都取得了第1名的优异成绩, 1.2.2检索模型 l.3.1博客精选(Blog distillation) 有了实体列表就可以依据检索模型对实体排序 随着各大博客网站的推出和兴起,网络上涌现 了.在实体检索任务中,根据查询、文档、实体三者的 出海量的博客用户,这些博客内容丰富多彩,种类多 关系,形象地构建了2种模型:文档中心模型和实体 样,同时也充斥着各种感情色彩,可谓鱼龙混杂.在 中心模型. 信息如此泛滥的情况下来判断相对比较具体的一些 文档中心模型将文档d看作查询q和实体e的 话题的倾向性是有困难的,因此有必要事先挑选出 桥梁,查询和实体的相关度由合并q、d的相关度和 一些与话题相关性大的博客,再判断其倾向性.这也 e、q的相关度得到.文档中心模型借鉴了专家检索 是把话题检索作为倾向性检索基础的原因
第1期 王占一,等:智能文本搜索新技术 43 在2009和2010年的话题检索任务中,笔者使 表达一种观点或陈述一个事实的强烈程度,来对这 用的方法基本相同,都是将其看作Learning to Rank 些博客进行排序, 问题,即通过学习博文的排序,利用一定的算法来获 笔者在2008和2009年都使用了同一种情感分 得博客的排序.针对这一问题,采用Voting模型1o, 析模型2],对于博客的观点度打分如式(4): 即一个博客里的博文被看作是这个博客的支持者, I Nos -Neg I (4) 该博客里的博文对于话题的相关性就越大,同时相 S。=N。-+Ns 关的博文数量越多,该博客的相关性就越大,排序越 式中:N和N分别代表主观和客观的博文数, 靠前 与前2年不同,2010年的博客检索中使用了基 具体的方法如下:将所有的数据以博文为单位 于词典的方法,主要分为3个步骤: 输入Indi建立索引,用话题Q在Indri里进行查询, 1)利用信息增益与互信息自动生成“主观词词 得到博文的相关性分数和排序.通过此排序来获得 典”和“客观词词典”.通过信息增益在训练集中挑 博客排序,如式(3): 选对观点型博客和客观型博客区分度高的词,作为 Scone (B,Q)=>Sooe (p,Q)/1 BI. (3) 词典的候选词.由信息增益生成的候选词并没有被 分类为“观点型”或“客观型”,为了生成最终的2种 式中:B表示一个博客,博客B中的一篇博文用p表 词典,利用互信息进一步将这些候选词分为“观点 示,Se(B,Q)表示一个博客的相关性得分, 型”和“客观型”[3]」 Se(p,Q)表示从Indi中获得的博文的相关性分 2)计算观点度得分和客观度得分.对于每个查 数,BI表示一个博客下博文的数量.将获得的相关 询q和词典中的词t,在相关文档集中计算TF-DF 博客的分数排序,排在前100的被认为是与话题最 权重0(t),同时用一种词权重模型4]计算查询 相关的博客。 权重wa(q),然后将2个权重相加得到博客的观 1.3.2个人与官方(personal vs..official) 点度得分Sm和客观度得分Sa 博客的兴起使个人和组织的言论表达变得更加 3)排序.首先在相关文档集中找到每篇博客的 便利,然而因特网用户可能不大喜欢宣传性、商业性 相关性得分Se(B,Q),然后将S(B,Q)×Sm和 的博客,更加喜欢以个人的名义发表的文章,这样就 Se(B,Q)×Sa分别作为观,点度排序和客观度排序 使得个人、组织搜索的研究变得具有现实意义 的最终得分. 博客的个人、组织检索,是TREC评测2009年 1.3.4深入分祈与浅层描述(in-depth vs.shallow) 新增加的一项子任务,被安排在话题检索之后.在话 2009年首次提出博客的深浅度分析任务.笔者 题检索中,得到与话题相关的博客,再对其进行个 提出了L-Qu系数进行博文的深浅度分析51.然后 人、组织检索.最近2年分别采用了2种不同的方法 根据每一个博客下深度博文与浅度博文的数量,得 来进行个人、组织检索。 到每一个博客的深度分析程度或浅度分析程度的排 2009年主要采用了组织机构名的区分方法,因 序.最后将每一个博客深浅度的排序值与相应的博 为官方/组织的博客的书写惯例,一般会将组织名称 客精选的相关性值合并得到最终结果 放在文章的开头位置,有种“开门见山”的感觉;所 1)根据LQ系数进行每一篇博文的深浅度分析: 以根据相同的组织机构名称在文章中出现的频率和 k(L-Qtf)= 位置来给相关的博客进行打分,最后根据分数的高 1+ln(1+ln(f)) 低来进行排序和检索,即可分别得到个人和组织的 teOnD 博客。 (1-s)+si 2010年主要采用了基于机器学习的分类方法, 式中:∫:和f分别为查询中的单词在博文中的词频 将个人和组织的检索看作是一种分类的问题,在训 和在查询中的词频,在计算f和f之前,进行词干 练模型中,利用机器学习的方法来分别构建含有个 化处理(stemming),其作用是将词的各个词形变化 人和组织信息的词典.在构建词典前会做一个文本 还原为同一词干,例如“selling”和“sels”是“sell”的 特征降维的处理,然后利用VSM模型用这2个词典 不同词形,这样的处理可以提高查询词在博文中的 对相关博客进行打分和排序[山,最后分别得到个人 覆盖率;4为博文的长度;1为同一查询下全部相 和组织的博客。 关博文的平均长度;在实验中参数s设置为0.2 1.3.3表达观,点与描述事实(opinionated vs.factual) 2)根据博文的L-Q:系数进行博客的深浅度分 博客的观点度与客观度排序评测旨在开发一种 析.在同一查询下,根据LQ壮系数的值对博文进行 有效的检索系统,使其能根据博客中关于某话题所 排序,取该排序的前45%判定为深度表述的博文
44 智能系统学报 第7卷 后45%判定为浅度表述的博文.计算每一个博客下 1.4.2扩展词抽取 深度表述博文与浅度表述博文数量的差值,并对该 扩展词主要有2种:通过语言模型计算的权重 博客下博文的数量进行归一化,得到该博客的深浅 排序得到的词]和通过相似性KL距离计算得到 度分析结果S: 的命名实体扩展词的来源是初始查询结果通过标 Si=Some (b0) 记文本分类得到的相关文档类. 月ma.0)-85a.0) 语言模型进行扩展词抽取主要思想是将相关文 档类看作一个模型1],通过估计模型生成词的概率 n 来对词进行排序.词在相关文档类模型中的概率分 式中:S(b.,Q)为深浅度分析结果,为了区分下面 布如式(5): 的合并方法,用S表示. P(tI Ma)= 3)与博客的相关性结果合并得到最终排序.一 个博客深浅度分析的最终结果不能仅依赖于深浅度 ,Pn(t,d)1-》×Pe(t),f(t,d)>0; 分析,还要考虑该博客对于查询词的相关性,所以提 ,f,d)≤0, 出了以下的合并模型: S;= (5) 「Se(b.,Q)×Smm(B,Q),Scre(b.,Q)≥0; 式中:Pm(t,d)是词t在文档d中的归一化频率, 1-S(b,Q)x Som(B,Q),Scoe (b.,Q)<0. Pm(t)是词t的平均词频,R(t,d)是一个风险函数fa 式中:Sm(B,Q)为每个博客的相关性, 是t在文档类中的总词频,c,是相关文档集长度. 1.4相关反馈 一些查询往往与特定的领域或主题相关,这些 相关反馈是TREC在2008年发布的一项新任 领域内部的人物、机构、地点等通常能有助于区分相 务,基本的任务是:对于一个给定的查询,对文档集 关文档和不相关文档91.因此,可以将这些命名实 索引中抽取相关文档,得到初始查询结果;然后再给 体(包括人名、地名、组织机构)作为扩展查询的一 定一些标注过的与查询相关或无关的文档,通过标 部分.抽取的主要方法步骤是:1)对相关文档集进 记文档选择扩展词,对查询进行重构;最后重新查询 行命名实体标注,标注出人、组织和地名3类命名实 得到反馈结果.2008年采用了传统的Rocchio算法, 体;2)基于命名实体的词频对实体进行排序,得到 即正负反馈的方法.2009年相关反馈主要采用了文 词频较高的前20个命名实体;3)去掉这20个命名 本分类、语言模型提取扩展词的方法【6,其效果较 实体中的噪声实体,噪声实体是指在相关文档集和 好.2010年的相关反馈在2009年方法的基础之上 不相关文档集中都经常出现的实体;4)计算去噪后 加入了实体扩展、扩展词分类两部分 每个实体和相关文档的KL距离[0],找到与相关文 1.4.1结构流程 档距离最近的5个实体加入到扩展词集合中, 2010年相关反馈方法的流程如图1所示. 1.4.3扩展词分类 通过语言模型提取出的扩展词,并不是都能改 输入标注的 善原始查询的结果;因此采用对扩展词进行分类的 相关文档 方法,选择对原始查询改善效果比较好的扩展词,使 得查询能够得到更好的优化.在扩展词分类实验中, 查询初始结果 初始结果 分类器采用LIBSVM,特征选取方面,主要考虑的是 KNN分类 扩展词的分布特点、扩展词与查询词之间的共现频 度和距离等特征,训练样本来源于2009年TERC相 扩展词抽取 关反馈评测的数据。 根据扩展词对原始查询的不同影响,将扩展词 分为好扩展和坏扩展2种,并进行扩展词标注.好扩 扩展词分类 展是指当在扩展查询中该扩展词的权重为心时,返 回的结果比原始查询好,即正反馈;当权重为-0 查询扩展 反馈结果 时,返回结果比原始查询差,即负反馈.坏扩展与之 相反.实验中取0=0.01. 图1相关反馈的流程 使用LIBSVM2进行SVM的训练和预测.按照 Fig.1 The flow chart of relevance feedback 前面提到的标注方法,对2009年相关反馈提取的扩