基于评分LDA的协同过滤算法制造技术

技术编号:28707733 阅读:69 留言:0更新日期:2021-06-05 23:14
本发明专利技术公开了基于评分LDA的协同过滤算法,对所需进行评价的商品建立相关的用户参数,设置参数K为“兴趣个数”、参数R为“评分数目”、参数M为“用户人数”,且设置参数Θ表示兴趣的多项式分布,参数Ω表示在给定兴趣的情况下关于商品的多项式分布,设置Φ表示在给定兴趣的情况下关于评分的多项式分布,并额外设置α,β和λ分别表示Θ,Φ和Ω的超参,计算出用户对于某个商品评分的概率P(i,r|u),然后根据P(i,r|u)来进行排序生成推荐列表。本申请所提出的RLDA算法和其他对比方法最大的不同点在于本文的模型是将评分因素直接加入模型,而不是分两步计算,在整体的计算过程中受稀疏性的影响较小,使得算法的准确性与可参考性得到显著提升。著提升。著提升。

【技术实现步骤摘要】
基于评分LDA的协同过滤算法


[0001]本专利技术属于LDA算法
,更具体地说,尤其涉及基于评分LDA的协同过滤算法。

技术介绍

[0002]推荐系统的核心是推荐算法。算法的优劣,直接关系到推荐系统的质量。为了使推荐系统更好地满足消费者的需求,近年来,学者们提出了很多推荐算法。本节主要对与本文相关的算法进行介绍和分析,包括奇异值分解(SVD),潜在狄利克雷(LDA)模型和iExpand算法。
[0003]随着潜在兴趣或潜在因素的增长,每个算法的效果均有所减弱,特别是SVD_Pure(即SVD算法,加Pure后缀是为了与后文的近邻相区别)算法。当k值较大的时候,随着k的增大,各个算法的效果均变差。主要是因为k的增大使这些算法过拟合。大多数情况下,本文的算法性能优于其他对比算法。随着潜在兴趣或潜在因子数目增长,RLDA的曲线和SVD_Neib(基于近邻的SVD)的曲线表现非常相像,都明显好于其他几个对比算法,特别是当潜在兴趣或潜在因子数目大的时候。但是,潜在兴趣或潜在因子数目增大RLDA和SVD_Neib的影响很小。反观其他的对比算法,随着潜在兴趣或潜在因子数目的增大,曲线急剧下降。潜在因素的增大,SVD_Pure容易过拟合,而SVD_Neib由于采用近邻的原因,具有很强的适应性。iExpand算法的曲线因为是基于LDA模型,所以曲线的走势和LDA很像。这也就意味着,iExpand算法的性能很大程度上取决于LDA模型。且各个算法在数据集Movielens100K上的表现要比在数据集Movielens1M上要好。这要原因是数据集Movielens1M的稀疏度比Movielens100K要大:数据集Movielens100K的稀疏度是6.3%,数据集Movielens1M的稀疏度是4.2%。每个算法都受数据稀疏性的影响。

技术实现思路

[0004]本专利技术的目的是为了解决现有技术中存在的缺点,提出的RLDA算法将评分因素直接加入模型,而不是分两步计算,在整体的计算过程中受稀疏性的影响较小,使得算法的准确性与可参考性得到显著提升。
[0005]为实现上述目的,本专利技术提供基于评分LDA的协同过滤算法,包括如下步骤:
[0006]S1、对所需进行评价的商品建立相关的用户参数,设置参数K为“兴趣个数”、参数R为“评分数目”、参数M为“用户人数”;
[0007]S2、基于独立的假设,可以得到兴趣,商品和评分的联合分布,如下所示:
[0008]P(t,i,r|α,β,λ)=P(t|α,β,λ)
·
P(i,r|α,β,λ)=P(t)
·
P(i|t)
·
P(r|t)=Θ
t
·
Φ
t,i
·
Ω
t,r

[0009]其中Θ为用户

兴趣的多项式分布,Φ为兴趣

商品的多项式分布,以及Ω兴趣

评分的多项式分布;
[0010]S3、在状态j的情况下,用和来依次分别表示第k个兴趣,第i个商
品,第r个评分和第u个用户,使用T表示兴趣、N表示商品以及R表示评分的数目,再利用和分别表示属于用户u的兴趣数目,商品分配给兴趣t的数目,评分分配给兴趣t的数目,根据以上参数以及α,β和λ分别表示Θ,Φ和Ω的狄利克雷先验分布参数,然后计算它们条件概率:
[0011][0012]此时可以得到用户

兴趣的分布Θ,兴趣

商品的分布Φ以及兴趣

评分的分布Ω:
[0013][0014][0015][0016]S4、通过吉布斯采样近似估计Θ,Φ和Ω三个参数;
[0017]S5、根据最后计算得到的Θ,Φ和Ω来计算用户对某个商品的评分概率:
[0018][0019]S6、最后根据P(i,r|u)来进行排序,选取前几个向用户进行推荐。
[0020]本专利技术的技术效果和优点:
[0021]本申请所提出的RLDA算法和其他对比方法最大的不同点在于本专利技术的算法模型是将评分因素直接加入模型,而不是分两步计算,在整体的计算过程中受稀疏性的影响较小,使得算法的准确性与可参考性得到显著提升。
附图说明
[0022]图1为本专利技术的RLDA模型图;
[0023]图2为RLDA系列算法在MovieLens100K上的数据图;
[0024]图3为RLDA系列算法在MovieLens1M上的数据图。
具体实施方式
[0025]为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图和具体实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0026]实施例1
[0027]S1、对所需进行评价的商品建立相关的用户参数,设置参数K为“兴趣个数”、参数R为“评分数目”、参数M为“用户人数”;
[0028]S2、基于独立的假设,可以得到兴趣,商品和评分的联合分布,如下所示:
[0029]P(t,i,r|α,β,λ)=P(t|α,β,λ)
·
P(i,r|α,β,λ)=P(t)
·
P(i|t)
·
P(r|t)=Θ
t
·
Φ
t,i
·
Ω
t,r

[0030]其中Θ为用户

兴趣的多项式分布,Φ为兴趣

商品的多项式分布,以及Ω兴趣

评分的多项式分布;
[0031]S3、在状态j的情况下,用和来依次分别表示第k个兴趣,第i个商品,第r个评分和第u个用户,使用T表示兴趣、N表示商品以及R表示评分的数目,再利用和分别表示属于用户u的兴趣数目,商品分配给兴趣t的数目,评分分配给兴趣t的数目,根据以上参数以及α,β和λ分别表示Θ,Φ和Ω的狄利克雷先验分布参数,然后计算它们条件概率:
[0032][0033]此时可以得到用户

兴趣的分布Θ,兴趣

商品的分布Φ以及兴趣

评分的分布Ω:
[0034][0035][0036][0037]S4、通过吉布斯采样近似估计Θ,Φ和Ω三个参数;
[0038]S5、根据最后计算得到的Θ,Φ和Ω来计算用户对某个商品的评分概率:
[0039][0040]S6、最后根据P(i,r|u)来进行排序,选取前几个向用户进行推荐。而图2与图3展示了本申请所提出的RLDA算法在Movielens100K和Movielens1M这两个数据集上的表现,并根据此类数据集的F1分数,RLDA5<RLDA4

5&本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于评分LDA的协同过滤算法,其特征在于:S1、对所需进行评价的商品建立相关的用户参数,设置参数K为“兴趣个数”、参数R为“评分数目”、参数M为“用户人数”;S2、基于独立性假设,定义兴趣t、商品i和评分r三者的联合分布,如下所示:P(t,i,r|α,β,λ)=P(t|α,β,λ)
·
P(i,r|α,β,λ)=P(t)
·
P(i|t)
·
P(r|t)=Θ
t
·
Φ
t,i
·
Ω
t,r
;S3、在状态j的情况下,建立和来依次分别表示第k个兴趣,第i个商品,第r个评分和第u个用户,使用T表示兴趣、N表示商品以及R表示评分的数目,再利用和分别表示属于用户u的兴趣数目,商品分配给兴趣t的数目,评分分配给兴趣t的...

【专利技术属性】
技术研发人员:陈道泉周秀泽
申请(专利权)人:浙江机电职业技术学院
类型:发明
国别省市:

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

1