计算机科学 ›› 2019, Vol. 46 ›› Issue (8): 106-110.doi: 10.11896/j.issn.1002-137X.2019.08.017

• 2018 全国高性能计算学术年会 • 上一篇    下一篇

基于GPU加速和非负矩阵分解的并行协同过滤推荐算法

康林瑶, 唐兵, 夏艳敏, 张黎   

  1. (湖南科技大学计算机科学与工程学院 湖南 湘潭411201)
  • 收稿日期:2018-09-15 发布日期:2019-08-15
  • 通讯作者: 唐兵(1982-),男,博士,副教授,主要研究方向为分布式计算与大数据,E-mail:btang@hnust.edu.cn
  • 作者简介:康林瑶(1995-),女,硕士生,主要研究方向为大数据,E-mail:kanglinyao@qq.com;夏艳敏(1995-),女,硕士生,主要研究方向为服务计算与大数据;张黎(1981-),女,硕士,讲师,主要研究方向为大数据
  • 基金资助:
    国家自然科学基金项目(61602169),湖南省自然科学基金项目(2018JJ2135),湖南省教育厅科研项目(18A186)

GPU-accelerated Non-negative Matrix Factorization-based Parallel Collaborative Filtering Recommendation Algorithm

KANG Lin-yao, TANG Bing, XIA Yan-min, ZHANG Li   

  1. (School of Computer Science and Engineering,Hunan University of Science and Technology,Xiangtan,Hunan 411201,China)
  • Received:2018-09-15 Published:2019-08-15

摘要: 协同过滤(CF)已经在推荐系统中得到了广泛的应用。但是随着用户和项目规模的增大,协同过滤算法的运行效率以及结果的正确性会大大降低。针对这一问题,文中提出了一种基于GPU的非负矩阵分解(NMF)的并行协同过滤方法,充分利用NMF数据降维和特征提取的优势以及CUDA的多核并行计算模式,进行维数简化和用户的相似性计算。该算法在提高精确性的同时降低了计算耗费,可以较好地解决协同过滤推荐系统所存在的稀疏性和扩展性等问题,快速产生精确的个性化推荐结果。基于NVIDIA CUDA设备和真实的MovieLens用户评分数据集,将所设计的并行NMF协同过滤算法与传统的基于用户的和基于物品的协同过滤算法进行了比较,实验结果表明,所设计的并行NMF协同过滤算法达到了较快的处理速度以及较高的推荐准确率。

关键词: 协同过滤, 非负矩阵分解, GPU, 推荐算法

Abstract: Collaborative filtering (CF) is widely used in recommendation systems.However,with the increase of user and item number,the efficiency of collaborative filtering algorithm and the correctness of the result will be greatly reduced.To solve this problem,this paper proposed a GPU-accelerated non-negative matrix factorization(NMF)-based parallel collaborative filtering algorithm.By utilizing the advantages of data dimensionality reduction and feature extraction of NMF,as well as the multi-core parallel computing mode of CUDA,dimension reduction and user similarity are realized.The proposed algorithm improves the recommendation accuracy and also reduces the computational cost,which can better solve the sparseness and scalability of CF-based recommendation system,and generate accurate and persona-lized recommendations quickly.The new algorithm was evaluated on a NVIDIA CUDA device using real MovieLens datasets.Experimental results show that,NMF-based collaborative filtering outperforms traditional User-based and Item-based CF with higher processing speed and higher accuracy recommendations

Key words: Collaborative filtering, Non-negative matrix factorization, GPU, Recommendation algorithm

中图分类号: 

  • TP391
[1] DENG A L,ZHU Y Y,SHI B L.Collaborative filtering Recommendation algorithm based on project score prediction [J].Journal of Software,2003,14(9):1621-1628.(in Chinese) 邓爱林,朱扬勇,施伯乐.基于项目评分预测的协同过滤推荐算法[J].软件学报,2003,14(9):1621-1628.
[2] LEE D D H,SEUNG S.Learning the parts of objects by nonnegative matrix factorization [J].Nature,1999,401(6755):788-791.
[3] LIU J F,GUO L.Comparison and analysis of several matrix multiplications on CPU and GPU [J].Computer Engineering and Applications,2011,47(19):9-11,23.(in Chinese) 刘进锋,郭雷.CPU与GPU上几种矩阵乘法的比较与分析[J].计算机工程与应用,2011,47(19):9-11,23.
[4] CHENG H,ZHANG Y Q,ZHANG X Y,et al.Implementation and performance analysis of CPU-GPU parallel matrix multiplication [J].Computer Engineering,2010,36(13):24-26,29.(in Chinese) 程豪,张云泉,张先轶,等.CPU-GPU 并行矩阵乘法的实现与性能分析[J].计算机工程,2010,36(13):24-26,29.
[5] LIU W X,ZHENG N N,YOU Q B.Non-negative matrix factorization and its application in pattern recognition [J].Chinese Science Bulletin,2006,51(3):241-250.(in Chinese) 刘维湘,郑南宁,游屈波.非负矩阵分解及其在模式识别中的应用[J].科学通报,2006,51(3):241-250.
[6] WANG K J,ZUO C T.Research progress of feature extraction techniques for nonnegative matrix factorization [J].Application Research of Computers,2014,31(4):970-975.(in Chinese) 王科俊,左春婷.非负矩阵分解特征提取技术的研究进展[J].计算机应用研究,2014,31(4):970-975.
[7] CHEN Y H,REGE M,DONG M,et al.Non-negative matrix factorization for semi-supervised data clustering [J].Knowledge and Information Systems,2008,17(3):355-379.
[8] KOREN Y,BELL R,VOLINSKY C.Matrix factorization techniques for recommender systems [J].IEEE Computer,August 2009,42(8):40-49.
[9] YANG Y,XIANG Y,XIONG L.Collaborative filtering recommendation algorithm based on matrix decomposition and user neighbor model[J].Computer Application,2012,32(2):395-398.(in Chinese) 杨阳,向阳,熊磊.基于矩阵分解与用户近邻模型的协同过滤推荐算法[J].计算机应用,2012,32(2):395-398.
[10] LI G,LI L.Collaborative filtering algorithm based on matrix decomposition[J].Computer Engineering and Applications,2011,47(30):4-7.(in Chinese) 李改,李磊.基于矩阵分解的协同过滤算法[J].计算机工程与应用,2011,47(30):4-7.
[1] 王涵, 夏鸿斌. LDA模型和列表排序混合的协同过滤推荐算法[J]. 计算机科学, 2019, 46(9): 216-222.
[2] 邓存彬, 虞慧群, 范贵生. 融合动态协同过滤和深度学习的推荐算法[J]. 计算机科学, 2019, 46(8): 28-34.
[3] 张艳红, 张春光, 周湘贞, 王怡鸥. 项目多属性模糊联合的多样性视频推荐算法[J]. 计算机科学, 2019, 46(8): 78-83.
[4] 王旭, 庞巍, 王喆. 异构信息网络中基于元结构的协同过滤算法[J]. 计算机科学, 2019, 46(6A): 397-401.
[5] 何孝文, 胡一飞, 王海平, 陈默. 在线学习非负矩阵分解[J]. 计算机科学, 2019, 46(6A): 473-477.
[6] 刘晴晴, 罗永龙, 汪逸飞, 郑孝遥, 陈文. 基于SVD填充的混合推荐算法[J]. 计算机科学, 2019, 46(6A): 468-472.
[7] 黄梦婷, 张灵, 姜文超. 基于流形正则化的多类型关系数据联合聚类方法[J]. 计算机科学, 2019, 46(6): 64-68.
[8] 卢竹兵, 李玉州. 基于网络评论情感信任分析的推荐策略[J]. 计算机科学, 2019, 46(6): 75-79.
[9] 苏畅, 武鹏飞, 谢显中, 李宁. 基于用户兴趣和地理因素的兴趣点推荐方法[J]. 计算机科学, 2019, 46(4): 228-234.
[10] 张宏丽, 白翔宇, 李改梅. 利用最近邻域推荐且结合情境感知的个性化推荐算法[J]. 计算机科学, 2019, 46(4): 235-240.
[11] 王永, 王永东, 邓江洲, 张璞. 融合Jensen-Shannon散度的推荐算法[J]. 计算机科学, 2019, 46(2): 210-214.
[12] 张逸然, 陈龙, 安向哲, 颜深根. 面向GPU计算平台的归约算法的性能优化研究[J]. 计算机科学, 2019, 46(2): 306-314.
[13] 葛梦凡, 刘真, 王娜娜, 田靖玉. 加入标签迁移的跨领域项目推荐算法[J]. 计算机科学, 2019, 46(10): 1-6.
[14] 张洪波, 王佳蕾, 张丽娟, 刘志宏. 基于信任网络的协同过滤推荐方法[J]. 计算机科学, 2018, 45(8): 146-150.
[15] 贾旭, 孙福明, 李豪杰, 曹玉东. 基于有监督双正则NMF的静脉识别算法[J]. 计算机科学, 2018, 45(8): 283-287.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
[1] 雷丽晖,王静. 可能性测度下的LTL模型检测并行化研究[J]. 计算机科学, 2018, 45(4): 71 -75, 88 .
[2] 王欢,张云峰,张艳. 一种基于CFDs规则的修复序列快速判定方法[J]. 计算机科学, 2018, 45(3): 311 -316 .
[3] 孙启,金燕,何琨,徐凌轩. 用于求解混合车辆路径问题的混合进化算法[J]. 计算机科学, 2018, 45(4): 76 -82 .
[4] 钟菲,杨斌. 基于主成分分析网络的车牌检测方法[J]. 计算机科学, 2018, 45(3): 268 -273 .
[5] 韩奎奎,谢在鹏,吕鑫. 一种基于改进遗传算法的雾计算任务调度策略[J]. 计算机科学, 2018, 45(4): 137 -142 .
[6] 罗霄阳,霍宏涛,王梦思,陈亚飞. 基于多残差马尔科夫模型的图像拼接检测[J]. 计算机科学, 2018, 45(4): 173 -177 .
[7] 朱淑芹,王文宏,李俊青. 针对基于感知器模型的混沌图像加密算法的选择明文攻击[J]. 计算机科学, 2018, 45(4): 178 -181, 189 .
[8] 文俊浩,孙光辉,李顺. 基于用户聚类和移动上下文的矩阵分解推荐算法研究[J]. 计算机科学, 2018, 45(4): 215 -219, 251 .
[9] 朱文强. 面向O2O服务的移动社交网络个性化可信群体识别模型[J]. 计算机科学, 2018, 45(6): 76 -83 .
[10] 金瑞, 刘作学. 一种采用时隙对准方式的TDMA自组网同步协议[J]. 计算机科学, 2018, 45(6): 84 -88,110 .