CN106919699A - 一种面向大规模用户的个性化信息推荐方法 - Google Patents
一种面向大规模用户的个性化信息推荐方法 Download PDFInfo
- Publication number
- CN106919699A CN106919699A CN201710135697.7A CN201710135697A CN106919699A CN 106919699 A CN106919699 A CN 106919699A CN 201710135697 A CN201710135697 A CN 201710135697A CN 106919699 A CN106919699 A CN 106919699A
- Authority
- CN
- China
- Prior art keywords
- user
- article
- recommendation
- consumer
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims abstract description 27
- 238000001914 filtration Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种面向大规模用户的个性化信息推荐方法,能够提升大规模用户情形下推荐的准确度。主要分为三个部分:构建用户模型、数据预处理和个性化推荐。构建用户模型要处理原始数据集,按照一定的规则格式化原始数据得到用户物品评分矩阵;数据预处理包括用户物品评分矩阵的降维和用户聚类;个性化推荐包括信息填充和信息推荐两个步骤。本发明能够使得推荐给客户的信息更加准确,同时能够适应大规模用户物品数据信息场景下的个性化信息推荐需求。
Description
技术领域
本发明属于推荐系统领域,尤其涉及一种面向大规模用户的个性化信息推荐方法,其中还会涉及到降维、聚类和数据填充的使用。
背景技术
在大数据的背景下,虽然有网站导航和搜索引擎给用户提供信息,但是不能主动给用户推荐信息。个性化推荐能够给用户推荐感兴趣的信息,并且推荐过程对用户是透明的,不需要用户的参与。个性化推荐能够通过后台收集用户的浏览、点击和评分等等构建用户模型,最终给每一个用户推荐不同的物品。
但是现实中用户规模是很庞大的,并且大多数情况下得到的用户向量是高维度稀疏的,直接进行推荐效果非常不明显,并且高维度数据的处理非常耗时。所以需要先对高维度的数据进行降维,然后再聚类,得到不同的用户类簇。不同的类簇之间用户相似度差别很大,但是同一个类簇中用户是相似的。进一步,在同一个类簇中相似用户的基础上进行数据填充,保证使用同一个类簇的用户数据填充当前类簇的稀疏数据,这样不会出现填充后的数据出现用户兴趣的偏移的情况。最后,在填充后的类簇内针对用户进行个性化的推荐。
发明内容
为了处理大规模用户和用户向量高维度稀疏的问题,并且提升推荐的准确度,本发明提出了一种面向大规模用户的个性化信息推荐方法。本方法充分的考虑了用户的规模的问题,使用降维解决用户向量高维度的问题。进一步在降维的基础上对用户进行聚类,得到相似用户类簇,然后进行数据填充和个性化推荐。
一种面向大规模用户的个性化信息推荐方法,该方法采用用户物品评分矩阵表示用户模型,然后对用户物品评分矩阵的降维和聚类操作后得到不同的用户类簇,在不同的用户类簇中进行数据填充,然后再针对每个用户进行推荐。
步骤1:读取数据集文件构建用户物品评分矩阵R(m×n),其中矩阵的每一行表示表示同一个用户对不同物品的评分,每一列表示不同用户对同一个物品的评分,m表示用户总数,n表示物品总数,进入步骤2;
步骤2:使用SVD对用户物品评分矩阵进行降维,由于用户物品评分矩阵R可以表示为R=UλVT,其中λ为矩阵R的特征向量,并且特征值是从大到小排列的,取前k个特征值,保证前k个特征值的和占所有特征值总和的80%,即per(k)=80%,k的计算公式为:
其中,n是用户物品评分矩阵的秩,k是降维后的维度,最后降维后的矩阵R'(m×k),进入步骤3;
步骤3:使用Canopy算法确定k1的值和k1个不同的初始中心,进入步骤4;
步骤4:将k1和k1个不同的初始中心作为K-means的输入,进而进行用户聚类,最终得到k1个用户类簇。同一个类簇中的用户是相似的,不同类簇中的用户的相似度不大,进入步骤5;
步骤5:针对每一个用户使用slope one算法进行数据填充,首先判断用户类簇中的用户是否稀疏,如果稀疏那么使用slope one算法进行数据填充后进入步骤6;如果用户不稀疏则直接进入步骤6;
slope one算法虽然简单,但是填充效果很好,这里定义物品i相对于物品j的平均偏差其中Sj,i()表示同时对物品i和物品j给予评分的用户集合,而card()表示集合包含的元素数量,有了上面的定义后,这里使用devj,i+ui获得用户u对物品j的预测值,当把所有的预测值平均起来得到其中Rj表示所有用户u已经给予评分且满足条件(i≠j且Sj,i非空)的物品集合。
步骤6:首先确定相似用户的邻居个数,根据协同过滤算法经过多次试验,经验上一般选择邻居个数为6到10之间的一个数为宜,在这里选定相似邻居数为8,不同的邻居个数对结果有不同的影响,如果邻居数太小,得到的结果会不准确,如果邻居数太大,会增加计算量,进入,然后计算用户相似度使用的距离函数;皮尔逊相似度PV(u,c)可以去除均值和方差间的差异影响。所以在这里选择使用皮尔逊相关系数作为距离函数其中rui表示用户u对物品i的评分,表示用户u的评分的均值,rvi表示用户v对物品i的评分,表示用户v的评分的均值,进入步骤7;
步骤7:在用户类簇内使用基于用户的协同推荐算法针对每一个用户进行推荐,最终对每一个用户生成一个物品的推荐列表。
本发明能够适应大规模用户推荐的场景,处理高维度的稀疏数据,并且能够提高个性化推荐结果的准确度。
附图说明
图1为用户数量462时三个指标的比较;
图2为用户数量943时三个指标的比较;
图3为用户数量6040时三个指标的比较;
图4为不同用户数量下的系统运行时间;
图5为本发明流程示意图。
具体实施方式
下面结合附图,对进行详细说明。
应该强调的是,下述说明仅仅是示例性的,而不是为了限制本发明的范围及其应用。
附表1为用户物品评分矩阵:
具体实施方式如下:
一种面向大规模用户的个性化信息推荐方法,步骤1:读取数据集文件进行处理得到用户评分矩阵R(m×n),如表1所示。其中矩阵的每一行表示表示同一个用户对不同物品的评分,每一列表示不同用户对同一个物品的评分,m表示用户总数,n表示物品总数,进入步骤2;
步骤2:使用SVD对用户物品评分矩阵进行降维,由于用户物品评分矩阵R可以表示为R=UλVT,其中λ为矩阵R的特征向量,并且特征值是从大到小排列的,取前k个特征值,保证前k个特征值的和占所有特征值总和的80%,即per(k)=80%。k的计算公式为
其中,n是用户物品评分矩阵的秩,k是降维后的维度,最后降维后的矩阵R'(m×k),进入步骤3;
步骤3:使用Canopy算法确定k1的值和k1个不同的初始中心,进入步骤4;
步骤4:将k1和k1个不同的初始中心作为K-means的输入,在这里使用欧氏距离来进行用户之间相似度的计算,当然也可以使用其他的形似度的度量方式,如Cosine和曼哈顿距离等。进而进行用户聚类,最终得到k1个用户类簇,进入步骤5;
步骤5:针对每一个用户使用slope one算法进行数据填充,首先判断用户类簇中的用户是否稀疏,如果稀疏那么使用slope one算法进行数据填充后进入步骤6;如果用户不稀疏则直接进入步骤6;
slope one算法虽然简单,但是填充效果很好。用户1对物品1和物品2的打分分别是5和3;用户2对物品1和物品2的打分分别是4和3,并且用户3对物品1的打分是4,那么可以推断用户3对物品2的打分是4-((5-3)+(4-3))/2=2.5。
步骤6:首先确定相似用户的邻居个数,根据协同过滤算法经过多次试验,经验上一般选择邻居个数为6到10之间的一个数为宜,在这里选定相似邻居数为8,不同的邻居个数对结果有不同的影响,如果邻居数太小,得到的结果会不准确,如果邻居数太大,会增加计算量,然后计算用户相似度使用的距离函数;皮尔逊相似度PV(u,v)可以去除均值和方差间的差异影响,所以在这里选择使用皮尔逊相关系数作为距离函数其中rui表示用户u对物品i的评分,表示用户u的评分的均值,rvi表示用户v对物品i的评分,表示用户v的评分的均值,进入步骤7;
步骤7:在用户类簇内使用基于用户的协同推荐算法针对每一个用户进行推荐,最终对每一个用户生成一个物品的推荐列表。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (4)
1.一种面向大规模用户的个性化信息推荐方法,其特征在于,包括:
步骤1:读取数据集文件构建用户物品评分矩阵;
步骤2:使用SVD对用户物品评分矩阵进行降维;
步骤3:使用Canopy算法确定降维后的维度k1的值和k1个不同的初始中心;
步骤4:将k1和k1个不同的初始中心作为K-means的输入,进而进行用户聚类,最终得到k1个用户类簇;
步骤5:针对每一个用户使用slope one算法进行数据填充,若用户类簇中的用户稀疏,再次使用slope one算法进行数据填充直至用户不稀疏;
步骤6:确首先确定相似用户的邻居个数,根据协同过滤算法经过多次试验,经验上一般选择邻居个数为6到10之间的一个数为宜,然后使用距离函数计算用户相似度,其中,rui表示用户u对物品i的评分,表示用户u的评分的均值,rvi表示用户v对物品i的评分,表示用户v的评分的均值;
步骤7:在用户类簇内使用基于用户的协同推荐算法针对每一个用户进行推荐,最终对每一个用户生成一个物品的推荐列表。
2.根据权利要求1所述的一种面向大规模用户的个性化信息推荐方法,其特征在于,步骤1中用户物品评分矩阵R(m×n),其中矩阵的每一行表示表示同一个用户对不同物品的评分,每一列表示不同用户对同一个物品的评分,m表示用户总数,n表示物品总数。
3.根据权利要求1所述的一种面向大规模用户的个性化信息推荐方法,其特征在于,步骤2中由于用户物品评分矩阵R可以表示为R=UλVT,其中λ为矩阵R的特征向量,并且特征值是从大到小排列的,取前k个特征值,保证前k个特征值的和占所有特征值总和的80%,即per(k)=80%。k的计算公式为
其中,n是用户物品评分矩阵的秩,k是降维后的维度,最后降维后的矩阵。
4.根据权利要求1所述的一种面向大规模用户的个性化信息推荐方法,其特征在于,步骤6中定义物品i相对于物品j的平均偏差其中Sj,i()表示同时对物品i和物品j给予评分的用户集合,而card()表示集合包含的元素数量;使用devj,i+ui获得用户u对物品j的预测值。当把所有的预测值平均起来得到其中Rj表示所有用户u已经给予评分且满足条件(i≠j且Sj,i非空)的物品集合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710135697.7A CN106919699A (zh) | 2017-03-09 | 2017-03-09 | 一种面向大规模用户的个性化信息推荐方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710135697.7A CN106919699A (zh) | 2017-03-09 | 2017-03-09 | 一种面向大规模用户的个性化信息推荐方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106919699A true CN106919699A (zh) | 2017-07-04 |
Family
ID=59460639
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710135697.7A Pending CN106919699A (zh) | 2017-03-09 | 2017-03-09 | 一种面向大规模用户的个性化信息推荐方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106919699A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197209A (zh) * | 2017-12-28 | 2018-06-22 | 重庆理工大学 | 一种基于加权协同过滤算法的电影推荐方法 |
CN110020139A (zh) * | 2017-11-14 | 2019-07-16 | 广州市动景计算机科技有限公司 | 导航站点推荐方法、装置、计算设备及存储介质 |
CN110910207A (zh) * | 2019-10-30 | 2020-03-24 | 苏宁云计算有限公司 | 一种提升商品推荐多样性的方法及系统 |
CN110929161A (zh) * | 2019-12-02 | 2020-03-27 | 南京莱斯网信技术研究院有限公司 | 一种面向大规模用户的个性化教学资源推荐方法 |
WO2020073534A1 (zh) * | 2018-10-12 | 2020-04-16 | 平安科技(深圳)有限公司 | 基于重聚类的推送方法、装置、计算机设备及存储介质 |
CN111652669A (zh) * | 2020-04-15 | 2020-09-11 | 珠海小礼鱼科技有限公司 | 一种智能终端导购系统及方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182543A (zh) * | 2014-09-05 | 2014-12-03 | 上海理工大学 | 基于相似性传播与流行度降维的混合推荐方法 |
-
2017
- 2017-03-09 CN CN201710135697.7A patent/CN106919699A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182543A (zh) * | 2014-09-05 | 2014-12-03 | 上海理工大学 | 基于相似性传播与流行度降维的混合推荐方法 |
Non-Patent Citations (2)
Title |
---|
盈艳 等: "基于项目评分预测的混合式协同过滤推荐", 《现代图书情报技术》 * |
迟轩: "基于协同过滤算法的推荐系统框架设计与实现", 《中国优秀硕士论文全文数据库(信息科技辑)》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110020139A (zh) * | 2017-11-14 | 2019-07-16 | 广州市动景计算机科技有限公司 | 导航站点推荐方法、装置、计算设备及存储介质 |
CN108197209A (zh) * | 2017-12-28 | 2018-06-22 | 重庆理工大学 | 一种基于加权协同过滤算法的电影推荐方法 |
CN108197209B (zh) * | 2017-12-28 | 2020-03-31 | 重庆理工大学 | 一种基于加权协同过滤算法的电影推荐方法 |
WO2020073534A1 (zh) * | 2018-10-12 | 2020-04-16 | 平安科技(深圳)有限公司 | 基于重聚类的推送方法、装置、计算机设备及存储介质 |
CN110910207A (zh) * | 2019-10-30 | 2020-03-24 | 苏宁云计算有限公司 | 一种提升商品推荐多样性的方法及系统 |
CN110929161A (zh) * | 2019-12-02 | 2020-03-27 | 南京莱斯网信技术研究院有限公司 | 一种面向大规模用户的个性化教学资源推荐方法 |
WO2021109464A1 (zh) * | 2019-12-02 | 2021-06-10 | 南京莱斯网信技术研究院有限公司 | 一种面向大规模用户的个性化教学资源推荐方法 |
CN111652669A (zh) * | 2020-04-15 | 2020-09-11 | 珠海小礼鱼科技有限公司 | 一种智能终端导购系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106919699A (zh) | 一种面向大规模用户的个性化信息推荐方法 | |
CN103412948B (zh) | 基于聚类的协同过滤的商品推荐方法及系统 | |
CN109543109B (zh) | 一种融合时间窗技术和评分预测模型的推荐算法 | |
CN102193936B (zh) | 一种数据分类的方法及装置 | |
CN104077357B (zh) | 基于用户的协同过滤组合推荐方法 | |
CN109933721B (zh) | 一种融合用户隐式物品偏好与隐式信任的可解释推荐方法 | |
CN102968506A (zh) | 一种基于扩展特征向量的个性化协同过滤推荐方法 | |
CN107220365A (zh) | 基于协同过滤与关联规则并行处理的精准推荐系统及方法 | |
CN103632290B (zh) | 一种基于推荐概率融合的混合推荐方法 | |
CN105574216A (zh) | 基于概率模型和用户行为分析的个性化推荐方法、系统 | |
CN104252456B (zh) | 一种权重估计方法、装置及系统 | |
CN103559622A (zh) | 基于特征的协同过滤推荐方法 | |
CN101482884A (zh) | 一种基于用户偏好评分分布的协作推荐系统 | |
CN108563690B (zh) | 一种基于面向对象聚类的协同过滤推荐方法 | |
CN104462383A (zh) | 一种基于用户多种行为反馈的电影推荐方法 | |
CN105550211A (zh) | 一种融合社交网络和项目内容的协同推荐系统 | |
CN112100512A (zh) | 一种基于用户聚类和项目关联分析的协同过滤推荐方法 | |
CN110263257A (zh) | 基于深度学习的多源异构数据混合推荐模型 | |
CN104933156A (zh) | 一种基于共享近邻聚类的协同过滤方法 | |
CN106294859A (zh) | 一种基于属性耦合矩阵分解的项目推荐方法 | |
CN104899246A (zh) | 基于模糊机制用户评分邻域信息的协同过滤推荐方法 | |
CN106897419A (zh) | 融合社交信息的对级排序学习推荐方法 | |
CN106776859A (zh) | 基于用户偏好的移动应用App推荐系统 | |
CN103500228A (zh) | 一种协同过滤推荐算法中改进的相似性度量方法 | |
CN107944485A (zh) | 基于聚类群组发现的推荐系统及方法、个性化推荐系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170704 |