首页> 中国专利> 查询扩展方法及查询扩展设备

查询扩展方法及查询扩展设备

摘要

本发明提供一种查询扩展设备,包括:搜索器,针对给定的查询语句进行搜索,得到查询结果;簇生成器,在所得到的查询结果集合中,在排名在前一定数目的查询结果子集中进行聚类,生成簇;簇简档生成器,针对所生成的每个簇来生成簇简档;簇简档排序器,使用所述搜索器所使用的查询语句,以簇简档为单位在所有簇中进行搜索,来对簇简档进行排序;词提取器,从排名在前一定数目的簇简档中提取词;新查询语句生成器,把所提取的词添加到查询语句,生成新的查询语句。

著录项

  • 公开/公告号CN101876979A

    专利类型发明专利

  • 公开/公告日2010-11-03

    原文格式PDF

  • 申请/专利权人 株式会社理光;

    申请/专利号CN200910132193.5

  • 申请日2009-04-28

  • 分类号G06F17/30(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人郭定辉

  • 地址 日本东京都

  • 入库时间 2023-12-18 00:56:43

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-06-16

    未缴年费专利权终止 IPC(主分类):G06F17/30 授权公告日:20120829 终止日期:20160428 申请日:20090428

    专利权的终止

  • 2012-08-29

    授权

    授权

  • 2010-12-15

    实质审查的生效 IPC(主分类):G06F17/30 申请日:20090428

    实质审查的生效

  • 2010-11-03

    公开

    公开

说明书

技术领域

本发明涉及一种查询扩展方法及查询扩展设备,更具体地说,本发明涉及一种把从查询结果中提取的词添加到查询语句以提高搜索精度的查询扩展方法及查询扩展设备。

背景技术

随着信息技术的发展,信息量的增大,信息检索在工作和生活中越来越重要。通过检索来快速找到需要的信息,从而便利于工作和生活。但由于人们往往对所需要的信息不甚了解,因此在搜索工具中输入的查询词不合适,以至于不能找到相关有用的信息。

用户的查询语句经常太短,以至于不能准确地描述用户的信息需求。查询语句中缺少许多重要的词,这导致了只能搜索到少量的一部分相关文档。为了克服此问题,查询语句扩展技术应运而生。用新词扩展查询语句是一种解决此问题的有效方法。在所有的查询扩展方法中,伪相关查询反馈是最有效的方法。此方法假定第一次查询结果中高排名的文档是与用户感兴趣的主题相关的,于是从高排名的文档中提取词来扩展查询语句。但是一些高排名的文档可能与用户感兴趣的主题无关,于是噪声词被提取出来,这使得搜索精度未有效提高甚至被降低。

例如,专利文献1提出了一种查询扩展系统和方法。此专利利用记录查询历史的查询日志、和查询日志中查询语句的查询结果来扩展用户查询语句,即,从以前的相关查询语句及它们的查询结果中提取新词。此发明存在的问题是,日志中的查询语句可能与查询无关,由此而得到的查询结果可能更不相关,从这些不相关的查询结果数据中提取的词将是噪声词。

专利文献2提出了另一种查询扩展系统和方法。在此专利中,所提取的词是通过计算联合概率并排序而得到的高排名词,此概率是所有查询日志统计数据的函数。但是日志中的查询语句可能与查询无关,由此而来的查询结果可能更不相关,从这些不相关的数据中提取的词将是噪声词。

在非专利文献1中,扩展查询语句的词来自于根据查询结果而生成的聚类层次关系。此方案中存在的问题是,普通数据不像IPC(国际专利分类)那样存在层次分类,因此该方法不能被广泛使用。

在非专利文献2中,词分类过程用来预测扩展词的有用性。被预测为好的词被加到查询语句中。此方案中存在的问题是:因为词是从排名高的搜索结果文档中提取出来的,而这些排名高的搜索结果文档可能与查询语句并不相关,于是可能从这些不相关的文档中抽出大量的噪声词,这些噪声词将导致错误的分类并使得噪声词被加到查询语句中。

【专利文献1】美国专利US 7287025B2

【专利文献2】美国专利申请US 2004/0158560A1

【非专利文献1】A Patent Retrieval Method Using a Hierarchy of Clusters atTUT,Hironori Doi,Yohei Seki,Masaki Aono,proceedings of NTCIR-5 workshopmeeting,December 6-9,2008,Tokyo,Japan.

【非专利文献2】Selecting good expansion terms for pseudo-relevancefeedback,Guihong Cao,Jian-Yun Nie,Jianfeng Gao,Stephen Robertson,Proceedings of the 31st annual international ACM SIGIR conference on Researchand development in information retrieval 2008,Singapore,Singapore,Pages243-250.

发明内容

现有查询语句扩展技术增加的词包含有大量的噪声词,以致搜索精度未有效提高甚至降低。针对现有技术中存在的问题,本发明提出一种新的查询语句扩展技术,通过对搜索结果中排名在前N的文档进行聚类以生成簇,并进而生成簇简档,以簇简档为单位进行搜索,从搜索结果提取新词,来扩展查询语句。

根据本发明的一个方面,提供一种查询扩展方法,包括步骤:(a)针对给定的查询语句进行搜索,得到查询结果;(b)在所得到的查询结果集合中,在排名在前一定数目的查询结果子集中进行聚类,生成簇;(c)针对所生成的每个簇来生成簇简档;(d)使用在步骤(a)中所使用的查询语句,以簇简档为单位在所有簇中进行搜索,来对簇简档进行排序;(e)从排名在前一定数目的簇简档中提取词;(f)把所提取的词添加到查询语句,生成新的查询语句。

根据本发明的另一个方面,提供一种查询扩展设备,包括:搜索器,针对给定的查询语句进行搜索,得到查询结果;簇生成器,在所得到的查询结果集合中,在排名在前一定数目的查询结果子集中进行聚类,生成簇;簇简档生成器,针对所生成的每个簇来生成簇简档;簇简档排序器,使用所述搜索器所使用的查询语句,以簇简档为单位在所有簇中进行搜索,来对簇简档进行排序;词提取器,从排名在前一定数目的簇简档中提取词;新查询语句生成器,把所提取的词添加到查询语句,生成新的查询语句。

根据本发明,对排名高的搜索结果文档进行聚类以生成簇,对簇简档进行二次搜索并删除排名低的簇,于是这些排名低的簇中的文档就被删除,这样就可以除掉第一次搜索结果中排名高但不相关的文档。通过从排名高的簇简档中提取词,去除簇或相应主题中的噪声,提高了搜索精度。进一步,通过对簇中文档内容的关键部分进行组合,来去除每个文档中的噪声词,则能够产生更高的搜索精度。

通过阅读结合附图考虑的以下本发明的优选实施例的详细描述,将更好地理解本发明的以上和其他目标、特征、优点和技术及工业重要性。

附图说明

图1为按照本发明实施例的查询扩展设备的总体框图;以及

图2为按照本发明实施例的查询扩展方法的总体流程图。

具体实施方式

图1为按照本发明实施例的查询扩展设备的总体框图。如图1所示,此查询扩展设备包括:搜索器101;簇生成器102;簇简档生成器103,簇简档排序器104;词提取器105;和新查询语句生成器106。

搜索器101针对给定的查询语句,来检索全文索引,得到排序的相关文档的集合,作为一次查询的结果。搜索的范围可以是数据库、因特网、内部网等等。搜索器101进行搜索并排序的算法可以是概率统计算法,例如TF/IDF、BM25、DFR_BM25等,或者是基于链接分析的算法,例如Page Rank(网页等级)等,或向量空间算法,或者可以是上述这些排序算法的任意组合。

其中,搜索器101使用的BM25算法例如记载在Ed Greengras,InformationRetrieval:A Survey 30November 2000中,用来计算给定查询语句和文档库中文档的相关性得分,得到相应的搜索排名。给定查询语句Q,文档d的相关性得分score(d,Q)由如下公式计算得到:

score(d,Q)=ΣtQtfK+tfqtfqtf+k3log(k2NNt+1.0)

其中,t是查询Q中的单词,tf是t在文档d中出现的次数,qtf是t在查询Q中出现的次数,N是文档库中的文档数,Nt是文档库中包含单词t的文档数,k2和k3是参数,例如k2=0.5,k3=1000,K定义如下

K=k1((1-b)+blavg_l)

其中l是文档d的长度,含义为文档中单词的总数,avg_l是文档库的平均文档长度,即所有文档长度之和除以文档个数,k1和b是参数,例如k1=1.2,b=0.75。

score(d,Q)的数值越高,表示该文档d与查询语句的相关度越高。

簇生成器102将一次查询的结果中排名靠前的一定数目N的文档的子集进行聚类,以形成不同的簇,每个簇中的文档数据属于同一个特征或主题。簇生成器102进行聚类的算法可以是K-均值法聚类算法、模糊c-均值法聚类算法、图论方法等、或上述算法的任意组合。

其中,K-均值法聚类算法例如记载在Lloyd,S.P.(1957).″Last squarequantization in PCM″.Bell Telephone Laboratories Paper.Published in journalmuch later:Lloyd.,S.P.(1982)中,用来对排名最靠前的N个搜索结果文档聚类生成簇。该算法步骤包括:

(1)选择聚类参数k,其中k可以定义为k=(N/2)1/2

(2)随机选择k个文档作为k个初始类;

(3)对每个类,将其出现次数最多的10个词(t1,...,t10)确定为其聚类中心;

(4)分别计算每个文档和每个类之间的距离

其中s1,s2,...,s10分别是类c的10个中心词t1,...,t10出现的次数,l1,l2,......,110分别是文档d中10个中心词t1,...,t10出现的次数,文档d将属于距离最近的类;

(5)循环(3)到(4)直到每个聚类不再发生变化为止。

簇简档生成器103集成一个簇中的所有文档来生成簇简档。集成方式可以是简单地集成簇中所有文档中所有的词,或者也可以集成簇中所有文档中的关键词。关键词可以是文档题目、黑体词、包含查询语句的语句等、或上述内容的任意组合。通过集成关键词,可以删除文档中的噪声词,这将产生更多的相关度高的词并提高查询精度。

簇简档排序器104以簇简档而非文档为单位,针对查询语句在所有簇中进行搜索,对簇简档进行排序,作为二次查询的结果。簇简档排序器104采用的算法可以是概率统计算法,例如TF/IDF、BM25、DFR_BM25等,或者是基于链接分析的算法,例如Page Rank(网页等级)等,或向量空间算法,或者可以是上述这些排序算法的任意组合。

其中,簇简档排序器104采用的BM25算法用来计算给定查询语句和簇简档的相关性得分,得到相应的簇简档的搜索排名。

对于给定的查询语句Q,簇简档p的相关性得分score(p,Q)由如下公式计算得到:

score(p,Q)=ΣtQtfK+tfqtfqtf+k3log(k2NNt+1.0)

其中,t是查询Q中的单词,tf是t在簇简档p中出现的次数,qtf是t在查询Q中出现的次数,N是簇简档集中的簇简档数,Nt是簇简档集中包含单词t的簇简档数,k2和k3是参数,例如k2=0.5,k3=1000,K定义如下

K=k1((1-b)+blavg_l)

其中l是簇简档p的长度,含义为簇简档p所含单词总数,avg l是簇简档集的平均簇简档长度,即所有簇简档长度之和除以簇简档个数,k1和b是参数,例如k1=1.2,b=0.75。

score(p,Q)的数值越高,表示该簇简档p与查询语句的相关度越高。

针对簇简档排序的结果,可以自动选择排名靠前的一定数目的簇简档进行进一步的处理,或者用户可以交互地选择相关的簇简档来进行进一步的处理。

词提取器105从排名靠前的一定数目的簇简档中提取词,产生更多的相关度高的词并提高查询精度。词提取器105也可以从用户交互地选择的簇简档中提取词。词提取器105采用的算法可以是Robertson’s选择值算法、或最大出现次数算法等、或者上述算法的任意组合。

词提取器105从排名最靠前的R个簇简档中提取词,具有较高得分的词被选择。只选择排名最靠前的R个簇简档中的词可以去除簇的噪声。所采用的Robertson’s Selection Value(RSV)方法例如记载在S.E.Robertson,“Onterm selection for query expansion”,Journal of documentation,46,4,1990,pp.359-364中,该算法计算词的得分的公式如下

RSV(t)=w2t*(rtR-ntN)

w2t=α*wt+(1-α)*w′t

wt=log(k1*Nnt+1)

wt=log(rtR-rt)-log(nt-rtN-R-(nt-rt))

其中,RSV(t)是词t的值,rt是排名最靠前的R个簇简档中包含词t的簇简档个数,N是簇简档总数,nt是所有簇简档中包含词t的簇简档个数,k1和α是参数,例如k1=0.5,α=0.5。

RSV(t)的数值越高,表示该词t与查询语句的相关度越高。

新查询语句生成器106组合所提取出的词和查询语句,以生成新的查询语句。提取出的词的权重可以与查询语句中原有的词的权重一样,也可以不一样。

图2是按照本发明实施例的查询扩展方法的总体流程图。

在步骤S201,针对给定的查询语句搜索相关文档,得到排序的文档集合,作为一次检索结果。在步骤S202,将前N个相关文档聚类形成M个簇(N≥1,N≥M≥1),其中一个簇对应于一个主题。在步骤S203,对每个簇,集成它的所有文档的所有内容来生成一个簇简档,或者,在步骤S203,对每个簇,集成簇中所有文档中的关键词,来生成一个簇简档。在步骤S204,针对该给定的查询语句在所有簇中进行二次搜索,对簇简档进行排序,作为二次查询的结果。在步骤S205,从排名高的k个簇简档中提取词。在步骤S206,所提取的词和查询语句进行组合。然后,可以用扩展后的查询语句搜索相关文档。

在步骤S203中,如果用文档的关键词生成簇简档,则能够消除噪声词,更多相关度高的词能够被提取出来加入查询语句,扩展后的查询语句提高搜索精度。在步骤S205中,仅从排名高的簇简档中提取词,从而消除了不相关的簇中的噪声文档,提高了搜索精度。

在说明书中说明的一系列操作能够通过硬件、软件、或者硬件与软件的组合来执行。当由软件执行该一系列操作时,可以把其中的计算机程序安装到内置于专用硬件的计算机中的存储器中,使得计算机执行该计算机程序。或者,可以把计算机程序安装到能够执行各种类型的处理的通用计算机中,使得计算机执行该计算机程序。

例如,可以把计算机程序预先存储到作为记录介质的硬盘或者ROM(只读存储器)中。或者,可以临时或者永久地存储(记录)计算机程序到可移动记录介质中,诸如软盘、CD-ROM(光盘只读存储器)、MO(磁光)盘、DVD(数字多功能盘)、磁盘、或半导体存储器。可以把这样的可移动记录介质作为封装软件提供。

本发明已经参考具体实施例进行了详细说明。然而,很明显,在不背离本发明的精神的情况下,本领域技术人员能够对实施例执行更改和替换。换句话说,本发明用说明的形式公开,而不是被限制地解释。要判断本发明的要旨,应该考虑所附的权利要求。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号