一种基于奇异值分解与分类器融合推荐的方法

文档序号:6634317阅读:312来源:国知局
一种基于奇异值分解与分类器融合推荐的方法
【专利摘要】本发明公开了一种基于奇异值分解与分类器融合推荐的方法,通过对数据的预处理,计算项目的平均分和概率分布,通过随机梯度下降方法训练奇异值分解模型,对用户的已评分项目集合,通过熵值的计算方法计算用户在项目类别上的熵集合,并确定项目不确定性临界值,通过比较预测项目的不确定性和临界值决定是否使用分类器,并使用Top-N方法推荐出用户所有未评项目中评分最高的N个项目。本发明采用通过用户历史评分数据,对其进行剖析,最后产生个性化推荐;利用奇异值分解算法得到指定项目i的预测评分,并通过计算项目在每个用户上的信息熵决定是否进行分类,最终通过分类器得到项目的最后预测分,从而提高了推荐方法的准确性。
【专利说明】-种基于奇异值分解与分类器融合推荐的方法

【技术领域】
[0001] 本发明属于推荐算法【技术领域】,尤其设及一种基于奇异值分解与分类器融合推荐 的方法。

【背景技术】
[0002] 无论是在电子商务领域还是在音乐、电影等在线视频网站,信息过载是当今世界 人们面临的问题之一,而推荐系统该是解决该一问题的方法。它通过对海量数据挖掘,分 析用户的历史浏览记录,历史项目评分,得到用户在某一领域中的偏好,从而实现个性化推 荐。
[0003] 在常用推荐算法中,目前存在=类,分别是基于内容的推荐算法、协同过滤算法和 混合推荐算法。基于内容的推荐算法通过对用户的历史项目进行特征抽取、建模和对比,从 而进行项目的推荐,但是存在复杂属性难处理问题;协同过滤则基于相似用户的爱好相同 或者相似项目用户给分相同的假设进行推荐,却在新用户、稀疏性和可拓展性表现不佳;而 混合推荐算法则大多数混合基于内容和系统过滤算法,在合适的融合条件下取得较好的结 果。


【发明内容】

[0004] 本发明实施例的目的在于提供一种基于奇异值分解与分类器融合推荐的方法,旨 在解决现有的推荐算法存在的新用户表现不佳、系统推荐准确性较低和复杂属性的问题。
[0005] 本发明实施例是该样实现的,一种基于奇异值分解与分类器融合推荐的方法,该 基于奇异值分解与分类器融合推荐的方法包括W下步骤:
[0006] 步骤一,通过对数据的预处理,计算项目的平均分和概率分布;
[0007] 步骤二,针对每个用户,计算所有已评项目在项目所属类别上的滴值,对于每个项 目,都有所属类别,而用户对于项目的偏好设为目标变量,确定取值范围,根据用户的已评 项目集合,使用公式

【权利要求】
1. 一种基于奇异值分解与分类器融合推荐的方法,其特征在于,该基于奇异值分解与 分类器融合推荐的方法包括以下步骤: 步骤一,通过对数据的预处理,计算项目的平均分和概率分布; 步骤二,针对每个用户,计算所有已评项目在项目所属类别上的熵值,对于每个项目, 都有所属类别,而用户对于项目的偏好设为目标变量,确定取值范围,根据用户的已评项目 集合,使用公式E(C") = 计算用户在分类上的熵值,其中{0,…,k}为目标 变量的取值范围,Ptu为用户在某个分类上用户u对项目i的偏好值为k时的概率,若某类 别熵值不存在于用户u,则所有类别熵值的最大值即为该类的熵值; 由用户在项目类别上的熵集合E= (E1,E2,…,EJ,对于任意一个用户的项目i,根据
通过用户的项目评分子集合{iIiEIuAR62八},计算该集合所有元素的不确定 性,找出用户打分偏低的临界值eu=min(ei,u);对于所有用户,分别得到他们的项目类别熵 的集合和临界值; 步骤三,通过比较预测项目的不确定性和临界值决定是否使用分类器,并使用Top-N方法推荐出用户所有未评项目中评分最高的N个项目。
2. 如权利要求1所述的基于奇异值分解与分类器融合推荐的方法,其特征在于,步骤 一的数据预处理具体包括,数据集由用户集合U,项目集合I,和评分矩阵R组成,其中评分 矩阵R的取值范围为{1,2,3,4,5},给定维度为f?后,对于每个项目iGI都有向量qi,用来 衡量项目拥有影响因子的程度;对于每个用户uEU都有向量Pu,用来计算用户对项目在这 些影响因上的兴趣,值同Qi中的值相似,都为正负;q,与Pu的内积捕捉用户u与项目i之 间的关系;奇异值分解算法与最基础的评分公式R=U+bu+bi+q/Pu相比,去除所有项目评 分的平均分U,而以每个项目评分的平均分%代替;在开始奇异值分解的学习算法之前, 计算每一项目的平均分。
3. 如权利要求2所述的基于奇异值分解与分类器融合推荐的方法,其特征在于,计算 每一项目的平均分的具体步骤如下:
中Hi是项目i上评分用户的总个数,rj是每个已评分用户对项目i的具体评分,并算出在 评分范围[1,2, 3, 4, 5]上的分布概率; 第二步,对于没有用户评分记录的项目,使用所有评分的平均分作为该项目的平均分, 并设在评分范围上的分布概率为0. 2。
4. 如权利要求1所述的基于奇异值分解与分类器融合推荐的方法,其特征在于,计算
参数,通过随机梯度下降算法或交叉最小二乘法迭代学习bu,bpqi,Pu的值,采用随机梯度 下降算法,具体步骤如下: 步骤一,以公式bu-bu+a* (r-ru「X*bu)来拟合评分方程R=ai+bu+bi+q/pu中bu的 值,bc^Ppu以同种方式拟合,给定学习速率a,正则化参数A,最大迭代步数和初始bu, bqpPu以及初始均方根误差RSME的值; 步骤二,导入训练数据,根据评分方程R=WWpu得到预测评分,并用bu,bi,qi和pu的偏导方程更新bu,bi,qi和pu的值;
u,i属于测试数据,Rui为预测评分,戾为真实评分,nui为评分个数。 步骤四,比较初始RMSE和当前RMSE的值,若当前RMSE大于初始或前一次RMSE的值或 者迭代步数已达到最大迭代步数,则退出迭代;否则,将当前RMSE作为下一次迭代的RMSE 的值,返回步骤二。
5. 如权利要求1或2所述的基于奇异值分解与分类器融合推荐的方法,其特征在于,步 骤三具体包括,根据步骤一中所得的所有项目在[1,2, 3, 4, 5]上的概率分布,和步骤二中 所得的项目类别熵集合和临界值,对于任意一个用户u,比较项目i在用户u前提下的不确 定性ei,u和用户u的临界值eu,若ei,u多eu,说明项目的不确定性较大则不进行分类,直接 使用奇异值分解公式R=ai+bu+bi+q^Pu计算未评项目i的预测分值;否则,根据项目的概 率分布以及该项目的SVD预测分得到向上取整和向下取整时的概率,选择概率大的值作为 用户u对该项目i的预测分;最后,计算用户u对各个未平项目的评分,将评分最高的N个 项目推荐给用户。
6. 如权利要求1或2所述的基于奇异值分解与分类器融合推荐的方法,其特征在于,该 基于奇异值分解与分类器融合推荐的方法实现个性化推荐的具体实施步骤如下: 步骤一,首先,对用户数据进行预处理,已知用户集合U= {Ul,u2,u3},项目集合 1={11,12,13,14},类别的集合〇={01,02,03,04};计算所有项目的平均分11,并且 计算每个项目的平均分%以及项目在评分范围[1,2, 3, 4, 5]上的概率分布,对于没 有评分记录的项目使用U填充,得U= 3.78,ai= {3. 67, 3. 67, 4, 4},概率分布为 (P1= {0,0.33, 0,0.33, 0.33} ,P2= {0,0.33, 0,0.33, 0.33} ,P3= {0,0,0, 1,0} ,P4 = {0, 0, 0? 5, 0, 0? 5}}; 步骤二,在给定维度f、学习速率和迭代次数后,利用用户历史评分数据和损失方程
计算bu,bi,pu,值;步骤如下,在给定参数bu,bi,pu,情况下首先对损失方程求各个 参数的偏导,如bu-bu+a*(r-rui_A*bu),其中r为用户u对i打分的真实分数,a为学习速 率,A为正则化参数;利用偏导数更新各个参数,并最终得到SVD模型Rzai+bu+bi+q^Pu; 步骤三,利用信息熵公式E(Q) =E-Pi.,, 计算每个用户在各个项目类别 {Cl,C2,C3,C4}上的熵集合;如用户U1,目标变量的取值范围是{-1,0, 1},其中-1表示评分 小于等于2且小于项目平均分,即不喜欢;0表示评分等于3的情况,即一般;1表示评分大 于3的情况,即喜欢;由此,得到E(Cu) = {0,I. 43, 0. 60, 0},通过E(Cu)以及项目的不确定
{iIiGIu八R62A}中所有项目不确定性的最小值,g卩0. 68 ;因此,得到所有用户 的临界值; 预测+对i3的评分情况,首先通过训练好后的奇异值分解模型得到初步预测评分, 然后得到项目i3在用户ui时的项目不确定性为0〈eu,则需要经过分类器;如果初步预测 评分为3. 21,得到i3评分的向上取整为4,向下取整为3,计算评分为3时的概率P(3)= (4-3. 21) *0 = 0,计算评分为 4 时的概率P(4) = (3. 21-3) *1 = 0. 21;P(4)>P(3),所以,将 预测评分归类为4,最后+对i3的评分为4,并将推荐给用户,N= 1。
【文档编号】G06F17/30GK104503973SQ201410648324
【公开日】2015年4月8日 申请日期:2014年11月14日 优先权日:2014年11月14日
【发明者】贝毅君, 郑丽梦, 刘智新, 刘二腾 申请人:浙江大学软件学院(宁波)管理中心(宁波软件教育中心)
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1