一种优化聚类搜索结果的方法及其装置 【技术领域】
本发明涉及互联网领域中的信息搜索技术,尤其涉及一种优化聚类搜索结果的方法及其装置。
背景技术
随着电子信息化时代的到来,互联网在人们的生活中发挥着越来越重要的作用,人们通过互联网可以快速、全面地搜索到其所需要的信息,给人们的生活、工作提供了很大的方便。
传统的基于计算机或者计算机网络的信息检索系统,对于用户查询所返回的搜索结果通常是包含了文档表示(例如文档的标题或摘要)或文档链接的一个列表,列表中的文档一般是按照文档与查询关键词之间的相关程度由高到低排序。用户在此列表中进一步查找和选取与自己要搜索的内容实际相关或有用的文档。但随着互联网的迅猛发展,互联网上的信息越来越多,系统返回给用户的搜索结果通常是成百上千的文档表示或文档链接,在大量的搜索结果中查找有用信息对用户而言是一种很大的负担,并且质量、类别等有很大不同的文档线性地罗列在一起也容易掩盖用户真正关心的文档。
针对上述问题,除了进一步提高文档检索技术(例如充分利用网页的超链接特征、文本格式化信息等),尽量将用户可能感兴趣的文档排列在靠前的位置之外,另外一种方便用户在搜索结果中进行浏览和查找的技术是系统对搜索结果进行自动分组(即对搜索结果进行聚类),将具有相似特征(例如相同主题)的文档放在同一组之中,并将聚类结果呈现给用户,提供给用户一个简单明了的用户界面,缩小了用户的查找范围,以便于用户只在感兴趣的少数类别中查找和选取所关心的文档。
现有技术提出的一种搜索结果的聚类方法中,预先记录搜索结果中被索引文档相对于其所包含的某个或者某几个关键词的一个或多个类别,然后根据预先记录的文档相对于包含在搜索请求中的某个或者某几个关键词的类别,对搜索结果中的文档进行分组,即将搜索结果中的文档归类到对应的聚类类别中。并根据搜索结果中文档归类情况为每个聚类类别设置一个权重值,该权重值用于表示聚类类别与所对应的文档的关联程度。通过该方法,可以将具有较高权重值的搜索结果聚类优先展示给用户,但是,由于网络信息的多变性,根据该方法,网络侧返回给用户的搜索结果中聚类类别的优先级往往是随网络信息的变化而变化的,因此,不能满足用户的个性化搜索需求,用户对搜索引擎的体验度差。
【发明内容】
本发明提供一种优化聚类搜索结果的方法及其装置,用以满足用户对搜索引擎返回的聚类搜索结果的个性化搜索需求。
本发明实施例通过如下技术方案实现:
本发明实施例提供了一种优化聚类搜索结果的方法,包括:
根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与所述聚类类别对应的历史权值;
根据所述历史权值的查找结果以及所述聚类类别对应的当前权值,确定所述聚类类别对应的结果权值;
根据所述结果权值,确定所述聚类类别返回给用户时地优先级。
本发明实施例还提供了一种优化聚类搜索结果的装置,包括:
历史权值查找单元,用于根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与所述聚类类别对应的历史权值;
结果权值确定单元,用于根据所述历史权值查找单元的查找结果以及所述聚类类别对应的当前权值,确定所述聚类类别对应的结果权值;
优先级确定单元,用于根据所述结果权值确定单元确定的结果权值,确定所述聚类类别返回给用户时的优先级。
通过上述技术方案,本发明实施例在将聚类搜索结果返回给用户之前,首先根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与该聚类类别对应的历史权值,并根据历史权值的查找结果以及该聚类类别对应的当前权值,确定该聚类类别对应的结果权值,进而根据结果权值,确定该聚类类别返回给用户时的优先级。本发明实施例能够根据用户的历史搜索行为以及当前搜索行为共同确定聚类类别返回给用户时的优先级,充分考虑了用户的个人搜索习惯以及个人喜好,从而满足了用户的个性化搜索需求,提高了用户的使用感受。
【附图说明】
图1为本发明实施例中优化聚类搜索结果的流程图;
图2为本发明实施例中优化聚类搜索结果的装置示意图一;
图3为本发明实施例中优化聚类搜索结果的装置示意图二;
图4为本发明实施例中优化聚类搜索结果的装置示意图三;
图5为本发明实施例中优化聚类搜索结果的装置示意图四。
【具体实施方式】
为了使聚类后的搜索结果更加符合用户的个性化搜索需求,以提高用户的使用感受,本发明实施例提出了一种优化聚类搜索结果的方法及其装置,下面结合说明书附图对本发明实施例的主要实现原理、具体实施过程及其对应能够达到的有益效果进行详细的阐述。
本发明实施例中,需要预先在搜索系统中建立并保存与不同用户对应的用户历史搜索信息,初始状态下,该用户历史搜索信息中默认有一种或多种聚类类别,并且分别为该一种或多种聚类类别指定对应的历史权值。其中,为聚类类别指定的历史权值可以为系统设定的默认值,该默认值可以根据用户预先在系统中选取的其感兴趣的聚类类别信息确定,例如,对于用户选取出的自己感兴趣的聚类类别,可以指定该聚类类别对应的历史权值为一个大于0的值,而对于用户未选取的聚类类别,可以指定该聚类类别对应的历史权值为0,如系统中为用户提供了三种聚类类别供其选择,分别为:“体育”、“文学”、“娱乐”,用户根据自己的喜好选取出“体育”和“娱乐”,则根据用户的选择信息可以为“体育”和“娱乐”对应的聚类类别分配历史权值为系统默认的一个大于0的值(如100),为“文学”对应的聚类类别分配历史权值为0。
在搜索系统中,聚类类别及其对应的历史权值可以通过“键-值”对的方式保存,即聚类类别与历史权值一一对应的方式。并且,在聚类类别比较多的情况下,可以通过建立索引的方式保存用户历史搜索信息,以加快对聚类类别及其对应的历史权值的查找速度。实际应用中,可以采用如下的数据结构保存用户历史搜索信息:
中文名称 英文名称 缩写 存储类型 用户标识 user_id 无 long 历史类别信息 class C 字符串 历史类别权值 weight W double
将为不同用户建立的用户历史搜索信息存储到搜索引擎的存储系统中后,当用户登录后,系统根据该用户的user_id查找到与该用户对应的用户历史搜索信息,并将查找到的用户历史搜索信息自动加载到缓存中,以便对聚类搜索结果进行优化时使用。
下面,对本发明实施例中优化聚类搜索结果的具体过程进行详细描述,具体如图1所示,执行如下步骤:
步骤101、根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与该聚类类别对应的历史权值。
用户历史搜索信息中指定了聚类类别Cn与历史权值Wn的对应关系,其中,Cn(n=1、2、3.....)表示第n个聚类类别,Wn(n=1,2,3,...)表示与第n个聚类类别对应的历史权值。该步骤101中,根据当前聚类搜索结果中的聚类类别Ci,从用户历史搜索信息中查找该聚类类别Ci以及与之对应的历史权值Wi。
步骤102、判断是否查找到与当前聚类搜索结果中的聚类类别对应的历史权值,若查找到,执行步骤103,否则执行步骤104。
步骤103、根据查找到的历史权值以及该聚类类别对应的当前权值,确定该聚类类别对应的结果权值。
该步骤103中,可以将查找到的历史权值与该聚类类别对应的当前权值之和或平均值,确定为该聚类类别对应的结果权值。进一步地,可以设定历史权值在对应的结果权值中所占的比重,例如,可通过如下公式计算结果权值:
Wi_new=Wi(1-q)+Wi_now;
其中,Wi_new表示聚类类别Ci对应的结果权值;Wi表示聚类类别Ci对应的历史权值;Wi_now表示聚类类别Ci对应的当前权值。
此处,q为衰减因子,取值为大于0小于1的数,并且q取值越大,则用户历史搜索信息对当前聚类搜索结果的影响越小,q取值越小,则用户历史搜索信息对当前聚类搜索结果的影响越大。
步骤104、将当前聚类搜索结果中的聚类类别对应的当前权值,确定为该聚类类别对应的结果权值。
步骤105、根据确定出的结果权值,确定该聚类类别返回给用户时的优先级。
该步骤105中,在确定出聚类类别对应的结果权值后,可以通过该结果权值标识该聚类类别返回给用户时的优先级,结果权值越大,优先级越高;进一步地,可以预设分段函数,根据结果权值落入的分段区间,确定聚类类别对应的优先级。
步骤106、判断是否确定出当前搜索结果中所有聚类类别返回给用户时的优先级,若是,则执行步骤107,否则返回步骤101。
步骤107、将当前搜索结果中所有聚类类别返回给用户的优先级由高到低进行排序,并将排序靠前的聚类类别优先返回给用户。
该步骤107中,可以将所有聚类类别按照优先级由高到底的顺序返回给用户,或者根据当前搜索结果中所有聚类类别返回给用户时的优先级,选取设定数目的聚类类别返回给用户,例如,选取排序靠前的前M个优先级对应的聚类类别返回给用户,或者,选取排序靠前的M个和排序靠后的N个优先级对应的聚类类别返回给用户。
上述步骤103中,聚类类别Ci对应的当前权值Wi_now可以根据设定的算法得到,例如,根据KNN(k Nearest Neighbors,k最临近算法)聚类算法得到,该算法为本领域技术人员所公知的,此处不进行详细描述。
本发明又一个实施例中,在上述实施例的基础上,还包括:根据用户的搜索行为更新为该用户保存的用户历史搜索信息,具体分如下两种情况:
情况一、当步骤102判断查找到与当前聚类搜索结果中的聚类类别对应的历史权值时,执行如下过程:
利用上述步骤103确定出聚类类别对应的结果权值更新用户历史搜索信息中保存的与该聚类类别对应的历史权值。例如,确定出的聚类类别Ci对应的结果权值为Wi_new,用户历史搜索信息中保存的与该聚类类别Ci对应的历史权值为Wi,则利用Wi_new的值替换Wi的值,并更新系统缓存,在用户退出搜索系统后,将该更新结果按照数据结构定义存储到搜索引擎系统中。
情况二、当步骤102判断未查找到与当前聚类搜索结果中的聚类类别对应的历史权值时,执行如下过程:
将用户的此次搜索行为添加到与该用户对应的用户历史搜索信息中,具体地,将当前聚类搜索结果中的聚类类别Ci添加到该用户的历史搜索信息中,并将该聚类类别Ci对应的结果权值Wi_new确定为该聚类类别Ci在用户历史搜索信息中对应的历史权值Wi,即在该用户的历史搜索信息中添加新的聚类类别Ci与Wi的对应关系。并且,更新系统缓存,在用户退出搜索系统后,将该更新结果按照数据结构定义存储到搜索引擎系统中。
与上述流程对应,本发明实施例还提供了一种优化聚类搜索结果的装置,如图2所示,该装置包括:历史权值查找单元201、结果权值确定单元202以及优先级确定单元203。其中,
历史权值查找单元201,用于根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与该聚类类别对应的历史权值。
结果权值确定单元202,用于根据历史权值查找单元201的查找结果以及该聚类类别对应的当前权值,确定该聚类类别对应的结果权值。
优先级确定单元203,用于根据结果权值确定单元202确定的结果权值,确定该聚类类别返回给用户时的优先级。
一个实施例中,上述结果权值确定单元进一步用于,当历史权值查找单元201的查找结果为查找到历史权值时,根据查找到的历史权值以及聚类类别对应的当前权值,确定该聚类类别对应的结果权值。
进一步地,如图3所示,图2所示的优化聚类搜索结果的装置还包括:
历史信息更新单元204,该单元用于当历史权值查找单元201的查找结果为查找到该聚类类别对应的历史权值,并且在结果权值确定单元202确定出该聚类类别对应的结果权值后,利用该结果权值更新用户历史搜索信息中与该聚类类别对应的历史权值。
一个实施例中,上述结果权值确定单元进一步用于,当历史权值查找单元201的查找结果为未查找到所述历史权值时,将该聚类类别对应的当前权值,确定为该聚类类别对应的结果权值。
进一步地,如图4所示,图2所示的优化聚类搜索结果的装置还包括:历史信息添加单元205,该单元用于当历史权值查找单元201的查找结果为未查找到该聚类类别对应的历史权值,并且在结果权值确定单元202确定出该聚类类别对应的结果权值后,将当前搜索结果中的聚类类别添加到用户历史搜索信息中,并将该聚类类别对应的结果权值确定为该聚类类别的历史权值。
进一步地,上述历史信息更新单元204和历史信息添加单元205可以合并为一个单元。
一个实施例中,如图5所示,图2所示的优化聚类搜索结果的装置还可以进一步包括:结果返回单元206,该单元用于当优先级确定单元203确定当前聚类搜索结果中所有聚类类别返回给用户时的优先级后,根据确定出的聚类类别返回给用户时的优先级,选取设定数目的聚类类别返回给用户。
通过上述技术方案,本发明实施例在将搜索结果聚类返回给用户之前,首先根据当前聚类搜索结果中的聚类类别,从预先保存的用户历史搜索信息中查找与该聚类类别对应的历史权值,并根据该历史权值的查找结果以及该聚类类别对应的当前权值,确定该聚类类别对应的结果权值,进而根据结果权值,确定该聚类类别返回给用户时的优先级。本发明实施例能够根据用户的历史搜索行为以及当前搜索行为共同确定聚类类别返回给用户时的优先级,充分考虑了用户的个人搜索习惯以及个人喜好,从而满足了用户的个性化搜索需求,提高了用户的使用感受。
另外,本发明实施例中,能够根据用户此处搜索行为产生的搜索结果对与该用户对应的用户历史搜索信息进行更新,从而使得用户历史搜索信息更能体现用户的个人搜索习惯。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。