1.本发明涉及深度学习技术领域,具体地说是基于深度学习的推荐模型及推荐方法。
背景技术:
2.推荐系统(recommender system)是一种基于用户浏览历史与对物品评分、从而预测用户所喜欢物品的系统。它可以提高用户的搜索效率、增加商家的销售额。推荐系统广泛应用于电商、视频播放、软件推送等领域。
3.推荐系统有两种基础的技术原理:基于内容的推荐(content based)以及协同过滤(collaborative filtering),以及将两者结合的混合推荐系统(hybridrecommender system)。
4.基于内容的推荐是根据用户既往的浏览、购买、评分记录生成用户的偏好属性,然后进行针对性推荐。其优点在于:
5.1、对各个用户独立;
6.2、可以更好地解释推荐原因,例如,当看到用户有大量浏览笔记本电脑的记录,认为该用户可能喜欢笔记本电脑;
7.3、当有新物品加入后,基于该物品的特点可以快速推荐给用户。
8.协同过滤是可以一种基于集体智慧的解决办法,其思路可以概述为假设abc三人有相似的兴趣爱好,对于指定物品o如果a与b都喜欢,则会推荐给c。
9.上述的两种推荐系统均存在一定的缺点。对于基于内容推荐,存在的问题如下:
10.1、精准抽出物品的属性比较困难,如果是图书类的都是文本,可以抽出关键词,但对于商品、电影此类会难以抽出物品的“属性”;
11.2、由于推荐是基于用户的历史行为,所以无法预测出用户的潜在兴趣;
12.3、由于新用户没有历史行为,所以无法为新用户推荐。
13.协同过滤的缺陷是“冷启动(coldstart)”,即它无法处理新用户以及新加入系统的物件。对于新用户来说,系统无法判断谁与新用户的兴趣一致;对于新物品来说,没有用户对于新物品的评价。
14.基于上述,如何对物件进行精确建模并减少冷启动的影响,是需要解决的技术问题。
技术实现要素:
15.本发明的技术任务是针对以上不足,提供基于深度学习的推荐模型及推荐方法,来解决如何对物件进行精确建模并减少冷启动的影响的技术问题。
16.本发明的基于深度学习的推荐模型,包括:
17.输入层,所述输入层用于对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵并输出;
18.隐藏层,所述隐藏层共三层,分别为第一隐藏层、第二隐藏层和第三隐藏层,每个隐藏层均配置有线性函数、激活函数和剔除层,对于输入的矩阵,所述每个隐藏层通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,所述第一隐藏层和第二隐藏层还配置有批量标准化函数,所述批量标准化函数用于对输入下一个隐藏层的矩阵数据进行数据标准化;
19.输出层,所述输出层配置有线性函数和回归分析函数,用于输出评分,所述评分为评价用户对物件兴趣度的分值。
20.作为优选,所述输入层用于执行如下操作:
21.对于用户信息,将其每个特征表示为一个特征向量,并基于用户对应的所有特征向量组成用户特征矩阵;
22.对于物品信息,将其每个特征表示为一个特征向量,并基于物品对应的所有特征向量组成物品特征矩阵;
23.将用户特征矩阵和物品特征矩阵融合为用户物品矩阵,并通过剔除层对所述用户物品矩阵进行过滤,去除异常数据,得到处理后用户物品矩阵;
24.对于categorical类辅助信息,将其每个特征表示为一个特征向量,并基于categorical类辅助信息对应的多有特征向量组成第一辅助矩阵;
25.对于dense类辅助信息,将其每个特征表示为一个特征向量,并通过批量标准化函数进行处理,得到第二辅助矩阵;
26.将处理后用户物品矩阵、第一辅助矩阵以及第二辅助矩阵融合为最终矩阵,并输出。
27.作为优选,所述每个隐藏层中激活函数为leakyrelu。
28.作为优选,所述回归函数为sigmoid函数。
29.作为优选,所述输出层通过回归分析函数输出取值范围为0-5的评分。
30.第二方面,本发明的基于深度学习的物品推荐方法,包括如下步骤:
31.构建物品推荐模型,所述物品推荐模型为如第一方面任一项所述的推荐模型;
32.获取用户信息、物品信息以及辅助信息,并获取评分,基于所述用户信息、物品信息辅助信息以及评分构建训练集;
33.基于所述训练集对所述物品推荐模型进行模型训练,得到训练后物品推荐模型;
34.获取用户信息、物品信息以及辅助信息作为输入,通过训练后物品推荐模型预测得到评分,基于评分判断用户是否对所述物品感兴趣。
35.作为优选,通过训练后物品推荐模型预测得到评分,包括如下步骤:
36.对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵并输出;
37.将所述输出的矩阵输入第一隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,通过批量标准化函数进行标准化处理后输出;
38.将所述第一隐藏层输出的矩阵输入第二隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,通过批量标准化函数进行标准化处理后输出;
39.将所述第一隐藏层输出的矩阵输入第二隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,输出最终矩阵;
40.将所述最终矩阵输入输出层,通过线性函数处理后得到评分值,并通过回归分析函数将所述评分值映射到0-5区间。
41.作为优选,激活函数为leakyrelu。
42.作为优选,所述回归函数为sigmoid函数。
43.本发明的基于深度学习的推荐模型及推荐方法具有以下优点:
44.1、对于用户和物品进行特征拆解,可以精准的得到用户以及物品的特征属性,提高了精确度;
45.2、加入了入辅助信息,并对辅助信息进行特征拆解,通过用户特征矩阵、物品特征矩阵以及辅助信息特征矩阵融合为一个矩阵,以该矩阵为输入,通过模型中三层隐藏层进行处理后,通过输出层输出最终评分,基于该评分可以为用户推荐物品,该过程减少了冷启动的影响。
附图说明
46.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
47.下面结合附图对本发明进一步说明。
48.图1为实施例1基于深度学习的推荐模型的架构框图。
具体实施方式
49.下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
50.本发明实施例提供基于深度学习的推荐模型及推荐方法,用于解决如何对物件进行精确建模并减少冷启动的影响的技术问题。
51.实施例1:
52.本发明基于深度学习的推荐模型包括输入层、隐藏层和输出层,输入层用于对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵并输出;隐藏层共三层,分别为第一隐藏层、第二隐藏层和第三隐藏层,每个隐藏层均配置有线性函数、激活函数和剔除层,对于输入的矩阵,每个隐藏层通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,第一隐藏层和第二隐藏层还配置有批量标准化函数,批量标准化函数用于对输入下一个隐藏层的矩阵数据进行数据标准化;输出层配置有线性函数和回归分析函数,用于输出评分,评分为评价用户对物件兴趣度的分值。
53.在本实施例中,输入层用于执行如下操作:
54.(1)对于用户信息,将其每个特征表示为一个特征向量,并基于用户对应的所有特征向量组成用户特征矩阵;
55.(2)对于物品信息,将其每个特征表示为一个特征向量,并基于物品对应的所有特
征向量组成物品特征矩阵;
56.(3)将用户特征矩阵和物品特征矩阵融合为用户物品矩阵,并通过剔除层对所述用户物品矩阵进行过滤,去除异常数据,得到处理后用户物品矩阵;
57.(4)对于categorical类辅助信息,将其每个特征表示为一个特征向量,并基于categorical类辅助信息对应的多有特征向量组成第一辅助矩阵;
58.(5)对于dense类辅助信息,将其每个特征表示为一个特征向量,并通过批量标准化函数进行处理,得到第二辅助矩阵;
59.(6)将处理后用户物品矩阵、第一辅助矩阵以及第二辅助矩阵融合为最终矩阵,并输出。
60.在上述实施例中,针对一个用户或者一个物品,将其一个特征用一个向量表示。用户与物品有多个特征,将每个特征都拆解成一个向量后,可以组合成一个一个矩阵。这样获取的两个矩阵可以作为协同过滤的隐藏条件以及深度学习的隐藏层的参考对象。
61.本实施例模型共三层隐藏层,每个隐藏层中激活函数为leakyrelu。每一层会使用一个线性函数处理后,接leakyrelu与剔除层(dropup)来防止模型过拟合,剔除之后进行批标准化后,在通过线性函数执行,直到最后。最后一层输出节点前不再执行批量标准化标准化,会将参数输入sigmoid函数,从而得出一个0-5之间的取值表示最后结果。
62.本实施例的推荐模型,以用户信息、物品信息以及辅助信息为输入,可预测得到评分,该评分的分值区间为0-5。
63.实施例2:
64.本发明基于深度学习的物品推荐方法,包括如下步骤:
65.s100、构建物品推荐模型,物品推荐模型为实施例1公开的推荐模型;
66.s200、获取用户信息、物品信息以及辅助信息,并获取评分,基于用户信息、物品信息辅助信息以及评分构建训练集;
67.s300、基于训练集对物品推荐模型进行模型训练,得到训练后物品推荐模型;
68.s400、获取用户信息、物品信息以及辅助信息作为输入,通过训练后物品推荐模型预测得到评分,基于评分判断用户是否对物品感兴趣。
69.该模型可以根据计算算力,增加更多的隐藏层以及接受更多种类的,包括更多补充信息的输入参数,此外需要对超参数(hyper parameter)进行调整,下表展示了部分超参数、意义以及建议调整方式:
70.表1:超参数的设置
[0071][0072][0073]
本实施例步骤s400通过训练后物品推荐模型预测得到评分,包括如下步骤:
[0074]
(1)对于物品信息,将其每个特征表示为一个特征向量,并基于物品对应的所有特征向量组成物品特征矩阵;
[0075]
(2)将用户特征矩阵和物品特征矩阵融合为用户物品矩阵,并通过剔除层对所述用户物品矩阵进行过滤,去除异常数据,得到处理后用户物品矩阵;
[0076]
(3)对于categorical类辅助信息,将其每个特征表示为一个特征向量,并基于categorical类辅助信息对应的多有特征向量组成第一辅助矩阵;
[0077]
(4)对于dense类辅助信息,将其每个特征表示为一个特征向量,并通过批量标准化函数进行处理,得到第二辅助矩阵;
[0078]
(5)将处理后用户物品矩阵、第一辅助矩阵以及第二辅助矩阵融合为最终矩阵。
[0079]
每个隐藏层中激活函数为leakyrelu。每一层会使用一个线性函数处理后,接leakyrelu与剔除层(dropup)来防止模型过拟合,剔除之后进行批标准化后,在通过线性函数执行,直到最后。最后一层输出前不再执行批量标准化标准化,会将参数输入sigmoid函数,从而得出一个0-5之间的取值表示最后结果。
[0080]
以某个训练集为例,本实施例的方法与多个不同的处理方式比较,比较结果如下
表:
[0081]
表2:结果以及对比
[0082][0083][0084]
上文通过附图和优选实施例对本发明进行了详细展示和说明,然而本发明不限于这些已揭示的实施例,基与上述多个实施例本领域技术人员可以知晓,可以组合上述不同实施例中的手段得到本发明更多的实施例,这些实施例也在本发明的保护范围之内。
技术特征:
1.基于深度学习的推荐模型,其特征在于包括:输入层,所述输入层用于对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵并输出;隐藏层,所述隐藏层共三层,分别为第一隐藏层、第二隐藏层和第三隐藏层,每个隐藏层均配置有线性函数、激活函数和剔除层,对于输入的矩阵,所述每个隐藏层通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,所述第一隐藏层和第二隐藏层还配置有批量标准化函数,所述批量标准化函数用于对输入下一个隐藏层的矩阵数据进行数据标准化;输出层,所述输出层配置有线性函数和回归分析函数,用于输出评分,所述评分为评价用户对物件兴趣度的分值。2.根据权利要求1所述的基于深度学习的推荐模型,其特征在于所述输入层用于执行如下操作:对于用户信息,将其每个特征表示为一个特征向量,并基于用户对应的所有特征向量组成用户特征矩阵;对于物品信息,将其每个特征表示为一个特征向量,并基于物品对应的所有特征向量组成物品特征矩阵;将用户特征矩阵和物品特征矩阵融合为用户物品矩阵,并通过剔除层对所述用户物品矩阵进行过滤,去除异常数据,得到处理后用户物品矩阵;对于categorical类辅助信息,将其每个特征表示为一个特征向量,并基于categorical类辅助信息对应的多有特征向量组成第一辅助矩阵;对于dense类辅助信息,将其每个特征表示为一个特征向量,并通过批量标准化函数进行处理,得到第二辅助矩阵;将处理后用户物品矩阵、第一辅助矩阵以及第二辅助矩阵融合为最终矩阵,并输出。3.根据权利要求1所述的基于深度学习的推荐模型,其特征在于所述每个隐藏层中激活函数为leakyrelu。4.根据权利要求1-3任一项所述的基于深度学习的推荐模型,其特征在于所述回归函数为sigmoid函数。5.根据权利要求1-3任一项所述的基于深度学习的推荐模型,其特征在于所述输出层通过回归分析函数输出取值范围为0-5的评分。6.基于深度学习的物品推荐方法,其特征在于包括如下步骤:构建物品推荐模型,所述物品推荐模型为如权利要求1-5任一项所述的推荐模型;获取用户信息、物品信息以及辅助信息,并获取评分,基于所述用户信息、物品信息辅助信息以及评分构建训练集;基于所述训练集对所述物品推荐模型进行模型训练,得到训练后物品推荐模型;获取用户信息、物品信息以及辅助信息作为输入,通过训练后物品推荐模型预测得到评分,基于评分判断用户是否对所述物品感兴趣。7.根据权利要求6所述的基于深度学习的物品推荐方法,其特征在于通过训练后物品推荐模型预测得到评分,包括如下步骤:对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生
成的特征向量组合为矩阵并输出;将所述输出的矩阵输入第一隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,通过批量标准化函数进行标准化处理后输出;将所述第一隐藏层输出的矩阵输入第二隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,通过批量标准化函数进行标准化处理后输出;将所述第一隐藏层输出的矩阵输入第二隐藏层,通过线性函数进行处理后、接入激活函数和剔除层以防止模型过拟合,输出最终矩阵;将所述最终矩阵输入输出层,通过线性函数处理后得到评分值,并通过回归分析函数将所述评分值映射到0-5区间。8.根据权利要求7所述的基于深度学习的物品推荐方法,其特征在于对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵,包括如下步骤:对于物品信息,将其每个特征表示为一个特征向量,并基于物品对应的所有特征向量组成物品特征矩阵;将用户特征矩阵和物品特征矩阵融合为用户物品矩阵,并通过剔除层对所述用户物品矩阵进行过滤,去除异常数据,得到处理后用户物品矩阵;对于categorical类辅助信息,将其每个特征表示为一个特征向量,并基于categorical类辅助信息对应的多有特征向量组成第一辅助矩阵;对于dense类辅助信息,将其每个特征表示为一个特征向量,并通过批量标准化函数进行处理,得到第二辅助矩阵;将处理后用户物品矩阵、第一辅助矩阵以及第二辅助矩阵融合为最终矩阵。9.根据权利要求7或8所述的基于深度学习的物品推荐方法,其特征在于激活函数为leakyrelu。10.根据权利要求7或8所述的基于深度学习的物品推荐方法,其特征在于所述回归函数为sigmoid函数。
技术总结
本发明公开了基于深度学习的推荐模型及推荐方法,属于深度学习技术领域,要解决的技术问题为如何对物件进行精确建模并减少冷启动的影响。包括:输入层,用于对输入的用户信息、物品信息以及辅助信息分别进行特征拆解,并将通过特征拆解生成的特征向量组合为矩阵并输出;隐藏层,共三层,分别为第一隐藏层、第二隐藏层和第三隐藏层,每个隐藏层均配置有线性函数、激活函数和剔除层,第一隐藏层和第二隐藏层还配置有批量标准化函数,所述批量标准化函数用于对输入下一个隐藏层的矩阵数据进行数据标准化;输出层,配置有线性函数和回归分析函数,用于输出评分,所述评分为评价用户对物件兴趣度的分值。对物件兴趣度的分值。对物件兴趣度的分值。
技术研发人员:黄沛宇 国靖
受保护的技术使用者:浪潮卓数大数据产业发展有限公司
技术研发日:2022.02.17
技术公布日:2022/5/25
转载请注明原文地址:https://tc.8miu.com/read-11522.html