一般来说,用户越活跃,越喜欢浏览物品流行度低的的物品,反之,用户越不活跃,越喜欢浏览物品流行度高的物品(即热门商品)[12]。

2。2。3 基于用户的协同过滤算法(User-CF)

基于邻域的推荐算法又可以分成两类:

a基于用户的协同过滤算法(User-CF);b基于物品的协同过滤算法(Item-CF)。

User-CF的具体算法具体步骤如下(本文着重讲述):

i找到和目标用户志趣相投(如都对某一部电影评分或是购买类似物品)的最近邻集(neighbour)

其中,最主要的是计算两个用户的兴趣相似度,兴趣相似度的计算主要是利用用户历史行为数据。两个客户之间的兴趣相似度的方法如下所示[13]:

①余弦相似性:将两个用户的打分分别当做一个向量,而这两者之间的夹角的cos值便可以作为度量他们相关的依据。

②皮尔逊系数:主要是由公式2。3计算得出。具体来说,如公式2。4所示,主要是寻找两个用户曾经共同产生过行为(如评分)的物品集合。

③调整余弦相似性:和皮尔逊系数不同的是,公式2。4是项目平均分,而方法①是用户的平均分。

本文采用的方法为皮尔逊相关度(Pearson correlation)[14],公式如下所示:来*自~优|尔^论:文+网www.chuibin.com +QQ752018766*

其中Ru,i 为u 对物品 i 的打分,  为该用户集U对项目i的评分均值;  为用户u 对物品 j 的评分,  为该用户集U对项目j的评分均值;

Java实现相似度计算的代码如下:

SparseVector a = v1。sub(i1Avg);

SparseVector b = v2。sub(i2Avg);

sim= a。innerProduct(b) / (a。norm() * b。norm());

ii按照i中计算出来的最近邻集中的用户对某些物品的评分计算目标用户的评分,然后对评分排序,将排名靠前的K个物品展示给该用户。步骤如下:

(a) 计算出用户的相似度之后,再由此计算出用户对某物品的评分。本文采用的预测评分公式如下所示[15]:

           (2。5)

其中,  是客户u对电影m的评分,sim(u,j)是公式2。4计算得出的用户u和用户j的皮尔逊值,  是用户j对电影评分的均值;

上一篇:基于Spark的图像相似性比对加速算法
下一篇:ASP.NET+sqlserver校园问卷调查系统的设计与开发

jsp+mysql网上化肥店系统的设计与开发

152mm口径榴弹炮内弹道数据库设计

基于高斯过程动态模型的时序数据恢复方法

智能算法的海上应急救援基地选址优化设计

大数据时代下电子商务个性化信息服务研究

asp+access网上报名系统设计

基于Android的上课点名系统的设计与实现

弹道修正弹实测弹道气象数据使用方法研究

人事管理系统开题报告

淮安市老漂族心理与休闲体育现状的研究

小学《道德与法治》学习心得体会

组态王文献综述

浅谈动画短片《天降好运》中的剧本创作

林业机械作业中的安全性问题【2230字】

紫陵阁

大学生就业方向与专业关系的研究

适合宝妈开的实体店,适...