一种融合社会标签的联合概率矩阵分解推荐方法
2020-10-23郑绍振郑东霞
郑绍振 郑东霞
摘 要:社交网络发展迅猛,社会网络环境下的信息量骤增,如何在大数据下向用户推荐感兴趣的项目是当前研究的热点问题之一。目前的推荐系统在用户反馈数据稀疏的情况下和向新用户推荐中存在推荐不准确的问题,为了提高推荐质量,提出了一种融合社会标签的联合概率矩阵分解推荐模型TaSoRec,该模型运用社交网络的用户、项目、标签三者信息进行推荐,通过对训练模型参数优化,从而提升推荐效果。
关键词:社会标签;联合概率矩阵;推荐方法;社交网络
中图分类号:TP181 文献标识码:A
Incorporating Social Tagging for Unified Probabilistic
Matrix Factorization Recommendation
ZHENG Shaozhen1, ZHENG Dongxia2
(1. Liaoning Jinyang Group Information Technology Co., Ltd., Dandong 118000, China;
2.School of Computer and Software, Dalian Neusoft University of Information, Dalian 116023, China)
94225621@qq.com; zhengdongxia@neusoft.edu.cn
Abstract: With the development of social network, the explosive growth of information makes a hot issue to recommend attractive resources to users based on big data. In order to improve the quality of recommendation, this paper proposes a joint probability matrix factorization recommendation model called TaSoRec (Tag Social Recommendation) which integrates social tags. The model uses information of users, resources and tags of social network, and optimizes the parameters of the training model to achieve better recommendation results.
Keywords: social tagging; unified probability matrix; recommendation method; social network
1 引言(Introduction)
社交網络发展迅猛,开放的网络环境下,数据在爆发式的增长,在海量的数据中,用户通常很难找到自己感兴趣的信息。Web 2.0时代允许用户对网络上的信息进行标注,比如对喜欢的电影、音乐等标注,
本文主要研究社交网络中的项目推荐问题,向用户推荐用户可能感兴趣的项目。现有的推荐方法在用户显示反馈数据稀疏的情况下,推荐准确度下降;如果是新用户,没有反馈数据时,推荐效果不理想,即存在冷启动问题。本文使用的是协同过滤推荐技术,提出了一种融合社会标签的联合概率矩阵分解推荐算法(TaSoRec),算法研究用户、项目和标签的两两关系,并使用概率矩阵分解方法进行求解,得到三个特征矩阵的隐含特征向量,进而对项目进行最优推荐。
2 相关工作分析(Related Work)
现有的协同过滤推荐方法很难解决在大数据环境下用户给予较少反馈信息或无反馈信息情况下的推荐,为了解决这种数据稀疏问题,文献[1]中,Ruslan Salakhutdinov和Andriy Mnih提出的一种概率矩阵分解方法,这种方法将一个高维矩阵分解为两个或多个低维度的矩阵,即用同一个空间的维度来描述推荐过程中两个实体(用户、项目)的隐语义的特征,这种算法目前被应用于当数据很少时对于缺失数据的预测,以提高推荐质量。文献[2]提出了一种联合概率矩阵分解算法(UMPF),传统的概率矩阵分解算法结合两个实体进行两维的矩阵分解,而联合概率矩阵分解算法结合三方面的实体,考虑三者中的两两关系,进行矩阵分解。文献[3]提出一种AdRec框架模型,将联合概率分解算法首次应用于上下文广告的推荐中,实验表明,推荐效果好于传统的单一概率矩阵分解算法;但是这种方法并不能简单地应用到社会网络环境下,社交网络中用户与用户之间存在关系,此方法并没有考虑到用户之间的联系。以上使用概率矩阵分解方法或联合概率矩阵的算法,对于社交网络中用户之间的联系及项目标签没有受到关注。文献[4]中,在协同过滤推荐模型中使用了标签信息,通过标签信息正则化概率矩阵分解的矩阵分解过程。文献[5]中通过标签选择每个用户的邻居和每个项目的邻居,然后在矩阵分解中为每个用户和每个项目的潜在特征向量填加唯一的高斯分布,使相似的用户或项目具有相似的潜在特征。
3 问题描述(Problem description)
3.1 现存问题
目前的推荐系统大部分只从用户对项目的评分和用户与用户之间的信任关系两个方面考虑来预测推荐,但是忽略了用户对项目标签的使用问题,比如用户通常会对喜欢的项目加标签标注,也会对自己加各种标签。将用户对项目的评分,又考虑用户对标签的使用,项目与标签的关系等融入推荐中,考虑两两关系势必能增强推荐的准确度。
目前大部分的推荐系统只考虑了用户的显式反馈信息,而忽略了用户的隐式反馈信息,隐式反馈信息具有数据量大、易收集、应用广的特点,放弃隐式反馈信息的推荐系统浪费了宝贵的数据项目,隐式反馈信息虽然不直接表现出用户的倾向,但是跟踪用户的隐式反馈信息,将隐式反馈信息融合到推荐系统中并不困难,用户对项目进行标注标签,标签被标注的次数能够隐式地反馈出用户对哪些项目的喜好程度。因此本文探讨了一种融合社会标签的联合概率矩阵分解的推荐算法。
3.2 符号定义
本文结合用户、项目、标签三个方面的信息进行项目的推荐,主要是用户对项目的评分信息和用户对项目的隐式反馈信息,用户使用社会标签的信息,项目与标签的关联信息。当用户浏览网页,访问音乐项目时,向目标用户推荐其可能感兴趣的其他音乐项目。
假定一组有个用户的用户集合为,一组有个项目的项目集合为,一组有个标签的标签集合为,其中,维的用户潜在特征矩阵用表示,维的项目潜在特征矩阵用表示,维的标签潜在特征矩阵用表示,用户对项目的评分矩阵为,标签与用户的关联矩阵为,项目与标签的对应矩阵为。
4 使用标签信息的联合概率矩阵分解推荐模型(Unified probabilistic matrix factorization recommendation model incorporated social tagging)
本文提出一种使用社会标签的语义分析和概率矩阵分解的推荐方法。该方法根据用户标签的历史信息得到不同用户间的相似性,然后建立用户—标签、用户—项目和标签—项目得分矩阵,最后计算获得这些矩阵的隐含特征向量;其中在用户—项目评分矩阵中加入了用户相似性的正则化参数,以避免过拟合;最后讨论推荐方法的求解过程。
4.1 用户相似性计算
本文认为具有相似标签标注行为的用户,其兴趣爱好在很大程度上是具有相似性的,因此通过用户对项目进行标注的历史行为得到标签矩阵,本文提出的模型是在矩阵的基础上使用皮尔森相似性计算用户的相似性。假设表示用户和用户对项目进行标注的标签指数集,两个用户间的皮尔森相关系数定义如式(1):
(1)
其中,。从而,皮尔森相似性定义如下:
。用户相似性正则化参数的求解函数如式(2):
(2)
其中,是通过对用户和用户标注的标签历史记录计算所得,并通过拉普拉斯矩阵,为对角矩阵,对角元素,表示矩陣的迹。
利用上面的方法计算用户间的相似权重,进一步获得三个矩阵的特征向量。
4.2 用户—项目评分矩阵
假设={}表示个用户给个项目打分,其中矩阵中各元素的值在[0,1]区间,即,可由式(3)计算得到:
(3)
其中,为逻辑斯蒂函数,,用于将值映射在[0,1]的区间。表示用户访问项目的次数。
如果相关用户具有相似的标签历史记录,那么这些用户的隐含特征向量极有可能具有相似性,在用户—项目概率矩阵中,考虑了用户间的相似性。假定用户和项目的隐含特征向量为、,维数均为维。则用户—项目评分概率矩阵的条件分布如式(4)所示。
(4)
其中,为概率密度函数,满足均值为,方差为的高斯分布;为指示函数,当用户访问了项目,则=1;否则=0;为附加的正则化参数用来调整标签贡献率。矩阵中假设用户的特征向量、项目的特征向量均满足均值为0的球形高斯先验分布,如式(5)和式(6)所示。
(5)
(6)
通过贝叶斯推理,可以得到式(7)。
(7)
在式(7)中,通过用户对项目的访问来估算用户对项目的兴趣指数,但这个过程未考虑项目被用户所标注的标签语义信息,下面进一步讨论用户对感兴趣项目标注标签的概率,以提高推荐准确率。
4.3 用户—标签概率矩阵
假设表示个用户对个标签标注的概率矩阵,其中矩阵中各元素的值为用户对标签标注的次数,值在[0,1]区间,即。表示项目被用户标注的标签。如果用户频繁使用某类标签,说明用户对这类标签标注的项目感兴趣,可由式(8)计算得到。
(8)
其中,表示用户使用标签的频率。
用户—标签关联矩阵中,假设用户的隐含特征向量为,假设标签的隐含特征向量为,维数均为维。则用户—标签概率矩阵的条件分布如式(9)所示。
(9)
其中,为概率密度函数,满足均值为,方差为的高斯分布;为指示函数,当用户使用了标签,则=1;否则=0。矩阵中假设用户特征向量、标签特征向量均满足均值为0的高斯先验分布如式(10)和式(11)。
(10)
(11)
通过贝叶斯推理,可以得到式(12)。
(12)
4.4 项目—标签概率矩阵
假设表示个项目被标注个标签的概率矩阵,其中矩阵中各元素的值为项目被标注标签的次数,值在[0,1]区间,即。表示用户对项目标注标签的次数概率,假设某个项目,用户频繁对其标注标签,说明这个项目受用户的喜欢,可由式(13)计算得到:
(13)
其中,表示项目被用户标注标签的频率。
项目—标签概率矩阵中,假定项目和标签的隐含特征向量为、,维数均为。则项目-标签概率矩阵的条件分布如(14)所示。
(14)
其中,为概率密度函数,满足均值为,方差为的高斯分布;为指示函数,当项目被标注了标签,则=1;否则=0。矩阵中假设用户特征向量、项目特征向量均满足均值为0的球形高斯先验分布如式(15)和式(16):
(15)
(16)
通过贝叶斯推理,可以得到式(17)。
(17)
4.5 TaSoRec推荐模型
用户给项目标注标签的个数,用户使用某类标签的频率,项目与某类标签的关联程度,都是影响推荐的因素,这些因素由用户直接行为显示出来的,即用户给出的显示反馈信息。而用户对项目的访问次数、转发行为等不是用户直接给出的倾向,但用户的这些行为隐式的反馈了用户的喜好程度。因此,将隐式反馈信息融入推荐模型中,对推荐准确率的影响具有现实的积极意义。本文提出一种融合隐式反馈信息的TaSoRec模型,该模型通过联合概率矩阵分解技术来进行推荐。TaSoRec模型的图形表示如图1所示。
由图1可得出LaSoRec推荐的后验分布函数的log函数,如式(18)。
(18)
其中,C是常量,最大化公式(18)可看作无约束优化问题,最小化公式(19)等价于最大化公式(18):
(19)
其中,,,,,,应用梯度下降法求出公式(19)的局部最小值。参数的梯度下降公式如式(20)所示。
(20)
的梯度下降公式如式(21)所示。
(21)
的梯度下降公式如式(22)所示。
(22)
5 实验分析(Experiment analysis)
本文采用推荐系统常用的数据集合MovieLens,该数据中包括标签信息和评分信息,适用于我们提出的模型。实验选取MovieLens数据集大规模库中的数据进行试验,有6040个独立用户对3900部电影作的大约100万次评分。本文采用RMSE指标来评价本文提出模型的推荐效果。
为了验证本文提出模型TaSoRec的推荐效果,进行了四组比较实验,第一组、第二组、第三组、第四组的训练数据分别使用实验数据的90%、70%、20%、10%,分别对本文提出的TaSoRec模型、文献[6]提出的推荐模型(TPR)、文献[7]提出的MsRec进行实验验证,实验结果如表1和表2所示。
多次实验表明,设置特征维数为10和20,,,,,时,实验效果最优。
6 结论(Conclusion)
本文提出的模型考虑了社会网络环境下用户与用户之间的关系,并认为具有相似行为的用户之间存在相似性,通过分析用户标注的标签语义信息来识别相似用户,融合用户相似度的情况下,利用联合概率矩阵分解方法进行推荐。经过反复实验表明:本模型适用于数据稀少的情况及新用户情况下的推荐,推荐效果具有很大优势,能够对社会网络环境下的推荐提供算法支持。
参考文献(References)
[1] Hernando A, Bobadilla J, Ortega F. A non negative matrix factorization for collaborative filtering recommender systems based on a Bayesian probabilistic model[J]. Knowledge-Based Systems, 2016, 97(C): 188-202.
[2] 王永貴,宋真真,肖成龙.基于改进聚类和矩阵分解的协同过滤推荐算法[J].计算机应用,2018,038(004):1001-1006.
[3] 涂丹丹,舒承椿,余海燕.基于联合概率矩阵分解的上下文广告推荐算法[J].软件学报,2013,24(3):454-464.
[4] Zhen Y, Li W J, Yeung D Y. TagiCoFi: Tag informed collaborative filtering[C]. Proceedings of the 2009 ACM Conference on Recommender Systems, RecSys, 2009.
[5] Le Wu, Enhong Chen, Qi Liu, et al. Leveraging Tagging for Neighborhood-aware Probabilistic Matrix Factorization[C]. the 21st ACM Conference on Information and Knowledge Management(CIKM 2012), 2012.
[6] 吴燎原,蒋军,王刚.科研社交网络中基于联合概率矩阵分解的科技论文推荐方法研究[J].计算机科学,2016,43(9):213-217.
[7] 熊丽荣,刘坚,汤颖.基于联合概率矩阵分解的移动社会化推荐[J].计算机科学,2016,43(009):255-260.
作者简介:
郑绍振(1980-),男,本科,工程师.研究领域:智能交通,推荐系统.
郑东霞(1978-),女,硕士,副教授.研究领域:数据分析,推荐系统.