1.一种基于用户组的多反馈协同过滤推荐方法,其特征在于:包括以下步骤:
步骤一:对用户-物品的互动数据进行预处理,使用余弦相似度计算用户间的距离;
步骤二:融合距离矩阵,使用K-Medoids算法分类并得到k个簇;
步骤三:在每个簇内单独的运行BPR MF算法,得到个性化推荐列表。
2.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤一中,用户-物品的互动数据不仅包括了用户的显性反馈还包含隐性反馈,计算出用户间兴趣距离。
3.如权利要求2所述根据用户-物品多反馈,计算用户间的兴趣距离。其中距离
4.如权利要求1所述的一种基于用户组的多反馈协同过滤推荐方法,其特征在于:在步骤二中,融合距离矩阵,使用K-Medoids算法分类并得到k个簇:
(1)通过计算用户间的兴趣距离,根据距离融合公式融合用户兴趣距离得到;大小为|U|×|U|的距离矩阵,融合距离的公式为
其中Ni表示互动类型的数量,λ*表示平衡不同互动类型的权重系数,定义如下:
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的兴趣
其中S(u,K)用户u最接近的K个用户,N(i)表示对物品i有过行为的用户集。