一种商品推荐方法、装置、设备及存储介质与流程

文档序号:32667469发布日期:2022-12-24 01:23阅读:26来源:国知局
一种商品推荐方法、装置、设备及存储介质与流程

1.本发明涉及计算机技术领域,特别涉及一种商品推荐方法、装置、设备及存储介质。


背景技术:

2.传统ucb(the-upper-confidence-bound-algorithm,置信区间上界算法)算法在进行商品排序的时候,对于用户本身的行为不特别关注,仅局限于全局的用户对商品的行为,这往往使得长尾数据的分布变得越来越明显,不利于系统的长期运行。现在也有一些算法进行了改进,比如linucb等,虽然解决了ucb不关注上下文(用户的个性化行为)的问题,但是又需要针对每个用户和每个商品来维护一个巨大的矩阵计算,而现有的推荐系统item(项目)量动辄百万千万,很难去维护这样的计算量,所以在使用的时候一般是挑选部分商品来进行在线的计算,依次来缓解计算上的压力,这样一来再计算时无法覆盖全部的数据。


技术实现要素:

3.有鉴于此,本发明的目的在于提供一种商品推荐方法、装置、设备和存储介质,能够提高分值计算的准确性以及商品推荐的准确率。其具体方案如下:
4.第一方面,本技术公开了一种商品推荐方法,包括:
5.获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数;
6.基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;
7.基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。
8.可选的,所述获取目标用户的目标数据,包括:
9.获取目标用户的离线数据与实时数据;所述离线数据与所述实时数据为所述目标用户执行目标操作后得到的总数据;
10.将所述离线数据与所述实时数据存储至预设存储区域。
11.可选的,所述基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值之前,还包括:
12.根据预设分值设定规则为所述目标用户的每个所述目标操作设定对应的操作分值。
13.可选的,所述基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值,包括:
14.从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品;
15.从获取到的所述目标用户的所述目标数据中提取针对所述当前计算商品的数据,以得到当前商品数据;
16.确定与所述当前商品数据对应的当前操作,并获取每个所述当前操作对应的所述操作分值;
17.基于所述当前商品数据与所述操作分值确定所述当前计算商品的当前分值;
18.基于所述当前分值、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值。
19.可选的,所述基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值之前,还包括:
20.获取所述当前计算商品面向所述目标用户的曝光次数,以得到当前曝光次数;
21.获取所述当前计算商品面向全部用户的所述曝光次数,以得到所述当前计算商品的曝光总次数;
22.基于所述当前曝光次数与所述曝光总次数确定所述当前计算商品面向所述目标用户的曝光率。
23.可选的,所述基于所述当前分值、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值,包括:
24.基于所述当前分值、所述曝光率、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值。
25.可选的,所述基于预设参数获取方法获取目标调和参数,包括:
26.通过abtest评测获取目标调和参数;所述目标调和参数包含第一调和参数和第二调和参数。
27.第二方面,本技术公开了一种商品推荐装置,包括:
28.数据获取模块,用于获取目标用户的目标数据;
29.参数确定模块,用于基于预设参数获取方法获取目标调和参数;
30.分值计算模块,用于基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;
31.商品推荐模块,用于基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。
32.第三方面,本技术公开了一种电子设备,包括:
33.存储器,用于保存计算机程序;
34.处理器,用于执行所述计算机程序,以实现如前述公开的商品推荐方法的步骤。
35.第四方面,本技术公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如前述公开的商品推荐方法。
36.可见,本技术提供了一种商品推荐方法,包括:获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数;基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。由此可见,本技术通过在预设分值计算公式中添加目标调和参数,根据不同的情况选择不同的目标调和参数,从而调节预设分值计算公式中每一部分的权重,再根据计算得到的最终分值确定向用户推荐的目标商品,提高了分值计算的准确性以及商品推荐的准确率。
附图说明
37.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
38.图1为本技术公开的一种商品推荐方法流程图;
39.图2为本技术公开的一种具体的商品推荐方法流程图;
40.图3为本技术提供的商品推荐装置结构示意图;
41.图4为本技术提供的一种电子设备结构图。
具体实施方式
42.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
43.目前,传统ucb算法在进行商品排序的时候,对于用户本身的行为不特别关注,仅局限于全局的用户对商品的行为,使得长尾数据的分布变得越来越明显,不利于系统的长期运行。现在的一些技术虽然解决了ucb不关注上下文的问题,但是又需要针对每个用户和每个商品来维护一个巨大的矩阵计算,而现有的推荐系统item(项目)量动辄百万千万,很难去维护这样的计算量,所以在使用的时候一般是挑选部分商品来进行在线的计算,依次来缓解计算上的压力,这样一来再计算时无法覆盖全部的数据。为此,本技术提供了一种商品推荐方法,能够提高分值计算的准确性以及商品推荐的准确率。
44.本发明实施例公开了一种商品推荐方法,参见图1所示,该方法包括:
45.步骤s11:获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数。
46.本实施例中,获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数。具体的,获取目标用户的离线数据与实时数据;所述离线数据与所述实时数据为所述目标用户执行目标操作后得到的总数据,并将所述离线数据与所述实时数据存储至预设存储区域。通过abtest评测获取目标调和参数;所述目标调和参数包含第一调和参数和第二调和参数。可以理解的是,获取用户计算分值当天的实时数据,以及计算分值当天前预设时间段内的离线数据。其中,离线数据包含用户的个性化行为,例如对用户的点击、曝光、加购、购买等行为的次数进行统计落库,实时数据是对用户实时的行为进行统计落库。
47.步骤s12:基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值。
48.本实施例中,获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数之后,基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值。可以理解的是,现有的推荐分值计算公式如下:
49.50.其中表示item的平均reward(得分),右边分母表示item j的曝光次数,分子表示总的曝光次数,因此现有ucb算法不能很好的关注用户的个性化行为,导致长尾现象和其相关改进算法不能对全部的商品全覆盖的问题。
51.进一步的,本方案通过设置目标调和参数,使得全部的商品都有可能参与计算,并对现有ucb算法进行改进,得到新的体现用户的个性化的预设分值计算公式,从而通过目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值。
52.步骤s13:基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。
53.本实施例中,基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值之后,基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。可以理解的是,在推荐商品时可以推荐任意自定义数量的商品,并且根据计算得到的每个商品的数值结合推荐规则,从多个待推荐商品中确定目标商品。
54.本方案是一种基于个性化ucb的在线推荐算法,具体是属于推荐算法中的在线排序部分,通过对传统的ucb算法进行改进,使得其可以关注用户的个性化行为,同时也可以覆盖全量的商品数据,旨在通过用户的实时操作反馈来为用户提供更好的使用体验。
55.可见,本技术提供了一种商品推荐方法,包括:获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数;基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。由此可见,本技术通过在预设分值计算公式中添加目标调和参数,根据不同的情况选择不同的目标调和参数,从而调节预设分值计算公式中每一部分的权重,再根据计算得到的最终分值确定向用户推荐的目标商品,提高了分值计算的准确性以及商品推荐的准确率。
56.参见图2所示,本发明实施例公开了一种商品推荐方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。
57.步骤s21:获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数。
58.本实施例中,获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数。通过abtest评测获取目标调和参数;所述目标调和参数包含第一调和参数和第二调和参数,例如将a参数确定为第一调和参数并将b参数确定为第二调和参数,其中a参数与b参数为对应的一组调和参数。
59.步骤s22:根据预设分值设定规则为所述目标用户的每个所述目标操作设定对应的操作分值。
60.本实施例中,基于预设参数获取方法获取目标调和参数之后,根据预设分值设定规则为所述目标用户的每个所述目标操作设定对应的操作分值。可以理解的是,在计算具体商品的推荐分值之前,需要提前设置针对该商品的每个操作对应的操作分值,例如点击
商品记1分、加购商品记2分,近一周内购买过的商品的操作不参与计算(记0分)。其中,近一周内购买过的商品的操作不参与计算为具体例子,该操作的分值根据实际情况自定义,在本方案中默认用户刚买过该商品则不会再次购买,因此设置为近一周内购买过的商品的操作不参与计算。
61.步骤s23:从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品。
62.本实施例中,根据预设分值设定规则为所述目标用户的每个所述目标操作设定对应的操作分值之后,从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品。可以理解的是,为了提高用户的个性化,因此在从与所述目标用户存在关联关系的商品集合中确定出当前计算商品,以便确定用户针对所述当前计算商品的目标数据。
63.步骤s24:确定所述当前计算商品面向所述目标用户的曝光率。
64.本实施例中,从与所述目标用户存在关联关系的商品集合中选择一个商品,得到当前计算商品之后,确定所述当前计算商品面向所述目标用户的曝光率。具体的,获取所述当前计算商品面向所述目标用户的曝光次数,以得到当前曝光次数;获取所述当前计算商品面向全部用户的所述曝光次数,以得到所述当前计算商品的曝光总次数;基于所述当前曝光次数与所述曝光总次数确定所述当前计算商品面向所述目标用户的曝光率。
65.步骤s25:确定所述当前计算商品面向所述目标用户的当前分值。
66.本实施例中,确定所述当前计算商品面向所述目标用户的曝光率之后,确定所述当前计算商品面向所述目标用户的当前分值。具体的,从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品;从获取到的所述目标用户的所述目标数据中提取针对所述当前计算商品的数据,以得到当前商品数据;确定与所述当前商品数据对应的当前操作,并获取每个所述当前操作对应的所述操作分值;基于所述当前商品数据与所述操作分值确定所述当前计算商品的当前分值。
67.步骤s26:基于所述当前分值、所述曝光率、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值。
68.本实施例中,确定所述当前计算商品面向所述目标用户的当前分值之后,基于所述当前分值、所述曝光率、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值。具体的,所述预设分值计算公式如下:
[0069][0070]
其中,a与b为调和参数,用于平衡左边x
u,j
的reward以及右边的不确定性。可以理解的是,左侧的x
u,j
为用户u关于item j的reward,右侧中,分母为item j曝光给用户u的次数,分子为item j的总曝光次数。
[0071]
通过将现有的ucb公式的左侧reward修正为用户级别的reward来体现用户的个性化;将现有的ucb公式的右侧的不确定性修正为用户级别的不确定性;
[0072]
通过调和参数使得全部的商品都有可能参与计算,充分的利用用户的个性化行为数据,同时给予所有商品曝光的机会。例如通过真实的数据评测,ctcvr(成交述目)提升5%,即表明商品推荐的准确性提高了。
[0073]
步骤s27:基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。
[0074]
关于上述步骤s27的具体内容可以参考前述实施例中公开的相应内容,在此不再进行赘述。
[0075]
可见,本技术实施例通过获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数;根据预设分值设定规则为所述目标用户的每个所述目标操作设定对应的操作分值;从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品;确定所述当前计算商品面向所述目标用户的曝光率;确定所述当前计算商品面向所述目标用户的当前分值;
[0076]
基于所述当前分值、所述曝光率、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值;基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户,提高了分值计算的准确性以及商品推荐的准确率。
[0077]
参见图3所示,本技术实施例还相应公开了一种商品推荐装置,包括:
[0078]
数据获取模块11,用于获取目标用户的目标数据;
[0079]
参数确定模块12,用于基于预设参数获取方法获取目标调和参数;
[0080]
分值计算模块13,用于基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;
[0081]
商品推荐模块14,用于基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。
[0082]
可见,本技术包括:获取目标用户的目标数据,并基于预设参数获取方法获取目标调和参数;基于所述目标数据、所述目标调和参数以及预设分值计算公式确定与所述目标用户对应的商品的推荐分值;基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品,并将所述目标商品推荐至所述目标用户。由此可见,本技术通过在预设分值计算公式中添加目标调和参数,根据不同的情况选择不同的目标调和参数,从而调节预设分值计算公式中每一部分的权重,再根据计算得到的最终分值确定向用户推荐的目标商品,提高了分值计算的准确性以及商品推荐的准确率。
[0083]
在一些具体实施例中,所述数据获取模块11,具体包括:
[0084]
实时数据获取单元,用于获取目标用户的离线数据与实时数据;所述离线数据与所述实时数据为所述目标用户执行目标操作后得到的总数据;
[0085]
数据存储单元,用于将所述离线数据与所述实时数据存储至预设存储区域。
[0086]
在一些具体实施例中,所述参数确定模块12,具体包括:
[0087]
目标调和参数获取单元,用于通过abtest评测获取目标调和参数;所述目标调和参数包含第一调和参数和第二调和参数。
[0088]
在一些具体实施例中,所述分值计算模块13,具体包括:
[0089]
操作分值设置单元,用于根据预设分值设定规则为所述目标用户的每个所述目标
操作设定对应的操作分值;
[0090]
当前曝光次数确定单元,用于获取所述当前计算商品面向所述目标用户的曝光次数,以得到当前曝光次数;
[0091]
曝光总次数确定单元,用于获取所述当前计算商品面向全部用户的所述曝光次数,以得到所述当前计算商品的曝光总次数;
[0092]
曝光率计算单元,用于基于所述当前曝光次数与所述曝光总次数确定所述当前计算商品面向所述目标用户的曝光率;
[0093]
当前计算商品确定单元,用于从与所述目标用户存在关联关系的商品集合中选择一个商品,以得到当前计算商品;
[0094]
当前商品数据提取单元,用于从获取到的所述目标用户的所述目标数据中提取针对所述当前计算商品的数据,以得到当前商品数据;
[0095]
操作分值确定单元,用于确定与所述当前商品数据对应的当前操作,并获取每个所述当前操作对应的所述操作分值;
[0096]
当前分值计算单元,用于基于所述当前商品数据与所述操作分值确定所述当前计算商品的当前分值;
[0097]
推荐分值计算单元,用于基于所述当前分值、所述曝光率、所述目标调和参数以及所述预设分值计算公式确定所述当前计算商品的推荐分值。
[0098]
在一些具体实施例中,所述商品推荐模块14,具体包括:
[0099]
目标商品确定单元,用于基于全部所述商品的所述推荐分值确定满足预设商品推荐规则的商品,以得到目标商品;
[0100]
目标商品推荐单元,用于将所述目标商品推荐至所述目标用户。
[0101]
进一步的,本技术实施例还提供了一种电子设备。图4是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本技术的使用范围的任何限制。
[0102]
图4为本技术实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的商品推荐方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
[0103]
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本技术技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
[0104]
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222等,存储方式可以是短暂存储或者永久存储。
[0105]
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是windows server、netware、unix、linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的商品推荐方法的计算机程序之外,还可以
进一步包括能够用于完成其他特定工作的计算机程序。
[0106]
进一步的,本技术实施例还公开了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的商品推荐方法步骤。
[0107]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0108]
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0109]
以上对本发明所提供的一种商品推荐方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1