[发明专利]基于用户相似度的稀疏数据协同过滤推荐方法在审
申请号: | 201610297877.0 | 申请日: | 2016-05-06 |
公开(公告)号: | CN106021329A | 公开(公告)日: | 2016-10-12 |
发明(设计)人: | 慕彩红;刘逸;王喜智;朱虎明;熊涛;刘若辰;田小林;冯伟;焦李成 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 陕西电子工业专利中心61205 | 代理人: | 田文英;王品华 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明公开一种基于用户相似度的稀疏数据协同过滤推荐方法,主要解决现有技术中面临稀疏数据时,计算用户之间相似度值不准确,进而影响推荐质量的问题。其实现步骤为:(1)构建稀疏用户对项目的评分矩阵;(2)计算任意两个项目之间的全局相似性;(3)计算任意两个用户评分之间的局部相似性;(4)计算任意两个用户之间的相似度;(5)预测评分;(6)产生推荐列表;(7)完成了对所有用户的协同过滤项目推荐。通过实验仿真结果表明,在稀疏数据集上,本发明与传统协同过滤推荐方法相比计算用户之间相似度更准确,进而提高推荐质量,更好的满足用户需求。 | ||
搜索关键词: | 基于 用户 相似 稀疏 数据 协同 过滤 推荐 方法 | ||
【主权项】:
一种基于用户相似度的稀疏数据协同过滤推荐方法,包括如下步骤:(1)构建稀疏用户对项目的评分矩阵:(1a)从用户对项目的评分数据集中随机提取用户对项目的评分信息,创建用户对项目的稀疏评分矩阵R(n×m),其中,n表示用户数量,m表示项目数量;(1b)将稀疏评分矩阵中用户未评过分的项目的评分用0表示,将稀疏评分矩阵中用户评过分的项目的评分用对应评分值表示;(2)计算稀疏评分矩阵中任意两个项目之间的全局相似性:(2a)按照下式,计算稀疏评分矩阵中任意两个项目之间的雅克比Jaccard系数:Jaccard(i,j)=|ri∩rj||ri∪rj|]]>其中,Jaccard(i,j)表示稀疏评分矩阵中任意项目i与项目j的雅克比Jaccard系数,ri表示稀疏评分矩阵中项目i的评分集合,rj表示稀疏评分矩阵中项目j的评分集合,ri∩rj表示项目i的评分集合与项目j的评分集合的交集,|ri∩rj|表示两个评分集合的交集中评分个数,ri∪rj表示项目i的评分集合与项目j的评分集合的并集,|ri∪rj|表示两个评分集合的并集中评分个数;(2b)计算稀疏评分矩阵中任意两个项目之间的巴氏Bhattacharyya系数;(2c)按照下式,计算稀疏评分矩阵中任意两个项目之间的全局相似性:BCJ(i,j)=[1+Jaccard(i,j)]*BC(i,j)其中,BCJ(i,j)表示稀疏评分矩阵中任意项目i与项目j的全局相似性,Jaccard(i,j)表示项目i与项目j的雅克比Jaccard系数,*表示相乘操作,BC(i,j)表示项目i与项目j的巴氏Bhattacharyya系数;(2d)判断是否计算完稀疏评分矩阵中所有项目的全局相似性,若是,执行步骤(3),否则,执行步骤(2a);(3)计算稀疏评分矩阵中任意两个用户评分之间的局部相似性:(3a)按照下式,计算稀疏评分矩阵中任意两个用户评分之间的局部相似性:loc(rui,rvj)=11+e-(rui-ru‾)*(rvj-rv‾)*11+e-(rui-rmed‾)*(rvj-rmed‾)]]>其中,loc表示稀疏评分矩阵中任意两个用户评分之间的局部相似性,rui表示稀疏评分矩阵中任意用户u对项目i的评分,rvj表示稀疏评分矩阵中任意用户v对项目j的评分,表示稀疏评分矩阵中任意用户u的平均评分,表示稀疏评分矩阵中任意用户v的平均评分,e表示求自然常数操作,*表示相乘操作,表示在[1,2,3,4,5]评分区间的中位数3;(3b)判断是否计算完稀疏评分矩阵中所有用户评分的局部相似性,若是,执行步骤(4),否则,执行步骤(3a);(4)计算稀疏评分矩阵中任意两个用户之间的相似度:(4a)计算稀疏评分矩阵中任意两个用户之间雅克比Jaccard系数;(4b)按照下式,计算稀疏评分矩阵中任意两个用户之间的相似度:sim(m,n)=Jaccard(m,n)+Σi∈ImΣj∈InBCJ(i,j)*loc(rmi,rnj)]]>其中,sim(m,n)表示稀疏评分矩阵中任意用户m与用户n的相似度,Jaccard(m,n)表示用户m与用户n的雅克比Jaccard系数,∑表示求和操作,Im表示用户m的评分集合,In表示用户n的评分集合,∈表示属于符号,BCJ(i,j)表示项目i与项目j的全局相似性,*表示相乘操作,loc(rmi,rnj)表示评分rmi与评分rnj的局部相关性,rmi表示用户m对项目i的评分,rnj表示用户n对项目j的评分;(4c)判断是否计算完稀疏评分矩阵中所有用户的相似度,若是,执行步骤(5),否则,执行步骤(4a);(5)预测评分:(5a)选取稀疏评分矩阵中任意一个用户作为目标用户;(5b)将目标用户与其它用户的相似度值按照从大到小排序,选取排序中前K个用户,作为目标用户的邻居用户集,K≥50;(5c)采用协同过滤公式,对稀疏评分矩阵中目标用户评分为0的项目进行预测评分;(5d)判断稀疏评分矩阵中所有用户是否均选为目标用户,若是,则执行步骤(6),否则,执行步骤(5a);(6)产生推荐列表:(6a)选取稀疏评分矩阵中任意一个用户作为目标用户,并为其产生推荐列表;(6b)将稀疏评分矩阵中目标用户评分为0的项目按照预测评分从大到小排序,从排序中选取前N个项目作为最终的推荐集合,2≤N≤20;(6c)判断稀疏评分矩阵中所有用户是否均产生了推荐列表,若是,则执行步骤(7),否则,执行步骤(6a);(7)完成了对所有用户的协同过滤项目推荐。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610297877.0/,转载请声明来源钻瓜专利网。