[发明专利]基于双层矩阵分解的推荐方法在审
申请号: | 201610182000.7 | 申请日: | 2016-03-28 |
公开(公告)号: | CN105843928A | 公开(公告)日: | 2016-08-10 |
发明(设计)人: | 李阳阳;王东;焦李成;刘芳;尚荣华;马文萍;马晶晶;刘若辰 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 王品华;朱红星 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开了一种基于双层矩阵分解的推荐方法,主要解决现有技术推荐效果准确率不高的问题。其实现步骤为:1.读取用户指定文件并构造训练数据集和测试数据集;2.初始化第一层学习器的用户特征矩阵和物品特征矩阵;3.使用训练数据集优化第一个学习器的用户特征矩阵和物品特征矩阵;4.获取第二层学习器的训练数据;5.计算第一层与第二层学习器的权重,并优化第二层学习器的用户特征矩阵和物品特征矩阵;6.计算测试数据集中的用户对物品的推荐效果。本发明使用训练好的两层学习器参数及权重进行预测评分,降低了用户对物品的预测评分与真实评分之间的差值,增强了推荐效果,可用于用户对未知电影的预测评分及未知电影推荐。 | ||
搜索关键词: | 基于 双层 矩阵 分解 推荐 方法 | ||
【主权项】:
基于双层矩阵分解的推荐方法,包括如下步骤:(1)从用户指定文件中读取包含用户、物品与评分信息的数据,将其存入原始评分数据,记为D,并将原始评分数据按行数N以9:1的比例分成训练数据集与测试数据集,分别记为D1,D2,其中D1为第一层学习器的训练数据;(2)初始化第一层学习器的用户特征矩阵P与物品特征矩阵Q:![]()
其中,P、Q均满足高斯分布,二者的特征维度个数均为F,μu表示用户特征矩阵的均值,σu2表示用户特征矩阵的方差,μi表示物品特征矩阵的均值,σi2表示物品特征矩阵的方差;(3)对用户特征矩阵P与物品的特征矩阵Q进行优化:(3a)使用P、Q预测D1中用户u对物品i的评分,记为
其中,Puf表示用户u的特征向量,Qif表示物品i的特征向量,f=1,2,...,F;(3b)计算用户对物品预测评分的误差:
其中,
为用户u对物品i的真实评分;(3c)使用随机梯度下降法优化L,得到第一层学习器训练好的用户特征矩阵P'与物品特征矩阵Q';(4)获取第二层学习器的训练数据:(4a)给定用户对物品预测评分与用户对物品真实评分差值的阈值t;(4b)将D1中的用户对相应物品进行预测评分,将预测评分与真实评分差值的绝对值大于t的样本挑出,作为第二层学习器的训练数据,记为ND;(5)根据ND的个数n计算第一层学习器的权重w1以及第二层学习器的权重w2:w1=(N‑n)/Nw2=n/N(6)利用与步骤(2)相同的方法构造第二层学习器的用户特征矩阵P1与物品特征矩阵Q1,并利用与步骤(3)中相同的方法得到训练好的第二层学习器的特征矩阵P1'和Q1';(7)根据测试数据集D2中的用户与物品,计算推荐效果:(7a)利用已经训练好的两层学习器的参数P',Q',P1',Q1'以及两层学习器的权重w1,w2在测试数据集D2上对相应用户与物品计算预测评分![]()
其中,F为用户与物品特征矩阵的维度,P'uf表示训练好的第一层学习器用户u的特征向量,P1'uf为训练好的第二层学习器用户u的特征向量,Q'if表示训练好的第一层学习器物品i的特征向量,Q1'if表示训练好的第二层学习器物品i的特征向量,f=1,2,...,F;(7b)根据计算出的
的值给用户进行物品推荐,由于
的值是介于1‑5之间的数,值越大表明物品越符合用户的需求,对于用户u未选择的物品i,推荐时将根据
的值从大到小依次进行推荐,推荐的物品个数由用户指定。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610182000.7/,转载请声明来源钻瓜专利网。