首页> 中国专利> 通过替换概念性词语进行搜索推荐系统

通过替换概念性词语进行搜索推荐系统

摘要

本发明提供的通过替换概念性词语进行搜索推荐系统,包括离线系统和在线系统;离线系统用于解析识别搜索引擎日志中每条历史记录中包含的实体性关键词,然后按照这些实体性关键词所属的类别,为这些历史记录建立索引;在线系统用于接收并解析由用户提交的搜索引擎查询,识别其中的概念性关键词,然后根据权重,寻找与给定搜索查询最为接近的、并且包含概念性关键词意义的实体性关键词的历史查询,然后将搜索到的查询进行排序,并返回给用户以进行二次查询。本发明简单直接、并且利用了源自搜索引擎的海量数据;在用户无法给出准确搜索词时,可以是用一些抽象的概念性关键词作;直接给出推荐的搜索词,提升了用户体验。

著录项

  • 公开/公告号CN103593410A

    专利类型发明专利

  • 公开/公告日2014-02-19

    原文格式PDF

  • 申请/专利权人 上海交通大学;

    申请/专利号CN201310501114.X

  • 发明设计人 朱其立;孙伟;

    申请日2013-10-22

  • 分类号G06F17/30(20060101);

  • 代理机构31236 上海汉声知识产权代理有限公司;

  • 代理人郭国中

  • 地址 200240 上海市闵行区东川路800号

  • 入库时间 2024-02-19 22:14:31

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-04-12

    授权

    授权

  • 2014-03-19

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

    实质审查的生效

  • 2014-02-19

    公开

    公开

说明书

技术领域

本发明涉及自然语言处理、搜索引擎领域,具体地,涉及XX的控制方法以及相应的控制装置。

背景技术

经检索发现如下相关检索结果:

相关检索结果1:

申请(专利)号:200580042218.2,名称:推荐搜索引擎关键词

摘要:搜索引擎接收具有一个或多个关键字的搜索查询。分析来自该搜索查询的结果集中的文档,来标识进一步分割或分隔原始结果集的一个或多个附加关键词。这些附加关键词被呈现给用户,然后用户选择是否包括或排除匹配这些附加关键词的文档。以此方式,原始结果集中的文档数量以相对快速且轻松的方式减少

该专利文献基于对用户输入的搜索查询的结果集进行分析,并且提炼出可以用来分割结果的关键词,然后将提炼出的关键词推荐给用户,由用户决定是保留这些关键词指向的文档,还是排除这些关键词指向的文档。虽然这个过程看似比较简洁,但是对于目前的大数据时代,用户很难精准地提供初始的搜索查询,在这种情况下,该方法就无法保证最初的结果集中包含用户真正需要的文档,也就无法保证有效性。

技术要点比较:

1.根据用户输入的搜索引擎查询的结果集进行关键词推荐,由用户决定包括(或者排除)推荐关键词的结果集,而本发明中利用搜索引擎的历史记录和用户输入的搜索引擎查询进行整个查询的推荐。

2.针对用户输入的搜索引擎查询的结果集进行直接的关键词推荐,而本发明试图更深层次得从语义上理解用户输入的查询,然后利用语义进行查询推荐。

相关检索结果2:

申请(专利)号:201010618555.4,名称:推荐搜索关键词的方法和装置

摘要:本申请公开了一种推荐搜索关键词的方法和装置,用以解决现有技术中向没有明确搜索意图的用户推荐搜索关键词时推荐效果不佳,造成搜索引擎服务器系统资源浪费的问题。方法包括:接收输入的搜索关键词;比较接收的搜索关键词与设定的非意图词集合中的样本词以及设定的意图词集合中的样本词;当比较结果为接收的搜索关键词包含非意图词集合中的样本词而不包含意图词集合中的样本词时,以第一预定推荐方式为确定推荐搜索关键词的主方式,以除第一预定推荐方式外的其他推荐方式为确定搜索关键词的辅助方式的策略,确定推荐搜索关键词,其中,第一预定推荐方式为基于知识库的推荐方式和/或基于会话相关性的推荐方式。

该专利文献使用意图词集和非意图词集来判断一个用户输入的搜索查询属于意图查询还是非意图查询,然后根据判定的结果,使用不同的策略作为主要推荐策略。当搜索查询被判定为意图查询时,该专利使用基于会话的推荐策略为主。当搜索查询被判定为非意图查询时,该专利使用基于知识库的推荐策略为主。但是意图词集和非意图词集本身非常有限,并且需要不断维护更新,代价较大;同时其使用的知识库也主要以阿里巴巴公司的电子商务分类为主。

技术要点比较:

1.采用复合的推荐策略,其中,对于模糊查询的推荐也采用知识库进行辅助,但是其知识库主要来源是阿里巴巴公司的电子商务分类,本发明的知识库采用Probase或者任意一种概率性层次数据库。

相关检索结果3:

申请(专利)号:201310165048.3,名称:搜索候选词的推荐方法及搜索引擎

摘要:本发明提出一种搜索候选词的推荐方法及搜索引擎,其中所述方法包括:搜索引擎服务器接收用户输入的输入信息,并获得输入信息的前缀信息;将前缀信息作为索引获得多个搜索候选词以及每个搜索候选词的权重;判断多个搜索候选词中是否存在至少两个搜索候选词属于同一主题;如果判断存在至少两个搜索候选词属于同一主题,则保留至少两个搜索候选词中的一个搜索候选词的权重不变,对至少两个搜索候选词中的其他搜索候选词的权重进行降权处理;以及根据多个搜索候选词的权重进行排序,将排序之后的搜索候选词提供至用户。根据本发明实施例的方法,提高了搜索候选词的多样性和准确性,能够满足用户的搜索需求,并且算法简单,易于实施,提升用户体验。

该专利文献主要针对用户输入的搜索查询的前缀,进行搜索查询的推荐,本质上讲,相当于一种自动补全功能。实际操作中,这种自动补全功能有一个较为严重的缺陷,就是可能由于某个突发热点事件,而导致关于这个突发热点的众多查询的权重一起被提升,其结果是搜索引擎会推荐众多意思极为相近的搜索查询。虽然该专利针对这种特殊场景进行了优化,但是仍然没有逃脱对于精准关键词的依赖。

技术要点比较

1.主要针对相似推荐关键词的聚合降权,而本发明倾向于对表意模糊的关键词进行理解并推荐。

2.主要针对前缀进行搜索关键词推荐,而本发明主要针对搜索关键词中模糊的部分进行改写推荐。

发明内容

针对现有技术中的缺陷,本发明的目的是提供一种通过替换概念性词语进行搜索推荐系统。本发明要解决的技术问题体现在以下几点:

1)引入层次型知识库,从而可以对用户输入的搜索查询进行一个概念化的理解,即识别其中的概念性(模糊不清的)关键词。

2)由于搜索引擎对于基于关键词的查询有较好的性能,因此本发明将识别到的概念性关键词替换为更为具体的实体性(具体的)关键词,从而获得更好的搜索结果。

3)利用搜索引擎日志进行推荐。搜索引擎的日志中记录了海量的用户搜索查询,可以从中筛选出优质的、结果集精确的搜索查询,再将这些优质查询推荐给无法提供精准关键词的用户们。这种方法既直接,又能够提高搜索引擎的用户体验。

根据本发明提供的通过替换概念性词语进行搜索推荐系统,包括离线系统和在线系统,其中:

离线系统,用于解析识别搜索引擎日志中每条历史记录中包含的实体性关键词,然后按照这些实体性关键词所属的类别,为这些历史记录建立索引,以供在线系统使用;

在线系统,用于接收并解析由用户提交的搜索引擎查询,识别其中的概念性关键词,然后根据权重,寻找与给定搜索查询最为接近的、并且包含概念性关键词意义的实体性关键词的历史查询,然后将搜索到的查询进行排序,并返回给用户一个经过排序后的推荐列表,由用户选择其认为更为贴近的查询,进行二次查询。

优选地,所述离线模块包括实体抽象化模块和概念聚合模块,其中:

实体抽象化模块,用于识别每条历史查询中包含的实体性关键词,再将识别到的实体性关键词抽象化到对应的概念性关键词,然后交给概念聚合模块处理;

概念聚合模块,用于将包含相同概念的历史查询聚合到一起,建立索引;对于每一条历史查询,实体抽象化模块识别出其中包含的实体性关键词、以及它们对应的概念,概念聚合模块根据这些概念,将包含相同概念的历史查询聚合到一起;建立一个以概念为主键的索引,交给在线系统使用。

优选地,所述在线系统包括概念分析模块、索引检索模块和打分排序模块,其中:

概念分析模块,用于识别用户提交的搜索查询中的概念性关键词;

索引检索模块,用于根据概念分析模块识别出的概念性关键词,遍历由离线系统生成的索引,找到所有包含与识别出的概念性关键词相一致的实体性关键词的历史查询,将这些历史查询作为候选推荐查询;

打分排序模块,用于给所有索引检索模块找到的候选推荐查询打分,并且排序,最后将排好序的候选推荐列表的一部分返回给用户选择。

优选地,所述打分被定义为距离,其包含三个部分:语义距离、字面距离以及历史查询的质量。

优选地,所述语义距离是用来描述用户查询原有的概念性关键词与替换的实体性关键词的典型性的,典型性用如下公式定义:

>Typicality(instance,concept)=Freq(instance,concept)Freq(concept)+2000>

其中,Typicality(instance,concept)表示对于给定概念,一个实体对于这个概念的典型程度,Freq(instance,concept)表示一个实体与一个概念共同出现的频率,Freq(concept)表示给定概念在语料库中的频率,instance表示一个实体,concept表示一个概念;

并用如下公式做变换:

>SemDist(typ)=-21+etyp+2>

其中,SemDist(typ)表示语义距离,typ表示一个典型度的值,由Typicality(instance,concept)公式计算出,e为自然底数。

优选地,所述字面距离是用来描述除概念性关键词外的其他部分,用户查询与备选查询之间的相似度。

优选地,所述历史查询的质量是用来描述一个历史查询对于用户来说是否真的有用,其中,用如下公式定义历史查询的质量:

>Quality(query)=ClickTime(query)Freq(query)>

其中,Quality(query)表示给定的历史查询的质量,ClickTime(query)表示用户在给定历史查询的结果集中的点击次数,Freq(query)表示给定历史查询被搜索的频率,query表示一个给定的历史查询;

并对查询质量做如下变换:

QualityDist(quality)=e-quality

其中,QualityDist(quality)表示质量距离,quality表示一个质量值,由Quality(query)公式计算得出。

优选地,所述打分最后的综合分数TotalScore由如下公式定义:

TotalScore=[SemDist+WordDist]+QualityDist

其中,SemDist 表示语义距离,WordDist表示字面距离,QualityDist表示质量距离。

与现有技术相比,本发明具有如下的有益效果:

1)使用搜索引擎日志中的历史查询作为推荐数据源,简单直接、并且利用了源自搜索引擎的海量数据。

2)在用户无法给出准确搜索词时,可以是用一些抽象的概念性关键词,从而使得用户可以进行搜索动作,而不会手足无措。

3)直接给出推荐的搜索词,使得用户可以点击推荐的搜索词进行二次查询,简单方便,提升了用户体验。

附图说明

通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1为离线系统示意图。

图2为在线系统示意图。

图3为索引结构示意图。

具体实施方式

下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进。这些都属于本发明的保护范围。

根据本发明提供的所述通过替换概念性词语进行搜索推荐系统的主要功能是利用搜索引擎日志中存储的历史记录,按照一定的方式为这些历史记录建立索引,然后通过与用户输入的搜索查询进行匹配,从而将用户可能更感兴趣的历史记录推荐给用户。

所述搜索推荐系统包含两个子系统,分别是离线系统和在线系统。离线系统负责解析识别搜索引擎日志中每条历史记录中包含的实体性关键词(如“Obama”、“Nixon”、“Watergate”等),然后按照这些实体性关键词所属的类别,为这些历史记录建立索引,以供在线系统使用。在线系统负责接收并解析由用户提交的搜索引擎查询,识别其中的概念性关键词(如“president”、“scandal”等),然后根据权重,寻找与给定搜索查询最为接近的、并且包含概念性关键词意义的实体性关键词的历史查询,然后将搜索到的查询进行排序,并返回给用户一个经过排序后的推荐列表,由用户选择其认为更为贴近的查询,进行二次查询。

离线模块主要包含两个模块:实体抽象化模块和概念聚合模块。如图1所示。

实体抽象化模块,其用于识别每条历史查询中包含的实体性关键词(如“Obama”、“Nixon”、“Watergate”等),再将识别到的实体性关键词抽象化到对应的概念性关键词(如“president”、“scandal”等),然后交给概念聚合模块处理。这里需要一个层次化知识库的辅助,知识库可以提供一个实体性关键词的集合、一个概念性关键词的集合以及一组实体-概念之间的对应关系。

概念聚合模块,其用于将包含相同概念的历史查询聚合到一起,建立索引。对于每一条历史查询,实体抽象化模块可以识别出其中包含的实体性关键词,以及它们对应的概念,概念聚合模块就是要根据这些概念,将包含相同概念的历史查询聚合到一起。建立一个以概念为主键的索引,交给在线系统使用。

在线系统包含三个模块:概念分析模块、索引检索模块和打分排序模块。如图2所示。

概念分析模块,其用于识别用户提交的搜索查询中的概念性关键词。例如,当用户输入“president involved in scandals”时,该模块可以识别出查询中的两个概念性关键词——“president”和“scandal”。并且将这个信息交给下面的模块。

索引检索模块,其用于根据识别出的概念性关键词,遍历由离线系统生成的索引,找到所有包含与识别出的概念性关键词相一致的实体性关键词的历史查询,将这些历史查询作为候选推荐查询,交给下一模块进行打分和排序。

打分排序模块,其用于给所有找到的候选推荐查询打分,并且排序,最后将排好序的候选推荐列表的一部分返回给用户选择。在打分阶段要考虑三个因素,其一是语义因素,即原始查询中概念性关键词与推荐的历史查询中实体性关键词的关联度;其二是原始查询与推荐查询之间字面上的相似度;其三是推荐的历史查询的质量,本发明主要通过查询频率(被查询的次数)和平均点击数(平均每次查询,用户在结果集中的点击数)。在列表返回阶段,需要动态确定返回查询的阈值(X)和最大返回数量(N),即所有返回的推荐查询的分数不能大于X,同时返回的推荐查询不多于N个。

实施举例1:历史查询索引的建立

对于在线系统,需要在给定概念性关键词的情况下,快速找到与给定概念相关的历史查询集合,作为推荐查询备选集。因此,在建立历史查询索引时,应该以概念性关键词作为索引键,来组织整个索引。如图3所示,所有与某一特定概念相关的历史查询都被集中到以这个概念为键值的查询集中,如包含“Obama”、“Nixon”等总统的历史查询,都被集中到以“president”为键值的查询集中。索引即是由如上所述的所有概念的查询集的集合。特别的,在具体系统实现中,为求能够快速访问信息,所有概念、历史查询都被赋予唯一的身份标示符(UID)以便快速访问。

实施举例2:对于查询的分析

对于查询的分析主要指识别查询中的概念性关键词或实体性关键词。在离线系统的实体抽象化模块中,主要是对历史查询中的实体性关键词进行识别;而在在线系统的概念分析模块中,主要是对用户输入的查询中的概念性关键词进行识别。二者只是在识别时利用的数据集不同(前者为实体性关键词集,后者为概念性关键词集),方法上相同。以下部分将以在线部分为例进行说明。

在实现中利用到的概念性关键词集来自层次型知识库,层次性知识库由一系列树形结构来完成对世界的抽象。例如这个逻辑链:“market”→“emergingmarket”→“China、India…”。“China”和“India”这些属于实体性关键词,对它们进行一个较浅层次的抽象,可以被抽象为“emerging market”(新兴市场),再进一步抽象,可以被抽象为“market”(市场)。这种知识库的信息源可以通过网络信息获取技术从网络上抓取。

有了概念性关键词集,就可以对用户查询中的概念性关键词进行识别,本发明采用的方式为最长匹配法,即当“emerging market”被识别时,就不再识别“market”。这主要因为更长的概念,通常意味着更精确的概念,从而涵盖更加精确的实体性关键词集,继而获得更加精确的推荐。

实施举例3:打分排序的方法

通过分析,我们可以知道一条用户提交的模糊查询会包含一个以上的概念性关键词,通过遍历索引,可以找到包含所有识别到概念性关键词对应的实体的历史查询,这些历史查询作为备选推荐查询将被打分排序。本发明中打分被定义为距离(越近越好),其包含三个部分:语义距离、字面距离以及历史查询的质量。

语义距离是用来描述用户查询原有的概念性关键词与替换的实体性关键词的典型性的。例如,将“president”替换为“Barack Obama”就比将其替换为“Bill”典型,因为在公知中,“Barack Obama”几乎专指现任美国总统,而“Bill”则是一个很普通的美国名字。具体的,关于典型性可以用如下公式定义:

>Typicality(instance,concept)=Freq(instance,concept)Freq(concept)+2000>

其中,Typicality(instance,concept)表示对于给定概念,一个实体对于这个概念的典型程度,Freq(instance,concept)表示表示一个实体与一个概念共同出现的频率,Freq(concept)表示给定概念在语料库中的频率,instance表示一个实体,concept表示一个概念。

根据公式可知,当一个实体对于一个概念越典型,这个数值越大,为使这个数值符合“距离”的概念,因此我们需要用如下公式做变换:

>SemDist(typ)=-21+etyp+2>

其中,SemDist(typ)表示语义距离,typ表示一个典型度的值,由Typicality(instance,concept)公式计算出。

字面距离(WordDist)是用来描述除概念性关键词外的其他部分,用户查询与备选查询之间的相似度。本发明中使用了计算机学科中常用的“字符串间修改距离”作为字面距离。

历史查询的质量是用来描述一个历史查询对于用户来说是否真的有用。基于有用的查询,越有可能被用户点击多次的假设,本发明中用如下公式定义历史查询的质量:

>Quality(query)=ClickTime(query)Freq(query)>

其中,Quality(query)表示给定的历史查询的质量,ClickTime(query)表示用户在给定历史查询的结果集中的点击次数,Freq(query)表示给定历史查询被搜索的频率,query表示一个给定的历史查询。

与语义距离类似,为了满足“距离”的定义,需要对查询质量做如下变换:

QualityDist(quality)=e-quality

其中,QualityDist(quality)表示质量距离,quality表示一个质量值,由Quality(query)公式计算出。

最后的综合分数TotalScore由如下公式定义:

TotalScore=[SemDist+WordDist]+QualityDist

其中,SemDist 表示语义距离,WordDist表示字面距离,QualityDiSt表示质量距离。

即语义距离和字面距离的线性和向上取整后,加上质量距离。这种计算方式使得计算出的距离在一定的粒度上(取整)保证了原始查询与推荐查询间的关联度,又保证了被推荐的历史查询有足够的质量。

以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号