一种文档检索的方法及装置制造方法

文档序号:6489202阅读:141来源:国知局
一种文档检索的方法及装置制造方法
【专利摘要】本发明提供一种文档检索的方法及装置,属于信息检索领域,包括:使用目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合,进行相关性打分,得到第一目标文档的相关性打分结果,并进行重排序得到第二目标文档集合;通过伪相关反馈模型对当前目标查询关键词进行扩展,得到新的目标查询关键词,进而得到第三目标文档集合;对第三目标文档集合中的目标文档进行分句处理,计算每个句子的标签权重总和;根据目标查询关键词对每个句子的内容进行相关性打分,得到每个句子的最终得分,从而得到目标句子;在目标句子中获取长度在预设长度范围内的句子作为检索结果片段。通过本发明,提高XML文档的检索性能和准确率。
【专利说明】一种文档检索的方法及装置
【技术领域】
[0001]本发明涉及信息检索领域,尤其涉及一种文档检索的方法及装置。
【背景技术】
[0002]传统的互联网信息的主要载体HTML (Hypertext Markup Language,超文本标记语言)为用户提供了一种方便的信息呈现方法,主要关注信息在浏览器上的显示效果。随着Web应用的日益广泛,HTML数据模型的局限性日益凸显,即HTML不能描述数据,HTML标签集固定且有限,用户无法根据自己的需要添加有意义的标记。因此,XML (Xtensible MarkupLanguage,可扩展的标记语言)因此应运而生。
[0003]XML具有自描述性、平台无关性、可扩展性和简单易用等特点,能以可读的格式表示数据而不受表现形式的限制;XML的存在可以使数据在不兼容的系统中进行交换,简化了数据共享和传输过程中的复杂性;XML文档中既有内容信息也有结构信息,它的出现使得通过Internet进行海量数据的交换、集成、整合成为可能。随着越来越多的Web应用,如网络服务、电子商务、数字图书馆等采用XML作为海量数据存储、交换和发布的载体,如何高效地从海量XML文档集合中检索出有用的信息已经引起越来越多的研究人员的关注。
[0004]目前,进行XML文档检索可以通过如下两种检索模式:
[0005]第一种,基于XML文档结构的检索;
[0006]在这种检索模式下,用户需要了解所查询XML文档的结构,才能够构造查询表达式。
[0007]第二种检索模型是基于关键字的检索;
[0008]在这种检索模式下,由编写者事先编写好查询表达式,此时用户既不需要学习复杂的查询语言,也不需要对XML文档底层的数据结构有深入的了解,用户仅仅需要输入与其感兴趣内容相关的关键字就可完成查询,已有的方法包括MLCA,SLCA, XRank, XSEarch,XSeek 等。
[0009]但是,第一种方法中,一方面,互联网中大部分XML文档并没有给用户提供完整的结构信息;另一方面,互联网中还存在着大量的异构XML文档,所以在这两种情况下,用户很难利用现有的语言构造出查询表达式对XML结构进行查询。在第二种方法中,关于XML关键字查询的方法大部分都是基于树型存储模型展开的,这就要求编写者在编写查询表达式时预先知道XML文档的结构。
[0010]综上所述,现有的XML文档的检索模型,需要用户浏览XML文档的全部内容,或事先获知所查询XML文档的结构,并在进行检索的过程中需要占用大量的存储空间,在拥有海量数据量的XML文档的今天,现有的XML文档检索模型的检索性能和准确率较低。

【发明内容】

[0011]本发明的实施例提供一种文档检索的方法及装置,提高了 XML文档的检索性能和准确率。[0012]为达到上述目的,本发明的实施例采用如下技术方案:
[0013]一种文档检索的方法,包括:
[0014]使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合;
[0015]对所述第一目标文档集合进行相关性打分,得到所述第一目标文档的相关性打分结果,并根据所述相关性打分结果对所述第一目标文档集合进行重排序得到第二目标文档集合;
[0016]通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到新的目标查询关键词;
[0017]当所述新的目标查询关键词满足预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到第三目标文档集合;
[0018]对所述第三目标文档集合中的每个目标文档进行分句处理,并计算进行所述分句处理得到每个句子的标签权重总和;
[0019]根据所述目标查询关键词对所述每个句子的文本内容进行相关性打分,得到每个句子的相关性打分结果,并根据所述每个句子的相关性打分结果得到所述每个句子的最终得分;
[0020]根据所述每个句子的最终得分得到目标句子,并在所述目标句子中获取长度在预设长度范围内的句子作为检索结果片段。
[0021]本发明还提供了一种文档检索的装置,包括:
[0022]检索单元,用于使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合;
[0023]获取单元,用于对所述第一目标文档集合进行相关性打分,得到所述第一目标文档的相关性打分结果,并根据所述相关性打分结果对所述第一目标文档集合进行重排序得到第二目标文档集合;
[0024]所述获取单元,还用于通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到新的目标查询关键词;
[0025]所述获取单元,还用于当所述新的目标查询关键词满足所述预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到第三目标文档集合;
[0026]所述获取单元,还用于当所述新的目标查询关键词不满足所述预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到新的第二目标文档集合;
[0027]计算单元,用于对所述第三目标文档集合中的每个目标文档进行分句处理,并计算进行所述分句处理得到每个句子的标签权重总和;
[0028]所述计算单元,还用于根据所述目标查询关键词对所述每个句子的文本内容进行相关性打分,得到每个句子的相关性打分结果,并根据所述每个句子的相关性打分结果得到所述每个句子的最终得分;
[0029]所述获取单元,还用于根据所述每个句子的最终得分得到目标句子,并在所述目标句子中获取长度在预设长度范围内的句子作为检索结果片段。
[0030]本发明实施例提供的一种文档检索的方法及装置,可以使得用户在不需浏览文档的全部内容,且不清楚文档结构的情况下使用关键查询词进行检索,并且适用于海量文档的检索,检索性能和准确率高。
【专利附图】

【附图说明】
[0031]为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1为本发明实施例1提供的一种文档检索的方法流程图;
[0033]图2为本发明实施例2提供的一种文档检索的方法第一阶段流程图;
[0034]图3为本发明实施例2提供的一种文档检索的方法第二阶段流程图;
[0035]图4为本发明实施例2提供的训练第一目标文档集合,得到标签权重的方法流程示意图;
[0036]图5为本发明实施例2提供的计算每个文档的SLCA子树进行相关性得分的方法流程示意图;
[0037]图6为本发明实施例2提供的一种文档检索的方法第三阶段流程图;
[0038]图7为本发明实施例2提供的对第三目标文档集合中的每个目标文档进行分句处理,并计算进行分句处理得到的每个句子的标签权重总和的方法流程示意图;
[0039]图8为本发明实施例2提供的根据目标查询关键词对每个句子的文本内容进行打分的方法流程示意图;
[0040]图9为本发明实施例3提供的一种文档检索的装置的结构示意图;
[0041]图10为本发明实施例3提供的一种文档检索的装置的第二种结构示意图;
[0042]图11为本发明实施例3提供的一种文档检索的装置中的计算单元的结构示意图;
[0043]图12为本发明实施例3提供的一种文档检索的装置中的获取单元的结构示意图;
[0044]图13为本发明实施例3提供的一种文档检索的装置的第三种结构示意图;
[0045]图14为本发明实施例3提供的一种文档检索的装置中的计算单元的第二种结构示意图。
【具体实施方式】
[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]实施例1
[0048]参见图1,为本实施例提供的一种文档检索的方法流程图,包括:
[0049]A、使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合。[0050]B、对第一目标文档集合进行相关性打分,得到第一目标文档的相关性打分结果,并根据相关性打分结果对第一目标文档集合进行重排序得到第二目标文档集合。
[0051]C、通过伪相关反馈模型对当前目标查询关键词进行扩展,得到新的目标查询关键词。
[0052]D、当所述新的目标查询关键词满足预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到第三目标文档集合。
[0053]E、对第三目标文档集合中的每个目标文档进行分句处理,并计算进行分句处理得到每个句子的标签权重总和。
[0054]F、根据目标查询关键词对每个句子的文本内容进行相关性打分,得到每个句子的相关性打分结果,并根据每个句子的相关性打分结果得到每个句子的最终得分。
[0055]G、根据每个句子的最终得分得到目标句子,并在目标句子中获取长度在预设长度范围内的句子作为检索结果片段。
[0056]本实施例提供的一种文档检索的方法,通过本实施例,可以使得用户在不需浏览文档的全部内容,且不清楚文档结构的情况下使用关键查询词进行检索,并且适用于海量文档的检索,检索性能和准确率高。
[0057]实施例2
[0058]本实施例中,一种文档检索的方法分为三个阶段,第一阶段为模糊检索阶段,以缩小半结构化文档集合;第二阶段为精确检索阶段,以得到精确的与查询相关的文档集合;第三阶段为片段生成阶段。
[0059]参见图2,为本实施例提供的一种文档检索的方法第一阶段流程图,包括:
[0060]第一阶段:模糊检索阶段。
[0061]201:对目标文档集合进行预处理。
[0062]本实施例中,目标文档集合为即将用于查询的XML半结构化文档集合。
[0063]对目标文档集合进行预处理具体可以通过以下子步骤实现:
[0064]I)剔除目标文档集合中的停用词。
[0065]其中,停用词可以由用户事先进行设置,可以为“化”、“访6”、“01!”和标点符号等无具体意义的词,中文可以为“的”、“着”、“吧”和标点符号等无具体意义的词。
[0066]例如,下列2篇文章为文档集合中的部分内容,用来举例说明剔除目标文档集合中的停用词;
[0067]文章I 的内容为:Tom lives in Guangzhou, I live in Guangzhou to0.[0068]文章2 的内容为:He once lived in Shangha1.[0069]上述文章I和文章2内容,均为一个字符串,首先,根据空格分别找出文章I和文章2的所有单词,每个单词为关键词,再将停用词从文章I和文章2中剔除;剔除停用词后的文章I和文章2如下:
[0070]剔除停用词后的文章1: [Tom] [lives] [Guangzhou] [I] [live] [Guangzhou]
[0071]剔除停用词后的文章2: [He] [lives] [Shanghai]。
[0072]需要说明的是,当文档中出现中文句子时,需要利用现有技术对中文句子进行特殊的分词处理,再将停用词从文档中剔除。
[0073]2):提取目标文档集合的词干。[0074]首先,当目标文档集合中的内容为英文字符时,将所有单词统一大小写;例如,当用户查找“He ”时,单词“HE ”、“he ”也可以被查找到。
[0075]其次,当目标文档集合中的内容为英文字符时,将所有单词进行还原;例如,当用户查找“live”时,单词“lives”、“lived”也可以被查找到,则需要将单词“lives”、“lived”还原为“live”。
[0076]例如,以上述剔除停用词后的文章I和剔除停用词后的文章2为例进行说,提取词干后,
[0077]文章I 的所有关键词为:[tom] [live] [guangzhou] [i] [live] [guangzhou]
[0078]文章2 的所有关键词为:[he] [live] [shanghai]。
[0079]3):计算词干中每个单词在目标文档集合中的TF (term frequency,词频)值和IDF (inverse document frequency,逆向文件频率)值。
[0080]其中,计算每个单词在目标文档集合中的TF值时可以采用如下公式进行计算:
[0081]
【权利要求】
1.一种文档检索的方法,其特征在于,包括: 使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合; 对所述第一目标文档集合进行相关性打分,得到所述第一目标文档的相关性打分结果,并根据所述相关性打分结果对所述第一目标文档集合进行重排序得到第二目标文档集合; 通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到新的目标查询关键词; 当所述新的目标查询关键词满足预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到第三目标文档集合; 对所述第三目标文档集合中的每个目标文档进行分句处理,并计算进行所述分句处理得到每个句子的标签权重总和; 根据所述目标查询关键词对所述每个句子的文本内容进行相关性打分,得到每个句子的相关性打分结果,并根据所述每个句子的相关性打分结果得到所述每个句子的最终得分; 根据所述每个句子的最终得分得到目标句子,并在所述目标句子中获取长度在预设长度范围内的句子作为检索结果片段。
2.根据权利要求1所述的方法,其特征在于,在所述使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合之前,还包括: 获取目标文档集合中每个单词在所述目标文档集合中的词频TF值和逆向文件频率IDF 值; 根据所述目标文档集合中每个单词的TF值和IDF值建立所述倒排索引; 对查询关键词进行剔除停用词和词干提取操作,得到所述目标查询关键词; 建立检索模型。
3.根据权利要求2所述的方法,其特征在于,所述使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合,包括: 根据所述检索模型使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合。
4.根据权利要求1所述的方法,其特征在于,在所述对所述第一目标文档集合进行相关性打分之前,还包括: 对所述第一目标文档集合进行训练,得到所述第一目标文档集合中的每个标签的权重。
5.根据权利要求4所述的方法,其特征在于,所述对所述第一目标文档集合进行训练,得到所述第一目标文档集合中的每个标签的权重,包括: 获取所述第一目标文档集合中的所有标签名; 根据所述标签名,将所述第一目标文档集合中的元素分为与查询相关的元素集合和与查询不相干的元素集合; 获取每个查询关键词ti在每个相关元素bk中出现的次数a和所述相关元素集合中所有单词的总个数A; 获取所述每个查询关键词ti在每个不相关元素bk中出现的次数b和所述不相关元素集合中所有单词的总个数B ; 根据所述每个查询关键词ti在所述每个相关元素bk中出现的次数和所述相关元素集合中所有单词的总个数,计算所述每个查询关键词ti在所述每个相关元素bk中出现的概率Pik ;
其中
6.根据权利要求1所述的方法,其特征在于,所述对所述第一目标文档集合进行相关性打分,得到所述第一目标文档的相关性打分结果,包括: 抽取所述第一目标文档集合中每个目标文档的SLCA子树作为所述每个目标文档的结构信息; 对所述每个目标文档的SLCA子树进行相关性打分,得到所述每个目标文档的相关性得分。
7.根据权利要求6所述的方法,其特征在于,所述对所述每个目标文档的SLCA子树进行相关性打分,得到所述每个目标文档的相关性得分,包括: 获取所述目标查询关键词中每个查询关键词q分别在每个节点n中出现的次数tfn,q ; 计算所述每个查询关键词q在所述第一目标文档集合中的TF值TFq ; 根据所述每个查询关键词q的和TFq得到所述每个查询关键词q对于当前节点的相关性得分tw(n,q); 其中
8.根据权利要求7所述的方法,其特征在于,当所述当前节点n为非叶子节点时,还包括: 计算所述当前节点n的所有子节点c相对于目标查询关键词的相关性得分tw(c, q);根据所述每个查询关键词q相对于所述当前节点η的相关性得分tw(n, q)和所述当前节点η的所有子节点c相对于所述目标查询关键词的相关性得分tw(c,q)计算得到所述每个查询关键词q相对于所述当前节点η的相关性得分(n, q);
其中,
9.根据权利要求1所述的方法,其特征在于,所述当所述新的目标查询关键词满足预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索之前,还包括: 判断所述新的目标查询关键词是否满足预设条件; 当所述新的目标查询关键词不满足所述预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到新的第二目标文档集合; 通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到更新的目标查询关键词; 直到所述更新的目标查询关键词满足所述预设条件,使用所述更新的目标查询关键词对所述第一目标文档集合进行重新检索。
10.根据权利要求1所述的方法,其特征在于,所述对所述第三目标文档集合中的每个目标文档进行分句处理,并计算进行所述分句处理得到每个句子的标签权重总和,包括: 训练所述第三目标文档集合,得到所述第三目标文档集合中每个标签的权重; 去除标签,对所述第三目标文档集合中的每个目标文档进行分句处理; 计算所述每个句子包含的所有词所对应的标签的权重,以得到每个句子的标签权重总和 tagff(S) ο
11.根据权利要求10所述的方法,其特征在于,所述根据所述目标查询关键词对所述每个句子的文本内容进行相关性打分,包括: 1)计算目标查询关键词相对于每个句子的相关性得分Scorequwy(S); 其中,
12.—种文档检索的装置,其特征在于,包括: 检索单元,用于使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合; 获取单元,用于对所述第一目标文档集合进行相关性打分,得到所述第一目标文档的相关性打分结果,并根据所述相关性打分结果对所述第一目标文档集合进行重排序得到第二目标文档集合; 所述获取单元,还用于通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到新的目标查询关键词; 所述获取单元,还用于当所述新的目标查询关键词满足所述预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到第三目标文档集合; 计算单元,用于对所述第三目标文档集合中的每个目标文档进行分句处理,并计算进行所述分句处理得到每个句子的标签权重总和; 所述计算单元,还用于根据所述目标查询关键词对所述每个句子的文本内容进行相关性打分,得到每个句子的相关性打分结果,并根据所述每个句子的相关性打分结果得到所述每个句子的最终得分; 所述获取单元,还用于根据所述每个句子的最终得分得到目标句子,并在所述目标句子中获取长度在预设长度范围内的句子作为检索结果片段。
13.根据权利要求12所述的装置,其特征在于, 所述获取单元,还用于获取目标文档集合中每个单词在所述目标文档集合中的词频TF值和逆向文件频率IDF值; 所述装置还包括: 建立单元,用于根据所述目标文档集合中每个单词的TF值和IDF值建立所述倒排索引 ; 处理单元,用于对查询关键词进行剔除停用词和词干提取操作,得到所述目标查询关键词; 所述建立单元,还用于建立检索模型。
14.根据权利要求13所述的装置,其特征在于, 所述检索单元,具体用于根据所述检索模型使用经过预处理得到的目标查询关键词在预先建立的倒排索引中对目标文档集合进行检索,得到第一目标文档集合。
15.根据权利要求12所述的装置,其特征在于, 所述计算单元,还用于对所述第一目标文档集合进行训练,得到所述第一目标文档集合中的每个标签的权重。
16.根据权利要求15所述的装置,其特征在于,所述计算单元,具体包括:获取子单元,用于获取所述第一目标文档集合中的所有标签名; 分类子单元,用于根据所述标签名,将所述第一目标文档集合中的元素分为与查询相关的元素集合和与查询不相干的元素集合; 所述获取子单元,还用于获取每个查询关键词ti在每个相关元素bk中出现的次数a和所述相关元素集合中所有单词的总个数A ; 所述获取子单元,还用于获取所述每个查询关键词ti在每个不相关元素bk中出现的次数b和所述不相关元素集合中所有单词的总个数B ; 计算子单元,用于根据所述每个查询关键词ti在所述每个相关元素bk中出现的次数和所述相关元素集合中所有单词的总个数,计算所述每个查询关键词ti在所述每个相关元素bk中出现的概率Pik ;
17.根据权利要求12所述的装置,其特征在于,所述获取单元,具体包括: 抽取子单元,抽取所述第一目标文档集合中每个目标文档的SLCA子树作为所述每个目标文档的结构信息; 计算子单元,用于对所述每个目标文档的SLCA子树进行相关性打分,得到所述每个目标文档的相关性得分。
18.根据权利要求17所述的装置,其特征在于, 所述计算子单元,具体用于获取所述目标查询关键词中每个查询关键词q分别在每个节点η中出现的次数tfy ; 所述计算子单元,具体用于计算所述每个查询关键词q在所述第一目标文档集合中的TF 值 TFq ; 所述计算子单元,具体用于根据所述每个查询关键词q的和TFq得到所述每个查询关键词q对于当前节点的相关性得分tw(n, q); 其中,
19.根据权利要求18所述的装置,其特征在于, 所述计算子单元,还具体用于当所述当前节点η为非叶子节点时,计算所述当前节点η的所有子节点c相对于目标查询关键词的相关性得分tw(c,q); 所述计算子 单元,还具体用于根据所述每个查询关键词q相对于所述当前节点η的相关性得分tw(n,q)和所述当前节点η的所有子节点c相对于所述目标查询关键词的相关性得分tw(c, q)计算得到所述每个查询关键词q相对于所述当前节点η的相关性得分tWi (n, q);
其中,
20.根据权利要求12所述的装置,其特征在于,所述装置还包括: 判断单元,用于判断所述新的目标查询关键词是否满足预设条件; 所述获取单元,还用于当所述新的目标查询关键词不满足所述预设条件时,使用所述新的目标查询关键词对所述第一目标文档集合进行重新检索,得到新的第二目标文档集合; 所述获取单元,还用于通过伪相关反馈模型对所述当前目标查询关键词进行扩展,得到更新的目标查询关键词; 所述检索单元,还用于直到所述更新的目标查询关键词满足所述预设条件,使用所述更新的目标查询关键词对所述第一目标文档集合进行重新检索。
21.根据权利要求12所述的装置,其特征在于,所述计算单元,具体包括: 第一计算子单元,用于训练所述第三目标文档集合,得到所述第三目标文档集合中每个标签的权重; 分句处理子单元,用于去除标签,对所述第三目标文档集合中的每个目标文档进行分句处理; 所述第一计算子单元,还用于计算所述每个句子包含的所有词所对应的标签的权重,以得到每个句子的标签权重总和tagW(s)。
22.根据权利要求21所述的装置,其特征在于, 所述计算单元,具体用于计算目标查询关键词相对于每个句子的相关性得分Scorequery (s); 其中,
【文档编号】G06F17/30GK103678412SQ201210360872
【公开日】2014年3月26日 申请日期:2012年9月21日 优先权日:2012年9月21日
【发明者】洪毅虹, 杨建武 申请人:北京大学, 北大方正集团有限公司, 北京北大方正电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1