CN103678576B - 基于动态语义分析的全文检索系统 - Google Patents
基于动态语义分析的全文检索系统 Download PDFInfo
- Publication number
- CN103678576B CN103678576B CN201310669139.0A CN201310669139A CN103678576B CN 103678576 B CN103678576 B CN 103678576B CN 201310669139 A CN201310669139 A CN 201310669139A CN 103678576 B CN103678576 B CN 103678576B
- Authority
- CN
- China
- Prior art keywords
- query
- module
- word
- semantic
- retrieval
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000004458 analytical method Methods 0.000 claims abstract description 17
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims description 40
- 239000013598 vector Substances 0.000 claims description 29
- 230000011218 segmentation Effects 0.000 claims description 12
- 230000002452 interceptive effect Effects 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 9
- 238000012821 model calculation Methods 0.000 claims description 2
- 238000005516 engineering process Methods 0.000 abstract description 6
- 230000003203 everyday effect Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000007619 statistical method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3335—Syntactic pre-processing, e.g. stopword elimination, stemming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/3332—Query translation
- G06F16/3338—Query expansion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于信息检索技术,提供一种基于动态语义分析的全文检索系统,包括查询信息接收模块、查询语句语义处理模块、语义知识库、词语贡献度动态计算模块、检索模块、索引库、索引模块、结果处理模块和文档集。本发明系统不仅能够动态计算和更新词语贡献度信息,而且能够对查询扩展语句进行词义消歧,筛选出符合语义的查询扩展语句,实现支持动态语义分析的全文信息检索。该系统具有更高的查准率、查全率和动态性等特点。
Description
技术领域
本发明属于信息检索技术,具体涉及一种基于动态语义分析的全文检索系统。
背景技术
由于互联网技术的不断发展和快速普及,网络信息量快速增长。在这样一个海量信息时代,用户要在信息海洋里查找所需的信息,就像是大海捞针一样,费时费力,而搜索引擎的诞生在一定程度上缓解了信息查找难的问题。搜索引擎是根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将检索出的相关信息展示给用户的系统。大多数的搜索引擎以信息检索技术为基础,即为文档信息建立索引并存放入索引库,对用户提交的查询语句进行检索,返回结果给用户。
为了提高检索的查全率,当前很多检索系统都采用了对查询词进行扩展的检索技术,在一定程度上提高了检索系统的性能。一般的扩展检索都是基于人工构建的知识库(如)进行查询词扩展,但是人工构造的知识库忽略了词语语义信息的动态变化问题,这种变化不能在扩展检索中体现出来,从而限制检索系统性能的提高;另外,在进行查询词扩展的时候还存在词义消歧的问题,如果不考虑查询语句中有些查询词的多义性,扩展出来的结果也将没有意义。正是因为这样,传统的简单根据人工建造的知识库扩展方法并不能很好地解决扩展检索问题,从而不能进行准确的检索。
随着信息检索技术的不断发展,用户希望检索系统能够准确地理解查询语句的语义,返回给用户更加满意的检索结果。为了解决传统基于人工构建的知识库进行查询扩展时存在的语义信息动态更新和词义消歧问题,提高信息检索的准确率,需要实现动态地计算和更新语义知识库中词语的语义信息,并将这种动态语义信息融入到查询词扩展和词义消歧的过程中,将扩展检索提升到支持动态语义分析的检索上,这是提高检索准确率的关键所在。
发明内容
本发明提供了一种基于动态语义分析的全文检索系统,该系统不仅能够动态计算和更新词语贡献度信息,而且能够对查询扩展语句进行词义消歧,筛选出符合语义的查询扩展语句,实现支持动态语义分析的全文信息检索。该系统具有更高的查准率、查全率和动态性等特点。
本发明是由以下技术方案实现的:基于动态语义分析的全文检索系统,包括查询信息接收模块、查询语句语义处理模块、语义知识库、词语贡献度动态计算模块、检索模块、索引库、索引模块、结果处理模块和文档集。
查询信息接收模块用来接受用户输入的查询语句,根据用户的需求将查询信息提交给查询语句语义处理模块进行语义处理,或者直接提交给检索模块进行检索。
查询语句语义处理模块用于接收查询信息接收模块提交的用户查询语句,对查询语句进行语义处理。首先对查询语句进行预处理,将查询语句进行中文分词,去停用词(一些出现频率很高但无关紧要的词),得到查询词序列,然后将查询词提交给语义知识库,得到对应的相关词群和贡献度,采用基于语义知识库的概念扩展方法,对查询词进行扩展,用扩展词替换到相应的查询词位置上得到候选的查询扩展语句集合,再采用词义消歧方法,过滤掉语义不正确的扩展语句,最后将查询语句及其扩展语句一起提交给检索模块进行检索。
语义知识库存储词语及其相关词群和贡献度信息。对查询语句语义处理模块提交的查询词,在库中检索,将查询词对应的相关词群及贡献度返回给查询语句语义处理模块。
词语贡献度动态计算模块采用词语贡献度的动态计算方法,它动态地计算词语的相关词对该词语的贡献度,并将计算的结果返回给语义知识库。
检索模块主要为用户提供检索服务。检索模块接收来自查询信息接收模块的查询语句或查询语句语义处理模块处理之后的查询语句,并将查询语句提交给索引库进行查找匹配,从而得到与查询语句相关的所有文档信息,并且对相关的文档集进行排序处理,将排序后的结果提交至结果处理模块。
索引库用于存储由索引模块对文本文件建立的索引。索引库还根据检索模块提交的查询信息在索引中快速检索,并且将检索的结果返回给检索模块。
索引模块用于对文档集提供的文本文件建立索引。索引模块对文本内容和标题等相关信息处理得到索引词,并利用索引词和文档相关信息建立索引。
文档集存储文本文件,并将文本文件提供给索引模块建立文件的索引。
结果处理模块用于接收来自检索模块的检索结果,并根据索引库的相关信息建立检索结果的摘要信息,并对返回结果进行分页处理。
本发明系统针对当前扩展检索方法中存在的一些问题提出了两个方面的解决办法:动态地计算和更新语义知识库中词语的贡献度,并且将这种动态更新的语义信息融入到扩展检索的查询词扩展和词义消歧的过程中,从而实现检索过程的动态语义分析。
本发明具有智能化的信息服务特点,可以为用户提供更加方便和准确的检索服务,具体而言,本发明具有以下的特点:
(1)查全率高:该系统对语义知识库中词语的贡献度进行动态地计算和更新,依据动态的词语贡献度,对查询语句进行扩展,来扩大用户提交的查询语句的语义信息,从而提高了检索的查全率。
(2)查准率高:该系统依据动态的词语贡献度语义信息,对候选的查询扩展语句集合进行词义消歧,筛选出符合语义的查询扩展语句,在一定程度上实现查询语句与文档集的准确匹配,从而提高检索的查准率。
(3)动态性:该系统对语义知识库中词语的贡献度进行动态地计算和更新,并将这种动态更新的语义信息用于查询词扩展和词义消歧的过程中,从而实现了扩展检索过程的动态语义分析。
附图说明
图1是本发明基于动态语义分析的全文检索系统的结构图。
图2是本发明基于动态语义分析的全文检索系统的模块结构图。
图3是本发明中查询信息接收模块的流程图。
图4 是查询语句语义处理模块中查询语句预处理流程图。
图5是查询语句语义处理模块中查询词扩展流程图。
图6 是查询语句语义处理模块中词义消歧流程图。
图7 是本发明中基于语义知识库的词义消歧方法流程图。
图8是本发明中词语贡献度动态计算模块的流程图。
图9 是本发明中检索模块的流程图。
图10 是本发明中结果处理模块的流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。
如图1所示,本发明提供的基于动态语义分析的全文检索系统包括查询信息接收模块100、查询语句语义处理模块200、语义知识库300、词语贡献度动态计算模块400、检索模块500、索引库600、索引模块700、文档集800和结果处理模块900。
查询信息接收模块100用于接收用户输入的查询语句,并根据用户的需求将查询信息提交给查询语句语义处理模块200进行语义处理,或者直接提交给检索模块500进行检索。
如图3所示,查询信息接收模块100的处理过程为:(1)用户输入查询语句;(2)用户根据需要选择是否进行查询语句语义处理;(3)如果选择进行查询语句语义处理,系统将查询信息提交给查询语句语义处理模块200对查询语句进行语义处理;(4)如果没有选择,系统将查询信息直接提交给检索模块500。
查询语句语义处理模块200接收查询信息接收模块100提交的查询信息,对查询语句进行语义处理。首先对查询语句进行预处理,采用正向最大匹配分词方法对查询语句进行中文分词,然后去停用词,得到查询词序列;然后将查询词提交给语义知识库300,得到对应的相关词群和贡献度,采用基于语义知识库的概念扩展方法,对查询词进行扩展,用扩展词替换到相应的查询词位置上得到候选的查询扩展语句集合,再采用词义消歧方法,过滤掉语义不正确的扩展语句,最后将查询语句及其扩展语句一起提交给检索模块500进行检索。
语义知识库300存储词语及其相关词群和贡献度信息。对查询语句语义处理模块200提交的查询词,在库中检索,将查询词对应的相关词群及贡献度返回给查询语句语义处理模块200。
词语贡献度动态计算模块400采用词语贡献度的动态计算方法,它动态地计算词语的相关词对该词语的贡献度,并将计算的结果返回给语义知识库300。
检索模块500主要为用户提供精确、智能化的检索服务。检索模块500接收来自查询信息接收模块100的查询信息和查询语句语义处理模块200处理之后的查询语句,并将查询语句提交给索引库600进行查找,得到与查询语句相关的所有文档,并且根据文档打分公式,使用的文档打分公式并结合查询语句及其扩展语句中查询词的语义信息,对返回的文档集进行排序,将排序后的结果提交给结果处理模块900。
索引库600用于存储由索引模块700对文本文件建立的索引;索引库600还根据检索模块500提交的查询信息在索引中快速检索,并且将结果返回给检索模块500。
索引模块700用于对文档集800提供的文本文件建立索引。索引模块700对文本内容和标题等相关信息处理得到索引词,并利用索引词和文档相关信息建立索引。
文档集800存储文本文件,并将文本文件提供给索引模块700建立文件的索引。
结果处理模块900用于接收来自检索模块500的检索结果,并根据索引库600的相关信息建立检索结果的摘要和链接信息,并对返回结果进行分页处理。
下面分别对查询语句语义处理模块200、词语贡献度动态计算模块400、检索模块500、结果处理模块900作进一步的详细说明。
如图2所示,查询语句语义处理模块200包括查询语句预处理模块210、查询词扩展模块220和词义消歧模块230。
查询语句预处理模块210主要对查询语句进行预处理,包括中文分词、去停用词;这里采用正向最大匹配分词方法对查询语句进行分词处理,然后去掉停用词,例如“吧”,“吗”等词,得到查询词序列。例如查询语句“证件丢失了到哪里补办?”经过预处理之后得到查询词序列“证件 丢失 补办”。
该模块涉及的正向最大匹配分词算法的思想是:(1)事先建立词典,并得到词典中最长词条所含汉字的个数;(2)取被处理文本的当前字符串的前个字作为匹配字段,查找词典,如果词典中有这样的个字的词,则匹配成功,将当前字段作为一个词分割;(3)如果词典中没有找到与当前匹配字段相同的词,则去掉匹配字段的最后一个字,剩下的字作为新的匹配字段,再进行匹配。如此重复,直到匹配成功。
如图4所示,查询语句预处理模块210的工作流程为:(1)对用户输入的查询语句进行中文分词处理;(2)对分词之后的语句进行去停用词处理;(3)得到查询词序列,并提交给查询词扩展模块220。
查询词扩展模块220将查询语句预处理模块210提交的查询词序列提交给语义知识库300,得到各个查询词对应的相关词群和贡献度,然后采用基于语义知识库的概念扩展方法,对查询词进行扩展,用扩展词替换到相应的查询词位置上,得到候选的查询扩展语句集合;并且将扩展出来的查询语句提交给词义消歧模块230。
概念扩展方法采用基于语义知识库的概念扩展方法,这里语义知识库采用的是语义指纹知识库。语义指纹知识库存储着语义标签和语义指纹组成的知识单元。语义标签指代语义中的一个知识单元(也即概念),语义指纹是对语义标签所指代概念的描述,由语义标签的相关词群及其贡献度共同组成。其中语义标签对应于语言中的词语或短语(例如百科中的概念),语义指纹是对概念的语义描述,用从真实语言文本集合中通过统计方法得到的概念的相关词群及每个词对语义标签的贡献度来刻画。贡献度也表达了语义指纹中的一个词语与语义标签(也是一个词语)的关联度。
表1给出了语义知识单元示例,
表中的数字表示相关词语对语义标签的贡献度。在语义指纹知识库中,多义词对应着多个知识单元(例如苹果作为水果来说和作为公司来说对应有不同的语义知识单元)。语义指纹知识库就是由这样的很多个知识单元组成的。语义知识单元可形式化地表示为:
其中是语义标签(即词语),是相关词语,是相关词语对语义标签的贡献度,n表示语义标签的个数,k表示一个语义标签词语对应的相关词的个数。
如图5所示,查询词扩展模块220的工作流程如下:
(1)首先处理查询词序列,构建查询词集合,并设置一个初值为空的候选扩展语句集合;
(2)将查询词提交给语义知识库,得到对应的相关词群和贡献度,然后将相关词替换到相应的查询词位置上,得到查询扩展语句,并添加至候选扩展语句集合;
(3)判断中是否还有未处理的查询词,若有未被处理的查询词,从中任意选择一个进行处理,否则进行下一步;
(4)将候选扩展语句集合提交给词义消歧模块;
假设用户输入的查询语句为(其中L表示查询语句中查询词的个数),经过扩展之后得到的扩展语句集合为,集合的表示形式如下:
其中Q表示原查询语句且它的权重为1,表示第i个扩展语句,表示扩展语句与原查询语句的相似度,表示扩展语句的个数。
我们设定原查询语句中查询词的权重为1,它的扩展词的权重为查询词在其对应的语义标签为的语义知识单元中对应的相关词语贡献度。
假设其中的一个扩展语句为,权重向量,其中,表示每个查询词对应的扩展词个数,这里我们取相关词群的前个词语作为扩展词;表示查询词对应的相关词,则。然后对查询语句和查询扩展语句对应位置词的权重,进行线性加权得到查询扩展语句和查询语句的相似度:
其中。
图6是词义消歧模块的工作流程图。具体步骤:(1)从查询词扩展模块得到候选的查询扩展语句集合;(2)然后利用基于语义知识库的词义消歧方法过滤掉不符合语义的扩展语句,得到最终的查询扩展语句集合;(3)最后将查询语句和查询扩展语句集合一起提交给检索模块。
对查询语句中的多义词,通过判断查询词是否对应语义知识库中的多个知识单元进行识别。
对于查询词,在语义知识库中如果,;,那么我们判定为多义词,有个不同词义。
我们采用基于语义知识库的词义消歧方法对扩展语句集合进行过滤。
如图7所示,基于语义知识库的词义消歧方法具体步骤为:(1)得到原查询语句中的多义词及其上下文语境词语;(2)在语义知识库中找到上下文语境词语对应的相关词群以及多义词的各个词义对应的相关词群,并且将上下文语境词语对应的相关词群串联起来表示成向量的形式,将多义词的各个词义对应的相关词群也表示成向量的形式;(3)计算多义词各个词义对应的相关词群组成的向量与上下文语境词语对应的相关词群组成的向量的相似度,选择相似度最大的对应的词义为正确的词义。
查询语句为,假设为多义词,那么对应语义知识库中多个知识单元,假设对应知识单元语义标签为(t表示语义标签,表示多义词有意义的词义数)。
查询语句为,假设为多义词,那么对应语义知识库中多个知识单元,假设对应知识单元语义标签为(t表示语义标签,表示多义词有意义的词义数)。
上下文语境词语对应的相关词群表示成向量形式为:
其中: 为查询词对应的语义标签为的知识单元中的相关词,为对应的相关词的贡献度(这里当作相关词的权重)。
多义词的各个词义对应的相关词群表示成向量形式为:
其中,中的分量分别代表多义词对应的语义标签为的知识单元中的相关词及贡献度。
通过调整使和中含有相同个数的分量,并且使对应位置上的词语相同。用向量空间模型计算和的相似度。向量空间模型如下:
其中,代表两个相关词群组成的权重向量,代表相关词群组成的向量的相似度。
若原查询语句中包含多个多义词,同理,我们根据上面的方法,匹配一个多义词同另外的多义词的词义,通过计算各个词义对应的相关词群组成的向量与上下文语境词语对应的相关词群组成的向量的相似度,得出正确的词义,这里我们考虑原查询语句中包含一个多义词的普通情况。
查询语句中的多义词经过语义知识库消歧后得到各个词义对应的相关词群组成的向量与上下文语境词语对应的相关词群组成的向量的相似度为,选择相似度最大的对应的词义作为最终的词义,最后根据此词义对候选的扩展语句集合进行过滤。我们通过下面的公式选择正确的词义:
选择使S最大的表示多义词有意义的词义数对应的词义作为最终的消歧词义。然后根据此词义对候选的扩展语句集合进行过滤,具体方法是:在候选扩展语句集合中查找,将包含了不正确词义相关词语的扩展语句去除,最终得到查询扩展语句集合,并同查询语句一起提交至检索模块500。
词语贡献度动态计算模块400,采用词语贡献度的动态计算方法,动态地计算词语的相关词对该词语的贡献度。下面详细介绍词语贡献度的动态计算方法。
互动百科,原称互动维客,是由潘海东博士在2005年创建的商业中文百科网站,隶属于互动在线(北京)科技有限公司。互动百科是新兴的外部语义知识库,它每天都有词条的更新,并且专门设有一个词条更新页面,更新页面中罗列了每天更新的词条;这里我们利用互动百科来动态地计算和更新相关词群的贡献度。
互动百科每天都有大量的信息更新,我们设定每隔一个月的时间,查看互动百科的词条更新页面,利用网络爬虫工具(spider)获取更新页面在这段时间内更新的所有词条。因为语义标签和相关词群是经过精心挑选的,涵盖了大部分常用的概念,这里我们对相关词群的贡献度进行计算和更新。
词语的贡献度的动态计算方法具体如下:
在互动百科中,一个词条可以属于多个开放分类,如词条“广告”,它属于的开放分类为:商业术语、商业词语、广告学、广告法等。这些类别信息共同反映了这个词条的语义知识,一个词条的解释正文中提到的其他词条有一些会以内部链接的形式出现,用户在查看词条的解释正文时点击正文当中的内部链接即可以链接到其他词条的解释页面,例如互动百科中的词条“广告”的解释正文中有这样的语句“广告是向大众传播信息的一种手段。从狭义解释,广告则是一种付费用的宣传。”这段话中提到的“大众传播”、“宣传”都是以内部链接的形式出现。我们可以认为这些词条是与被解释的词条在语义上是相关的,并将一个词条的内部链接词条记为。
另外,在互动百科中,用户都会对每个词条添加其相关词条。显然,这些词条也是与被解释的词条在语义上有关联的,比如“广告”的相关词条为“广告主体”、“窄告”、“世界报业史”等,我们将这样的词条记为。
由于一个词条的解释正文中的内部链接词条以及用户添加的该词条的相关词条在语义上有关联,所以,该词条解释正文中内部链接词条所属于的开放分类以及用户添加的该词条的相关词条所属于的开放分类也在一定程度上贡献了该词条的语义知识。
我们将互动百科中的一个词条t自身属于的开放分类集合,该词条解释正文中所有内部链接词条所属于的开放分类的集合与用户添加的该词条的相关词条所属于的开放分类的集合的并集定义为词条t的开放分类语义知识集合。当两个词语的开放分类语义知识集合中大部分开放分类都是一样的时候,那么这两个词语必定在语义上有很强的相关性。因此,相关词语的贡献度计算可以通过比较语义标签t的开放分类语义知识集合与其相关词语的开放分类语义知识集合而得到。
在计算语义标签t与相关词语之间的语义关联度时,首先定义一个开放分类语义知识向量v,开放分类语义知识向量的维数,每一维代表一个开放分类,记为。语义标签t的开放分类语义知识向量在p维上的值即为t的开放分类语义知识集合中对应开放分类出现的频次。对相关词的开放分类语义知识向量也有同样的定义。
因此相关词语与语义标签t的语义关联度(也即相关词语对语义标签的贡献度)为:
图8是词语贡献度更新的流程图,具体过程:(1)得到最近更新的所有词条,并构建更新词条集;(2)在更新词条集中取出一个词条,在语义知识库的相关词群中查找该新词条是否是相关词;(3)如果是相关词则重新计算新词条对语义标签的贡献度;如果不是,则进行下一个新词条的查找,直到查找完全部的更新词条。
如果更新词条是相关词,则重新计算它对语义标签的贡献度,方法如下。
对于更新了的相关词,假设它的原来的贡献度为,新计算的贡献度为,那么它最终的贡献度为:
这里分别表示原来的贡献度和新计算的贡献度对最终贡献度的影响大小。t为更新次数,为衰减常数,我们将的值取小一点,表示衰减曲线平缓一些;因为相关词有更新,这里我们取0.1,,表示新计算的贡献度对最终贡献度的影响大一些,这样就得到了一次动态计算和更新后的相关词语贡献度。
新计算的贡献度通过更新词条的开放分类语义知识向量和语义标签的开放分类语义知识向量进行向量空间模型计算得到,即:。
检索模块500是本系统提供给用户检索文本信息的模块,它包括查询模块510和排序模块520。
查询模块510在索引库600中查找出所有相关的文档,从相关的文档中选择出满足查询要求的那部分文档作为结果集,并将结果集提交给排序模块520。
排序模块用来对查询模块510的结果集进行排序。该模块根据查询词及其扩展词在文档中出现的频率和逆文档频率,以及文档长度等因素进行打分排序。对于查询语句Q,对文档d打分,给出基于动态语义分析的全文检索系统的文档打分公式如下:
其中d为文本,t为查询词;表示查询语句经过查询词扩展得到的查询扩展语句集合,它由词义消歧模块230提供,q表示中的扩展语句;表示扩展语句在检索过程中所占的权重,它的值由中语义相似度确定;表示t在文档d中出现的频率,t的逆文档频率表示t在多少篇文档中出现过;表示文档长度对结果的影响:文档越长,此值越小,文档越短,此值越大;表示一篇文档中包含的查询词越多,则对此文档的打分越高;计算每个查询条目的方差和,此值并不影响排序,而仅仅使得不同的查询之间的分数可以比较。
通过对每个文档打分,量化地表示文档与查询语句的相关程度。最后把前若干(由用户指定或系统默认)位的结果优先返回给用户。
如图9所示,检索模块500的处理过程为:(1)接收直接来自用户的查询信息或经过查询语句语义处理模块200处理后的查询信息;(2)在索引库中进行匹配查找,并返回与查询语句相关的所有文档,得到结果集;(3)对结果集中的每个文档进行打分,量化地表示文档与查询语句的相关程度,把得分高的文档排在结果集的前面;(4)将排序的结果提交给结果处理模块900。
结果处理模块900是用户查询显示的界面,它包括提示模块910,链接模块920,分页模块930。
提示模块910用于显示查询结果的提示信息,如果检索模块500返回的结果集不是空的,就在首页显示结果集中的文档数;如果没有检索到匹配的信息,则显示没有匹配信息的提示。
链接模块920用于显示返回给用户的文档摘要信息。页面内容以标题、摘要的形式,逐条罗列。标题为超链接形式,用户可以点击标题并打开检索内容所在的原文。文档摘要显示原文中含有检索内容的一段摘要。
分页模块930用于将结果集的多篇文档分页显示。每个页面显示10个文档信息,页面最下角标注10页范围供用户进行选择。
如图10所示,结果处理模块900的处理流程为:(1)接收来自检索模块500提交的结果集;(2)在首页显示返回结果数或查询结果不存在的提示信息;(3)从索引库600中获取结果集的文档摘要信息,将标题和对应的源文档建立链接;(4)判断是否需要翻页,如果是则再从结果集中返回用户需要的文档信息,否则结束。
Claims (3)
1.基于动态语义分析的全文检索系统,包括查询信息接收模块、查询语句语义处理模块、语义知识库、词语贡献度动态计算模块、检索模块、索引库、索引模块、结果处理模块和文档集;
所述查询信息接收模块用于接受用户输入的查询语句,根据用户的需求将查询信息提交给查询语句语义处理模块进行语义处理,或者直接提交给检索模块进行检索;
所述查询语句语义处理模块用于接收查询信息接收模块提交的用户查询语句,对查询语句进行语义处理;首先对查询语句进行预处理,将查询语句进行中文分词,去停用词,得到查询词序列,然后将查询词序列提交给语义知识库,得到对应的相关词群和贡献度,采用基于语义知识库的概念扩展方法,对查询词进行扩展,用扩展词替换到相应的查询词位置上得到候选的查询扩展语句集合,再采用词义消歧方法,过滤掉语义不正确的扩展语句,最后将查询语句及其扩展语句一起提交给检索模块进行检索;
所述语义知识库存储词语及其相关词群和贡献度信息,对查询语句语义处理模块提交的查询词,在库中检索,将查询词对应的相关词群及贡献度返回给查询语句语义处理模块;
所述词语贡献度动态计算模块采用词语贡献度的动态计算方法,动态地计算词语的相关词对该词语的贡献度,并将计算的结果返回给语义知识库;
所述词语贡献度动态计算模块,将互动百科中的一个词条t自身属于的开放分类集合Cm,该词条解释正文中所有内部链接词条所属于的开放分类的集合CInword与用户添加的该词条的相关词条所属于的开放分类的集合CUserword的并集定义为词条t的开放分类语义知识集合RCt;相关词语的贡献度计算通过比较语义标签t的开放分类语义知识集合RCt与其相关词语Wt的开放分类语义知识集合RCWt而得到;
在计算语义标签t与相关词语Wt之间的语义关联度时,首先定义一个开放分类语义知识向量v,开放分类语义知识向量的维数,每一维代表一个开放分类,记为Cp;语义标签t的开放分类语义知识向量Vt在p维上的值即为t的开放分类语义知识集合RCt中对应开放分类Cp出现的频次,对相关词Wt的开放分类语义知识向量VWt也有同样的定义;
因此相关词语Wt与语义标签t的语义关联度,也即相关词语对语义标签的贡献度为:;
词语贡献度更新的具体过程为:(1)得到最近更新的所有词条,并构建更新词条集;(2)在更新词条集中取出一个词条,在语义知识库的相关词群中查找该新词条是否是相关词;(3)如果是相关词则重新计算新词条对语义标签的贡献度;如果不是,则进行下一个新词条的查找,直到查找完全部的更新词条;
如果更新词条是相关词,则重新计算他对语义标签的贡献度,方法如下,
对于更新了的相关词,假设它的原来的贡献度为,新计算的贡献度为,那么它最终的贡献度为:
这里分别表示原来的贡献度和新计算的贡献度对最终贡献度的影响大小,t为更新次数,为衰减常数;因为相关词有更新,这里我们取0.1,,表示新计算的贡献度对最终贡献度的影响大一些,这样就得到了一次动态计算和更新后的相关词语贡献度;
新计算的贡献度通过更新词条的开放分类语义知识向量和语义标签的开放分类语义知识向量进行向量空间模型计算得到,即:;
所述检索模块用于为用户提供检索服务,检索模块接收来自查询信息接收模块的查询语句或查询语句语义处理模块处理之后的查询语句,并将查询语句提交给索引库进行查找匹配,从而得到与查询语句相关的所有文档信息,并且对相关的文档集进行排序处理,将排序后的结果提交至结果处理模块;
所述检索模块是本系统提供给用户检索文本信息的模块,它包括查询模块和排序模块;
查询模块在索引库中查找出所有相关的文档,从相关的文档中选择出满足查询要求的那部分文档作为结果集,并将结果集提交给排序模块;
排序模块用来对查询模块的结果集进行排序,该模块根据查询词及其扩展词在文档中出现的频率和逆文档频率,以及文档长度因素进行打分排序,对于查询语句Q,对文档d打分,给出基于动态语义分析的全文检索系统的文档打分公式如下:
其中d为文本,t为查询词;表示查询语句经过查询词扩展得到的查询扩展语句集合,它由词义消歧模块提供,q表示中的扩展语句;表示扩展语句在检索过程中所占的权重,它的值由中的查询扩展语句和查询语句的语义相似度确定;表示t在文档d中出现的频率,t的逆文档频率表示t在多少篇文档中出现过;表示文档长度对结果的影响:文档越长,此值越小,文档越短,此值越大;表示一篇文档中包含的查询词越多,则对此文档的打分越高;计算每个查询条目的方差和,此值并不影响排序,而仅仅使得不同的查询之间的分数可以比较;
通过对每个文档打分,量化地表示文档与查询语句的相关程度,最后把前若干位的结果优先返回给用户;
所述索引库用于存储由索引模块对文本文件建立的索引,索引库还根据检索模块提交的查询信息在索引中快速检索,并且将检索的结果返回给检索模块;
所述索引模块用于对文档集提供的文本文件建立索引,索引模块对文本内容和标题处理得到索引词,并利用索引词和文档相关信息建立索引;
所述文档集存储文本文件,并将文本文件提供给索引模块建立文件的索引;
所述结果处理模块用于接收来自检索模块的检索结果,并根据索引库的相关信息建立检索结果的摘要信息,并对返回结果进行分页处理。
2.根据权利要求1所述的基于动态语义分析的全文检索系统,其特征在于:所述查询语句语义处理模块包括查询语句预处理模块、查询词扩展模块和词义消歧模块;
所述查询语句预处理模块对查询语句进行预处理,包括中文分词、去停用词;这里采用正向最大匹配分词方法对查询语句进行分词处理,然后去掉停用词,得到查询词序列,并提交给查询词扩展模块;
所述查询词扩展模块将查询语句预处理模块提交的查询词序列提交给语义知识库,得到各个查询词对应的相关词群和贡献度,然后采用基于语义知识库的概念扩展方法,对查询词进行扩展,用扩展词替换到相应的查询词位置上,得到候选的查询扩展语句集合;并且将扩展出来的查询语句提交给词义消歧模块;
所述词义消歧模块对查询词扩展模块提交的查询扩展语句集合,采用基于语义知识库的词义消歧方法进行消歧,确定查询语句中正确的词义,然后在候选扩展语句集合中查找,将包含了不正确词义相关词语的扩展语句去除,得到最终的查询扩展语句集合,并同查询语句一起提交至检索模块。
3.根据权利要求1所述的基于动态语义分析的全文检索系统,其特征在于:所述结果处理模块是用户查询显示的界面,它包括提示模块,链接模块,分页模块;
所述提示模块用于显示查询结果的提示信息,如果检索模块返回的结果集不是空的,就在首页显示结果集中的文档数;如果没有检索到匹配的信息,则显示没有匹配信息的提示;
所述链接模块用于显示返回给用户的文档摘要信息,页面内容以标题、摘要的形式,逐条罗列,标题为超链接形式,用户可以点击标题并打开检索内容所在的原文;文档摘要显示原文中含有检索内容的一段摘要;
所述分页模块用于将结果集的多篇文档分页显示,每个页面显示10个文档信息,页面最下角标注10页范围供用户进行选择。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310669139.0A CN103678576B (zh) | 2013-12-11 | 2013-12-11 | 基于动态语义分析的全文检索系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310669139.0A CN103678576B (zh) | 2013-12-11 | 2013-12-11 | 基于动态语义分析的全文检索系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103678576A CN103678576A (zh) | 2014-03-26 |
CN103678576B true CN103678576B (zh) | 2016-08-17 |
Family
ID=50316121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310669139.0A Expired - Fee Related CN103678576B (zh) | 2013-12-11 | 2013-12-11 | 基于动态语义分析的全文检索系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103678576B (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528349B (zh) | 2014-09-29 | 2019-02-01 | 华为技术有限公司 | 知识库中问句解析的方法及设备 |
TWI526856B (zh) | 2014-10-22 | 2016-03-21 | 財團法人資訊工業策進會 | 服務需求分析系統、方法與電腦可讀取記錄媒體 |
CN104699733B (zh) * | 2014-10-28 | 2018-07-24 | 电信科学技术第十研究所 | 一种计算全文检索查全率的方法及装置 |
CN104735132B (zh) * | 2015-02-13 | 2017-05-24 | 腾讯科技(深圳)有限公司 | 信息查询方法、服务器及终端 |
CN105335510A (zh) * | 2015-10-30 | 2016-02-17 | 成都博睿德科技有限公司 | 文本数据高效搜索方法 |
CN105160046A (zh) * | 2015-10-30 | 2015-12-16 | 成都博睿德科技有限公司 | 基于文本的数据检索方法 |
CN105956887A (zh) * | 2016-05-26 | 2016-09-21 | 宇宙世代信息技术(深圳)有限公司 | 商品信息的动态排序方法和商品信息的动态排序装置 |
EP3507708A4 (en) * | 2016-10-10 | 2020-04-29 | Microsoft Technology Licensing, LLC | COMBINATION OF LANGUAGE UNDERSTANDING AND DOCUMENTARY SEARCH |
CN106570171B (zh) * | 2016-11-03 | 2020-11-20 | 中国电子科技集团公司第二十八研究所 | 一种基于语义的科技情报处理方法及系统 |
CN106599215A (zh) * | 2016-12-16 | 2017-04-26 | 广州索答信息科技有限公司 | 一种基于深度学习的问句生成方法和问句生成系统 |
CN108628906B (zh) * | 2017-03-24 | 2021-01-26 | 北京京东尚科信息技术有限公司 | 短文本模板挖掘方法、装置、电子设备和可读存储介质 |
CN107679077B (zh) * | 2017-08-28 | 2020-03-24 | 平安科技(深圳)有限公司 | 分页的实现方法、装置、计算机设备及存储介质 |
CN108427702B (zh) * | 2017-10-23 | 2021-02-09 | 平安科技(深圳)有限公司 | 目标文档获取方法及应用服务器 |
CN108038096A (zh) * | 2017-11-10 | 2018-05-15 | 平安科技(深圳)有限公司 | 知识库文档快速检索方法、应用服务器计算机可读存储介质 |
CN108563766A (zh) * | 2018-04-19 | 2018-09-21 | 天津科技大学 | 食品检索的方法及装置 |
CN109460449B (zh) * | 2018-09-06 | 2020-05-12 | 城云科技(中国)有限公司 | 并行化数据分析方法 |
CN109214004B (zh) * | 2018-09-06 | 2019-11-05 | 贵州航天云网科技有限公司 | 基于机器学习的大数据处理方法 |
CN109977294B (zh) * | 2019-04-03 | 2020-04-28 | 三角兽(北京)科技有限公司 | 信息/查询处理装置、查询处理/文本查询方法、存储介质 |
CN111310477B (zh) * | 2020-02-24 | 2023-04-21 | 成都网安科技发展有限公司 | 文档查询方法及装置 |
CN111506705B (zh) * | 2020-04-13 | 2023-07-21 | 北京奇艺世纪科技有限公司 | 一种信息查询方法、装置及电子设备 |
CN112948645A (zh) * | 2021-02-01 | 2021-06-11 | 武汉点开科技有限公司 | 一种知识分享平台 |
CN113378539B (zh) * | 2021-06-29 | 2023-02-14 | 华南理工大学 | 一种面向标准文档编写的模板推荐方法 |
CN113590840A (zh) * | 2021-08-03 | 2021-11-02 | 润联软件系统(深圳)有限公司 | 知识库共享方法、装置、计算机设备及存储介质 |
CN114330359A (zh) * | 2021-11-30 | 2022-04-12 | 青岛海尔科技有限公司 | 语义识别方法、装置及电子设备 |
CN114860887A (zh) * | 2022-05-26 | 2022-08-05 | 康键信息技术(深圳)有限公司 | 基于智能联想的疾病内容推送方法、装置、设备及介质 |
CN115686432B (zh) * | 2022-12-30 | 2023-04-07 | 药融云数字科技(成都)有限公司 | 一种用于检索排序的文献评价方法、存储介质及终端 |
CN119129727A (zh) * | 2024-11-11 | 2024-12-13 | 山东财经大学 | 基于ai的智能知识图谱构建方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101334768A (zh) * | 2008-08-05 | 2008-12-31 | 北京学之途网络科技有限公司 | 一种利用计算机对词义进行排歧的方法、系统及检索方法 |
CN102081627A (zh) * | 2009-11-27 | 2011-06-01 | 北京金山软件有限公司 | 一种确定词语在文本中的贡献度的方法及系统 |
CN103136352A (zh) * | 2013-02-27 | 2013-06-05 | 华中师范大学 | 基于双层语义分析的全文检索系统 |
CN103186647A (zh) * | 2011-12-31 | 2013-07-03 | 北京金山软件有限公司 | 一种依据贡献度排序的方法及装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8521662B2 (en) * | 2010-07-01 | 2013-08-27 | Nec Laboratories America, Inc. | System and methods for finding hidden topics of documents and preference ranking documents |
KR20130012388A (ko) * | 2011-07-25 | 2013-02-04 | 삼성전자주식회사 | 시맨틱 웹 어플리케이션의 모델 확장 장치, 시맨틱 웹 어플리케이션의 모델 확장 방법 및 이를 이용한 단말기 |
-
2013
- 2013-12-11 CN CN201310669139.0A patent/CN103678576B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101334768A (zh) * | 2008-08-05 | 2008-12-31 | 北京学之途网络科技有限公司 | 一种利用计算机对词义进行排歧的方法、系统及检索方法 |
CN102081627A (zh) * | 2009-11-27 | 2011-06-01 | 北京金山软件有限公司 | 一种确定词语在文本中的贡献度的方法及系统 |
CN103186647A (zh) * | 2011-12-31 | 2013-07-03 | 北京金山软件有限公司 | 一种依据贡献度排序的方法及装置 |
CN103136352A (zh) * | 2013-02-27 | 2013-06-05 | 华中师范大学 | 基于双层语义分析的全文检索系统 |
Non-Patent Citations (1)
Title |
---|
面向查询语句的扩展过滤及权重计算研究;刘强;《万方数据知识服务平台》;20131030;第14页第3.1节第1-2段,第15-16页第3.2节第2-6段,第18页第3.3节第3-4段,第19-20页第3.4.1节第1-3段,第23页图3.5,第42页第1段 * |
Also Published As
Publication number | Publication date |
---|---|
CN103678576A (zh) | 2014-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103678576B (zh) | 基于动态语义分析的全文检索系统 | |
CN107993724B (zh) | 一种医学智能问答数据处理的方法及装置 | |
CN110674429B (zh) | 用于信息检索的方法、装置、设备和计算机可读存储介质 | |
CN103838833B (zh) | 基于相关词语语义分析的全文检索系统 | |
CN106649818B (zh) | 应用搜索意图的识别方法、装置、应用搜索方法和服务器 | |
KR101721338B1 (ko) | 검색 엔진 및 그의 구현 방법 | |
JP5203934B2 (ja) | オリジナルのユーザ入力に基づくユーザ入力の提案および絞込み | |
CN100595759C (zh) | 查询扩展方法和装置以及相关检索词库 | |
CN103106282B (zh) | 一种网页搜索与展示的方法 | |
CN103544267B (zh) | 一种基于搜索建议词进行搜索的方法以及装置 | |
CN107247745B (zh) | 一种基于伪相关反馈模型的信息检索方法及系统 | |
CN108763321B (zh) | 一种基于大规模相关实体网络的相关实体推荐方法 | |
CN103544266B (zh) | 一种搜索建议词生成的方法以及装置 | |
CN104408148B (zh) | 一种基于通用百科网站的领域百科构建系统 | |
US20160041986A1 (en) | Smart Search Engine | |
CN102200975B (zh) | 一种利用语义分析的垂直搜索引擎系统 | |
CN103425687A (zh) | 一种基于关键词的检索方法和系统 | |
CN102831131B (zh) | 构建标注网页语料库的方法及装置 | |
CN111625621B (zh) | 一种文档检索方法、装置、电子设备及存储介质 | |
CA2774278A1 (en) | Methods and systems for extracting keyphrases from natural text for search engine indexing | |
CN103838735A (zh) | 一种提高检索效率和质量的数据检索方法 | |
CN102768679B (zh) | 一种搜索方法及搜索系统 | |
CN102567409A (zh) | 一种提供检索关联词的方法及装置 | |
CN105912662A (zh) | 基于Coreseek的垂直搜索引擎研究与优化的方法 | |
KR102256007B1 (ko) | 자연어 질의를 통한 문서 검색 및 응답 제공 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160817 Termination date: 20191211 |
|
CF01 | Termination of patent right due to non-payment of annual fee |