基于多维信任和联合矩阵分解的社会化推荐方法
2019-08-01王磊任航龚凯
王磊 任航 龚凯
摘 要:针对现有社会化推荐算法在信任分析方面的不足,研究了从社交辅助信息中充分挖掘用户信任关系的方法,进而提出一种基于多维信任计算和联合矩阵分解的社会化推荐算法。首先,从用户社交行为、社交圈特征获得用户的动态和静态两种局部信任度,再利用信任网络的结构特征提取全局信任度;然后,构造一种对增强关注矩阵和社交信任矩阵进行联合矩阵分解的社会化推荐算法,并采用随机梯度下降法对其求解。基于新浪微博数据集的实验结果表明,所提出的算法在推荐精度和TopK推荐能力方面明显优于socailMF、 LOCABAL、 contextMF和TBSVD这几种代表性的社会化推荐算法。
关键词:推荐算法;信任关系;社交网络;交互行为;联合矩阵分解
中图分类号:TP181
文献标志码:A
Abstract: Aiming at the shortages in trust analysis of existing social recommendation algorithms, a social recommendation algorithm based on multidimensional trust and collective matrix factorization was proposed with full use of user trust relationship mined from social auxiliary information. Firstly, the dynamic and static local trust relationships were extracted respectively from social interaction behaviors and social circle features of the user, and the global trust relationship was extracted from the structural features of trust network. Then, a social recommendation algorithm was presented by collective factorizing the enhanced following relationship matrix and the social trust relationship matrix, and a stochastic gradient descent method was utilized to solve the algorithm. The experimental results on the Sina microblog dataset indicate that the proposed algorithm outperforms some popular social recommendation algorithms such as socialMF, LOCABAL, contextMF and TBSVD (Trust Based Singular Value Decomposition), in terms of recommendation accuracy and TopK performance.
英文关键词Key words: recommendation algorithm; trust relationship; social network; interaction; collective matrix factorization
0 引言
随着Facebook、Twitter、微博、微信等社交网络媒体的飞速发展,信息过载问题日益严峻。旨在研究如何从海量社交数据中获取用户感兴趣的项目和内容的社会化推荐算法受到了广泛的关注[1-5]。与传统推荐算法相比,社交网络中通常存在更加严重的数据稀疏和冷启动问题,这给社会化推荐算法研究带来了巨大的挑战。
为解决该问题,一些学者较早地研究和利用了普遍存在的社交信任进行推荐。他们依据社会学中的同质理论[2],认为用户偏好受到其信任的社交好友的显著影响,提出了RSTE(Recommendation with Social Trust Ensemble)[3]、socialMF[4]、StrengthMF[5]等经典的基于信任关系的社会化推荐算法。但是,这些研究大都将信任视为单一、同质的关系,简单地从项目评分矩阵或关注/被关注关系中估计出用户信任,具有较明显的局限性。
同时,社交網络中存在着丰富的辅助信息,例如:用户行为、网络结构、标签等,它们与用户之间的真实信任关系存在着密切的联系[6]。近年来,一些学者综合各种社交辅助信息、评分矩阵、社交关系等从多方面分析用户信任,用以提高社会化推荐算法的性能[7-13], 例如,Tang等[7]认为用户决策受到社交好友和全局声誉高的其他用户的影响,他们分别利用评分相似性和PageRank算法获得用户的局部和全局信任,基于矩阵分解方法提出了著名的LOCABAL算法; 余永红等[8]在前者基础上,研究从不同社交领域分别提取局部和全局信任,进一步提升了算法精度; Wang等[9]充分挖掘了评分和社交关系数据,定义胜任度、可信赖度、评分相似性三个指标评价用户信任关系; 潘一腾等[10]在socialMF算法框架下,进一步将信任细分为隐含的信任者关系和被信任者关系,提升了推荐性能; Ma等 [11]结合用户标签相似性和社交关系定义了信任,提出一种微博推荐算法; Jiang等[12]分别从社交文本、微博转发行为数据中计算出用户的偏好相似性和社交影响力,从这两方面衡量用户的信任关系,提出了contextMF推荐算法; 此外,Xu等[13]分别利用好友关系和交互行为定义用户之间的直接和间接信任,在奇异值矩阵分解框架下提出了TBSVD(Trust Based Singular Value Decomposition)推荐算法。
然而,这些方法大多没有对社交信任关系进行充分的挖掘和利用,特别是没有充分重视社交行为在信任分析中的作用。实际上,评分和社交关系数据由于人为主观因素影响容易出现噪声[6,14],而社交行为则能更真实地揭示用户之间的信任状态。此外,上述方法大都忽略了用户偏好和兴趣会随时间动态变化的特点[15]。
因此,本文以社交网络的项目推荐任务(如:微博推荐、好友推荐等)为研究对象,设计一种基于多维度信任计算和联合矩阵分解的社会化推荐算法(Multidimension Trust and Collective Matrix Factorization based social recommendation algorithm, MTCMF)。具体地,采用用户的转发和评论行为的频率、社交圈重叠度从动态和静态两个方面度量局部信任度;利用信任网络的结构特征定义全局信任度;同时,结合社交行为和衰减函数给出“用户项目”关注矩阵的增强方法,更准确地反映用户偏好的时间变化;最后,基于联合矩阵分解技术给出了本文的社会化推荐模型和算法。
1 社会化推荐问题定义
假设社交网络中存在m个待推荐项目和n个用户,分别用集合S={s1,s2,…,sm}和U={u1,u2,…,un}表示。每个用户可以关注或订阅若干项目,也可以同若干用户形成双向的好友关系。令矩阵R=[ri, j]n×m表示“用户项目”关注关系,且满足ri, j∈{0,1},其中,ri, j=1表示用户ui关注项目sj,反之亦然。令矩阵T=[Ti, j]n×n表示用户间的社交好友关系,其中,Ti, j=1表示用户ui和uj是好友,反之亦然。通常,矩阵R和T具有严重的稀疏性[4-5,7,12-13]。另外,假设社交网络中普遍存在丰富的辅助信息,包括社交行为(如转发、评论等)及其发生时间、社交网络结构特征等, 其中,令Nuri, j和Nuci, j分别表示在特定日期范围[ts,te]内用户ui对用户uj的文章的转发和评论次数;令tsi, j表示用户ui对项目sj的最近一次交互行为(包括关注、转发和评论)的发生日期。
社会化推荐的任务是利用关注关系R、好友关系T以及上述辅助信息预测当前用户u对特定项目s的偏好程度。
2 社交信任的计算
为了更准确地度量用户之间的信任关系,本章利用社交行为、网络结构特征等辅助信息,设计一种从多个维度进行信任计算的方法。
2.1 信任网络图
令G=(U,E)表示信任网络图,E表示用户间的信任关系集合,如图1所示。与文献[12-13]的思路不同,本文认为双向好友关系相对于单向关注关系体现了更紧密的社会联系和信任度。因此,本文直接从社交好友矩阵T获得边集E,其中,任意边(ui,uj)∈E的权重为Tli, j,代表用户ui对uj的局部信任度,用户节点ui的权重为Tgi,表示其全局信任度。
2.2 局部信任度的计算
局部信任体现了用户对社交好友的信任程度,具有非对称、差异化特点。现有的基于信任的社会化推荐算法大都从评分数据和社交关系中挖掘出隐含的信任关系[4-5, 7-12];然而,评分数据和社交关系中容易受到用户主观因素影响而存在噪声[10,14],因此,本节对社交辅助信息进行挖掘,从社交行为、社交圈特征中提取动态和静态两种局部信任度。
总结上述实验可知,本文算法在推荐精度和TopK推荐能力两方面均优于其他4种算法,这得益于MTCMF能够从社交行为、社交圈特征、信任网络结构等多个维度更准确地计算出用户之间的信任,从而有效地提升了社会化推荐算法的性能。相比较而言,socialMF和LOCABAL简单地从社交关系和评分矩阵估计用户信任,停留在信任计算的表面,因而推荐性能较差;contextMF和TBSVD算法的推荐性能与本文算法较为接近,这也从侧面说明了从社交行为等辅助信息中提取社交信任是一种更为可靠的信任估计方法。
4.3 参数的影响
MTCMF算法中,信任因子α和信任正则化参数λT起到重要作用,它们控制了信任关系在推荐算法中的影响程度,当α=0和λT=0时,算法退化为普通的矩阵分解推荐算法,仅依赖于关注数据来学习进行推荐;当α→∞和λT→∞时,则完全依赖社交信任关系进行推荐。实验中,考察了k=10和训练集比例为80%时,参数α和λT对算法性能的影响,具体结果如图4和圖5所示。
从图4的结果可以看出,信任因子α的确对MTCMF算法的准确度有明显影响,它取过大值或过小值时均不能充分发挥社交信任的作用,其合理的取值区间为[2, 10],本文取最优值α=5。从图5的结果可以看出,信任正则化参数λT对算法的准确度的影响相对较小,其在区间[0.1, 2]取值时,算法均能获得较好结果,本文取最优值λT=0.2。
5 结语
本文利用交互行为、社交圈、信任网络结构提出一种多维度的社交信任计算方法,然后基于联合矩阵分解技术建立了一种新颖的社会化推荐算法。基于新浪微博数据集的实验结果表明,本文算法在项目推荐任务中的推荐精度和TopK推荐能力明显优于几种代表性的社会化推荐算法,具有良好的应用前景。在后续工作中,将研究把标签、位置等更多的辅助信息融入信任计算过程中,以期望进一步提高推荐算法的准确度。
参考文献 (References)
[1] TANG J, HU X, LIU H. Social recommendation: a review[J]. Social Network Analysis & Mining, 2013, 3(4): 1113-1133.
[2] MCPHERSON M, SMITHLOVIN L, COOK J M. Birds of a feather: homophily in social networks [J]. Annual Review of Sociology, 2001, 27(1): 415-444.
[3] MA H, KING I, LYU M R. Learning to recommend with social trust ensemble[C]// Proceedings of the 32nd International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2009: 203-210.
[4] JAMALI M, ESTER M. A matrix factorization technique with trust propagation for recommendation in social networks[C]// Proceedings of the 4th ACM Conference on Recommender Systems. New York: ACM, 2010:135-142.
[5] 郭磊, 馬军, 陈竹敏. 一种信任关系强度敏感的社会化推荐算法 [J]. 计算机研究与发展, 2013, 50(9): 1805-1813. (GUO L, MA J, CHEN Z M. Trust strength aware social recommendation method [J]. Journal of Computer Research and Development, 2013, 50(9): 1805-1813.)
[6] WANG X,WANG Y,GUO J H. Building trust networks in the absence of trust relations [J]. Frontiers of Information Technology & Electronic Engineering, 2017, 18(10):1591-1600.
[7] TANG J, HU X, GAO H, et al. Exploiting local and global social context for recommendation [C]// Proceedings of the 23rd International Joint Conference on Artificial Intelligence. Menlo Park, CA: AAAI Press, 2013: 2712-2718.
[8] 余永红, 高阳, 王皓, 等. 融合用户社会地位和矩阵分解的推荐算法 [J]. 计算机研究与发展, 2018, 55(1): 113-124. (YU Y H, GAO Y, WANG H, et al. Integrating user social status and matrix factorization for item recommendation [J]. Journal of Computer Research and Development, 2018, 55(1): 113-124.)
[9] WANG M, MA J. A novel recommendation approach based on users weighted trust relations and the rating similarities [J]. Soft Computing, 2015, 20(10):1-10.
[10] 潘一腾, 何发智, 于海平. 一种基于信任关系隐含相似度的社会化推荐算法 [J]. 计算机学报, 2018, 41(1): 65-81.(PAN Y T, HE F Z, YU H P. Social Recommendation algorithm using implicit similarity in trust [J]. Chinese Journal of Computers, 2018, 41(1): 65-81.)
[11] MA H, JIA M, ZHANG D, et al. Combining tag correlation and user social relation for microblog recommendation [J]. Information Sciences, 2017, 385(C):325-337.
[12] JIANG M, CUI P, WANG F. Scalable recommendation with social contextual information [J]. IEEE Transactions on Knowledge and Data Engineering, 2014, 26(11): 2789-2802.
[13] XU X, YUAN D. A novel matrix factorization recommendation algorithm fusing social trust and behaviors in microblogs[C]// Proceedings of the 2017 IEEE 2nd IEEE International Conference on Cloud Computing and Big Data Analysis. Piscataway, NJ: IEEE, 2017: 283-287.
[14] ZHANG Y, CHEN W, YIN Z. Collaborative filtering with social regularization for TV program recommendation [J]. KnowledgeBased Systems, 2013, 54(4):310-317.
[15] BAO H, LI Q, LIAO S S, et al. A new temporal and social PMFbased method to predict users interests in microblogging [J]. Decision Support Systems, 2013, 55(3):698-709.
[16] ZHANG J, LIU B, TANG J. Social influence locality for modeling retweeting behaviors [C]// Proceedings of the 23rd International Joint Conference on Artificial Intelligence. San Francisco: AAAI Press, 2013: 2761-2767.
[17] 陳婷, 朱青, 周梦溪, 等. 社交网络环境下基于信任的推荐算法 [J]. 软件学报, 2017, 28(3): 721-731. (CHEN T, ZHU Q, ZHOU M X, et al. Trustbased recommendation algorithm in social network [J]. Journal of Software, 2017, 28(3): 721-731.)
[18] SINGH A P, GORDON G J. Relational learning via collective matrix factorization [C]// Proceedings of the 14th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. New York: ACM, 2008: 650-658.