信息搜索系统及方法

文档序号:6615059阅读:193来源:国知局
专利名称:信息搜索系统及方法
技术领域
本发明涉及一种信息搜索系统及方法。

背景技术
目前,随着信息技术的不断发展,特别是互联网应用的飞速普及,电子信息爆炸似的丰富起来。如何对所述海量、无序的信息进行有效的搜索是一个亟待解决的问题。
通常,对于用户搜索,所返回的搜索结果一般是包含了文档表示(例如标题、摘要)或文档链接的一个列表,用户在此列表中进一步查找和/或选取实际相关或有用的文档。
但是,对于非常大的文档库,例如国际互联网搜索引擎的网页库,系统返回给用户的搜索结果通常包含了成百上千的相关文档。对用户而言,在大量的返回结果中查找出有用信息是一种很大的负担,而且质量、类别等有很大不同的文档(如网页)无序地罗列在一起很容易掩盖用户真正需要的内容。
当前的主流搜索引擎(例如www.Google.com,search.Yahoo.com,search.MSN.com,www.Baidu.com)都是基于用户输入的关键词仅仅进行平面搜索,并不做任何处理。因此,对于包含了多义的、应用宽泛或者搭配多样的关键词的搜索(例如,“笔记本”、“病毒”、“mp3”等),返回的搜索结果通常是包含了很多主题不相关、混杂在一起的文档。
由上可知,现有的信息搜索存在以下缺点一是返回给用户的搜索结果不够直观;二是用户要浪费大量的时间在搜索结果中进行查找,效率极为低下;三是用户在搜索结果中进行查找时容易漏掉有用信息。


发明内容
鉴于以上内容,有必要提供一种信息搜索系统,其可快速方便地对信息进行搜索,并以聚类分类的方式呈现搜索结果。
鉴于以上内容,还有必要提供一种信息搜索方法,其可快速方便地对信息进行搜索,并以聚类分类的方式呈现搜索结果。
一种信息搜索系统,该系统包括网页服务器和搜索服务器,所述的网页服务器包括输入模块,用于接收用户输入的搜索关键词;所述的搜索服务器包括获取模块,用于根据输入的关键词获取搜索结果;确定模块,用于确定聚类名称,并将搜索结果中的文档归入确定的聚类名称,及将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果;生成模块,用于根据确定的聚类名称及归入所述聚类名称下的文档生成聚类图形,及根据取得的分类结果及生成的聚类图形生成聚类分类图形;所述的网页服务器库服务器还包括输出模块,用于将生成的聚类分类图形返回给用户。
一种信息搜索方法,该方法包括以下步骤(a)接收用户输入的搜索关键词;(b)根据输入的关键词获取搜索结果;(c)确定聚类名称,并将搜索结果中的文档归入确定的聚类名称;(d)将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果;(e)根据确定的聚类名称及归入所述聚类名称下的文档生成聚类图形,及根据取得的分类结果及生成的聚类图形生成聚类分类图形;(f)将生成的聚类分类图形返回给用户。
所述信息搜索系统及方法,可以快速方便地进行搜索并获取搜索结果,而后对搜索结果进行聚类和分类,直观条理地将搜索结果呈现给用户。因而可以有效提高用户后期的查找效率及保障用户不漏掉有用信息。



图1是本发明信息搜索系统较佳实施例的硬件架构图。
图2是图1中网页服务器、搜索服务器及索引服务器之间的关联图。
图3是本发明信息搜索方法较佳实施例的作业流程图。
图4是本发明对搜索结果聚类较佳实施例的具体流程图。
图5是本发明对搜索结果分类较佳实施例的具体流程图。
图6是搜索结果的聚类图形较佳实施例的示意图。
图7是搜索结果的聚类分类图形较佳实施例的示意图。

具体实施例方式 参阅图1所示,是本发明信息搜索系统较佳实施例的硬件架构图。该系统采用三层(或多层)架构数据层,包括索引服务器103;逻辑事务层,包括搜索服务器102;以及表示层,包括网页服务器101和分散的客户端111、113及115。以上所述各设备通过内部网络104相连,从而实现各设备间协同工作。
其中,所述客户端111、113及115是用户接口,负责提交用户输入的搜索关键词及向用户展示搜索结果。
所述网页服务器101负责接收客户端111、113及115提交的搜索关键词;将搜索结果返回给客户端111、113及115;以及为客户端111、113及115提供搜索关键词的输入页面和搜索结果的返回页面。
所述搜索服务器102负责根据网页服务器101接收的搜索关键词对索引服务器103进行搜索。
所述索引服务器103与国际互联网106相连,负责从该国际互联网106上撷取文档,并将所述文档构建成索引(index),以供搜索服务器102搜索。其中,所述文档可以是网页,也可以是新闻,还可以是图片。
参阅图2所示,是网页服务器101、搜索服务器102及索引服务器103之间的关联图。
本发明所称的模块是完成特定功能的计算机程序段,比程序更适合于描述软件在计算机中的执行过程。因此本发明以下对软件都以模块描述。所述网页服务器101包括输入模块301、输出模块307。所述搜索服务器102包括获取模块302、处理模块303、计算模块304、确定模块305、生成模块306及分类数据库108;所述分类数据库108用于存储不同领域的语料库,及建立对应不同领域的语言模型(Language Mode),以便对搜索结果分类。所述索引服务器103包括有索引数据库109;所述索引数据库109存储了索引服务器103构建的所有索引(index)。
所述输入模块301用于接收用户通过客户端111、113及115输入的搜索关键词。
所述获取模块302用于根据输入模块301输入的关键词获取搜索结果,所述搜索结果由一个或多个文档组成。具体步骤如下获取模块302首先尝试从搜索服务器102的Cache中获取所述关键词对应的搜索结果;如果搜索服务器102的Cache中存有所述关键词对应的搜索结果,获取模块302从Cache中获取搜索结果;否则,获取模块302根据所述关键词,搜索索引数据库109并获取搜索结果。
所述处理模块303用于对搜索结果进行前置处理。所述前置处理包括定义门槛值、断词及过滤无效词。所述门槛值包括聚类名称门槛值和相关度门槛值。所述断词即是将文档断成一个个词。所述过滤无效词即是将无效词滤除(因为无效词不表达具体含义,对聚类没有任何意义),所述无效词包括副词、语气词、数量词等,如中文中的“这”“呢”“个”和英语中的“a”“the”“this”。
所述计算模块304用于利用TF-IDF公式计算文档中每个词的权重(用Weight表示)。其中,TF(Term Frequency)代表词频,IDF(Inverse Document Frequency)代表词的常用程度。Weight(t,d)=TF(t,d)*log(N/nt)。其中,TF(t,d)代表词t在文档d中出现的次数(即词频),log(N/nt)即为IDF,N代表搜索结果中所有文档的总数,nt代表搜索结果中出现词t的文档数。
所述确定模块305用于确定聚类名称。具体而言,确定模块305首先将计算出的权重Weight与上述定义的聚类名称门槛值比较,选出达到聚类名称门槛值的词;然后滤除所述达到聚类名称门槛值的词中的标点符号;最后依据最长词原则对所述达到聚类名称门槛值的词进行过滤,以确定聚类名称。例如,现假设经过前两个步骤得到两个词“车站”、“汽车站”,确定模块305滤除“车站”,将“汽车站”确定为聚类名称。因为依据最长词原则,较长的词更具有代表意义。
所述计算模块304还用于利用TF-IDF公式,计算上述确定的聚类名称与搜索结果中每个文档的相关度。
所述确定模块305还用于依照上述计算的聚类名称与每个文档的相关度以及定义的相关度门槛值,将相关度达到相关度门槛值的文档归入上述确定的聚类名称下。
所述计算模块304还用于将搜索结果中的每个文档与分类数据库108中不同领域的语言模型做概率分析,即计算搜索结果中的每个文档在所述不同领域的语言模型中出现的概率。计算公式如下P(FC|Input)=P(FC,Input)/P(Input),其中,Input表示搜索结果中的一个文档,FC(Field Class)表示一个领域的语言模型,P(Input)=∑FCP(FC,Input)。
所述确定模块305还用于根据上述计算的每个文档在不同领域的语言模型中出现的概率,将搜索结果中的文档依次分入其出现概率最高的领域;并取得分类结果。在本较佳是实施例中,所述分类结果以哈希表(Hash Table)的形式表示。
所述生成模块306用于根据确定的聚类名称及归入所述聚类名称下的文档,生成聚类图形(请参考图6);及根据取得的分类结果及生成的聚类图形,生成聚类分类图形(请参考图7)。
所述输出模块307用于将生成的聚类分类图形返回给客户端111、113及115,从而为用户呈现一个直观条理的搜索结果。
以上所述各模块也可包括于单独计算机设备中,而包含上述模块的单独计算机设备亦可完成本发明所述各项功能。
参阅图3所示,是本发明信息搜索方法较佳实施例的作业流程图。
步骤S401,输入模块301接收用户通过客户端111、113及115输入的搜索关键词。
步骤S402,获取模块302根据输入模块301输入的关键词,获取搜索结果,所述搜索结果由一个或多个文档组成。具体步骤如下获取模块302首先尝试从搜索服务器102的Cache中获取所述关键词对应的搜索结果;如果搜索服务器102的Cache中已有所述关键词对应的搜索结果,获取模块302从Cache中获取搜索结果;否则,获取模块302根据所述关键词,搜索索引数据库109并获取搜索结果。
步骤S403,确定模块305对所述搜索结果聚类,而后生成模块306根据聚类结果,生成聚类图形(具体内容将在图4中详细描述)。
步骤S404,确定模块305对所述搜索结果分类,而后生成模块306根据分类结果及生成的聚类图形,生成聚类分类图形(具体内容将在图5中详细描述)。
步骤S405,输出模块307将生成的聚类分类图形返回给客户端111、113及115,从而为用户呈现一个直观条理的搜索结果。
参阅图4所示,是本发明步骤S403对搜索结果聚类的具体流程图。
步骤S500,首先处理模块303对搜索结果进行前置处理。所述前置处理包括定义门槛值、断词及过滤无效词。所述门槛值包括聚类名称门槛值和相关度门槛值。所述断词即是将文档断成一个个词。所述过滤无效词即是将无效词滤除(因为无效词不表达具体含义,对聚类没有任何意义),所述无效词包括副词、语气词、数量词等,如中文中的“这”“呢”“个”和英语中的“a”“the”“this”。
步骤S501,确定模块305确定聚类名称。具体步骤如下第一步,计算模块304利用TF IDF公式计算文档中每个词的权重(用Weight表示)。其中,TF(Term Frequency)代表词频,IDF(Inverse Document Frequency)代表词的常用程度。Weight(t,d)=TF(t,d)*log(N/nt)。其中,TF(t,d)代表词t在文档d中出现的次数(即词频),log(N/nt)即为IDF,N代表搜索结果中所有文档的总数,nt代表搜索结果中出现词t的文档数。第二步,确定模块305将计算出的权重与上述定义的聚类名称门槛值比较,选出达到聚类名称门槛值的词。第三步,确定模块305滤除上述达到聚类名称门槛值的词中的标点符号。第四步,确定模块305依据最长词原则对上述达到聚类名称门槛值的词进行过滤,以确定聚类名称。例如,现假设经过前三个步骤得到两个词“车站”、“汽车站”,确定模块305滤除“车站”,将“汽车站”确定为聚类名称。因为依据最长词原则,较长的词更具有代表意义。
步骤S502,确定模块305将搜索结果中的文档归入上述确定的聚类名称。具体而言,首先计算模块304利用TF-IDF公式计算上述确定的聚类名称与搜索结果中每个文档的相关度;然后确定模块305依照上述定义的相关度门槛值,将相关度达到相关度门槛值的文档归入上述确定的聚类名称下。
步骤S503,生成模块306根据上述确定的聚类名称及归入所述聚类名称下的文档,生成聚类图形(请参考图6)。
参阅图5所示,是本发明步骤S404对搜索结果分类的具体流程图。
步骤S601,首先进行准备步骤。也即是,对所述分类数据库108进行训练将不同领域的语料库加入该分类数据库108,并建立对应不同领域的语言模型(Language Mode),以便对搜索结果分类。所述语料库包括电子语料库、机械语料库、医学语料库、设计语料库及软件语料库。
步骤S602,确定模块305对搜索结果进行分类。具体步骤如下第一步,计算模块304将搜索结果中的每个文档与上述不同领域的语言模型做概率分析,即是计算搜索结果中的每个文档在所述不同领域的语言模型中出现的概率。计算公式如下P(FC|Input)=P(FC,Input)/P(Input),其中,Input表示搜索结果中的一个文档,FC(Field Class)表示一个领域的语言模型,P(Input)=∑FCP(FC,Input)。第二步,确定模块305将搜索结果中的文档依次分入其出现概率最高的领域。第三步,确定模块305取得分类结果。在本较佳是实施例中,所述分类结果以哈希表(Hash Table)的形式表示。
步骤S603,生成模块306根据上述取得的分类结果及生成的聚类图形,生成聚类分类图形(请参考图7)。
应当说明的是,上述聚类图形及聚类分类图形仅为本发明的采用的实施例,其可以为树状图形,也可以为圈状图形,还可以由包含搜索结果的其它聚类图形及聚类分类图形代替。
本发明所提供的信息搜索系统及方法,在输入搜索关键词后,所有的搜索、聚类、分类步骤均可自动进行,无需人为干预,速度极为快捷。
以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
权利要求
1.一种信息搜索系统,包括网页服务器和搜索服务器,其特征在于
所述的网页服务器包括输入模块,用于接收用户输入的搜索关键词;
所述的搜索服务器包括
获取模块,用于根据输入的关键词获取搜索结果,所述的搜索结果包括一个或多个文档;
确定模块,用于确定聚类名称,并将搜索结果中的文档归入确定的聚类名称,及将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果;
生成模块,用于根据确定的聚类名称及归入所述聚类名称下的文档生成聚类图形,及根据取得的分类结果及生成的聚类图形生成聚类分类图形;
所述的网页服务器还包括输出模块,用于将生成的聚类分类图形返回给用户。
2.如权利要求1所述的信息搜索系统,其特征在于,所述的搜索服务器还包括
处理模块,用于对所述搜索结果进行前置处理,所述的前置处理包括定义门槛值、断词及过滤无效词;
分类数据库,用于存储不同领域的语言模型;
计算模块,用于计算搜索结果文档中的每个词的权重,计算聚类名称与搜索结果中的每个文档的相关度,及计算搜索结果中的每个文档在所述不同领域的语言模型中出现的概率
3.如权利要求2所述的信息搜索系统,其特征在于,所述的门槛值包括聚类名称门槛值和相关度门槛值。
4.一种信息搜索方法,其特征在于,该方法包括以下步骤
接收用户输入的搜索关键词;
根据输入的关键词获取搜索结果;
确定聚类名称,并将搜索结果中的文档归入确定的聚类名称;
将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果;
根据确定的聚类名称及归入所述聚类名称下的文档生成聚类图形,及根据取得的分类结果及生成的聚类图形生成聚类分类图形;及
将生成的聚类分类图形返回给用户。
5.如权利要求4所述的信息搜索方法,其特征在于,所述步骤确定聚类名称,并将搜索结果中的文档归入确定的聚类名称包括以下步骤
对搜索结果进行前置处理,所述的前置处理包括定义门槛值、断词及过滤无效词,所述的门槛值包括聚类名称门槛值和相关度门槛值;
计算搜索结果文档中的每个词的权重,根据计算出的权重和定义的聚类名称门槛值确定聚类名称;
计算聚类名称与搜索结果中的每个文档的相关度,及将相关度达到相关度门槛值的文档归入相应的聚类名称。
6.如权利要求4所述的信息搜索方法,其特征在于,所述步骤将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果包括以下步骤
计算搜索结果中的每个文档在不同领域的语言模型中出现的概率;
将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果。
全文摘要
本发明提供一种信息搜索方法,该方法包括步骤接收用户输入的搜索关键词;根据输入的关键词获取搜索结果;确定聚类名称,并将搜索结果中的文档归入确定的聚类名称;将搜索结果中的文档分入其出现概率最高的领域,并取得分类结果;根据确定的聚类名称及归入所述聚类名称下的文档生成聚类图形,及根据取得的分类结果及生成的聚类图形生成聚类分类图形;及将生成的聚类分类图形返回给用户。本发明还提供一种信息搜索系统。利用该信息搜索系统及方法,能够快速方便地对信息进行搜索,并以聚类分类的方式呈现搜索结果。
文档编号G06F17/30GK101216826SQ20071020001
公开日2008年7月9日 申请日期2007年1月5日 优先权日2007年1月5日
发明者李忠一, 叶建发, 谢耀辉 申请人:鸿富锦精密工业(深圳)有限公司, 鸿海精密工业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1