货品推荐方法、装置、计算机设备和可读存储介质与流程

文档序号:19741310发布日期:2020-01-18 05:15阅读:130来源:国知局
货品推荐方法、装置、计算机设备和可读存储介质与流程

本申请涉及互联网技术领域,具体而言,涉及一种货品推荐方法、装置、计算机设备和可读存储介质。



背景技术:

目前,对于新开发的电商平台,一般采取冷启动的货品推荐方案,即只根据平台中有的货品信息为用户进行推荐,并不需要参考用户的各项历史数据。然而在电商平台的货品种类保持不变的情况下,为不同用户推荐展示的推荐货品也是一样的。而在现有技术中,即使每一个用户通过同样的操作获得的推荐货品都是一样的,但每一次的推荐货品结果也都需要经过计算才能得到,需要做大量重复的工作。

有鉴于此,如何提供一种便捷的货品推荐方案,是本领域技术人员需要解决的。



技术实现要素:

本申请提供了一种货品推荐方法、装置、计算机设备和可读存储介质。

本申请的实施例可以这样实现:

第一方面,实施例提供一种货品推荐方法,应用于计算机设备,所述计算机设备与外部数据库连接,所述计算机设备或所述外部数据库中存储有预先计算得到的目标货品的推荐参数,所述方法包括:

接收用户获取目标货品的推荐参数的请求,根据所述请求,查询所述计算机设备中是否存储有所述目标货品的推荐参数,若是,则从所述计算机设备中获取并提供所述目标货品的推荐参数;若否,则查询所述外部数据库中是否存储有所述目标货品的推荐参数,若是,则从所述外部数据库中获取并提供所述目标货品的推荐参数。

在可选的实施方式中,所述方法还包括:

判断接收到获取目标货品的推荐参数的请求的次数是否达到预设热门阈值,若是,则将所述目标货品的推荐参数存入所述计算机设备的内存中,若否,则将所述目标货品的推荐参数存入所述外部数据库中。

在可选的实施方式中,所述计算机设备还存储有多个货品的价格、多个货品的名称、多个货品的类别距离和多个货品的权重,所述目标货品的推荐参数中包括第一推荐参数,所述第一推荐参数通过以下步骤计算得到:

获取用户选择的货品的价格、货品的类别、货品的名称和货品的权重;

根据所述用户选择的货品的价格和多个货品的价格,计算得到第一目标货品的相差价格参数;

根据所述用户选择的货品的名称和多个货品的名称,计算得到第一目标货品的名称类似度参数;

根据所述用户选择的货品的类别和多个货品的类别距离,计算得到第一目标货品的类别间距参数;

根据所述用户选择的货品的权重和多个货品的权重,计算得到第一目标货品的权重值参数;

根据所述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的类别间距参数和第一目标货品的权重值参数,计算得到所述目标货品的第一推荐参数。

在可选的实施方式中,所述方法还包括:判断所述目标货品所在类别的货品个数是否超过预设货品推荐个数,若是,则根据所述用户选择的货品的价格和所述目标货品所在类别的货品的价格,计算得到第一目标货品的相差价格参数;

根据所述用户选择的货品的名称和所述目标货品所在类别的货品的名称,计算得到第一目标货品的名称类似度参数;

根据所述用户选择的货品的类别和所述目标货品所在类别的货品的类别距离,计算得到第一目标货品的类别间距参数;

根据所述用户选择的货品的权重和所述目标货品所在类别的货品的权重,计算得到第一目标货品的权重值参数;

根据所述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的类别间距参数和第一目标货品的权重值参数,计算得到所述目标货品的第一推荐参数;

若否,则根据所述目标货品所在类别的货品和所述多个货品中预设类别距离的货品计算得到所述第一推荐参数。

在可选的实施方式中,所述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的类别间距参数、第一目标货品的权重值参数和第一推荐参数通过以下公式计算得到:

cj=cj*θ

pj=|pricej-prices|

scorej=α1pj+γ1wj+λ1nj+cj

其中,cj为所述第一目标货品j的类别间距参数,θ为第一惩罚值,pj为第一目标货品j的相差价格参数,pricej为所述多个货品的价格,prices为用户选择的货品的价格,wj为所述第一目标货品j的权重值参数,∈为平滑系数,scorej为第一推荐参数,nj为第一目标货品j的名称类似度参数,α1+γ1+λ1=1。

在可选的实施方式中,所述目标货品的推荐参数中包括第二推荐参数,所述第二推荐参数通过以下步骤计算获得:

获取用户预购的货品的类别、货品的价格、货品的权重和货品的名称;

根据所述多个货品的类别距离和用户预购的货品的类别,计算得出第二目标货品的类别间距参数;

根据所述多个货品的权重和用户预购的货品的权重,计算得出第二目标货品的权重值参数;

根据所述多个货品的名称和用户预购的货品的名称,计算得到第二目标货品的名称类似度参数;

根据所述多个货品的价格和用户预购的货品的价格,计算得到第二目标货品的相差价格参数;

根据所述第二目标货品的类别间距参数、第二目标货品的权重值参数、第二目标货品的名称类似度参数和第二目标货品的相差价格参数计算得到第二推荐参数。

在可选的实施方式中,所述第二目标货品的类别间距参数通过以下公式计算得到:

ck=1+βδ

其中,ck为第二目标货品k的类别间距参数,β为类别关系系数,δ为第二惩罚值。

第二方面,实施例提供一种货品推荐装置,应用于计算机设备,所述计算机设备与外部数据库连接,所述计算机设备或所述外部数据库中存储有预先计算得到的目标货品的推荐参数,所述装置包括:

接收模块,用于接收用户获取目标货品的推荐参数的请求;

查询模块,用于根据所述请求,查询所述计算机设备中是否存储有所述目标货品的推荐参数,若是,则从所述计算机设备中获取并提供所述目标货品的推荐参数;若否,则查询所述外部数据库中是否存储有所述目标货品的推荐参数,若是,则从所述外部数据库中获取并提供所述目标货品的推荐参数。

第三方面,实施例提供一种计算机设备,所述计算机设备包括处理器及存储有计算机指令的非易失性存储器,所述计算机指令被所述处理器执行时,所述计算机设备执行前述实施方式中任意一项所述的货品推荐方法。

第四方面,实施例提供一种可读存储介质,所述可读存储介质包括计算机程序,所述计算机程序运行时控制所述可读存储介质所在计算机设备执行前述实施方式中任意一项所述的货品推荐方法。

本申请实施例的有益效果包括,例如:

采用本申请实施例提供的货品推荐方法、装置、计算机设备和可读存储介质,通过巧妙地将目标货品的推荐参数预先存储在计算机设备和外部数据库中,当计算机设备接收到用户获取目标货品的请求后,能够便捷地从计算机设备或外部数据库中提取目标货品的推荐参数,无需进行重复的计算。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种货品推荐方法的步骤流程示意图;

图2为本申请实施例提供的另一货品推荐方法的步骤流程示意图;

图3为本申请实施例提供的一种货品类别树状图;

图4为本申请实施例提供的一种货品推荐装置的结构示意图;

图5为本申请实施例提供的计算机设备的结构示意图。

图标:100-计算机设备;110-货品推荐装置;1101-接收模块;1102-查询模块;111-存储器;112-处理器;113-通信单元。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

此外,若出现术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。

目前,对于新开发的电商平台来说,并没有用户的历史数据可以用,因此可以采用根据已有的货品信息为用户提供推荐货品,而在电商平台中的货品种类不改变的情况下,对于不同的用户,每次都需要做相同的计算为不同的用户推荐一样的货品,大量重复的计算,使得请求的速率大幅度的降低。基于此,本申请实施例提供了一种货品推荐方法的示例,该方法应用于计算机设备,所述计算机设备与外部数据库连接,所述计算机设备或所述外部数据库中存储有预先计算得到的目标货品的推荐参数,所述方法包括步骤s201至步骤s204,如图1所示。

步骤s201,接收用户获取目标货品的推荐参数的请求。

步骤s202,根据所述请求,查询所述计算机设备中是否存储有所述目标货品的推荐参数,若是,则执行步骤s203;若否,则执行步骤s204。

步骤s203,从所述计算机设备中获取并提供所述目标货品的推荐参数。

步骤s204,查询所述外部数据库中是否存储有所述目标货品的推荐参数,若是,则从所述外部数据库中获取并提供所述目标货品的推荐参数。

目标货品的推荐参数可以是用户选中的货品的相关推荐货品,可以将目标货品的推荐参数经过一次计算后将计算结果存储在计算机设备中或者外部数据库中,在用户请求获取目标货品的推荐参数时,可以根据该目标货品的推荐参数的请求指令从计算机设备中将该目标货品的推荐参数提取出来,若该目标货品的推荐参数并未存储在计算机设备中,可以在外部数据库中根据该目标货品的推荐参数的请求指令进行寻找,再将存储在外部数据库中的该目标货品的推荐参数提供给用户。电商平台的多个货品的相关信息可以存储在另一数据库中(例如mysql数据库),若由于电商平台的货品种类改变等原因需要更新存储的多个货品的相关信息,会导致计算机设备和外部数据库中目标货品的推荐参数也需要更新,那么可以根据改变的(新增或者删除)货品种类重新离线计算目标货品的推荐参数,在计算新的目标货品的推荐参数的过程中,若有用户发起获取目标货品的推荐参数的请求指令,那么可以从原来的(还未更新)的计算机设备或者外部数据库中提取未更新的目标货品的推荐参数,待新的目标货品的推荐参数计算完成,可以将新的目标货品的推荐参数更新至计算机设备中或者外部数据库中,更新后若有用户发起目标货品的推荐参数的请求指令,便可从计算机设备或外部数据库中获取新的目标货品的推荐参数。采用这样的方式,可以避免在更新计算机设备或外部数据库中的目标货品的推荐参数时,需在更新后才能响应用户请求导致的响应用户请求速度过慢的问题。

基于此,请参照图2,图2为本申请实施例提供的货品推荐方法的另一步骤流程示意图,该步骤包括步骤s205至步骤s207。

步骤s205,判断接收到获取目标货品的推荐参数的请求的次数是否达到预设热门阈值,若是,则执行步骤s206;若否,则执行步骤s207。

步骤s206,将所述目标货品的推荐参数存入所述计算机设备的内存中。

步骤s207,将所述目标货品的推荐参数存入所述外部数据库中。

在进行货品的推荐时,在将目标货品的推荐参数存储在计算机设备的内存中相较于将目标货品的推荐参数存储在外部数据库中在被提取时速度更快,而计算机设备的内存又是有限的,因此可以将用户发起请求指令次数更多的目标货品的推荐参数存储在计算机设备的内存中,而将用户发起请求指令次数更少的目标货品的推荐参数存储在外部数据库中,以增快用户获取目标货品的推荐参数的速度。可以判断接收到获取目标货品的推荐参数的请求的次数是否达到预设热门阈值,而预设热门阈值可以是固定的一个值,也可以预先根据内存的大小设定能够存储在内存中的目标货品的推荐参数的个数,然后以接收到获取目标货品的推荐参数的请求的次数最少的作为预设热门阈值,即当有存储在外部数据库中的目标货品的推荐参数的请求的次数超过存储在计算机设备内存中的目标货品的推荐参数的请求的次数时,可以将次数更多的目标货品改为存储在计算机设备的内存中,而可以将次数相对少的目标货品改为存储在外部数据库中。在本实施例中,外部数据库可以是remotedictionaryserver(远程字典服务,redis)。

在此基础上,所述计算机设备还存储有多个货品的价格、多个货品的名称、多个货品的类别距离和多个货品的权重,所述目标货品的推荐参数中包括第一推荐参数,所述第一推荐参数通过以下步骤计算得到:

获取用户选择的货品的价格、货品的类别、货品的名称和货品的权重。

根据多个货品的价格和用户选择的货品的价格,计算得到第一目标货品的相差价格参数。

根据多个货品的名称和用户选择的货品的名称,计算得到第一目标货品的名称类似度参数。

根据多个货品的类别距离和用户选择的货品的类别,计算得到第一目标货品的类别间距参数。

根据多个货品的权重和用户选择的货品的权重,计算得到第一目标货品的权重值参数。

根据所述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的类别间距参数和第一目标货品的权重值参数,计算得到所述目标货品的第一推荐参数。

目标货品的推荐参数中可以包括第一推荐参数,而第一推荐参数可以是用户点击进入选择的货品详细页面后,在该页面进行推荐的货品的信息。可以理解为第一推荐参数是为了给用户推荐与用户选择的货品同类型相同的货品。

在此基础上,为了能够更快地计算得到第一推荐参数,本实施例还提供计算得到所述目标货品的第一推荐参数的示例,可以通过以下步骤实现:

判断所述目标货品所在类别的货品个数是否超过预设货品推荐个数,若是,则根据所述用户选择的货品的价格和所述目标货品所在类别的货品的价格,计算得到第一目标货品的相差价格参数;

根据所述用户选择的货品的名称和所述目标货品所在类别的货品的名称,计算得到第一目标货品的名称类似度参数;

根据所述用户选择的货品的类别和所述目标货品所在类别的货品的类别距离,计算得到第一目标货品的类别间距参数;

根据所述用户选择的货品的权重和所述目标货品所在类别的货品的权重,计算得到第一目标货品的权重值参数;

根据所述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的类别间距参数和第一目标货品的权重值参数,计算得到所述目标货品的第一推荐参数;

若否,则根据所述目标货品所在类别的货品和所述多个货品中预设类别距离的货品计算得到所述第一推荐参数。

可以参照图3,图3为本申请实施例提供的一种货品类别树状图,可以认为裙子与吊带的距离为“2”,卫衣与男装的距离为“1”,短袖与服饰距离为“3”,以此类推。而第一推荐参数所要推荐的,可以是目标货品所在的类别的货品,例如,目标货品可以是卫衣,第一推荐参数中预设货品推荐个数可以为10个(即在用户选择的货品所在的页面推荐十个货品),目标货品所在类别的货品个数,即卫衣这个类别的货品种类可以为12个,由于目标货品所在类别的货品个数(12)超过了预设货品推荐个数(10),因此为了节省计算时间,可以不将多个货品(所有货品)拿出进行第一推荐参数的计算,而是只将卫衣这个类别的12种货品拿出进行计算,可以大大的减少计算的时间。

第一推荐参数中预设货品推荐个数可以为10个,目标货品所在类别的货品个数,即卫衣这个类别的货品种类可以为5个,由于目标货品所在类别的货品个数(5)并未超过预设货品推荐个数(10),此时只用卫衣这个类别的货品不足以生成预设货品推荐个数的第一推荐参数,因此可以将距离为“1”的类别(即预设类别距离)的货品加入进行计算,即将男装中的货品加入,然后判断此时卫衣与男装这两个类别的货品种类个数是否超过预设货品推荐个数(10),若超过了,则可以根据前述方法进行第一推荐参数的计算,若为超过,则将距离为“2”的类别的货品也加入进行计算,直至当前用于计算第一推荐参数的货品种类个数超过预设货品推荐个数。

在前述基础上,请参照以下公式:

pj=|pricej-prices|

cj=cj*θ

scorej=α1pj+γ1wj+λ1nj+cj

其中,pj是第一目标货品j的相差价格参数,cj是所述第一目标货品j类别间距参数,θ是第一惩罚值,pricej是所述多个货品的价格,prices是用户选择的货品的价格,wj是所述第一目标货品j的权重值参数,∈是平滑系数,scorej是第一推荐参数,nj是第一目标货品j的名称类似度参数,α1+γ1+λ1=1。

为了能够给用户推荐类别接近当前选择的货品类型的货品,而不推荐相对类型差距过大的货品,第一目标货品的类别间距参数cj可以通过cj=cj*θ计算,cj可以为各个类别之间的距离,而第一惩罚值θ可以取10,以使类别差距越大的货品计算得出的cj相对较大。

获得用户选择的货品名称接近的货品的方法可以采用词移距离(wordmover′sdistance,简称wmd)计算得到,通过wmd计算得到的值越小,说明两个词越相似,则说明第一目标货品j的名称类似度参数nj越小,越容易被推荐。

值得说明的是,通过上述方法计算得到的类别间距参数cj、相差价格参数pj、权重值参数wj和名称类似度参数nj,都为越小越使货品被推荐,因此第一推荐值scorej在采用公式α1pj+γ1wj+λ1nj+cj计算时,也是计算结果越小,该货品被推荐的可能越大。因此商家可以根据相差价格参数pj、权重值参数wj和名称类似度参数nj的推荐参考程度来设置α1、γ1和λ1的大小,且α1、γ1和λ1中的值越小的说明该值对应的参数越重要,在货品被推荐时更需要被参考。在计算得出第一推荐值scorej后,可以将计算结果按照由小到大的顺序进行排序,然后顺次选取预设货品推荐个数的货品,以获得第一推荐参数。

除了用户选择的货品的页面中展示的第一推荐参数,目标货品的推荐参数中还可以包括第二推荐参数,所述第二推荐参数通过以下步骤计算获得:

获取用户预购的货品的类别、货品的价格、货品的权重和货品的名称。

根据所述用户预购的货品的类别和多个货品的类别距离,计算得出第二目标货品的类别间距参数。

根据用户预购的货品的权重和多个货品的权重,计算得出第二目标货品的权重值参数。

根据所述多个货品的名称和用户预购的货品的名称,计算得到第二目标货品的名称类似度参数。

根据所述多个货品的价格和用户预购的货品的价格,计算得到第二目标货品的相差价格参数。

根据所述第二目标货品的类别间距参数、第二目标货品的权重值参数、第二目标货品的名称类似度参数和第二目标货品的相差价格参数计算得到第二推荐参数。

用户在准备购买货品时,可以先将该货品添加至购物车中。用户加入购物车但还未支付的货品可以称之为用户预购的货品,第二推荐参数可以是用户在将想要购买的货品添加至购物车后,在购物车所在的页面进行推荐的货品的信息。而第二目标货品的权重值参数、第二目标货品的名称类似度参数、第二目标货品的相差价格参数和第二推荐参数的计算方式可以参考前述第一目标货品的相差价格参数、第一目标货品的名称类似度参数、第一目标货品的权重值参数和第一推荐参数的计算方式。

在前述基础上,所述第二目标货品的类别间距参数通过以下公式计算得到:

ck=1+βδ

其中,ck是第二目标货品k的类别间距参数,β是类别关系系数,δ是第二惩罚值。

第二推荐参数可以是为用户推荐用户预购的货品类别接近的货品,与前述第一推荐参数中尽量推荐用户选中的货品同类别的货品需做区分。

可以再次参照图3。在图3中,可以认为祖孙关系为服饰与女装、服饰与裙子之间的关系,而兄弟关系可以为卫衣和羽绒服之间的关系,堂兄弟关系则可以是短袖和吊带之间的关系,在本实施例中,可以推荐给用户预购的货品的兄弟关系的货品(即第二推荐参数)。例如,用户将裙子加入了购物车,可以为其推荐吊带,而不推荐卫衣。第二目标货品的类别间距参数ck=1+βδ计算得到,β可以作为关系系数,当用户预购的货品和第二目标货品之间的关系是祖孙关系时,可以将β取“1”,当用户预购的货品和第二目标货品之间的关系为兄弟关系时,可以将β取“2”,当用户预购的货品和第二目标货品之间的关系为堂兄弟关系时,可以将β取“3”,第二惩罚值δ可以取“2.5”,可以将β和δ代入公式中,计算得到第二目标货品的类别间距参数ck。

在计算得到第二推荐值后(与第一推荐值类似,越小越可能被推荐),可以将货品由小到大的顺序进行排序,然后顺次选取预设货品推荐个数的货品,以得到第二推荐参数。

在进行第二推荐参数的计算时,由于主要是想推荐用户预购的货品的兄弟关系类别的货品,因此可以先判断用户预购的货品的兄弟关系类别的货品的种类个数是否超过预设货品推荐个数,若超过了,只需要根据用户预购的货品的兄弟关系类别的货品来计算第二推荐参数,不需要将多个货品(所有货品)都拿出来进行计算,能够减少计算时间。而若用户预购的货品的兄弟关系类别的货品的种类个数未超过预设货品推荐个数,那么可以依次按照祖孙关系、用户预购的货品所在的类别、堂兄弟关系、堂祖孙关系进行添加,直至当前用于计算第二推荐参数的货品个数超过预设货品推荐个数。

除此上述第一推荐参数和第二推荐参数外,本实施例还提供了一种“首页推荐”的方案,可以理解为用户通过网页或者app进入电商平台后,初始看到的货品推荐界面,应当理解的是,在电商平台包含的货品种类不变的情况下,“首页推荐”中为不同用户展示的推荐货品也是不变的,并且所有用户打开电商平台都会请求获取“首页推荐”中的内容,因此可以将首页推荐的内容存储从在计算机设备的内存中,以方便“首页推荐”中的内容能够被快速地获取。而在本实施例中“首页推荐”货品的选择可以根据多个货品的权重值参数、相差价格参数和上架时间参数计算得到。

如图4所示,本申请实施例提供一种货品推荐装置110,货品推荐装置110包括:

接收模块1101,用于接收用户获取目标货品的推荐参数的请求。

查询模块1102,用于根据所述请求,查询所述计算机设备中是否存储有所述目标货品的推荐参数,若是,则从所述计算机设备中获取并提供所述目标货品的推荐参数;若否,则查询所述外部数据库中是否存储有所述目标货品的推荐参数,若是,则从所述外部数据库中获取并提供所述目标货品的推荐参数。

在本实施例中,货品推荐装置110的实现原理请参照前述货品推荐方法的实现原理,在此不再赘述。

本申请实施例提供一种计算机设备100,所述计算机设备100包括处理器及存储有计算机指令的非易失性存储器,所述计算机指令被所述处理器执行时,所述计算机设备100执行前述的货品推荐方法。如图5所示,图5为本申请实施例提供的计算机设备100的结构框图。所述计算机设备100包括货品推荐装置110、存储器111、处理器112及通信单元113。

为实现数据的传输或交互,所述存储器111、处理器112以及通信单元113各元件相互之间直接或间接地电性连接。例如,可通过一条或多条通讯总线或信号线实现这些元件相互之间电性连接。所述货品推荐装置110包括至少一个可以软件或固件(firmware)的形式存储于所述存储器111中或固化在所述计算机设备100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器112用于执行所述存储器111中存储的可执行模块,例如所述货品推荐装置110所包括的软件功能模块及计算机程序等。

本申请实施例提供一种可读存储介质,所述可读存储介质包括计算机程序,所述计算机程序运行时控制所述可读存储介质所在计算机设备100执行前述的货品推荐方法。

综上所述,本申请实施例提供了一种货品推荐方法、装置、计算机设备和可读存储介质,通过巧妙地将目标货品的推荐参数预先存储在计算机设备和外部数据库中,当计算机设备接收到用户获取目标货品的请求后,能够便捷地从计算机设备或外部数据库中提供目标货品的推荐参数,无需进行重复的计算。

以上所述,仅是本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1