CN105574015A - 搜索推荐方法和装置 - Google Patents
搜索推荐方法和装置 Download PDFInfo
- Publication number
- CN105574015A CN105574015A CN201410539869.3A CN201410539869A CN105574015A CN 105574015 A CN105574015 A CN 105574015A CN 201410539869 A CN201410539869 A CN 201410539869A CN 105574015 A CN105574015 A CN 105574015A
- Authority
- CN
- China
- Prior art keywords
- query word
- candidate query
- group
- user
- ratio
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
本申请提出一种搜索推荐方法和装置,该搜索推荐方法包括接收用户输入的查询词;确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。该方法可以满足不同用户的个性化需求,提高用户体验。
Description
技术领域
本申请涉及网络通信技术领域,尤其涉及一种搜索推荐方法和装置。
背景技术
人们可以在互联网上通过搜索获取所需。为了方便用户使用,在用户搜索时,可以根据用户的查询词向用户推荐相关内容。例如,当用户在搜索框中输入查询词后,可以在下拉框中展示与查询词相关的内容,由于推荐通常以下拉方式展示,因此可以称为下拉推荐。
在搜索行业,下拉推荐是一项重要的功能,可以辅助用户输入,帮助用户找到所需。但是,在传统的下拉推荐中,针对不同用户输入的同一内容的下拉推荐结果都是一样的。由于用户的购物习惯、条件都不一样,相同的推荐结果不能很好满足不同用户的需求。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请的一个目的在于提出一种搜索推荐方法,该方法可以满足不同用户的个性化需求,提高用户体验。
本申请的另一个目的在于提出一种搜索推荐装置。
为达到上述目的,本申请第一方面实施例提出的搜索推荐方法,包括:接收用户输入的查询词;确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
本申请第一方面实施例提出的搜索推荐方法,通过确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。
为达到上述目的,本申请第二方面实施例提出的搜索推荐装置,包括:接收模块,用于接收用户输入的查询词;确定模块,用于确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;计算模块,用于确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;展示模块,用于从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
本申请第二方面实施例提出的搜索推荐装置,通过确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。
为达到上述目的,本申请第三方面实施例提出的客户端设备,包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为客户端设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:接收用户输入的查询词;确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
本申请第三方面实施例提出的客户端设备,通过确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是本申请一实施例提出的搜索推荐方法的流程示意图;
图2是本申请另一实施例提出的搜索推荐方法的流程示意图;
图3是本申请实施例中确定每个候选查询词在某指定群组上的个性化分数的流程示意图;
图4是本申请实施例中预先采用离线的方式确定个性化分数的流程示意图;
图5是本申请另一实施例提出的搜索推荐装置的结构示意图;
图6是本申请另一实施例提出的搜索推荐装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。
图1是本申请一实施例提出的搜索推荐方法的流程示意图,该方法包括:
S11:接收用户输入的查询词。
其中,用户可以在搜索框中输入查询词,例如,用户可以在搜索框中输入“自行车”。
S12:确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词。
其中,用户具有不同的属性,这就会使得不同用户在搜索时,特别是电子商务搜索时,对不同候选查询词具有不同的偏好。为了提供个性化服务,可以依据用户的属性可以将用户划分到不同的群组。例如,可以根据用户的性别、年龄或者职业等划分不同的群组。具体的划分群组的依据可以预先设定,例如设定依据性别进行群组划分。
进一步的,群组可以包括多个用户,或者包括一个用户,即后续依据每个用户进行相应推荐,实现为每个用户提供不同的推荐结果。
进一步的,用户所属的群组可以是一个或者至少两个,例如,一个用户所属的群组可以是男性群组,或者,一个用户所属的群组可以是男性群组和青年群组。
用户输入查询词后,该查询词可以由搜索引擎传输给后台系统,后台系统具体可以是指下拉推荐后台系统。下拉推荐后台系统接收到查询词后,可以在数据库中查找与该查询词相关的候选查询词,例如,在数据库中查找以该查询词开头的预设数量的词作为候选查询词,预设数量例如为100个。
其中,数据库是预先建立的,具体可以采用统计的方式建立数据库,例如,由后台人员对用户在搜索引擎上的搜索行为进行统计,将搜索次数较多的词保存在数据库中。或者,也可以采用机器学习的方式建立数据库,例如,用网页相关技术如爬虫技术等从网页上得到用户搜索次数较多的词保存在数据库中。
S13:确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定。
其中,不同群组的用户偏好的候选查询词是不一样的,每个候选查询词在一群组上的个性化分数就可以表征该群组的用户对该候选查询词的偏好程度。由于群组的用户对候选查询词具有不同的偏好,因此,同一个候选查询词在不同的群组上具有不同的个性化分数,同一群组上的不同候选查询词也具有不同的个性化分数。
例如,男性人群的用户如果输入了自行车,由于男性人群的用户自行车爱好者比例高,他们拥有自行车不是为了出行,而是为了骑行这个爱好,所以他们可能不是想找普通的自行车,而是有很大的可能是想找自行车配件,如头盔,码表等。
女性人群的用户如果输入了自行车,那她极有可能想找折叠自行车,或者女式自行车。当然女性人群的用户也可能想找自行车头盔,不过概率相对男性人群用户会小很多。
因此,头盔、码表这类候选查询词在男性群组上将具有较高的个性化分数,而折叠自行车、女士自行车这类候选查询词在女性群组上将具有较高的个性化分数。
例如,当前用户所属的群组是男性群组,后台系统得到的候选查询词包括头盔、码表、折叠自行车、女士自行车等,由于头盔和码表在男性群组上具有较高的个性化分数,因此,在排序时,头盔和码表将位于折叠自行车和女士自行车之前。
具体的计算每个候选查询词在每个群组上的个性化分数可以根据群组的用户对该候选查询词的历史操作确定。例如,在男性群组中,对头盔的点击次数大于对折叠自行车的点击次数,则可以设置在男性群组中头盔的个性化分数比折叠自行车的个性化分数高。当然,个性化分数还可以采用其他方式确定,具体的流程可以参见后续实施例。
进一步的,当用户所属的群组为至少两个时,每个候选查询词在该用户所属的群组上的个性化分数可以对该候选查询词在每个群组上的个性化分数进行线性权重相加后得到,例如,用户所属的群组包括第一群组和第二群组,对于一个候选查询词,其在第一群组上的个性化分数是第一分数,在第二群组上的个性化分数是第二分数,则该候选查询词在用户所属的群组上的个性化分数=第一权重*第一分数+第二权重*第二分数,其中,第一权重和第二权重是预先设定的权重值,且第一权重+第二权重=1。
S14:从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
其中,由于空间限制,在下拉推荐时通常只能设定个数的候选查询词,例如,后台系统可能查询到100个候选查询词,而在前端推荐时,下拉框中可能只能显示10个候选查询词。此时,可以在排序后的候选查询词中选取前面的10个候选查询词进行展示,也就是优先显示个性化分数较高的候选查询词。
本实施例通过确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。
图2是本申请另一实施例提出的搜索推荐方法的流程示意图,该方法包括:
S21;用户在搜索引擎中输入查询词。
其中,用户可以在搜索框中输入查询词,例如,用户可以在搜索框中输入“自行车”。
S22:搜索引擎将查询词发送给后台系统,由后台系统根据该查询词获取设定个数的候选查询词。
用户输入查询词后,该查询词可以由搜索引擎传输给后台系统,后台系统具体可以是指下拉推荐后台系统。下拉推荐后台系统接收到查询词后,可以在数据库中查找与该查询词相关的候选查询词,例如,在数据库中查找以该查询词开头的预设数量的词作为候选查询词,预设数量例如为100个。
其中,数据库是预先建立的,具体可以采用统计的方式建立数据库,例如,由后台人员对用户在搜索引擎上的搜索行为进行统计,将搜索次数较多的词保存在数据库中。或者,也可以采用机器学习的方式建立数据库,例如,用网页相关技术如爬虫技术等从网页上得到用户搜索次数较多的词保存在数据库中。
S23:获取每个候选查询词在每个群组上的个性化分数。
其中,每个候选查询词在每个群组上的个性化分数可以预先采用离线的方式确定。参见图3,可以采用如下方式确定:
S31:依据用户的属性将所有用户划分为不同的群组。
其中,依据的属性可以设定,例如,设定依据的属性分别是性别、年龄和地区进行划分,则可以将用户划分为男性群组、女性群组,青年群组、中老年群组,江浙群组和新疆群组等。
每个用户在同一个属性中只具有一个值,例如,对于地区这一属性,一个用户只能属于一个区域,例如属于江浙群组、山西群组或者新疆群组等,不能既属于江浙群组又属于山西群组等。
每个用户可以具有多个属性,例如,一个用户可以既属于男性群组又属于青年群组等。
每个群组中的区分点也可以设定,例如,可以设定年龄小于某个值的属于青年群组,而年龄超过该值的属于中老年群组。
S32:对应某个群组,根据该群组中用户对每个候选查询词的搜索次数,确定每个候选查询词在该群组上的个性化分数。
具体的,参见图4,S32可以包括:
S321:对应每个候选查询词,获取第一次数和第二次数,所述第一次数是所有群组中的用户对所述候选查询词的搜索次数,所述第二次数是所述群组中的用户对所述候选查询词的搜索次数;
例如,要计算每个候选查询词在男性群组上的个性化分数,假设候选查询词包括第一候选查询词,那么当计算第一候选查询词在男性群组上的个性化分数时,可以得到所有群组的用户,也就是男性群组的每个用户和女性群组的每个用户对第一候选查询词的搜索次数,该搜索次数就是第一次数,还可以得到男性群组的每个用户对第一候选查询词的搜索次数,该搜索次数就是第二次数,这样就可以得到第一次数和第二次数。
S322:根据所述第一次数和所述第二次数,确定第一比值,并根据所述第一比值确定所述候选查询词在所述群组上的个性化分数。
其中,所述根据所述第一次数和所述第二次数,确定第一比值,包括:
将第二次数/第一次数的值,确定为第一比值;或者,
将第二次数/(第一次数+A)的值,确定为第一比值;
其中,/表示比值运算,A是预设的常数。
例如,对于候选查询词q,所有群组的用户对q的搜索次数是pv(q),对于某个群组x,该群组x中所有用户搜索q的次数为pv(x,q),则第一比值score(x,q)=pv(x,q)/pv(q)。实际应用时可以做一些平滑,比如score(x,q)=pv(x,q)/(pv(q)+A),A是个常数,可以是100,1000,根据实际情况来定。
所述根据所述第一比值确定所述候选查询词在所述群组上的个性化分数,包括:
将所述第一比值确定为所述候选查询词在所述群组上的个性化分数;
例如,将上述的score(x,q)确定为查询词q在群组x上的个性化分数。
或者,
根据所述第一比值确定第二比值,将所述第二比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,对所述第二比值进行归一化处理,将归一化处理后的第二比值确定为所述候选查询词在所述群组上的个性化分数。
进一步的,所述根据所述第一比值确定第二比值,包括:
将第一比值/X的值确定为第二比值,其中,X是所述群组中的所有用户搜索所有候选查询词的总次数与所有群组中的所有用户搜索所述候选查询词的总次数的比值。
其中,对于2个人群,一个非常小,一个非常大,那么非常大的群组的第一比值score(x,q)明显会比非常小的群组的第一比值大很多,大的群组中不同用户的区分度也会大很多。为了提高公平性,可以根据群组的用户数量对第一比值score(x,q)进行一定调整。
例如,首先,根据第一比值score(x,q)得到第二比值score_adv(x,q)=score(x,q)/avg(x,Q),其中avg(x,Q)为群组x中所有用户搜索所有查询词的总次数与系统所有用户搜索所有查询词的总次数的比值,这个值体现了人群x在全局上的搜索占比,比如江浙群组用户这个值可能是0.2,新疆群组用户这个值可能是0.01,而score(x,q)是群组x在局部范围q上的搜索占比。
其次,可以将第二比值score_adv(x,q)确定为候选查询词q在群组x上的个性化分数。或者,
进一步的,第二比值score_adv(x,q)如果大于1则表示群组x在q上的搜索占比大于全局平均占比,那说明群组x对q更加偏好一些,如果这个比值很大,那说明群组x对q已经是非常喜欢了。考虑到score_adv(x,q)是0-n的数,为方便使用,可以将其归一到0-1的范围。即,对第二比值score_adv(x,q)进行归一化处理,将归一化处理后的第二比值score_adv(x,q)确定为候选查询词q在群组x上的个性化分数。
可选的,上述以根据搜索次数确定个性化分数,也可以根据群组中用户对每个候选查询词的点击次数,确定每个候选查询词在所述群组上的个性化分数。具体可以包括:
对应每个候选查询词,获取第三次数和第四次数,所述第三次数是所述候选查询词作为推荐结果展示给所述群组中的用户的展示次数,所述第四次数是所述群组中的用户对所述候选查询词的点击次数;
将所述第四次数与所述第三次数的比值,确定为所述候选查询词在所述群组上的个性化分数。
进一步的,为了提高计算效率,可以在分布式平台上完成上述的离线计算。
S24:获取该用户的信息。
其中,当用户是登录用户时,获取的用户的信息可以是该用户的标识(ID),例如用户账号。或者,也可以根据嵌入到浏览器中的cookie获取用户的信息,例如获取用户的历史浏览行为。
S25:根据该用户的信息确定该用户所属的群组。
其中,当获取到用户的账号时,可以根据该账号的注册信息,例如注册时的性别、年龄或职业等确定用户所属的群组。或者,根据用户的历史浏览行为确定用户所属的群组,例如,用户的历史浏览行为表明超过设定比例的行为都是浏览男性感兴趣的内容时,可以确定用户属于男性群组。
可以理解的是,S21-S23与S24-S25无时序限制关系。
S26:根据每个候选查询词在每个群组上的个性化分数,查找出每个候选查询词在该用户所属的群组上的个性化分数。
例如,对于一个候选查询词,可以获取到在第一群组、第二群组和第三群组上的个性化分数,假设用户所属的群组是第一群组,那么可以从该三个个性化分数中获取该候选查询词在第一群组上的个性化分数。
进一步的,当用户所属的群组是至少两个时,举例如下:
用户所属的群组包括第一群组和第二群组,对于一个候选查询词,其在第一群组上的个性化分数是第一分数,在第二群组上的个性化分数是第二分数,则该候选查询词在用户所属的群组上的个性化分数=第一权重*第一分数+第二权重*第二分数,其中,第一权重和第二权重是预先设定的权重值,且第一权重+第二权重=1。
当用户所属的群组在两个以上时,依此类推。
S27:根据每个候选查询词在用户所属的群组上的个性化分数,对每个候选查询词进行排序,并依序选取设定个数的候选查询词推荐给用户。
其中,由于空间限制,在下拉推荐时通常只能设定个数的候选查询词,例如,后台系统可能查询到100个候选查询词,而在前端推荐时,下拉框中可能只能显示10个候选查询词。此时,可以在排序后的候选查询词中选取前面的10个候选查询词进行展示,也就是优先显示个性化分数较高的候选查询词。
可以理解的是,本实施例的上述步骤可以采用在线方式实现,具体可以采用C++实现。
本实施例确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。另外,本实施例通过提供不同计算方式得到每个候选查询词在每个群组上的个性化分数,可以根据实际情况选择相应的计算方式,以满足不同场合需求。本实施例通过采用分布式平台进行离线计算,可以提高数据计算效率。本实施例通过采用C++实现在线计算,可以提高展示性能。
图5是本申请另一实施例提出的搜索推荐装置的结构示意图,该装置50包括接收模块51、确定模块52、计算模块53以及展示模块54。
接收模块51用于接收用户输入的查询词。
其中,用户可以在搜索框中输入查询词,例如,用户可以在搜索框中输入“自行车”。
确定模块52用于确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词。
一个实施例中,所述确定模块52具体用于:
根据所述用户的登录信息,从预先划分的群组中,确定所述用户所属的群组。
其中,用户具有不同的属性,这就会使得不同用户在搜索时,特别是电子商务搜索时,对不同候选查询词具有不同的偏好。为了提供个性化服务,可以依据用户的属性可以将用户划分到不同的群组。例如,可以根据用户的性别、年龄或者职业等划分不同的群组。具体的划分群组的依据可以预先设定,例如设定依据性别进行群组划分。
进一步的,群组可以包括多个用户,或者包括一个用户,即后续依据每个用户进行相应推荐,实现为每个用户提供不同的推荐结果。
进一步的,用户所属的群组可以是一个或者至少两个,例如,一个用户所属的群组可以是男性群组,或者,一个用户所属的群组可以是男性群组和青年群组。
另一个实施例中,所述确定模块52具体用于:从预先建立的数据库中,获取设定个数的以所述查询词开头的候选查询词。
用户输入查询词后,该查询词可以由搜索引擎传输给后台系统,后台系统具体可以是指下拉推荐后台系统。下拉推荐后台系统接收到查询词后,可以在数据库中查找与该查询词相关的候选查询词,例如,在数据库中查找以该查询词开头的预设数量的词作为候选查询词,预设数量例如为100个。
参见图6,另一个实施例中,该装置50还包括建立模块55,所述建立模块55用于:
采用统计的方式建立所述数据库;或者,
采用机器学习的方式建立所述数据库。
其中,数据库是预先建立的,具体可以采用统计的方式建立数据库,例如,由后台人员对用户在搜索引擎上的搜索行为进行统计,将搜索次数较多的词保存在数据库中。或者,也可以采用机器学习的方式建立数据库,例如,用网页相关技术如爬虫技术等从网页上得到用户搜索次数较多的词保存在数据库中。
计算模块53用于确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定。
参见图6,一个实施例中,所述计算模块53包括第一单元531和第二单元532:
所述第一单元531具体用于:根据群组中用户对每个候选查询词的搜索次数,确定每个候选查询词在所述群组上的个性化分数;或者,
所述第二单元532具体用于:根据群组中用户对每个候选查询词的点击次数,确定每个候选查询词在所述群组上的个性化分数。
其中,不同群组的用户偏好的候选查询词是不一样的,每个候选查询词在一群组上的个性化分数就可以表征该群组的用户对该候选查询词的偏好程度。由于群组的用户对候选查询词具有不同的偏好,因此,同一个候选查询词在不同的群组上具有不同的个性化分数,同一群组上的不同候选查询词也具有不同的个性化分数。
例如,男性人群的用户如果输入了自行车,由于男性人群的用户自行车爱好者比例高,他们拥有自行车不是为了出行,而是为了骑行这个爱好,所以他们可能不是想找普通的自行车,而是有很大的可能是想找自行车配件,如头盔,码表等。
女性人群的用户如果输入了自行车,那她极有可能想找折叠自行车,或者女式自行车。当然女性人群的用户也可能想找自行车头盔,不过概率相对男性人群用户会小很多。
因此,头盔、码表这类候选查询词在男性群组上将具有较高的个性化分数,而折叠自行车、女士自行车这类候选查询词在女性群组上将具有较高的个性化分数。
例如,当前用户所属的群组是男性群组,后台系统得到的候选查询词包括头盔、码表、折叠自行车、女士自行车等,由于头盔和码表在男性群组上具有较高的个性化分数,因此,在排序时,头盔和码表将位于折叠自行车和女士自行车之前。
一个实施例中,所述第一单元531具体用于:
对应每个候选查询词,获取第一次数和第二次数,所述第一次数是所有群组中的用户对所述候选查询词的搜索次数,所述第二次数是所述群组中的用户对所述候选查询词的搜索次数;
根据所述第一次数和所述第二次数,确定第一比值,并根据所述第一比值确定所述候选查询词在所述群组上的个性化分数。
另一个实施例中,所述第一单元531进一步具体用于:
将所述第一比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,将所述第二比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,对所述第二比值进行归一化处理,将归一化处理后的第二比值确定为所述候选查询词在所述群组上的个性化分数。
另一个实施例中,所述第一单元531进一步具体用于:
将第二次数/第一次数的值,确定为第一比值;或者,
将第二次数/(第一次数+A)的值,确定为第一比值;
其中,/表示比值运算,A是预设的常数。
另一个实施例中,所述第一单元531进一步具体用于:
将第一比值/X的值确定为第二比值,其中,X是所述群组中的所有用户搜索所有候选查询词的总次数与所有群组中的所有用户搜索所述候选查询词的总次数的比值。
另一个实施例中,所述第二单元532具体用于:
对应每个候选查询词,获取第三次数和第四次数,所述第三次数是所述候选查询词作为推荐结果展示给所述群组中的用户的展示次数,所述第四次数是所述群组中的用户对所述候选查询词的点击次数;
将所述第四次数与所述第三次数的比值,确定为所述候选查询词在所述群组上的个性化分数。
具体的计算每个候选查询词在每个群组上的个性化分数可以根据群组的用户对该候选查询词的历史操作确定,例如,在男性群组中,对头盔的点击次数大于对折叠自行车的点击次数,则可以设置在男性群组中头盔的个性化分数比折叠自行车的个性化分数高。当然,个性化分数还可以采用其他方式确定,具体的流程可以参见方法实施例。
进一步的,当用户所属的群组为至少两个时,每个候选查询词在该用户所属的群组上的个性化分数可以对该候选查询词在每个群组上的个性化分数进行线性权重相加后得到,例如,用户所属的群组包括第一群组和第二群组,对于一个候选查询词,其在第一群组上的个性化分数是第一分数,在第二群组上的个性化分数是第二分数,则该候选查询词在用户所属的群组上的个性化分数=第一权重*第一分数+第二权重*第二分数,其中,第一权重和第二权重是预先设定的权重值,且第一权重+第二权重=1。
展示模块54用于从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
其中,由于空间限制,在下拉推荐时通常只能设定个数的候选查询词,例如,后台系统可能查询到100个候选查询词,而在前端推荐时,下拉框中可能只能显示10个候选查询词。此时,可以在排序后的候选查询词中选取前面的10个候选查询词进行展示,也就是优先显示个性化分数较高的候选查询词。
本实施例通过确定用户所属的群组,并计算每个候选查询词在该群组上的个性化分数,以及根据该个性化分数对候选查询词进行排序和展示,可以优先展示在用户所属的群组上个性化分数较高的候选查询词,实现为不同用户推荐不同的候选查询词,满足用户的个性化需求,提高用户体验。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (20)
1.一种搜索推荐方法,其特征在于,包括:
接收用户输入的查询词;
确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;
确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;
从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
2.根据权利要求1所述的方法,其特征在于,所述确定所述用户所属的群组,包括:
根据所述用户的登录信息,从预先划分的群组中,确定所述用户所属的群组。
3.根据权利要求1所述的方法,其特征在于,所述获取与所述查询词对应的候选查询词,包括:
从预先建立的数据库中,获取设定个数的以所述查询词开头的候选查询词。
4.根据权利要求3所述的方法,其特征在于,还包括:
采用统计的方式建立所述数据库;或者,
采用机器学习的方式建立所述数据库。
5.根据权利要求1所述的方法,其特征在于,所述确定每个候选查询词在所述群组上的个性化分数,包括:
根据群组中用户对每个候选查询词的搜索次数,确定每个候选查询词在所述群组上的个性化分数;或者,
根据群组中用户对每个候选查询词的点击次数,确定每个候选查询词在所述群组上的个性化分数。
6.根据权利要求5所述的方法,其特征在于,所述根据群组中用户对每个候选查询词的搜索次数,确定每个候选查询词在所述群组上的个性化分数,包括:
对应每个候选查询词,获取第一次数和第二次数,所述第一次数是所有群组中的用户对所述候选查询词的搜索次数,所述第二次数是所述群组中的用户对所述候选查询词的搜索次数;
根据所述第一次数和所述第二次数,确定第一比值,并根据所述第一比值确定所述候选查询词在所述群组上的个性化分数。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一比值确定所述候选查询词在所述群组上的个性化分数,包括:
将所述第一比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,将所述第二比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,对所述第二比值进行归一化处理,将归一化处理后的第二比值确定为所述候选查询词在所述群组上的个性化分数。
8.根据权利要求6或7所述的方法,其特征在于,所述根据所述第一次数和所述第二次数,确定第一比值,包括:
将第二次数/第一次数的值,确定为第一比值;或者,
将第二次数/(第一次数+A)的值,确定为第一比值;
其中,/表示比值运算,A是预设的常数。
9.根据权利要求7所述的方法,其特征在于,所述根据所述第一比值确定第二比值,包括:
将第一比值/X的值确定为第二比值,其中,X是所述群组中的所有用户搜索所有候选查询词的总次数与所有群组中的所有用户搜索所述候选查询词的总次数的比值。
10.根据权利要求5所述的方法,其特征在于,所述根据群组中用户对每个候选查询词的点击次数,确定每个候选查询词在所述群组上的个性化分数,包括:
对应每个候选查询词,获取第三次数和第四次数,所述第三次数是所述候选查询词作为推荐结果展示给所述群组中的用户的展示次数,所述第四次数是所述群组中的用户对所述候选查询词的点击次数;
将所述第四次数与所述第三次数的比值,确定为所述候选查询词在所述群组上的个性化分数。
11.一种搜索推荐装置,其特征在于,包括:
接收模块,用于接收用户输入的查询词;
确定模块,用于确定所述用户所属的群组,所述群组包括至少一个用户,并获取与所述查询词对应的候选查询词;
计算模块,用于确定每个候选查询词在所述群组上的个性化分数,并根据所述个性化分数对所述候选查询词进行排序,得到排序后的候选查询词,每个候选查询词在所述群组上的所述个性化分数根据所述群组的用户对该候选查询词的历史操作确定;
展示模块,用于从所述排序后的候选查询词中选择设定个数的候选查询词作为推荐结果进行展示。
12.根据权利要求11所述的装置,其特征在于,所述确定模块具体用于:
根据所述用户的登录信息,从预先划分的群组中,确定所述用户所属的群组。
13.根据权利要求11所述的装置,其特征在于,所述确定模块具体用于:从预先建立的数据库中,获取设定个数的以所述查询词开头的候选查询词。
14.根据权利要求13所述的装置,其特征在于,还包括建立模块,所述建立模块用于:
采用统计的方式建立所述数据库;或者,
采用机器学习的方式建立所述数据库。
15.根据权利要求11所述的装置,其特征在于,所述计算模块包括:
第一单元,用于根据群组中用户对每个候选查询词的搜索次数,确定每个候选查询词在所述群组上的个性化分数;或者,
第二单元,用于根据群组中用户对每个候选查询词的点击次数,确定每个候选查询词在所述群组上的个性化分数。
16.根据权利要求15所述的装置,其特征在于,所述第一单元具体用于:
对应每个候选查询词,获取第一次数和第二次数,所述第一次数是所有群组中的用户对所述候选查询词的搜索次数,所述第二次数是所述群组中的用户对所述候选查询词的搜索次数;
根据所述第一次数和所述第二次数,确定第一比值,并根据所述第一比值确定所述候选查询词在所述群组上的个性化分数。
17.根据权利要求16所述的装置,其特征在于,所述第一单元进一步具体用于:
将所述第一比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,将所述第二比值确定为所述候选查询词在所述群组上的个性化分数;或者,
根据所述第一比值确定第二比值,对所述第二比值进行归一化处理,将归一化处理后的第二比值确定为所述候选查询词在所述群组上的个性化分数。
18.根据权利要求16或17所述的装置,其特征在于,所述第一单元进一步具体用于:
将第二次数/第一次数的值,确定为第一比值;或者,
将第二次数/(第一次数+A)的值,确定为第一比值;
其中,/表示比值运算,A是预设的常数。
19.根据权利要求17所述的装置,其特征在于,所述第一单元进一步具体用于:
将第一比值/X的值确定为第二比值,其中,X是所述群组中的所有用户搜索所有候选查询词的总次数与所有群组中的所有用户搜索所述候选查询词的总次数的比值。
20.根据权利要求15所述的装置,其特征在于,所述第二单元具体用于:
对应每个候选查询词,获取第三次数和第四次数,所述第三次数是所述候选查询词作为推荐结果展示给所述群组中的用户的展示次数,所述第四次数是所述群组中的用户对所述候选查询词的点击次数;
将所述第四次数与所述第三次数的比值,确定为所述候选查询词在所述群组上的个性化分数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410539869.3A CN105574015A (zh) | 2014-10-13 | 2014-10-13 | 搜索推荐方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410539869.3A CN105574015A (zh) | 2014-10-13 | 2014-10-13 | 搜索推荐方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105574015A true CN105574015A (zh) | 2016-05-11 |
Family
ID=55884161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410539869.3A Pending CN105574015A (zh) | 2014-10-13 | 2014-10-13 | 搜索推荐方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105574015A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294868A (zh) * | 2016-08-23 | 2017-01-04 | 达而观信息科技(上海)有限公司 | 一种基于搜索引擎的个性化推荐方法及系统 |
CN108090782A (zh) * | 2016-11-21 | 2018-05-29 | 华为技术有限公司 | 一种网游推荐方法及服务器 |
CN108197284A (zh) * | 2018-01-12 | 2018-06-22 | 北京百度网讯科技有限公司 | 搜索处理方法及装置 |
CN111753175A (zh) * | 2020-06-28 | 2020-10-09 | 恩亿科(北京)数据科技有限公司 | 一种词条的展示方法、展示装置及可读存储介质 |
CN113064981A (zh) * | 2021-03-26 | 2021-07-02 | 北京达佳互联信息技术有限公司 | 群组头像生成方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101107852A (zh) * | 2005-01-21 | 2008-01-16 | 皇家飞利浦电子股份有限公司 | 一种获取一个用户群共同兴趣度的方法及装置 |
CN101408897A (zh) * | 2008-10-10 | 2009-04-15 | 清华大学 | 一种基于协作过滤的个性化查询扩展方法 |
CN102332006A (zh) * | 2011-08-03 | 2012-01-25 | 百度在线网络技术(北京)有限公司 | 一种信息推送控制方法及装置 |
US20120173542A1 (en) * | 2010-12-30 | 2012-07-05 | Nhn Corporation | System and method for determining ranking of keywords for each user group |
CN102567326A (zh) * | 2010-12-14 | 2012-07-11 | 中国移动通信集团湖南有限公司 | 一种信息搜索、及信息搜索排序装置和方法 |
CN103729351A (zh) * | 2012-10-10 | 2014-04-16 | 阿里巴巴集团控股有限公司 | 查询词推荐方法及装置 |
-
2014
- 2014-10-13 CN CN201410539869.3A patent/CN105574015A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101107852A (zh) * | 2005-01-21 | 2008-01-16 | 皇家飞利浦电子股份有限公司 | 一种获取一个用户群共同兴趣度的方法及装置 |
CN101408897A (zh) * | 2008-10-10 | 2009-04-15 | 清华大学 | 一种基于协作过滤的个性化查询扩展方法 |
CN102567326A (zh) * | 2010-12-14 | 2012-07-11 | 中国移动通信集团湖南有限公司 | 一种信息搜索、及信息搜索排序装置和方法 |
US20120173542A1 (en) * | 2010-12-30 | 2012-07-05 | Nhn Corporation | System and method for determining ranking of keywords for each user group |
CN102332006A (zh) * | 2011-08-03 | 2012-01-25 | 百度在线网络技术(北京)有限公司 | 一种信息推送控制方法及装置 |
CN103729351A (zh) * | 2012-10-10 | 2014-04-16 | 阿里巴巴集团控股有限公司 | 查询词推荐方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106294868A (zh) * | 2016-08-23 | 2017-01-04 | 达而观信息科技(上海)有限公司 | 一种基于搜索引擎的个性化推荐方法及系统 |
CN108090782A (zh) * | 2016-11-21 | 2018-05-29 | 华为技术有限公司 | 一种网游推荐方法及服务器 |
CN108090782B (zh) * | 2016-11-21 | 2021-09-14 | 华为技术有限公司 | 一种网游推荐方法及服务器 |
CN108197284A (zh) * | 2018-01-12 | 2018-06-22 | 北京百度网讯科技有限公司 | 搜索处理方法及装置 |
CN108197284B (zh) * | 2018-01-12 | 2022-01-25 | 北京百度网讯科技有限公司 | 搜索处理方法及装置 |
CN111753175A (zh) * | 2020-06-28 | 2020-10-09 | 恩亿科(北京)数据科技有限公司 | 一种词条的展示方法、展示装置及可读存储介质 |
CN113064981A (zh) * | 2021-03-26 | 2021-07-02 | 北京达佳互联信息技术有限公司 | 群组头像生成方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102301899B1 (ko) | 정보 검색 방법, 장치 및 시스템 | |
US10409821B2 (en) | Search result ranking using machine learning | |
US10452662B2 (en) | Determining search result rankings based on trust level values associated with sellers | |
CN102208086B (zh) | 面向领域的个性化智能推荐系统及实现方法 | |
US20190018900A1 (en) | Method and Apparatus for Displaying Search Results | |
US11727459B2 (en) | Search query-based replacement part interface | |
JP2020523714A (ja) | 推奨情報の取得方法及び装置、電子機器 | |
CN103678518B (zh) | 一种推荐列表调整方法和装置 | |
CN112307344B (zh) | 对象推荐模型、对象推荐方法、装置及电子设备 | |
CN110119474A (zh) | 推荐模型训练方法、基于推荐模型的预测方法及装置 | |
CN105574015A (zh) | 搜索推荐方法和装置 | |
CN104090963A (zh) | 查询信息推荐方法和装置 | |
CN103729359A (zh) | 一种推荐搜索词的方法及系统 | |
CN106447419B (zh) | 基于特征选择的拜访者标识 | |
CN106062743A (zh) | 用于关键字建议的系统和方法 | |
CN107274242A (zh) | 一种基于关联分析算法的商品推荐方法 | |
CN108460082A (zh) | 一种推荐方法及装置,电子设备 | |
CN106610970A (zh) | 基于协同过滤的内容推荐系统与方法 | |
CN108153791A (zh) | 一种资源推荐方法和相关装置 | |
US10963916B2 (en) | Systems and methods for assessing advertisement | |
US20220222728A1 (en) | Systems and methods for providing personalized recommendations | |
KR20160149289A (ko) | 검색 추천 방법 및 장치 | |
KR20200011915A (ko) | 모의 사용자를 통한 통신 | |
CN104123321B (zh) | 一种确定推荐图片的方法及装置 | |
US11756076B2 (en) | Systems and methods for providing sponsored recommendations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160511 |