一种基于用户组的多反馈协同过滤推荐方法与流程

文档序号:12465559阅读:来源:国知局

技术特征:

1.一种基于用户组的多反馈协同过滤推荐方法,其特征在于:包括以下步骤:

步骤一:对用户-物品的互动数据进行预处理,使用余弦相似度计算用户间的距离;

步骤二:融合距离矩阵,使用K-Medoids算法分类并得到k个簇;

步骤三:在每个簇内单独的运行BPR MF算法,得到个性化推荐列表。

2.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤一中,用户-物品的互动数据不仅包括了用户的显性反馈还包含隐性反馈,计算出用户间兴趣距离。

3.如权利要求2所述根据用户-物品多反馈,计算用户间的兴趣距离。其中距离

4.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤二中,融合距离矩阵,使用K-Medoids算法分类并得到k个簇:

(1)通过计算用户间的兴趣距离,根据距离融合公式融合用户兴趣距离得到;大小为|U|×|U|的距离矩阵,融合距离的公式为

<mrow> <mi>d</mi> <msub> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <mi>v</mi> <mo>)</mo> </mrow> <mrow> <mi>c</mi> <mi>o</mi> <mi>r</mi> <mi>p</mi> </mrow> </msub> <mo>=</mo> <mfrac> <mn>1</mn> <msub> <mi>N</mi> <mi>i</mi> </msub> </mfrac> <munderover> <mo>&Sigma;</mo> <mrow> <mi>n</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mo>|</mo> <msub> <mi>N</mi> <mi>i</mi> </msub> <mo>|</mo> </mrow> </munderover> <msub> <mi>&lambda;</mi> <mi>n</mi> </msub> <msub> <mi>d</mi> <mi>n</mi> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>

其中Ni表示互动类型的数量,λ*表示平衡不同互动类型的权重系数,定义如下:

<mrow> <mi>&lambda;</mi> <mo>=</mo> <mfrac> <mrow> <msub> <mi>N</mi> <mrow> <mo>(</mo> <mi>u</mi> <mi>v</mi> <mo>)</mo> </mrow> </msub> <mrow> <mo>(</mo> <msub> <mi>N</mi> <mi>u</mi> </msub> <mo>+</mo> <msub> <mi>N</mi> <mi>v</mi> </msub> <mo>)</mo> </mrow> </mrow> <mrow> <mo>(</mo> <msub> <mi>N</mi> <mi>u</mi> </msub> <msub> <mi>N</mi> <mi>v</mi> </msub> <mo>)</mo> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

Nu和Nv分别表示用户u和用户v互动次数,Nuv表示用户u和v共同互动的次数。

(2)根据距离矩阵,使用K-Medoid算法计算两个数据集间的距离,保证每个簇内的数据集的距离最小,即不相似性最低并生成K个用户组。

5.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤三中,还包括:BPR MF算法并不仅仅利用用户-物品数据去训练模型,而是采用基于梯度下降的方法学习模型。不仅考虑了用户-物品数据信息,还考虑到了项目对之间的优先级,例如项目i被用户浏览而项目j没有,则用户更偏爱于项目i。

6.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤三中,在每个簇内单独运行BPR MF算法,得到个性化推荐列表。过程如下:

首先数据pair化预处理:

(1)将用户对物品的评分(显式反馈“1”,隐式反馈“0”)处理为pair对集合<i,j>其中i为评分为1的物品,j为评分为0的物品。假设用户有M个“1”的评分,N个“0”的评分,则该用户共有M×N个pair对。

(2)极大化如下目标其中θ为所求模型,具体包括隐含因子矩阵P,及表达物品的隐含因子矩阵Q。

(3)使用随机梯度下降法学习BPR,使得BPR-OPT达到最优。

(4)计算用户u和v之间的相似度

(5)计算用户u对物品i的兴趣

<mrow> <msub> <mi>p</mi> <mrow> <mi>u</mi> <mi>i</mi> </mrow> </msub> <mo>=</mo> <munder> <mo>&Sigma;</mo> <mrow> <mi>v</mi> <mo>&Element;</mo> <mi>N</mi> <mrow> <mo>(</mo> <mi>i</mi> <mo>)</mo> </mrow> <mo>&cap;</mo> <mi>S</mi> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <mi>K</mi> <mo>)</mo> </mrow> </mrow> </munder> <msub> <mi>w</mi> <mrow> <mo>(</mo> <mi>u</mi> <mo>,</mo> <mi>v</mi> <mo>)</mo> </mrow> </msub> <mo>*</mo> <msub> <mi>r</mi> <mrow> <mi>v</mi> <mi>i</mi> </mrow> </msub> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow>

其中S(u,K)用户u最接近的K个用户,N(i)表示对物品i有过行为的用户集。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1