一种确定推荐词的方法及设备的制作方法

文档序号:6355743阅读:412来源:国知局
专利名称:一种确定推荐词的方法及设备的制作方法
技术领域
本申请涉及计算机技术领域,尤其涉及一种确定推荐词的方法及设备。
背景技术
信息搜索过程是指搜索引擎根据用户输入的查询词,从特定的搜索信息库中搜索出与所述查询词相关的搜索信息,并将得到的搜索信息向用户展示的过程。在信息搜索过程中,用户需要将待搜索的物品转换为查询词来进行搜索,若用户使用的查询词不准确,则可能导致最终得到的搜索信息不是用户实际希望获得的搜索信息。为了提高搜索结果的准确性,在信息搜索过程中弓I入相关搜索的方案。相关搜索是指搜索引擎根据用户输入的查询词,向用户推送与该查询词相关性较高的推荐词(即搜索引擎向用户推荐的查询词),用户可以根据所述推荐词进行信息搜索,使最终得到的搜索信息能够满足用户的搜索需求。具体做法是搜索引擎对用户输入的查询词进行完善或扩展、改写,得到与查询词相关性较高的推荐词,并在对用户输入的查询词进行搜索得到搜索结果后,将推荐词在搜索结果的页面上方或下方向用户显示。若用户在搜索结果中没有找到满意的搜索信息(即搜索结果中的搜索信息不准确),则用户可以再将推荐词作为新的查询词继续进行搜索,直至查询出需要的搜索信息。如,用户输入的查询词为“A品牌手机”,搜索引擎可以对“A品牌手机”进行完善,向用户推送“B品牌手机”、“A品牌电脑”等与“A品牌手机”相关性较高的推荐词。再比如用户输入的查询词为“a公司”名称,搜索引擎可以对“a公司”进行扩展,向用户推送“a公司创始人”、“a公司产品”等推荐词。在上述相关搜索的方案中,搜索引擎是预先将所有用户使用过的查询词作为候选推荐词集合,并将候选推荐词集合存储在数据库中。当搜索引擎接收到某一用户发送的包含查询词的搜索请求后,根据候选推荐词集合中各候选推荐词的热门程度以及各候选推荐词与当前接收到的查询词的相关性高低,从候选推荐词结合中选择出向用户推送的推荐
ο由于搜索引擎是将所有用户使用的查询词作为候选推荐词集合,在每次为用户发送的搜索请求进行相关搜索时,都要从包含大量查询词的候选推荐词集合进行搜索,使搜索引擎确定推荐词的运算工作量极大,导致搜索引擎的工作时延较大,降低相关搜索的效率;另外,由于推荐词的产生只与候选推荐词的热门程度以及与当前的查询词相关性有关,而不考虑当前发起搜索请求的用户的个性化需求,因此,当多个用户使用相同查询词进行搜索请求时,每个用户得到的推荐词相同,而用户的需求差异化将会导致部分用户得到的推荐词不能正确地反映该用户的搜索需求,使得最终得到的搜索结果准确性较低;进一步地,在用户使用的查询词具有多种含义,且每种含义所属的领域差别较大时,产生的推荐词 反映用户搜索需求的能力将会更差。比如用户输入的查询词为“apple”,搜索引擎对之前所有的用户使用过的查询词进行搜索,而没有任何针对性,确定候选推荐词的时延较长;另外,在确定推荐词时,有的用户希望得到的推荐词是水果类的推荐词,而有的用户希望得到的推荐词是apple品牌的电子产品类的推荐词。再比如用户输入的查询词为java”,从事计算机技术的用户希望得到关于java语言的推荐词,而喜欢旅游的用户希望得到的是关于爪哇岛的推荐词。在目前推荐词的产生过程中,有不同需求的用户得到的推荐词相同,每个用户只能得到热门程度高以及与查询词相关性高的推荐词,不能为用户个性化地产生推荐词,无法满足不同用户的搜索需求。

发明内容
本申请目的在于提供一种确定推荐词的方法及设备,用以解决现有技术中存在的确定推荐词的运算量极大,且不能为用户个性化地产生推荐词的问题。一种确定推荐词的方法,包括
根据预先存储的多个用户使用的词集合,将包含所述查询词的词集合作为候选词集合;针对候选词集合中的多个候选词,确定候选词与查询词的相关度,以及确定候选词与发送搜索请求的用户使用的词集合中各词的相关度;将与查询词的相关度和与发送搜索请求的用户使用的词集合中各词的相关度满足设定条件的候选词,作为向发送搜索请求的用户提供的推荐词。一种确定推荐词的设备,包括接收模块,用于接收用户发送的包含查询词的搜索请求;候选集合确定模块,用于根据预先存储的多个用户使用的词集合,将包含查询词的词集合作为候选词集合;相关度确定模块,用于针对候选词集合中的多个候选词,确定候选词与查询词的相关度,以及确定候选词与发送搜索请求的用户使用的词集合中各词的相关度;推荐模块,用于将与查询词的相关度和与发送搜索请求的用户使用的词集合中各词的相关度满足设定条件的候选词,作为向发送搜索请求的用户提供的推荐词。本申请有益效果如下本申请实施例不从所有用户使用过的所有查询词中确定推荐词,而是从部分用户使用的词集合组成的候选词集合中确定推荐词,可以有效降低推荐词确定过程的工作量,提高确定推荐词的效率;同时,本申请实施例从词特征的相关度、类目特征的相关度来综合考虑候选词与查询词的相关度以及候选词与用户感兴趣的领域的相关度,进而选择与查询词和用户兴趣所在的领域相关度都相对较高的候选词作为推荐词,使得最终得到的推荐词从词义以及词的类目都与查询词以及用户的兴趣高度相关,在针对不同用户的相同查询词来确定推荐词时,可以有效地区分用户的兴趣所在,为用户确定最能反映用户搜索需求的推荐词;同时,由于在确定推荐词时还考虑到了词类目的相关度,因此,即使查询词有不同领域的多种含义,也能够根据用户感兴趣的领域准确地确定推荐词。


图I为本申请实施例一确定推荐词的方法示意图;图2为类目特征模型和词特征模型的建模示意图;图3为本申请实施例三确定推荐词的设备结构示意图;图4为本申请的系统架构示意图。
具体实施例方式为了实现本申请目的,本申请实施例提出一种新的确定推荐词的方案,预先分析确定各用户感兴趣的词集合,当需要为某一用户确定推荐词时,根据该用户感兴趣的词集合以及与该用户有相同兴趣的其他用户的词集合,为用户确定与搜索请求中的查询词相关的推荐词,使得产生的推荐词能够正确地反映搜索用户的搜索需求,即使是在查询词有多种含义的情况下,仍然能够根据搜索用户的兴趣确定合适词义的推荐词。且本申请实施例 从部分用户使用的词集合组成的候选词集合中确定推荐词,可以有效降低推荐词确定过程的工作量,提高确定推荐词的效率。本申请各实施例中涉及的查询词是指信息搜索过程中,软硬件设备能够识别的、表示用户待搜索的物品标识;推荐词是指相关搜索中,软硬件设备根据搜索过程中使用的查询词,确定的与该查询词相关性较高的推荐词,并展示给用户,当用户使用推荐词继续进行信息搜索过程时,继续进行信息搜索过程中的推荐词将成为查询词。上述软硬件设备是本申请实施例中涉及的确定推荐词的设备,该设备可以是集成在搜索引擎中的逻辑部件,也可以是独立于搜索引擎的包含软硬件的设备。下面结合说明书附图对本申请实施例进行详细描述。实施例一本申请实施例一提供了一种确定推荐词的方法,如图I所示,该方法包括以下步骤步骤101 :接收用户发送的包含查询词的搜索请求。在本步骤中,当有用户希望进行信息搜索过程时,主动发起包含查询词的搜索请求。本步骤中涉及的查询词可以是用户将待搜索的物品转换得到的查询词,也可以是用户主动选择之前已展示的推荐词作为新的查询词。若确定推荐词的设备(后续简称确定推荐词的设备)是集成在搜索引擎中的逻辑部件,则在本步骤中,确定推荐词的设备接收到用户发送的搜索请求后,一边根据搜索请求中包含的查询词进行常规的信息搜索过程,一边根据用户本次使用的查询词,为用户确定推荐词。若确定推荐词的设备是独立于搜索引擎的设备,则在本步骤中,确定推荐词的设备接收到用户发送的搜索请求后,一边将该搜索请求发送给搜索引擎,请求搜索引擎根据搜索请求中包含的查询词进行常规的信息搜索过程,一边根据用户本次接收到的查询词,为用户确定推荐词。步骤102 :根据预先存储的多个用户使用的词集合,将包含查询词的词集合作为候选词集合。本步骤主要包括以下两部分内容第一部分对接收到的查询词进行预处理,将用户输入的查询词转换为词特征向量以及该查询词的类目特征向量。第二部分产生候选词集合。本申请实施例中产生候选词集合的方式包括第一步提取出预先存储的多个用户使用的词集合。本步骤中预先存储了大量用户使用的词集合,在执行本步骤中,可以用大量用户中提取出部分用户使用的词集合,进而减少确定推荐词的设备确定推荐词的查询基数,降低推荐词确定过程的运算量。本步骤中,通过对设定时间段内多个用户的行为进行分析,确定用户使用的查询词和/或浏览的文档的主题词,进而将用户使用的查询词和/或浏览的文档的主题词作为该用户使用的词集合。 进行行为分析的用户是指曾经向确定推荐词的设备发起过搜索请求的用户,确定推荐词的设备在每次接收到搜索请求时,记录搜索请求中包含的查询词以及用户对查询结果的浏览情况。用户使用的词集合是指用户在设定时间段内使用的查询词以及浏览的文档的主题词的集合。用户使用的词集合能够反映出在设定时间段内,该用户感兴趣的词语,进而表达该用户感兴趣的领域,成为后续为用户确定推荐词的基础。第二步确定包含查询词的词集合,并将确定的词集合作为候选词集合。由于词集合表示曾经发起过搜索请求的用户感兴趣的词语,包含查询词的词集合对应的用户是曾经对查询词感兴趣的用户,将这些对所述查询词感兴趣的用户看作是与发起搜索请求的用户有相似性的用户,因此,将包含查询词的词集合作为候选集合,可以提高推荐词确定效率,从中找到能够正确反映发起搜索请求的用户的搜索需求。步骤103 :针对候选词集合中的多个候选词,确定候选词与查询词的相关度,以及候选词与发送搜索请求的用户使用的词集合中各词的相关度。本步骤中可以从候选词集合中选择部分候选词进行相关度确定过程,也可以对候选词中的每个候选词进行相关度确定过程。本步骤中,候选词与查询词的相关度包括候选词与查询词的词特征相关度和候选词与查询词的类目特征相关度。候选词与发送搜索请求的用户使用的词集合中各词的相关度包括候选词与发送搜索请求的用户使用的词集合中各词的词特征相关度和候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度。在本步骤的方案中,在计算相关度时,除了计算候选词与查询词的相关度之外,只需要计算候选词与发送搜索请求的用户使用的词集合中各词的相关度,而无需像现有技术方案那样计算候选词与所有用户使用的词集合中各词的相关度,减少了确定推荐词的设备计算相关度的运算量,进一步提高了推荐词确定的效率。步骤104 :将相关度满足设定条件的候选词作为向发送搜索请求的用户提供的推荐词。由于在步骤103中,一个候选词与查询词和与发送搜索请求的用户使用的词集合中各词的相关度计算后,会得到4个相关度的数值,因此,可以根据这4个相关度的数值为用户确定最终的用于判断是否可作为推荐词的相关度数值。具体的计算方式可以有多种,包括但不限于线性加权求和的方式或其他算法。在计算确定每个候选词最终的相关度后,将该最终的相关度与设定的阈值进行比较,若候选词最终的相关度大于设定的阈值,则将该候选词存储至推荐集合中,作为推荐词,重复执行步骤103和步骤104,直至将候选集合中的所有候选词执行完毕后,得到完整的推荐集合,并在向用户展示针对查询词的搜索结果时,同时展示推荐集合中的推荐词。本实施例一的方案通过对4个维度的相关性考虑,从词特征的相关度、类目特征的相关度来综合选择推荐词,使得最终得到的推荐词从词义以及词的类目都与查询词以及用户的兴趣高度相关,在针对不同用户的相同查询词来确定推荐词时,可以有效地区分用户的兴趣所在,为用户确定最能反映用户搜索需求的推荐词;同时,由于在确定推荐词时还考虑到了词类目的相关度,因此,即使查询词有不同领域的多种含义,也能够根据用户感兴趣的领域确定推荐词。进一步地,本申请实施例还对历史的设定时间段进行限制,充分考虑到用户的兴趣会随着时间推移而改变,动态地实现了对用户兴趣的学习,同时,本申请实施只使用历史的设定时间段内用户使用的词集合,一方面相对于所有历史时间段内的词集合 进行处理的情况,可以减少对运算量,提高运算效率,另一方面,历史的设定时间段内的词集合已经能够正确地反映用户的兴趣,在运算效率较高的情况下,使确定的推荐词能够准确地满足用户的查询需求。实施例二本申请实施例二通过具体的实例对本申请实施例一的方案进行详细描述。在本实施例二的方案中,要对设定时间段内用户的行为进行分析,生成用户行为的类目特征模型以及用户行为的词特征模型。下面详细说明类目特征模型以及词特征模型的建模过程。一、类目特征模型的建模过程用户在历史的设定时间段内使用的查询词和浏览的文档都能够反映用户感兴趣的领域,而查询词和浏览文档的主题词所属的类目又能够反映出用户对各种类目的感兴趣程度,通过基于矢量空间的模型可以描述用户对各种类目的感兴趣程度,如公式(I)所示Uc= (WC1, WC2,......wcn) (I)其中UC表示用户U对各种类目的感兴趣程度;wCi表示用户u对第i个类目感兴趣的程度。上述公式⑴中用户U对各类目感兴趣的程度可以通过对用户U的搜索行为和对搜索结果的浏览行为进行分析确定,具体的算法可以有多种,下面举例说明一种计算用户u对各类目感兴趣程度的方法第一步通过Click through(CT)数据分析确定用户u感兴趣的类目。CT数据是记录用户在历史的设定时间段内使用的查询词和对搜索结果的文档浏览情况的数据,通过对CT数据的分析可以隐式地确定用户u感兴趣的类目,如公式(2)所示CT = { < U,q,d > u e U, q e Q, d e Dj (2)其中U表示在历史的设定时间段内,有过搜索行为的用户集合,u表示在历史的设定时间段内,有过搜索行为的用户u ;Q表示在历史的设定时间段内,用户u的搜索行为使用的查询词的集合,q表示在历史的设定时间段内,用户u的一次搜索行为使用的查询词;Dq表示用户u在使用查询词q后得到的搜索结果中浏览的文档集合,d表示用户u在使用查询词q后得到的搜索结果中浏览一个文档。利用CT数据为每个用户生成公式(2)所示的列表,并存储在数据库中。第二步通过Doc数据记录搜索使用的数据库中所有文档的信息集合(如文档所属的类目)。例如在电子商务网站中,文档是表示产品信息的页面,文档所属的类目是卖家在发布产品时填写的产品类目。在非电子商务网站中,若没有建立产品与类目的对应关系,则可以基于自定义的或国际通用的类目体系(如ODP类目体系),通过对文档内容的分析,确定文档所属的类目。Doc数据所表示的文档类目信息如公式(3)所示Doc = { < d, c > I d e D,c e C} (3)其中D表示所有文档的集合;C表示文档所属类目集合,也就是文档的主题词所属的类目集合。第三步在得到公式⑵和公式(3)所示的CT数据以及Doc数据后,以用户u浏览一个文档d为中介,得到用户u和类目之间的关系,并从中挑选可信度较高的集合得到生成用户对各种类目的感兴趣程度所需的训练数据,如公式(4)所示UC = { < U,c > |u e U,c e C} (4)第四步在得到公式(4)所示的用户u与各类目之间的关系后,需要进一步计算出用户U对各类目感兴趣的程度,本实施例中可以采用概率分布P (c I U)来表达用户U在各类目出现的概率值WCi。具体做法为,通过最大使然估计算法,近似得到公式(5)WCi = P(CiIu) = f (u, Ci)/f (u) (5)其中J(Iuci)表示u和c同时在UC数据中出现的次数,f (U)表示u在UC数据中出现的次数。例如用户u在C1类目中出现的次数为10次,在C2类目中出现5次,则用户u在UC数据中出现的次数f (U)为15次,用户u在C1类目出现的概率值为10/15,用户u在C2类目中出现的概率值为5/15。对所有的用户分别执行上述四步,得到各用户在类目中出现的概率值,进而得到所有用户的类目特征模型列表,称之为用户-类目列表。如表I所示,列表中的行表示各用户的标识,列表示各种类目的标识,列表中的数值表示某用户感兴趣的词在某种类目中出现的概率值。
权利要求
1.一种确定推荐词的方法,其特征在于,包括 接收用户发送的包含查询词的搜索请求; 根据预先存储的多个用户使用的词集合,将包含所述查询词的词集合作为候选词集合; 针对候选词集合中的多个候选词,确定候选词与查询词的相关度,以及确定候选词与发送搜索请求的用户使用的词集合中各词的相关度; 将与查询词的相关度和与发送搜索请求的用户使用的词集合中各词的相关度满足设定条件的候选词,作为向发送搜索请求的用户提供的推荐词。
2.如权利要求I所述的方法,其特征在于,用户使用的词集合通过以下方式确定 采集设定时间段内ー用户使用的查询词,并将采集的查询词作为该用户使用的词集合;或 采集设定时间段内一用户浏览的文档,并确定各文档的主题词,将确定的主题词作为该用户使用的词集合;或 采集设定时间段内ー用户使用的查询词以及该用户浏览的文档,将采集的查询词和各文档的主题词作为该用户使用的词集合。
3.如权利要求I所述的方法,其特征在于,候选词与查询词的相关度包括候选词与查询词的词特征相关度和候选词与查询词的类目特征相关度。
4.如权利要求3所述的方法,其特征在于,确定候选词与查询词的词特征相关度,具体包括 根据用户使用的词集合中各词的权重,确定候选词集合中,每个候选词的权重; 根据候选词的权重以及与该候选词在同一词集合中的查询词的权重,确定该候选词与查询词的词特征相关度。
5.如权利要求4所述的方法,其特征在于,通过以下公式确定ー个候选词与查询词的词特征相关度
6.如权利要求3所述的方法,其特征在于,确定候选词与查询词的类目特征相关度,具体包括 确定候选词在预设的各类目中出现的概率值,以及查询词在预设的各类目中出现的概率值; 根据候选词在各类目中出现的概率值和查询词在各类目中出现的概率值,确定候选词与查询词的类目特征相关度。
7.如权利要求6所述的方法,其特征在于,通过以下公式确定ー个候选词与查询词的类目特征相关度
8.如权利要求I所述的方法,其特征在于,候选词与发送搜索请求的用户使用的词集合中各词的相关度包括候选词与发送搜索请求的用户使用的词集合中各词的词特征相关度和候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度。
9.如权利要求8所述的方法,其特征在于,确定候选词与发送搜索请求的用户使用的词集合中各词的词特征相关度,具体包括 根据用户使用的词集合中各词的权重,确定候选词集合中,每个候选词的权重; 根据发送搜索请求的用户使用的词集合中各词的权重,以及候选词的权重,确定该候选词与发送搜索请求的用户使用的词集合中各词的词特征相关度。
10.如权利要求9所述的方法,其特征在于,通过以下公式确定ー个候选词与发送捜索请求的用户使用的词集合中各词的词特征相关度
11.如权利要求8所述的方法,其特征在于,确定候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度,具体包括 确定候选词在预设的各类目中出现的概率值,以及发送搜索请求的用户使用的词集合中各词在预设的各类目中出现的概率值; 根据候选词在各类目中出现的概率值和发送搜索请求的用户使用的词集合中各词在各类目中出现的概率值,确定候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度。
12.如权利要求11所述的方法,其特征在于,通过以下公式确定候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度
13.—种确定推荐词的设备,其特征在于,包括 接收模块,用于接收用户发送的包含查询词的搜索请求; 候选集合确定模块,用于根据预先存储的多个用户使用的词集合,将包含查询词的词集合作为候选词集合; 相关度确定模块,用于针对候选词集合中的多个候选词,确定候选词与查询词的相关度,以及确定候选词与发送搜索请求的用户使用的词集合中各词的相关度; 推荐模块,用于将与查询词的相关度和与发送搜索请求的用户使用的词集合中各词的相关度满足设定条件的候选词,作为向发送搜索请求的用户提供的推荐词。
14.如权利要求13所述的设备,其特征在于,还包括 词集合确定模块,用于采集设定时间段内ー用户使用的查询词,并将采集的查询词作为该用户使用的词集合;或,采集设定时间段内一用户浏览的文档,并确定各文档的主题词,将确定的主题词作为该用户使用的词集合;或,采集设定时间段内ー用户使用的查询词以及该用户浏览的文档,将采集的查询词和各文档的主题词作为该用户使用的词集合。
15.如权利要求13所述的设备,其特征在于,相关度确定模块包括 第一子模块,用于确定候选词与查询词的词特征相关度; 第二子模块,用于确定候选词与查询词的类目特征相关度。
16.如权利要求13所述的设备,其特征在于,相关度确定模块包括 第三子模块,用于确定候选词与发送搜索请求的用户使用的词集合中各词的词特征相关度; 第四子模块,用于确定候选词与发送搜索请求的用户使用的词集合中各词的类目特征相关度。
全文摘要
本申请公开了一种确定推荐词的方法及设备,从词特征的相关度、类目特征的相关度来综合考虑候选词与查询词的相关度以及候选词与用户感兴趣的领域的相关度,进而选择与查询词和用户兴趣所在的领域相关度都相对较高的候选词作为推荐词,使得最终得到的推荐词从词义以及词的类目都与查询词以及用户的兴趣高度相关,在针对不同用户的相同查询词来确定推荐词时,可以有效地区分用户的兴趣所在,为用户确定最能反映用户搜索需求的推荐词;同时,由于在确定推荐词时还考虑到了词类目的相关度,因此,即使查询词有不同领域的多种含义,也能够根据用户感兴趣的领域准确地确定推荐词;本申请还可以有效降低推荐词确定过程的工作量,提高确定推荐词的效率。
文档编号G06F17/30GK102682001SQ201110056648
公开日2012年9月19日 申请日期2011年3月9日 优先权日2011年3月9日
发明者冯炯, 廖剑, 林锋, 黎耀炳 申请人:阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1