System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于加权slope one算法的协同过滤推荐方法技术_技高网

基于加权slope one算法的协同过滤推荐方法技术

技术编号:41870478 阅读:14 留言:0更新日期:2024-07-02 00:21
本发明专利技术属于个性化推荐领域,涉及基于加权slope one算法的协同过滤推荐方法,包括:采集用户日志,得到用户及其行为数据;对用户的行为数据进行预处理,得到用户‑项目评分矩阵;根据用户‑项目评分矩阵计算初始中心及其聚类结果;利用初始中心采用K‑means算法更新初始聚类结果中聚类中心的聚类结果,得到最终的用户聚类结果;获取待评分项目,根据最终的用户聚类结果采用加权Slope one算法计算用户对待评分项目的评分,根据用户对待评分项目的评分采用Top‑N的方式向用户推荐项目;本发明专利技术通过计算最优初始聚类中心,使得在后续的聚类过程中可以更快地找到合适的聚类结果,提高了聚类算法的准确性和效率。

【技术实现步骤摘要】

本专利技术属于个性化推荐领域,具体涉及基于加权slope one算法的协同过滤推荐方法。


技术介绍

1、人们生活在一个信息技术日新月异、移动互联网和云计算迅猛发展,全球数据量呈爆炸式增长的大数据时代。相对于传统便于存储的以文本为主的结构化数据,音频、视频、图片等非结构化数据的比例逐步提升。互联网上信息的急剧增长,一方面使人们获取的信息资源越来越丰富,给人们带来极大的便利;另一方面,面对海量的信息资源,人们不得不花费更多的时间和精力去搜寻对其有帮助的信息,信息过载和资源迷向问题越来越严重。

2、推荐技术是解决信息过载及资源迷向问题的有效方案,它根据用户特征推荐满足用户需求的对象,实现个性化服务。推荐技术的优点在于,它能主动收集用户的特征资料,通过对用户个性、习惯、偏好的分析,为用户定制并提供其感兴趣的信息,同时能及时挖掘用户的需求变化,根据变化自动调整信息服务的方式和内容。

3、协同过滤算法是目前应用最为广泛的个性化推荐算法,基于协同过滤的推荐技术相比其他的推荐算法具有个性化和自动化程度高、推荐领域广泛以及技术上容易实现等优势。自协同过滤算法提出以来,国内外学者提出各种各样的基于协同过滤的推荐方法。在已有的研究中对传统协同过滤算法进行数据填充时往往使用中值或平均值等单一数据作为填充值。

4、在个性化推荐领域,用户在对项目进行选择时会受到诸多因素的影响,譬如用户自身的特征属性以及时间和空间等因素。在日常生活中,那些用户特征属性类似的人往往在兴趣方面也有一定的相似性,但不同特征属性的人的兴趣爱好却有较大的差异,因此,受用户特征属性这一客观因素的影响,现有的协同过滤算法的推荐存在偏差。


技术实现思路

1、为解决以上现有技术问题,本专利技术采用基于加权slope one算法的协同过滤推荐方法,包括:

2、s1、采集用户日志,得到用户及其行为数据;

3、s2、对用户的行为数据进行预处理,得到用户-项目评分矩阵;

4、s3、根据用户-项目评分矩阵计算初始聚类中心mk和初始用户聚类结果;

5、s4、利用初始聚类中心mk采用k-means算法更新初始用户聚类结果中聚类中心mk的用户聚类结果,得到最终的用户聚类结果;

6、s5、获取待评分项目,根据最终的用户聚类结果采用加权slope one算法计算用户对待评分项目的评分,根据用户对待评分项目的评分采用top-n的方式向用户推荐项目。

7、进一步地,对用户行为数据进行预处理包括:去除用户行为数据中的重复数据,对去除重复数据后的用户行为数据进行归一化,从归一化后的用户行为数据中提取特征,得到用户-项目评分矩阵。

8、根据用户-项目评分矩阵计算最优初始簇心mi包括:

9、s31、计算每个用户的中心聚集参数ω(xi)和领域半径r;

10、s32、计算游离用户,得到游离用户集合和剩余用户集合

11、s33、选择中心聚集参数ω(xi)最大的用户xi作为第一个初始聚类中心m1,计算剩余用户集合中的用户与初始聚类中心m1的距离;将距离小于r的用户划入初始聚类中心m1,将距离大于等于r的用户保留,得到剩余用户集合

12、s34、回到步骤s33,在剩余用户集合中选择中心聚集参数ω(xi)最大的用户作为第k个聚类中心mk,直到剩余用户集合中的所有用户均被划分到各自的聚类中心,得到k个初始聚类中心mk(k=1,2,...k)及其初始用户聚类结果;

13、s35、若游离用户集合中的游离用户的个数小于阈值q,则将游离用户划入与其距离最近的初始聚类中心,得到最终的初始用户聚类结果;否则,将游离用户单独划为一个分类,最终的初始用户聚类结果包括k个初始聚类中心的初始用户聚类结果以及游离用户聚类结果。

14、进一步地,计算游离用户包括:计算每个用户xi与其余用户xj(j≠i)的距离di,j,计算所有用户之间距离的平均值avgd(d),将与其余用户xj(j≠i)的距离di,j均大于距离平均值avgd(d)的用户xi归为游离用户。

15、进一步地,计算所有用户之间距离的平均值包括:计算所有用户之间的总路径条数l,计算用户之间的距离和d;根据总路径条数l和距离和d计算所有用户之间距离的平均值。

16、进一步地,计算每个用户的中心聚集参数ω(xi)包括:

17、

18、其中,gavgd(xi)为簇类平均距离,dp(xi)为单个用户的聚集度,g(xi)为参数,用于衡量不同簇之间的差异性,xi为用户。

19、进一步地,计算簇类平均距离为:

20、

21、其中,d(xi,xj)为用户xi、xj之间的欧氏距离。

22、进一步地,计算邻域半径r包括:

23、

24、其中,reler为调节系数,n为用户数量,avgd(d)为所有用户之间距离的平均值。

25、进一步地,根据最终的用户聚类结果采用加权slope one算法计算用户对待评分项目的评分包括:使用皮尔逊相关系数计算同一个用户聚类结果中的用户之间的相似度simij,根据用户之间的相似度simij优化加权slope one算法,根据优化后的加权slope one算法对待评分项目进行评分。

26、进一步地,根据用户之间的相似度simij优化加权slope one算法包括:根据用户之间的相似度simij优化加权slope one算法的预测评分公式,表示为:

27、

28、

29、其中,preio为用户xi对待评分项目o的预测评分,sop表示对项目o和项目p有共同评分的用户集合,rjo表示用户xj对项目o的评分,devop表示项目o和项目p的平均评分偏差,|sop|表示对项目o、p共同评分的用户数量,simij表示用户xi和xj的相似度。

30、有益效果:

31、1、本专利技术采用k-means聚类算法进行聚类,从而把兴趣相似的用户分到一组,根据聚类结果再进行推荐,提高了推荐的精度和可扩展性,使得数据稀疏性问题得到了有效改善;2、本专利技术通过中心聚集参数计算最优初始簇心,使得在后续的聚类过程中可以更快地找到合适的聚类结果,提高了聚类算法的准确性和效率,同时,良好的初始簇心可以更好地反应数据的特点和分布情况,使得聚类结果更易于解释和理解,有助于对数据进行更深入的分析和理解;3、本专利技术对同一个聚类中的用户使用皮尔逊相关系数计算用户的相似度,根据用户的相似度优化加权slope one算法的评分预测公式,提高了评分的准确性。

本文档来自技高网...

【技术保护点】

1.基于加权slope one算法的协同过滤推荐方法,其特征在于,包括:

2.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,对用户行为数据进行预处理包括:去除用户行为数据中的重复数据,对去除重复数据后的用户行为数据进行归一化,从归一化后的用户行为数据中提取特征,得到用户-项目评分矩阵。

3.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,根据用户-项目评分矩阵计算最优初始簇心Mi包括:

4.根据权利要求3所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算游离用户包括:计算每个用户xi与其余用户xj(j≠i)的距离d(xi,xj),计算所有用户之间距离的平均值Avgd(D),将与其余用户xj(j≠i)的距离d(xi,xj)均大于距离平均值Avgd(D)的用户xi归为游离用户。

5.根据权利要求4所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算所有用户之间距离的平均值包括:

6.根据权利要求3所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算每个用户的中心聚集参数ω(xi)包括:

7.根据权利要求6所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算簇类平均距离为:

8.根据权利要求3所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算邻域半径R包括:

9.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,根据最终的用户聚类结果采用加权Slope one算法计算用户对待评分项目的评分包括:

10.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,根据用户之间的相似度Simij优化加权slope one算法包括:根据用户之间的相似度Simij优化加权slope one算法的预测评分公式,表示为:

...

【技术特征摘要】

1.基于加权slope one算法的协同过滤推荐方法,其特征在于,包括:

2.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,对用户行为数据进行预处理包括:去除用户行为数据中的重复数据,对去除重复数据后的用户行为数据进行归一化,从归一化后的用户行为数据中提取特征,得到用户-项目评分矩阵。

3.根据权利要求1所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,根据用户-项目评分矩阵计算最优初始簇心mi包括:

4.根据权利要求3所述的基于加权slope one算法的协同过滤推荐方法,其特征在于,计算游离用户包括:计算每个用户xi与其余用户xj(j≠i)的距离d(xi,xj),计算所有用户之间距离的平均值avgd(d),将与其余用户xj(j≠i)的距离d(xi,xj)均大于距离平均值avgd(d)的用户xi归为游离用户。

5.根据权利要求4所述的基于加权slope one算法的协...

【专利技术属性】
技术研发人员:赵军刘赋
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

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

1