本体建模与语义Web知识发现 5 基于N-VSM的全文检索

     信息检索是从任何信息集合中识别和获取所需信息的过程及其所采取的一系列方法和策略。从原理上看,包括存储与检索两方面。知识是有组织的大量的信息,获得知识有赖于获得信息。本章将介绍非结构化数据的全文检索技术。

5.1 全文检索的关键技术

    由于RDBMS自身底层结构的缘故使得它管理大量非结构化数据显得有些先天不足,特别是查询这些海量非结构化数据的速度较慢。而通过全文检索技术就能高效地管理这些非结构化数据。

    全文检索是一种将文件中所有文本与检索项匹配的文字资料检索方法。全文检索系统是按照全文检索理论建立起来的用于提供全文检索服务的软件系统,系统的核心则具有索引、处理查询返回结构集、增加索引、优化索引结构等功能。衡量全文检索系统性能的基本指标有查全率、查准率、响应时间和输出形式等。全文检索的中心环节是文件内容表达、信息查询的获得以及相关信息的匹配。一个好的全文信息检索系统不仅要求将输出信息进行相关性排列,还应该能够根据用户的意图、兴趣和特点自适应和智能化地调整匹配机制,获得用户满意的检索输出。

   要实现全文检索,首先必须对Web信息进行预处理。

   信息预处理的主要功能是过滤文件系统信息,为文件系统的表达提供一种满意的索引输出。其基本目的是为了获得最优的索引记录,使用户能很容易地检索到所需信息。

   (1)格式过滤:信息预处理应该能够过滤不同格式的文档,以及图片、声音、视频等信息。这使得搜索引擎不仅能够检索文字,而且能够检索原始格式文件的所有信息。

   (2)语词切分:语词是信息表达的最小单位,而汉语不同于西方语言,其句子的语词间没有分割符因此需要进行语词切分。常用的语词切分方法有按词典进行最大词组匹配、逆向最大词组匹配、最佳匹配法,脸型一回溯法、全自动词典切词等。今年来,又出现了基于神经元网络的和专家系统的分词方法和基于统计和频度分析的分词方法。

   (3)词法分析:汉语语词切分中存在切分歧义。因此需要利用各种上下文知识解决语词切分歧义。此外,还需要对语词进行词法分析,识别出各个语词的词干,以便根据词干建立信息索引。对于英语语词,建立索引之前首先要去除一些停顿词(如常见的功能词a、the、it等)和词根(如ing、ed、ly等)

   (4)词性标注和短语识别:在切分的基础上,利用基于规则和统计的方法进行词性标注。在此基础上,还要利用各种语法规则,识别出重要的短语结构。

   (5)自动标引:从网页文档中提取出一组能最大程度上概括其内容特征、可作为用户检索入口的关键性信息,用该组信息对文件进行标引,使用户可以通过输入关键信息检索到该文件的简要信息,如标题、摘要、时间、作者和URL等,进一步点击可查询到该文档。

    (6)自动分类:建立并维护一套完整的分类目录体系,根据文件的信息特征,计算出与其相关程度最大的一个或多个分类,将文档划归到这些分类中去,使用户可以通过浏览分类体系直接查询到该文档。

     目前,搜索引擎的使用已成为排在收发电子邮件之后的第二大互联网应用技术。搜索引擎起源于传统的信息全文检索理论,即计算机程序通过扫描每一篇文章中的每个词,建立以词为单位的到排文件,检索程序根据检索词在每一篇文章中出现的频繁和每个检索词在一篇文章中出现的概率,对包含这些检索词的文章进行排序,最后输出排序的结果。全文检索技术是搜索引擎的核心支撑技术。全文检索系统架构如图

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

5.2 信息检索模型

      实现全文检索的关键是解决检索模型的问题,即文档如何表示,如何建立索引项和文档之间的联系及检索结果如何处理等问题。原始的文档中包含文本、图像、视频、音频等数据,不能直接进行检索,需要从这些原始数据中抽取逻辑视图,以支持信息检索。用户用查询来表示信息需求,检索系统根据查询的表示,搜索文档集,获取与用户查询相关的文档。信息检索的匹配是相似性匹配,查询的结果按序返回。以上过程实际上涉及到三个重要的处理:文档集的逻辑表示、查询的表示、相似性匹配及其排序。也就是说,文档集、查询和相似性匹配决定一种检索策略和模式。对这些检索的因素和过程建模,就产生了各种不同的信息检索模型。信息检索模型的定义如下:

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

     根据查找相关信息的实现方式不同,经典的信息检索模型有布尔模型、向量空间模型和概率模型。布尔模型是许多商业信息检索系统的理论基础。在布尔模型中,文档和查询都被表示为索引项的集合,因此该模型是集合论模型;在向量空间模型中,把文档和查询表示成一个n维空间中的向量,用距离作为相似度的度量,该模型是代数模型;在概率模型中,把检索看作是文档和查询之间匹配成功的概率估计问题,用于构建文档和查询的机制是基于概率论的,该模型是概率模型。

     集合模型:布尔模型是最典型的一种集合模型,如查询词条在文档中出现,就赋予True值,反之为False;利用布尔模型无法在匹配集中进行相关性的排序。布尔模型易于实现,检索速度快,几乎所有的商业站点都支持该模型。但是布尔模型过于严格,往往由于一个词条不满足条件而导致整个查询表达式无效,漏检比较严重,同时也无法区分词条在文档中所占的权重,因此布尔模型是一种简单但是不够理想的快速检索模型。

     代数模型:向量模型把文档看成一组独立的n维词条向量,对每个词条分量都赋予一个权重wi,文档和用户的信息查询可以转化为向量空间的向量匹配问题。假设文档向量为(w1, w2, ..., wn),用户查询为(q1, q2, ..., qn),用两个向量的夹角余弦来表示文档的相似度,很明显该角度与文档的相似度成反比。

     概率模型:相比之下考虑了词条文档之间的统计概率。假设N表示文档集合中的文档总数,R表示文档集合中与用户查询相关的文档树,Ni表示包含查询词条Ti的文档树,Ri表示相关文档R中包含词条Tt的文档数。文档相似度的计算都和这些变量相关,词条、文档之间的内在关联在该模型中得以体现。其试图在一个概率框架中处理信息检索问题,其基本思想是:给定一个用户的查询,则有一个包含相关文档且不包含不相关文档的集合。设想这个文档集合是一个理想的结果集,给出这个理想结果集的描述,并用于检索。

     概念模型:一种全新的检索模型,该模型的基本原理和上述的几种模型有本质的区别。该模型不是以单词或词组为中心组织检索数据库,而是以概念来取代它们,用树状或网状结构来表示概念的组织和分类。使用概念模型检索,就不再局限于词条本身,当用户输入一个查询条件是,不仅要找出与查询表达式匹配的结果,而且搜索引擎根据该词语概念与其他词语概念的内在关联,也要找出包含与查询表达式概念相同或相近的词语的文档。例如,用户查找color change,搜索引擎可以找出become black等具有相近含义的词语。概念模型不是简单的短语匹配,这种短语匹配往往得到成千上万毫无意义的结果,但是它能够根据用户查询词条的内在含义进行相近语义短语的查找,这个特点是其他的模型所没有的。

5.3 N层向量空间模型

     基于向量空间模型的信息检索一般过程如下:

     (1)将各个文档和查询都表示为向量;

     (2)计算查询与各个文档之间的相似度;

     (3)按照查询与各个文档之间的相似度对相关的文档进行排序;

     (4)将排序后的文档以线性列表的形式返回给用户;

    向量空间:

本体建模与语义Web知识发现 5 基于N-VSM的全文检索    

     权重:

本体建模与语义Web知识发现 5 基于N-VSM的全文检索    

     文档和检索项之间的相关性:文档与查询之间的相关性可以用文档向量与查询向量之间的相似度来度量。针对特定的查询向量,比较它与所有文档向量的相似度,并依相似度将文档降序排序,提交检索结果。

     N层向量空间模型:将一篇文档从组织结构上划分为N层,基于每层的文本内容建立相应的特征项向量和权重。其中特征项抽取和权重计算等同传统向量空间模型相同,这样对于文档进行N层划分得到的向量空间模型就成为N层向量空间模型。

5.4 N-VSM的文档相似度计算

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

本体建模与语义Web知识发现 5 基于N-VSM的全文检索


       常见的特征权重算法:

               特征项频率(TF):wi =  特征项ti在类c文本中出现的次数

               反文档频率(IDF):

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

       TD_IDF加权公式:

本体建模与语义Web知识发现 5 基于N-VSM的全文检索     

       基于贝叶斯理论的加权计算:传统TF-IDF特征权重计算方法所存在的一些弊端,主要表现在该方法中IDF值的计算是将类别中的文档作为一个整体来进行考虑的,而没有考虑特征项在类别中的分布情况这一重要信息。而向量空间模型可以很好地表征特征项在Web文档不同位置的重要程度,为了弥补传统TF-IDF特征权重计算方法的缺陷,将函数RTC引入到向量空间模型来表示特征项与类之间的关联性,在权重的计算公式里加入特征项在类别中的RTC值。

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

      基于N层向量空间模型的文档检索:

             为了更好地提高用户的检索要求,采取如下步骤改进检索模型:

             (1)从文档中抽取关键词,根据公式5-8计算权重;

             (2)将用户检索项和待检索文档表示成向量空间中的向量;

             (3)根据检索项在文档不同位置(标题、摘要、关键词和正文)构建四层向量空间模型,同时考虑在关键词和标题同时出现的情况;

             (4)对检索项在不同位置出现的情况赋予不同的权重,利用夹角余弦来计算相似度,得到检索兴趣度最高的文本。

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

5.5 检索结果排序算法

      信息检索的核心问题之一是在系统检索出的结果集中运用排序算法对检索结果按照一定的相关性进行排序。排序函数是以某种准则计算文档信息与用户检索信息的相关性判断,根据相关度进行降序排序。排序技术是信息检索系统进行结果处理的核心技术,排序策略直接影响到检索系统的查准率和查全率,排序算法的优缺点直接影响系统的效率。典型的检索系统排序技术主要有词频统计和词位置加权排序算法、基于用户反馈的Direct Hit算法、PageRank链接分析算法和Hits排序算法四种,早期搜索引擎如Infoseek、Lycos等采用的是词频统计和词位置加权排序技术,现在流行的两大搜索引擎Google、百度采用的是超链分析排序技术。

      超链分析排序技术:

             Web页面检索排序算法,主要分为三类:基于网页内容的排序算法、基于网页链接分析的排序和基于检索用户的排序算法,在实际应用中往往会综合应用这些算法。

             最著名的基于链接分析的算法是有Page提出的PageRank算法和Kleinberg提出的HITS算法。

             PageRank算法从文学最初思想理论,即参考文献的重要性可以利用文献的数量和质量计量,引证了说明文献参考价值,更有价值的文献引用说明文学的重要性越高。

本体建模与语义Web知识发现 5 基于N-VSM的全文检索

5.6 N层向量空间模型权重实验仿真

     基于Lucene全文检索引擎系统架构下设计的,Web文献检索的N层向量空间模型中,每层的权重对检索结果影响很大,为了更加准确表示,特设置了四个仿真实验,确定四层向量空间模型的权重。