一种基于属性与评分的个性化推荐方法技术

技术编号:12256357 阅读:119 留言:0更新日期:2015-10-28 19:39
本发明专利技术公开了一种基于属性与评分的个性化推荐方法,包括以下步骤:S1、计算各用户之间的相似性;S2、计算各项目之间的相似性;S3、建立用户相似性矩阵;S4、建立项目相似性矩阵;S5、建立最相似用户对最相近项目的评分矩阵;S6、将最相似用户对最相近项目的评分矩阵作为BP神经网络的输入进行训练;S7、判断BP神经网络是否收敛;若是则进入步骤S8;若否则进行BP神经网络参数及函数修改,返回步骤S6;S8、利用BP神经网络对测试集进行运算,产生最终推荐结果并推荐给目标用户。本发明专利技术能够对加入到系统中的新用户进行准确的相关推荐,满足了用户对推荐的需求。

【技术实现步骤摘要】

本专利技术属于推荐机器学习
,具体涉及一种基于属性与评分的个性化推荐 方法的设计。
技术介绍
随着大数据时代的来临,推荐技术在今天显得尤为重要,很多大型的电子商务网 站为了解决信息过载的问题,都不同程度地使用了各种形式的推荐系统。目前个性化推荐 算法大体可分为基于协同过滤技术的推荐算法和基于内容的推荐算法两大类。基于内容的 推荐算法是推荐与目标用户以前选择的产品相似的产品,系统通过学习目标用户已经评价 过的产品数据来获得用户的兴趣描述,再将待推荐产品的数据资料与用户兴趣描述匹配, 决定是否推荐;基于协同过滤技术的推荐算法在当今被认为是应用最广的推荐算法之一, 它的核心思想是基于用户对项目的评分来度量用户间的相似性,从而寻找与目标用户兴趣 最相似的邻居用户,然后利用邻居用户对项目的评分来预测目标用户对该项目的喜好程 度,生成与目标用户行为兴趣最相近的最近邻集合,最后根据最近邻集合对产品的评分预 测目标用户对这些产品的评分,将评分最高的前N项产品推荐给目标用户。基于协同过滤 技术的推荐算法被应用于向用户推荐电影、图书、商品以及科技文献等项目。 基于内容的推荐算法,它不需要依赖用户对项目的评价意见,而是采用计算用户 已经选择的产品内容信息的属性相似度来计算用户之间的相似性,进而对相关用户进行相 应的推荐。这种推荐方式完全忽略了用户自身的信息,同时,基于内容的推荐算法虽然在某 个新项目加入到系统中时,能够很快的推荐给选择了具有相同属性的事物的用户,然而当 某个新用户加入到系统中时,并不能够为该用户进行准确的相关推荐。该算法在挖掘用户 潜在喜好方面没有进行很好的处理,推荐给用户的永远是那些具有相同属性的项目,同时 该算法中属性的划分和提取也是难点。 基于协同过滤技术的推荐算法仅仅依靠用户对项目的评分,从而计算用户之间的 相似性,而忽略了项目本身的属性。用户对每一种属性的喜好是不同的,用户选择某种项 目,可能只是因为其具有的某一种属性。基于协同过滤技术的推荐算法在某个新项目加入 到系统中时,由于系统中没有任何用户选择过本项目以及对该项目进行评分,那么该项目 便永远不会被推荐。同时,当某个新用户加入本系统后,由于找不到与该用户相似的用户, 所以该算法并不能够为新加入的用户进行准确推荐。
技术实现思路
本专利技术的目的是为了解决现有技术中个性化推荐算法无法满足用户对推荐的需 求的问题,提出了 。 本专利技术的技术方案为:,包括以下步骤: S1、根据各用户的评分记录计算各用户之间的相似性; S2、根据各项目的属性计算各项目之间的相似性; S3、选取与目标用户相似性最大的前i个用户,建立用户相似性矩阵; S4、选取与目标项目相似性最大的前j个项目,建立项目相似性矩阵; S5、综合用户相似性矩阵与项目相似性矩阵,建立最相似用户对最相近项目的评 分矩阵; S6、将最相似用户对最相近项目的评分矩阵作为BP神经网络的输入进行训练; S7、判断BP神经网络是否收敛; 若是则进入步骤S8; 若否则进行BP神经网络参数及函数修改,返回步骤S6 ; S8、利用BP神经网络对测试集进行运算,产生最终推荐结果并推荐给目标用户。 进一步地,步骤Sl中采用Pearson相关系数法计算各用户之间的相似性。 进一步地,步骤S5中若最相似用户对最相近项目的评分矩阵中某用户对某项目 的评分为零,则采用Slope One算法对该评分进行预测。 本专利技术的有益效果是:本专利技术提出了一种结合项目属性和用户评分的综合推荐算 法,不但能够完成现有技术中基于协同过滤技术的推荐算法和基于内容的推荐算法所能完 成的常规推荐,还能够对加入到系统中的新用户进行准确的相关推荐,满足了用户对推荐 的需求。同时,该推荐算法通过BP神经网络的训练,得到一种BP神经网络模型,能够有效 提高本推荐算法的性能。【附图说明】 图1为本专利技术提供的流程图。 图2为本专利技术实施例的BP神经网络结构示意图。【具体实施方式】 下面结合附图对本专利技术的实施例作进一步的说明。 本专利技术提供了,如图1所示,包括以下步 骤: S1、根据各用户的评分记录计算各用户之间的相似性; 这里采用Pearson相关系数法计算各用户之间的相似性。设I (U)是用户u评分 的项目集合,I(V)是用户V评分的项目集合,I (u) η I(v)是用户u和用户V共同评分的项 目集合,则用户u和用户V的相似性sim(u,V)可由公式(1)求得: (1) 式中Ru^P Rv,x分别表不用户u和用户V对项目X的评分值,和A分别表不用 户u和用户V的评分均值。 S2、根据各项目的属性计算各项目之间的相似性; 每个项目都有各自的项目属性,用户对项目的选择都是基于项目的这些属性。一 个项目可以有多个项目属性,可用一个向量I = [I1, I2,I3··· IJ来表示。其中:若I1=O, 则该项目不具有特征P1;若I i= 1,则该项目具有特征P i。这样,当向量I确定时,便可以得 到一个具体的项目。 将所有项目都用向量I来标识,便可得到如下矩阵: 其中m为项目的总个数,η为项目的总的属性数,In(m)为第m个项目的第η个属 性。则项目ml和项目m2的属性相似性sim(ml, m2)可由公式⑵求得:(2) 其中若 It (ml) = It (m2),则 WEt (ml, m2) = 1 ;若 It (ml)辛 It (m2),则 WEt (ml, m2) =0〇 S3、选取与目标用户相似性最大的前i个用户,建立用户相似性矩阵; 由于系统中用户可能过多,而真正对推荐有意义的用户只是满足某个相似度值的 用户,所以这里需要根据实际情况设置用户相似度阈值P,选取相似度值大于或等于P的i 个用户作为与目标用户相似性最大的前i个用户,建立用户相似性矩阵。 S4、选取与目标项目相似性最大的前j个项目,建立项目相似性矩阵; 由于系统中项目可能过多,而真正对推荐有意义的项目只是满足某个相似度值的 项目,所以这里需要根据实际情况设置项目相似度阈值q,选取相似度值大于或等于q的j 个用户作为与目标项目相似性最大的前j个项目,建立项目相似性矩阵。 S5、综合用户相似性矩阵与项目相似性矩阵,建立最相似用户对最相近项目的评 分矩阵; 在步骤S3与步骤S4中得到了用当前第1页1 2 本文档来自技高网
...

【技术保护点】
一种基于属性与评分的个性化推荐方法,其特征在于,包括以下步骤:S1、根据各用户的评分记录计算各用户之间的相似性;S2、根据各项目的属性计算各项目之间的相似性;S3、选取与目标用户相似性最大的前i个用户,建立用户相似性矩阵;S4、选取与目标项目相似性最大的前j个项目,建立项目相似性矩阵;S5、综合用户相似性矩阵与项目相似性矩阵,建立最相似用户对最相近项目的评分矩阵;S6、将最相似用户对最相近项目的评分矩阵作为BP神经网络的输入进行训练;S7、判断BP神经网络是否收敛;若是则进入步骤S8;若否则进行BP神经网络参数及函数修改,返回步骤S6;S8、利用BP神经网络对测试集进行运算,产生最终推荐结果并推荐给目标用户。

【技术特征摘要】

【专利技术属性】
技术研发人员:唐雪飞陈科王淋铱吴亚骏刘明鸣
申请(专利权)人:成都康赛信息技术有限公司
类型:发明
国别省市:四川;51

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

1