著录项信息
专利名称 | 一种融合用户、项目和上下文属性信息的推荐系统优化方法 |
申请号 | CN201210442382.4 | 申请日期 | 2012-11-08 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2013-03-20 | 公开/公告号 | CN102982107A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/30 | IPC分类号 | G;0;6;F;1;7;/;3;0;;;G;0;6;F;1;7;/;1;6查看分类表>
|
申请人 | 北京航空航天大学 | 申请人地址 | 广东省珠海市香洲区唐家湾金唐路1号港湾1号科创园8栋5楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 珠海市颢腾智胜科技有限公司 | 当前权利人 | 珠海市颢腾智胜科技有限公司 |
发明人 | 欧阳元新;张秦;李日藩;熊璋 |
代理机构 | 北京科迪生专利代理有限责任公司 | 代理人 | 杨学明 |
摘要
本发明公开了一种融合用户、项目和上下文属性信息的推荐系统优化方法,该方法通过在矩阵分解模型中融合用户、项目和上下文的属性信息,在个性化推荐系统中提高推荐精度。其特点是考虑用户、项目和上下文属性信息对总体评分、用户兴趣及项目得分的不同影响,应用于原矩阵分解模型的计算。该方法由于同时考虑了用户、项目和上下文属性对评分的影响,其推荐精度明显高于仅采用了用户项目二维评分矩阵信息的矩阵分解模型。
1.一种融合用户、项目和上下文属性信息的推荐系统优化方法,其特征在于:在矩阵分解模型中同时融入用户、项目和上下文属性信息来修正预测评分的偏差,提高个性化推荐系统的推荐精度;具体实现过程如下:
首先,对于每个用户u,通过属性向量转换规则,将用户属性信息转换为用户属性UA
向量vu,并引入用户属性信息对总体评分的影响向量b 和对项目i得分的影响向量最后得到考虑用户属性信息后用户u对项目i的评分偏差修正项 其公式为其中,sum()表示计算向量各个元素之和的函数;对于每个项目i,通
过属性向量转换规则,将项目属性信息转换为项目属性向量vi,并引入项目属性信息对总IA
体评分的影响向量b 和对用户u评分的影响向量 最后得到考虑项目属性信息后用户u对项目i的评分偏差修正项 其公式为 对于每条评分关联的上下
文c,通过属性向量转换规则,将上下文属性信息转换为上下文属性向量vc,并引入上下文属性信息对总体评分的影响向量bCA、对用户u评分的影响向量 和对项目i得分的影响向量 最后得到考虑上下文属性信息后用户u对项目i的评分偏差修正项 其公式为
然后,同时考虑用户、项目和上下文属性信息而引入的用户u对项目i的评分偏差修正项,融入矩阵分解模型,得到用户u对项目i的预测评分模型:
T
其中,μ+bu+bi+pu·qi是矩阵分解模型的评分预测公式,μ为全局平均分,bu为用户u的评分偏差项,bi为项目i的得分偏差项,pu是用户u的隐特征向量,qi是项目i的隐特UA UA IA CA
征向量,bu、bi、pu、qi、b 、bi 、b 、 b 、 均为模型参数;
最后,使用随机梯度下降法最小化损失函数:
进行迭代计算,得到模型参数的最佳值。
一种融合用户、项目和上下文属性信息的推荐系统优化方\n法\n技术领域\n[0001] 本发明涉及一种融合用户、项目和上下文属性信息的推荐系统优化方法,具体涉及一种考虑用户、项目和上下文属性信息对总体评分、用户评分和项目得分的影响,并融入矩阵分解模型,从而对推荐系统的推荐精度进行提高的方法,适用于协同过滤推荐系统,属于推荐系统研究的技术领域。\n背景技术\n[0002] 推荐系统的目的是充分挖掘用户的兴趣、帮助用户发现自己感兴趣的东西。近二十年来,推荐系统得到了广泛研究,并成功应用于各种互联网商用系统。但是如何为用户生成更加准确的推荐,一直是推荐系统领域研究的热点之一。\n[0003] 协同过滤算法是推荐系统中应用最为广泛的算法,其中的矩阵分解模型具有优异的预测精度。传统的矩阵分解模型SVD仅使用用户-项目二维评分矩阵数据,存在数据源单一的缺陷。因此,很多研究者就如何在矩阵分解模型中引入其他数据信息来提高模型质量展开了研究。其中代表性的包括Yehuda Koren和Robert Bell提出的引入了隐反馈数据以及时间上下文的矩阵分解模型,Alexandros Karatzoglou等提出的引入上下文信息的N-维张量分解模型,Steffen Rendle等提出的融合上下文信息的因式分解机模型,等等。\n[0004] 在现有的基于矩阵分解模型的改进方法中,用户、项目属性信息没有得到充分利用,而且很少有方法将用户、项目和上下文属性信息同时结合起来应用于矩阵分解模型来提高推荐精度。对此,本发明提出一种融合用户、项目和上下文属性信息的协同过滤推荐方法,考虑用户、项目和上下文属性信息对总体评分、用户评分和项目得分的影响,并融入矩阵分解模型,从而对推荐系统的推荐精度进行提高。\n发明内容\n[0005] 本发明要解决的技术问题为:克服现有技术的局限性,提供一种融合用户、项目和上下文属性信息的协同过滤推荐方法,该方法在矩阵分解模型中同时融入用户、项目和上下文属性信息来修正预测评分的偏差,提高个性化推荐系统的推荐精度。\n[0006] 本发明解决上述技术问题采用的技术方案:一种融合用户、项目和上下文属性信息的推荐系统优化方法,在矩阵分解模型中同时融入用户、项目和上下文属性信息来修正预测评分的偏差,提高个性化推荐系统的推荐精度;具体实现过程如下:\n[0007] 首先,对于每个用户u,通过属性向量转换规则,将用户属性信息转换为用户UA\n属性向量vu,并引入用户属性信息对总体评分的影响向量b 和对项目i得分的影响向量 最后得到考虑用户属性信息后用户u对项目i的评分偏差修正项 其公式为其中,sum()表示计算向量各个元素之和的函数;对于每个项目i,通\n过属性向量转换规则,将项目属性信息转换为项目属性向量vi,并引入项目属性信息对总IA\n体评分的影响向量b 和对用户u评分的影响向量 最后得到考虑项目属性信息后用户u对项目i的评分偏差修正项 其公式为 对于每条评分关联的上下\n文c,通过属性向量转换规则,将上下文属性信息转换为上下文属性向量vc,并引入上下文属性信息对总体评分的影响向量bCA、对用户u评分的影响向量 和对项目i得分的影响向量 最后得到考虑上下文属性信息后用户u对项目i的评分偏差修正项 其公式为[0008] 然后,同时考虑用户、项目和上下文属性信息而引入的用户u对项目i的评分偏差修正项,融入矩阵分解模型,得到用户u对项目i的预测评分模型:\n[0009] \n[0010] 其中,μ+bu+bi+pu·qiT是矩阵分解模型的评分预测公式,μ为全局平均分,bu为用户u的评分偏差项,bi为项目i的得分偏差项,pu是用户u的隐特征向量,qi是项目i的隐特征向量,bu、bi、pu、qi、bUA、 bIA、 bCA、 均为模型参数;\n[0011] 最后,使用随机梯度下降法最小化损失函数:\n[0012] \n[0013] \n[0014] \n[0015] 进行迭代计算,得到模型参数的最佳值。\n[0016] 本发明与现有技术相比的优点在于:\n[0017] (1)、在推荐系统的研究领域中,传统的基于矩阵分解的协同过滤方法只利用了用户-项目二维评分矩阵数据,而没有利用其他信息来充分挖掘用户兴趣。本专利在矩阵分解模型中融入了用户、项目和上下文的属性信息,提高了矩阵分解模型的推荐精度。\n[0018] (2)、从实验结果中可以看出,引入用户、项目和上下文属性信息确实能够提高模型的评分预测精度,并且同时引入多类属性信息比引入单类属性信息对预测精度的提升作用更大。\n附图说明\n[0019] 图1是融合用户、项目和上下文属性信息的推荐模型框架图。\n[0020] 图2是随着f值上升各个模型的RMSE值。\n具体实施方式\n[0021] 下面结合附图和具体实施例进一步说明本发明。\n[0022] 一种融合用户、项目和上下文属性信息的推荐系统优化方法,在矩阵分解模型中同时融入用户、项目和上下文属性信息来修正预测评分的偏差,提高个性化推荐系统的推荐精度。\n[0023] 所述的矩阵分解模型,考虑用户和项目之间潜在的关系,并引入全局平均分μ、用户u的评分偏差项bu和项目i的得分偏差项bi,得到用户u对项目i的预测评分:\n[0024] \n[0025] 其中,pu是用户u的隐特征向量,qi是项目i的隐特征向量,两个特征向量的维度均为f。\n[0026] 所述的融入用户、项目和上下文属性信息的矩阵分解模型,考虑了用户的属性信息对总体评分和项目得分的影响,在矩阵分解模型中融入用户属性信息。\n[0027] 所述的融入用户、项目和上下文属性信息的矩阵分解模型,考虑了项目的属性信息对总体评分和用户评分的影响,在矩阵分解模型中融入项目属性信息。\n[0028] 所述的融入用户、项目和上下文属性信息的矩阵分解模型,考虑了上下文的属性信息对总体评分、用户评分和项目得分的影响,在矩阵分解模型中融入上下文属性信息。\n[0029] 分为两个阶段,第一个阶段是预处理阶段,主要是对数据集的处理。包括如下步骤:\n[0030] 步骤A1)、对于每个用户u,通过属性向量转换规则,将用户属性信息转换为用户属性向量vu;\n[0031] 对于每个用户u,通过属性向量转换规则,将用户属性信息转换为用户属性向量UA\nvu,并引入用户属性信息对总体评分的影响向量b 和对项目i得分的影响向量 最后得到考虑用户属性信息后用户u对项目i的评分偏差修正项 其公式为:\n[0032] \n[0033] 其中,sum()表示计算向量各个元素之和的函数。\n[0034] 步骤A2)、对于每个项目i,通过属性向量转换规则,将项目属性信息转换为项目属性向量vi;\n[0035] 对于每个项目i,通过属性向量转换规则,将项目属性信息转换为项目属性向量vi,并引入项目属性信息对总体评分的影响向量bIA和对用户u评分的影响向量 最后得到考虑项目属性信息后用户u对项目i的评分偏差修正项 其公式为:\n[0036] \n[0037] 步骤A3)、对于每条评分关联的上下文c,通过属性向量转换规则,将上下文属性信息转换为上下文属性向量vc。\n[0038] 对于每条评分关联的上下文c,通过属性向量转换规则,将上下文属性信息转换为CA\n上下文属性向量vc,并引入上下文属性信息对总体评分的影响向量b 、对用户u评分的影响向量 和对项目i得分的影响向量 最后得到考虑上下文属性信息后用户u对项目i的评分偏差修正项 其公式为:\n[0039] \n[0040] 上述的属性向量转换规则,对于一条由若干个属性组成的属性信息(a1,a2...,an),每个属性ai分为三种情况处理:1)、如果ai属于可数有限集合A,则ai转换后的向量维度为|A|,其中与ai对应的维度元素值为1,其他元素值为0;2)、如果ai是可数有限集合A的某个子集,则ai转换后的向量维度为|A|,其中与ai所包含的元素对应的所有维度元素值为1,其他元素值为0;3)、如果ai是一个实数,且ai∈[c,d],平均值为 则ai转换后的向量维度为1,其值为 最终的属性向量由转换后的向量依次连接得到。\n[0041] 第二个阶段是学习阶段,主要是构造模型参数并求出最佳的模型参数值用于预测评分。包括如下步骤:\n[0042] 步骤B1)、构造模型参数并初始化;\n[0043] 同时考虑用户、项目和上下文属性信息而引入的用户u对项目i的评分偏差修正项,融入矩阵分解模型,得到用户u对项目i的预测评分模型:\n[0044] \n[0045] 其中,bu、bi、pu、qi、bUA、 bIA、 bCA、 为模型参数;\n[0046] 然后给各个模型参数赋初值,其中bu、bi赋值为0,bUA、 bIA、 bCA、 赋值为零向量,pu、qi赋值为元素值属于区间[0,0.01]的随机向量;\n[0047] 步骤B2)、使用随机梯度下降法最小化损失函数,得到模型参数的最佳值。\n[0048] 损失函数的公式为:\n[0049] \n[0050] \n[0051] \n[0052] 其中,K为训练数据集的用户-项目评分对的集合,ru,i为实际评分,公式右边除第一项之外的项均为正则项,用于防止过拟合;\n[0053] 使用随机梯度下降法需要进行若干次迭代计算;每次迭代时,遍历一次训练数据集;每获得一个评分条目,计算每个模型参数θ相对损失函数J的梯度 然后更新模型参数,更新公式为 其中α为学习速率,是事先设置的常数。当达到要求的预测精度时,迭代停止,从而得到模型参数的最佳值。\n[0054] 在推荐系统的研究领域中,传统的基于矩阵分解的协同过滤方法只利用了用户-项目二维评分矩阵数据,而没有利用其他信息来充分挖掘用户兴趣。本发明在矩阵分解模型中融入了用户、项目和上下文属性信息,提高了矩阵分解模型的推荐精度。\n[0055] 实验验证在MovieLens1M数据集上进行。该数据集有三个文件,其中,评分文件包含了6040个用户对将近3900部电影的1000209条评分和时间戳,用户信息文件包含了\n6040个用户的性别、年龄、职业、邮政编码属性,电影信息文件包含了将近3900部电影的标题(包含上映年份)、类别属性。选取用户的性别、年龄、职业属性和电影的上映年份、类别属性,并将时间戳分解为年份、月份、上午/下午、星期属性,按照属性向量转换规则分别构造了用户、项目和上下文的属性向量。使用均方根误差RMSE(Root Mean Square Error)作为推荐系统预测精度的评价指标,RMSE代表了推荐模型在数据集上的平均预测误差,RMSE越低,则表示推荐模型的预测精度越高。为了研究用户、项目、上下文属性对预测评分的不同作用,分别实现了SVD模型、引入用户属性的SVD模型(UA_SVD)、引入项目属性的SVD模型(IA_SVD)、引入用户和项目属性的SVD模型(UIA_SVD)。通过交叉验证,选取正则化参数λ1=0.02,λ2=0.01,λ3=2,λ4=0.0095,λ5=0.07,学习速率α=0.005。\n[0056] 随机选取数据集的80%作为训练数据集,剩下的20%作为测试数据集,计算各个模型在测试数据集上的RMSE值。图2记录了随特征维数f取值上升时各个模型的RMSE值的变化情况,表1列出了各个模型在f=60时的RMSE值,并比较了新模型相对SVD模型RMSE的降低值。表2将SVD模型和UICA_SVD模型随f值上升的RMSE进行对比。\n[0057] 表1 f=60时,各个模型的RMSE对比\n[0058] \n[0059] 表2f值上升时,UICA_SVD和SVD模型的RMSE对比\n[0060] \n[0061] 从实验结果中可以看出,引入用户、项目和上下文属性信息确实能够提高模型的评分预测精度,并且同时引入多类属性信息比引入单类属性信息对预测精度的提升作用更大。
法律信息
- 2020-01-31
专利权的转移
登记生效日: 2020.01.08
专利权人由北京航空航天大学变更为珠海市颢腾智胜科技有限公司
地址由100191 北京市海淀区学院路37号变更为519080 广东省珠海市香洲区唐家湾金唐路1号港湾1号科创园8栋5楼
- 2015-09-16
- 2013-04-17
实质审查的生效
IPC(主分类): G06F 17/30
专利申请号: 201210442382.4
申请日: 2012.11.08
- 2013-03-20
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2011-07-20
|
2011-03-11
| | |
2
| |
2012-03-14
|
2011-11-29
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |