CN103886003A - 一种协同过滤处理器 - Google Patents
一种协同过滤处理器 Download PDFInfo
- Publication number
- CN103886003A CN103886003A CN201310433610.6A CN201310433610A CN103886003A CN 103886003 A CN103886003 A CN 103886003A CN 201310433610 A CN201310433610 A CN 201310433610A CN 103886003 A CN103886003 A CN 103886003A
- Authority
- CN
- China
- Prior art keywords
- user
- collaborative filtering
- targeted customer
- filtering processor
- clustering
- 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
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
本发明公开了一种协同过滤处理器,包括采用改进的K-means算法对用户聚类、选出与目标用户属性相近的用户组成的簇、得到目标用户的最近邻居集合和产生推荐集四个步骤。本发明的主要思想是通过聚类将特征相同的用户聚为一类降低矩阵的维度,减少空间复杂度,然后通过矩阵分解对稀疏矩阵进行填补,对填补的矩阵再进行协同过滤。
Description
技术领域
本发明涉及推荐技术领域,更具体的讲是一种基于k-means聚类的协同过滤算法处理器,主要思想是通过聚类将特征相同的用户聚为一类降低矩阵的维度,减少空间复杂度,然后通过矩阵分解对稀疏矩阵进行填补,对填补的矩阵再进行协同过滤。
背景技术
随着互联网的普及和计算机技术的迅速发展,信息量爆炸性的增长,个性化的推荐系统成为继搜索引擎以后,一个越来越受关注的研究领域。随着学者们的研究,越来越多的推荐算法被提出,其中包括:基于内容的推荐,协同过滤推荐算法以及组合推荐算法。
协同过滤作为当前应用最成功的推荐技术,在很多领域中得到了实际的应用,但其仍存在许多问题需要解决。推荐系统中普遍存在数据稀疏性、冷启动和可扩展性等问题。基于邻域的算法是协同过滤算法中最基本的算法,该算法分为两大类,一类是基于用户的协同过滤算法,另一类是基于项目的协同过滤算法。基于邻域的算法的缺点是:当该矩阵非常稀疏时,算法很难为目标用户找到相似用户,从而使推荐质量受到很大的限制。如果在计算之前根据相似性对用户进行聚类,准确的选取邻用户,就可以减小计算量的同时,提供较为准确的推荐结果。
发明内容
为解决上述问题,本发明公开了一种协同过滤处理器,基于聚类协同过滤算法,它首先利用k-means聚类算法将具有相似兴趣爱好的用户分配到相同的类中;然后在每一类中,采用基于用户的协同过滤算法来计算用户间的相似性和形成最近邻居,完成未评分数据的预测,产生Top-N推荐。聚类技术大大缩小了计算的范围,提高了推荐算法的运行速度。实验表明,本发明明显提高了推荐系统的推荐质量。
本发明是采取以下技术方案实现的:一种协同过滤处理器,包括采用改进的K-means算法对用户聚类、选出与目标用户属性相近的用户组成的簇、得到目标用户的最近邻居集合和产生推荐集四个步骤。
本发明的实现还包括以下的技术方案:
(1) 对MovieLens数据集进行预处理,采用改进的K-means算法对用户聚类。
(2) 选出与目标用户属性相近的用户组成的簇,对该簇构建原始的用户-项目评分矩阵。
(3) 计算得到目标用户的最近邻居集合。
(4) 根据最近邻居集对项目的评分值,计算目标用户对待推荐项的评分,产生TopN推荐集。
其中k-mean基本算法描述
目前,使用最广泛的聚类技术是K-means算法。其基本算法可描述为:先随机选定k个对象为k个簇的中心,再计算剩下的对象与各中心的相似度,把这些对象分配到相应的簇中,然后选出新的k个聚类中心。重复以上步骤,直到k个中心稳定不再变化为止。如公式(2.1)所示:
式中,p代表集合中的待分配点,m代表每个簇的中心点。
其中目标用户的最近邻居集合计算
目标用户的最近邻居集合表示不同用户之间的相似程度,如果不同的用户对一些项目的评分比较相似,说明他们对这些项目感兴趣程度也趋向一致。度量用户之间相似性的方法主要有如下3种方法:余弦相似度(cosine similarity)(公式(2.2))、皮尔逊系数(pearson correlation)(公式(2.3))和修正的余弦相似度(adjust cosine similarity)(公式(2.4))。
(2.2)
式中,、分别表示用户u和用户v对项目的评分,和分别表示用户u和用户v对各自项目的平均分。表示用户u和用户v共同评分的项目集合,、分别表示用户u和用户v各自评过分的项目集合。本发明中采用修正的余弦相似度作为计算得到目标用户的最近邻居集合的方法。
本发明的优点和有益效果,具体体现在以下几个方面:
1. 本发明大大缩小了计算的范围,提高了推荐算法的运行速度。
2. 本发明明显提高了推荐系统的推荐质量。
附图说明
图1是本发明的执行步骤示意图。
具体实施方式
以下结合说明书附图1对本发明的实施做进一步详述:
一种协同过滤处理器,包括采用改进的K-means算法对用户聚类、选出与目标用户属性相近的用户组成的簇、得到目标用户的最近邻居集合和产生推荐集四个步骤。
本发明的主要思想是通过聚类将特征相同的用户聚为一类降低矩阵的维度,减少空间复杂度,然后通过矩阵分解对稀疏矩阵进行填补,对填补的矩阵再进行协同过滤。该发明的具体步骤说明书附图1所示,
(1) 对MovieLens数据集进行预处理,采用改进的K-means算法对用户聚类。
上述(1)(2)(3)的具体描述如下:
K-means算法的忧点是实现比较简单,算法效率较高,扩展性也比较好。尤其是对象相对密集且簇与簇之间的差别较明显时,算法效果非常好。此算法在大数据集处理时有高效的性能。但是,K-means算法的初始聚类中心是随机选取的,此算法对初始值的选择较为敏感,不同的初始聚类中心会产生不同的聚类结果,这将导致聚类结果有一定的不合理性。对算法的改进:经过研究发现,评分数目多的用户可作为一部分用户的代表,让这些用户作为初始聚类的中心,可以有较好的代表性。所以,本发明选择评分数量最多的k个用户为初始聚类的中心,用修正的余弦相似度作为上述(3)的实现方法,具体步骤如下:
步骤2:Repeat;
For Each user UU;
Endfor
Endfor;
Endfor;
Endfor;
步骤3:Until 均方差值E达到最小为止;
步骤4:Return;
得到目标用户的最近邻居集合
上述(4) 的具体描述如下:
产生推荐集的主要工作就是计算预测评分,在计算预测评分时,经常采用K近邻方法,即选择与当前用户相似度最高的K个用户作为当前用户的邻居节点来进行计算。设表示和用户u兴趣最相近的个用户的集合,利用式(3.1)预测目标用户u对未评分项i的评分值:
利用本发明所述的技术方案,或本领域的技术人员在本发明技术方案的启发下,设计出类似的技术方案,而达到上述技术效果的,均是落入本发明的保护范围。
Claims (4)
1.一种协同过滤处理器,包括采用改进的K-means算法对用户聚类、选出与目标用户属性相近的用户组成的簇、得到目标用户的最近邻居集合和产生推荐集四个步骤。
2.根据权利要求1所述的一种协同过滤处理器,其特征在于:所述采用改进的K-means算法对用户聚类步骤中选择评分数量最多的k个用户为初始聚类的中心。
3.根据权利要求1所述的一种协同过滤处理器,其特征在于:所述得到目标用户的最近邻居集合步骤采用修正的余弦相似度作为实现方法。
4.根据权利要求1所述的一种协同过滤处理器,其特征在于:所述产生推荐集步骤采用K近邻方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310433610.6A CN103886003A (zh) | 2013-09-22 | 2013-09-22 | 一种协同过滤处理器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310433610.6A CN103886003A (zh) | 2013-09-22 | 2013-09-22 | 一种协同过滤处理器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103886003A true CN103886003A (zh) | 2014-06-25 |
Family
ID=50954898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310433610.6A Pending CN103886003A (zh) | 2013-09-22 | 2013-09-22 | 一种协同过滤处理器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103886003A (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320702A (zh) * | 2014-08-04 | 2016-02-10 | Tcl集团股份有限公司 | 一种用户行为数据的分析方法、装置及智能电视 |
CN105354208A (zh) * | 2015-09-21 | 2016-02-24 | 江苏讯狐信息科技有限公司 | 一种大数据信息挖掘方法 |
CN106127506A (zh) * | 2016-06-13 | 2016-11-16 | 浙江大学 | 一种基于主动学习解决商品冷启动问题的推荐方法 |
CN106776859A (zh) * | 2016-11-28 | 2017-05-31 | 南京华苏科技有限公司 | 基于用户偏好的移动应用App推荐系统 |
CN106919647A (zh) * | 2017-01-17 | 2017-07-04 | 浙江工业大学 | 一种基于聚类的网络结构相似性推荐方法 |
CN107122390A (zh) * | 2017-03-04 | 2017-09-01 | 华数传媒网络有限公司 | 基于用户群组的推荐系统构建方法 |
CN107944487A (zh) * | 2017-11-20 | 2018-04-20 | 北京信息科技大学 | 一种基于混合协同过滤算法的作物育种品种推荐方法 |
CN108804683A (zh) * | 2018-06-13 | 2018-11-13 | 重庆理工大学 | 结合矩阵分解和协同过滤算法的电影推荐方法 |
CN109474703A (zh) * | 2018-12-24 | 2019-03-15 | 杭州云纪网络科技有限公司 | 个性化产品组合推送方法、装置及系统 |
CN112967102A (zh) * | 2021-02-04 | 2021-06-15 | 江苏警官学院 | 以物流数据建立客户画像的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038659A1 (en) * | 2005-08-15 | 2007-02-15 | Google, Inc. | Scalable user clustering based on set similarity |
CN101685458A (zh) * | 2008-09-27 | 2010-03-31 | 华为技术有限公司 | 一种基于协同过滤的推荐方法和系统 |
CN103279552A (zh) * | 2013-06-06 | 2013-09-04 | 浙江大学 | 一种基于用户兴趣分组的协同过滤推荐方法 |
-
2013
- 2013-09-22 CN CN201310433610.6A patent/CN103886003A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038659A1 (en) * | 2005-08-15 | 2007-02-15 | Google, Inc. | Scalable user clustering based on set similarity |
CN101685458A (zh) * | 2008-09-27 | 2010-03-31 | 华为技术有限公司 | 一种基于协同过滤的推荐方法和系统 |
CN103279552A (zh) * | 2013-06-06 | 2013-09-04 | 浙江大学 | 一种基于用户兴趣分组的协同过滤推荐方法 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105320702B (zh) * | 2014-08-04 | 2019-02-01 | Tcl集团股份有限公司 | 一种用户行为数据的分析方法、装置及智能电视 |
CN105320702A (zh) * | 2014-08-04 | 2016-02-10 | Tcl集团股份有限公司 | 一种用户行为数据的分析方法、装置及智能电视 |
CN105354208A (zh) * | 2015-09-21 | 2016-02-24 | 江苏讯狐信息科技有限公司 | 一种大数据信息挖掘方法 |
CN106127506A (zh) * | 2016-06-13 | 2016-11-16 | 浙江大学 | 一种基于主动学习解决商品冷启动问题的推荐方法 |
CN106127506B (zh) * | 2016-06-13 | 2019-12-17 | 浙江大学 | 一种基于主动学习解决商品冷启动问题的推荐方法 |
CN106776859A (zh) * | 2016-11-28 | 2017-05-31 | 南京华苏科技有限公司 | 基于用户偏好的移动应用App推荐系统 |
CN106919647A (zh) * | 2017-01-17 | 2017-07-04 | 浙江工业大学 | 一种基于聚类的网络结构相似性推荐方法 |
CN106919647B (zh) * | 2017-01-17 | 2020-10-30 | 浙江工业大学 | 一种基于聚类的网络结构相似性推荐方法 |
CN107122390A (zh) * | 2017-03-04 | 2017-09-01 | 华数传媒网络有限公司 | 基于用户群组的推荐系统构建方法 |
CN107122390B (zh) * | 2017-03-04 | 2020-09-25 | 华数传媒网络有限公司 | 基于用户群组的推荐系统构建方法 |
CN107944487A (zh) * | 2017-11-20 | 2018-04-20 | 北京信息科技大学 | 一种基于混合协同过滤算法的作物育种品种推荐方法 |
CN107944487B (zh) * | 2017-11-20 | 2020-01-24 | 北京信息科技大学 | 一种基于混合协同过滤算法的作物育种品种推荐方法 |
CN108804683A (zh) * | 2018-06-13 | 2018-11-13 | 重庆理工大学 | 结合矩阵分解和协同过滤算法的电影推荐方法 |
CN108804683B (zh) * | 2018-06-13 | 2021-11-23 | 重庆理工大学 | 结合矩阵分解和协同过滤算法的电影推荐方法 |
CN109474703A (zh) * | 2018-12-24 | 2019-03-15 | 杭州云纪网络科技有限公司 | 个性化产品组合推送方法、装置及系统 |
CN112967102A (zh) * | 2021-02-04 | 2021-06-15 | 江苏警官学院 | 以物流数据建立客户画像的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103886003A (zh) | 一种协同过滤处理器 | |
Konstas et al. | On social networks and collaborative recommendation | |
US20170132230A1 (en) | Systems and methods for recommending temporally relevant news content using implicit feedback data | |
Zhou et al. | Functional matrix factorizations for cold-start recommendation | |
CN106777051A (zh) | 一种基于用户组的多反馈协同过滤推荐方法 | |
CN107220365A (zh) | 基于协同过滤与关联规则并行处理的精准推荐系统及方法 | |
CN107894998B (zh) | 视频推荐方法及装置 | |
CN108665323A (zh) | 一种用于理财产品推荐系统的集成方法 | |
CN106168980A (zh) | 多媒体资源推荐排序方法及装置 | |
CN104239496B (zh) | 一种结合模糊权重相似性度量和聚类协同过滤的方法 | |
CN104462383A (zh) | 一种基于用户多种行为反馈的电影推荐方法 | |
Aghdam et al. | A novel non-negative matrix factorization method for recommender systems | |
Yang et al. | Prototype-based image search reranking | |
CN103744904B (zh) | 一种提供信息的方法及装置 | |
US20160299968A1 (en) | Topical based media content summarization system and method | |
CN108874916A (zh) | 一种层叠组合协同过滤推荐方法 | |
CN106776859A (zh) | 基于用户偏好的移动应用App推荐系统 | |
CN106952130A (zh) | 基于协同过滤的通用物品推荐方法 | |
CN104899321A (zh) | 一种基于项目属性评分均值的协同过滤推荐方法 | |
KR101924200B1 (ko) | 감성 기반의 이미지 선택 장치 및 방법 | |
Wang et al. | Combining user-based and item-based collaborative filtering techniques to improve recommendation diversity | |
Yang et al. | A collaborative filtering recommendation algorithm based on user clustering with preference types | |
Liu et al. | On integrating network and community discovery | |
CN109446402A (zh) | 一种搜索方法及装置 | |
CN101540061A (zh) | 基于模拟退火的无序图像拓扑有序化匹配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140625 |