期刊鉴别 论文检测 免费论文 特惠期刊 学术答疑 发表流程

基于用户特征和商品特征的组合协同过滤算法

时间:2015-04-16 11:47 文章来源:http://www.lunwenbuluo.com 作者:孟庆庆等 点击次数:

  摘要:协同过滤算法在电子商务网站推荐系统中的应用非常广泛,其通过分析大量用户的历史行为数据,挖掘用户的兴趣,向用户推荐合适的物品。然而,协同过滤算法存在数据稀疏性问题。针对该问题,提出一种基于用户特征和商品特征的组合协同过滤推荐算法。通过用户基本属性特征、物品分类属性特征以及用户的历史评分记录,计算用户的相似性和物品的相似性,获得近邻用户和相似物品;依据改进的基于物品协同过滤和基于用户协同过滤组合推荐算法,为项目进行评分。实验表明,该方法能降低预测结果的平均绝对误差,提高推荐精度。 

  关键词:协同过滤;属性特征;数据稀疏性;平均绝对误差 

  中图分类号:TP312 

  文献标识码:A 文章编号:1672-7800(2015)003-0041-03 

  0 引言 

  随着互联网信息的海量增长,一方面用户很难从海量信息中发现自己真正所需的信息;论文答辩另一方面也使得大量少人问津的信息成为网络中的“暗信息”,无法被一般用户获取[1]。推荐系统[2-4]作为互联网信息和用户快速连接的一种工具,可以帮助用户方便获取感兴趣的信息。推荐系统技术的出现,使用户不再是被动的网页浏览者,而成为信息获取的主动参与者[5]。推荐系统的核心思想是从海量的用户历史行为数据中分析出与用户兴趣相关的物品信息,并向用户进行推荐。推荐系统在电子商务领域应用非常广泛,如淘宝、京东、亚马逊等大型网站均有应用。亚马逊的购书推荐系统,可根据用户的购买情况,向用户推荐相关书籍;360浏览器的“猜你喜欢”功能,可根据用户的点击情况,向用户推荐相关信息等。 

  目前,对于推荐系统还没有明确的分类体系,本文对推荐系统作如下划分:①根据算法原理,分为基于协同过滤算法的推荐、基于内容的推荐、基于关联规则的推荐、基于知识的推荐、混合推荐;②根据应用场景,分为电子商务应用中的推荐、社交好友的推荐、信息内容的推荐;③根据使用的分析数据,分为基于用户行为数据的推荐、基于标签的推荐、基于上下文信息的推荐、基于社交网络的推荐。 

  随着互联网络的发展和大数据浪潮兴起,人们逐渐意识到推荐引擎的重要性,好的推荐系统能够充分挖掘隐含在大数据中的信息,帮助用户迅速获得所需信息,提高信息查询效率,改善用户体验,同时方便为企业推销产品。目前,apache mahout推荐系统平台,可以帮助开发人员快速搭建推荐系统。 

  1 传统推荐算法 

  1.1 协同过滤算法 

  协同过滤算法是目前应用最为广泛的个性化推荐技术[6-7],其中Grundy被认为是第一个投入应用的协同过滤系统[8]。协同过滤算法主要有两种:基于用户的协同过滤和基于物品的协同过滤。基于用户协同过滤的基本思想是在大量的用户中挖掘出和目标用户具有相同兴趣的用户,作为目标用户的近邻,根据近邻与目标用户的相似度,预测目标用户对目标物品的喜爱程度,根据最终计算结果排序,将评分较高的物品推荐给用户。基于物品的协同过滤的基本思想是:如大量用户对两个物品的评分非常相近,则两个物品是相似的,先计算出物品之间的相似性,再找出近邻物品,结合用户对近邻物品的评分计算出对当前物品的评分。基于物品的协同过滤算法分为两步:①计算物品之间的相似度;②根据物品的相似度和用户的历史行为生成推荐列表[9]。 

  1.2 相似度计算方法 

  协同过滤中,由用户的历史评分记录生成用户评分矩阵Rm*n,根据Rm*n计算用户相似度以及物品的相似度,相似度计算在协同过滤中非常关键,可以提高准确度。协同过滤算法中常用的相似性度量方法有余弦相似性、皮尔森相似度、修正余弦相似性等。余弦相似性的计算将用户评分看作n维空间中的向量,计算向量之间的夹角余弦度量相似性的大小: 

  2 基于用户特征和商品特征的组合协同过滤算法 

  在协同过滤算法中,用户和商品相似度的计算是非常重要的步骤,精确的近邻计算结果可以提高信息推荐的准确度。传统协同过滤仅依据用户评分的历史记录进行相似度计算,没有考虑用户和商品本身的特征。本文提出一种新的相似度计算方法,能改善相似度的计算结果。 

  2.1 基于用户特征的相似度计算 

  网站注册中一般会要求用户填写基本信息,例如年龄、性别、学历、职业等。本文将用户属性特征信息融入相似度计算,根据采用数据集,考虑用户的性别、年龄、职业信息。 

  (1)性别特征。不同性别的用户对商品的需求是不同的,性别相似度度量计算公式为:

  Sex(u,v)=1,u.sex=v.sex; Sex(u,v)=0, u.sex≠v.sex.(6) 

  (2)年龄特征。不同年龄段的用户对商品的需求不同,年龄相似度度量计算公式为: 

  Age(u,v)=1,|u.age-v.age|<10; Age(u,v)=10/|u.age-v.age|, |u.age-v.age|>10.(7) 

  本文认为年龄差距在10岁以内的用户兴趣相近,其它年龄差距按公式进行度量。(3)职业特征。不同职业的用户对商品的需求不同,职业相似度度量计算公式为: 

  Job(u,v)=1,u.job=v.job; Job(u,v)=0, u.job≠v.job. (8) 

  用户特征相似度计算公式为: 

  SimAttr(u,v)=a* Sex(u,v)+b* Age(u,v)+(1-a-b)* Job(u,v)(9) 

  其中a,b分别为性别特征和年龄特征所占权重,可根据具体情况,结合传统协同过滤算法反复实验获得适当的权重。用户相似度计算公式为: 

  Sim(u,v)=c*SimMatrix(u,v)+ d*SimAttr(u,v)(10) 

  其中,SimMatrix(u,v)为根据用户评分矩阵计算的相似度结果;c,d分别为两种相似度计算所占权重,具体数值可结合传统协同过滤算法反复实验获得。


  •   论文部落提供核心期刊、国家级期刊、省级期刊、SCI期刊和EI期刊等咨询服务。
  •   论文部落拥有一支经验丰富、高端专业的编辑团队,可帮助您指导各领域学术文章,您只需提出详细的论文写作要求和相关资料。
  •  
  •   论文投稿客服QQ: 论文投稿2863358778 论文投稿2316118108
  •  
  •   论文投稿电话:15380085870
  •  
  •   论文投稿邮箱:lunwenbuluo@126.com

联系方式

  • 论文投稿客服QQ: 论文投稿2863358778
  • 论文投稿客服QQ: 论文投稿2316118108
  • 论文投稿电话:15380085870
  • 论文投稿邮箱:lunwenbuluo@126.com

热门排行

 
QQ在线咨询
咨询热线:
15380085870
微信号咨询:
lunwenbuluoli