一种基于云计算的智能推荐方法及系统技术方案

技术编号:16153065 阅读:25 留言:0更新日期:2017-09-06 18:23
本发明专利技术涉及一种基于云计算的智能推荐方法,基于项目或物品的协同过滤算法在Hadoop云计算平台上实现,包括如下步骤:S1建立物品的同现矩阵;S2建立用户对物品的评分矩阵;S3矩阵计算推荐结果;S4推荐结果存储;S5结果推荐。本发明专利技术还公开了一种基于云计算的智能推荐系统。本发明专利技术一方面可以使用云计算的并行编程模型解决算法的搞复杂度问题,将复杂的运算分解成简单的任务执行。另一方面云计算可以提供大规模数据的存储系统,脱离了单个计算机的硬件限制。本发明专利技术将推荐算法和Hadoop云计算平台有效集合,通过MapReduce分布式编程模型实现了推荐算法的并行化提高了算法的运行效率。

【技术实现步骤摘要】
一种基于云计算的智能推荐方法及系统
本专利技术涉及资源推荐
,具体涉及一种基于云计算的智能推荐方法及系统。
技术介绍
在互联网技术和信息技术的快速的发展下,人们生活的许多方面已经受到了互联网科技的影响,在我们使用互联网产品的同时,数据总是在不断地产生。某些大型企业每天的数据量已达数百TB,而数据的存储总量也早已超过1000PB。在信息如此增长的态势下,虽然通过搜索技术可以过滤大部分不相关的商品,但是在庞大的数据库中存在着大量的用户潜在感兴趣的商品,所以用户需要一种筛选有效信息的服务,这种服务的需求直接导致推荐系统的产生。推荐系统可以从大量的信息中挖掘用户的兴趣,针对不同用户的兴趣提供个性化的服务。然而从大量的信息中挖掘用户的兴趣,一方面需要精确的挖掘算法,另一方面也需要强大的计算能力。虽然企业可以使用拥有强大计算能力的设备对用户的爱好进行挖掘,但由于这种高性能设备的使用,使成本大大的升高。云计算的出现恰恰满足了企业进行数据挖掘的需求,云计算可以在廉价的机器上实现大规模存储和高速运算,为企业进行个性化服务提供了新的方式。现有推荐系统中,使用最多的推荐算法就是协同过滤推荐算法,协同过滤算法法理论上可以推荐世界上的任何一种东西。它又分为两种,基于用户的协同过滤算法(UserCF)和基于项目协同过滤算法(ItemCF)。UserCF的主要思想是:基于用户对物品的偏好找到相邻邻居用户,然后将邻居用户喜欢的推荐给当前用户。计算上,就是将一个用户对所有物品的偏好作为一个向量来计算用户之间的相似度,找到K邻居后,根据邻居的相似度权重以及他们对物品的偏好,预测当前用户没有偏好的未涉及物品,计算得到一个排序的物品列表作为推荐。ItemCF的原理和UserCF类似,只是在计算邻居时采用物品本身,而不是从用户的角度,即基于用户对物品的偏好找到相似的物品,然后根据用户的历史偏好,推荐相似的物品。从计算的角度看,就是将所有用户对某个物品的偏好作为一个向量来计算物品之间的相似度,得到物品的相似物品后,根据用户历史的偏好预测当前用户还没有表示偏好的物品,计算得到一个排序的物品列表作为推荐。王国霞,刘贺平在“个性化系统综述”(计算机工程与应用,2012,48(7):66-76.)论文中就讲述了这种传统的协同过滤推荐算法。现有技术的缺点就是传统推荐算法复杂度非常高而导致运算效率低下,而且常规的数据挖掘往往都是建立在大规模数据集合之上,复杂的计算和大规模的数据受限于计算机的硬件限制无法取得理想的运行结果。传统的单机串行运算已经无法满足高复杂度和大数据的处理需求。
技术实现思路
本专利技术的目的是针对现有技术中的不足,提供一种基于云计算的智能推荐方法及系统,实现了推荐算法的并行化提高了算法的运行效率。为实现上述目的,本专利技术公开了如下技术方案:一种基于云计算的智能推荐方法,基于项目或物品的协同过滤算法在Hadoop云计算平台上实现,包括如下步骤:S1建立物品的同现矩阵:按用户分组,找到每个用户所选的物品,单独出现计数及两两一组计数;S2建立用户对物品的评分矩阵:按用户分组,找到每个用户所选的物品及评分;S3矩阵计算推荐结果:同现矩阵*评分矩阵=推荐结果;S4推荐结果存储:将获取的推荐结果发送至应用层的数据库中存储;S5结果推荐:应用层根据推荐结果对用户进行推荐。进一步的,所述步骤S1中,建立物品的同现矩阵的具体步骤如下:任意选取互联网站上的用户评分数据集score.csv,每行3个字段,依次是用户id、物品id和用户对物品的评分,根据物品id进行排序,如下表所示:有n个用户给物品101打分,则R11=n,有m个用户同时给物品101和102打分,则R12=m,以此类推,最终,表中R的值组成的矩阵即为同现矩阵。进一步的,所述步骤S2中,建立用户对物品的评分矩阵的具体步骤如下:以用户偏好作为一个评分矩阵,而每个用户的评分矩阵是一个n维的向量,每个维度代表一个物品,偏好值就是向量的每个分量,0代表用户对该物品无偏好,用户对物品的评分矩阵同样来自数据集score.csv,评分矩阵包括了用户对所有物品的打分,若无打分,则矩阵此列为0。进一步的,所述步骤S3中,矩阵计算推荐结果采用MapReduce并行运算,计算矩阵乘法。一种基于云计算的智能推荐系统,包括:业务系统模块,用于记录用户的行为和对物品的打分,并将数据存储至数据库;第一定时器模块,用于每隔若干小时,由数据库增量向HDFS导入数据,其中,HDFS为Hadoop分布式文件系统;MapReduce模块,用于大数据并行运算,运行推荐算法将HDFS中的推荐结果发送至业务系统模块的数据库;第二定时器模块,用于实现从HDFS导出推荐结果到数据库的间隔时间。进一步的,所述数据库增量向HDFS导入的数据包括用户id、物品id、价值和时间。本专利技术公开的一种基于云计算的智能推荐方法及系统,具有以下有益效果:本专利技术一方面可以使用云计算的并行编程模型解决算法的搞复杂度问题,将复杂的运算分解成简单的任务执行。另一方面云计算可以提供大规模数据的存储系统,脱离了单个计算机的硬件限制。本专利技术将推荐算法和Hadoop云计算平台有效集合,通过MapReduce分布式编程模型实现了推荐算法的并行化提高了算法的运行效率。附图说明图1是本专利技术的流程图,图2是本专利技术的推荐系统架构图。具体实施方式下面将对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术的核心是提供一种基于云计算的智能推荐方法及系统,实现了推荐算法的并行化提高了算法的运行效率。请参见图1-图2。一种基于云计算的智能推荐方法,基于项目或物品的协同过滤算法在Hadoop云计算平台上实现,包括如下步骤:S1建立物品的同现矩阵:按用户分组,找到每个用户所选的物品,单独出现计数及两两一组计数;可选的,建立物品的同现矩阵的具体步骤如下:任意选取互联网站上的用户评分数据集score.csv,每行3个字段,依次是用户id、物品id和用户对物品的评分,根据物品id进行排序,如下表所示:物品id101102103…101R11R12R13…102R21R22R23…103R31R32R33………………有n个用户给物品101打分,则R11=n,有m个用户同时给物品101和102打分,则R12=m,以此类推,最终,表中R的值组成的矩阵即为同现矩阵。S2建立用户对物品的评分矩阵:按用户分组,找到每个用户所选的物品及评分;可选的,建立用户对物品的评分矩阵的具体步骤如下:以用户偏好作为一个评分矩阵,而每个用户的评分矩阵是一个n维的向量,每个维度代表一个物品,偏好值就是向量的每个分量,0代表用户对该物品无偏好,用户对物品的评分矩阵同样来自数据集score.csv,评分矩阵包括了用户对所有物品的打分,若无打分,则矩阵此列为0。S3矩阵计算推荐结果:同现矩阵*评分矩阵=推荐结果;可选的,矩阵计算推荐结果采用MapReduce并行运算,计算矩阵乘法。设A=(aij)mn,B=(bjk)nl,那么相乘结果C=(cik)ml。在M本文档来自技高网
...
一种基于云计算的智能推荐方法及系统

【技术保护点】
一种基于云计算的智能推荐方法,其特征在于,基于项目或物品的协同过滤算法在Hadoop云计算平台上实现,包括如下步骤:S1建立物品的同现矩阵:按用户分组,找到每个用户所选的物品,单独出现计数及两两一组计数;S2建立用户对物品的评分矩阵:按用户分组,找到每个用户所选的物品及评分;S3矩阵计算推荐结果:同现矩阵*评分矩阵=推荐结果;S4推荐结果存储:将获取的推荐结果发送至应用层的数据库中存储;S5结果推荐:应用层根据推荐结果对用户进行推荐。

【技术特征摘要】
1.一种基于云计算的智能推荐方法,其特征在于,基于项目或物品的协同过滤算法在Hadoop云计算平台上实现,包括如下步骤:S1建立物品的同现矩阵:按用户分组,找到每个用户所选的物品,单独出现计数及两两一组计数;S2建立用户对物品的评分矩阵:按用户分组,找到每个用户所选的物品及评分;S3矩阵计算推荐结果:同现矩阵*评分矩阵=推荐结果;S4推荐结果存储:将获取的推荐结果发送至应用层的数据库中存储;S5结果推荐:应用层根据推荐结果对用户进行推荐。2.根据权利要求1所述的一种基于云计算的智能推荐方法,其特征在于,所述步骤S1中,建立物品的同现矩阵的具体步骤如下:任意选取互联网站上的用户评分数据集score.csv,每行3个字段,依次是用户id、物品id和用户对物品的评分,根据物品id进行排序,如下表所示:物品id101102103…101R11R12R13…102R21R22R23…103R31R32R33………………有n个用户给物品101打分,则R11=n,有m个用户同时给物品101和102打分,则R12=m,以此类推,最终,表中R的值组成的矩阵即为同现矩阵。3.根据权利要求1所述的一种基于云计算的智能推荐...

【专利技术属性】
技术研发人员:张高鹏韩宾王明超
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1