2. 中国人民大学 信息学院, 数据工程与知识工程教育部重点实验室, 北京 100872;
3. 中国科学院计算技术研究所, 中国科学院网络数据科学与技术重点实验室, 北京 100190
2. Key Laboratory of Data Engineering and Knowledge Engineering, MOE, Information School, Renmin University of China, Beijing 100872, China;
3. CAS Key Laboratory of Network Data Science & Technology, Institute of Computing Technology, Chinese Academy of Sciences, Beijing 100190, China
随着第二代互联网技术的迅速发展,微博系统逐渐成为最流行的社交媒体平台之一。用户乐于在微博平台上发布、浏览、评论、传播和搜索微博等。微博系统平台便利性和实时性的特点,使得微博信息可以在用户之间快速地传播。用户的转发行为是信息传播的主要途径,用户转发行为的研究对于热点话题检测[1]、个性化微博推荐[2-3]、信息传播预测[4-5]等具有非常重要的价值。
在微博平台上,每天会有大量的用户产生内容,预测用户的转发行为具有很大的挑战性。主要包括以下2点:1)隐性反馈。用户u收到并转发一些信息,可以认为用户u对转发的信息感兴趣, 但却无法确定用户u对转发信息中的哪些信息兴趣更高。另外,用户u收到信息j却没有转发,可以有多种解释。可能是对信息j不感兴趣,也可能是用户u收到的信息太多,信息j淹没其中,还有可能是恰好没有时间来转发信息j。2)数据稀疏和用户兴趣的多样性。通常,一个活跃用户每天会收到很多微博信息,而他只会转发很少一部分信息,这就导致数据稀疏问题。另外,用户的兴趣是非常广泛的,这就加剧了预测用户转发行为的难度。
近些年,研究人员提出很多方法来应对上述挑战: 1)给定微博,用户的转发行为视为正例,否则视为负例[6]。针对正例和负例之间比例的不平衡问题,现有的研究通过设置一个比例,来对负例进行随机抽样。这一方面会因为抽样的偏差导致模型性能不佳,另一方面会因为增加负例后训练数据增加,进而导致模型训练时间较长。2)现有的研究[7-8]假设用户只能收到他的关注者的微博,进而把可能被转发的微博限制在非常小的一个范围。但实际上,用户可以接收的信息来源非常广泛。比如,用户会收到微博平台推荐的热点微博或个性化微博, 用户会主动搜索感兴趣的微博。另外,用于学术研究的数据集通常会在数据扒取过程中丢失一些用户之间的关注关系,导致预测准确度不高。
针对现有的微博转发行为研究中暴露出的问题,本文从纯协同过滤的角度探索一个联合概率模型来建模用户的转发行为: 1)采用Bayesian Poisson因子分解(BPF)模型[9]来建模用户的转发行为。一方面Bayesian Poisson因子分解模型非常适合于建模用户的隐性反馈,另一方面只需要使用正例来训练模型的参数,这就大大降低了训练时间。2)本文探索使用用户之间的广泛存在的多重信任关系来应对数据稀疏和用户兴趣多样性问题。直觉上,用户的转发行为不仅取决于自身偏好,而且受信任好友的影响。更进一步,用户之间的信任强度越大,则影响越大。
1 数据集和多重信任关系分析 1.1 数据集本文使用的数据集来自于大数据竞赛(http://www.pkbigdata.com/)。主办方卧龙大数据选择了约3万条新浪“源微博”数据,涉及到约800万位用户,用户之间的关注关系超过7亿条。详细的统计数据如表 1所示。
1.2 多重信任关系分析
在微博平台上,用户转发微博的一个主要意图是为了影响其他人[10]。用户之间的关注关系是一种显式的和直接的信任关系, 用户收到或转发的微博主要来自于他关注的好友。在本文所使用的数据集中,有59.63%的转发来自于被关注者,而其余的转发行为来自于关注好友之外的其他用户。这说明用户之间还有很多隐式的和间接的信任关系影响着用户的转发行为。用户间的多重信任关系如图 1所示。
1.2.1 关注关系(Followees)
在图 1中,用户u关注了用户v1、v2和v3,则用户v1、v2和v3对用户u会有直接的影响。其中,相对于用户v2和v3,如果用户u之前转发过多次用户v1的微博,则用户u更可能再次转发用户v1的微博。用tuv1表示用户u对任意被关注者v的信任强度,则[11]
$ {{t}_{uv}}^{1} = \frac{\left| {{y}_{u\to v}} \right|}{\left| {{y}_{u}} \right|}. $ | (1) |
其中,|yu→v|表示用户u转发的微博来自于被关注者v的数量,|yu|表示用户u转发微博的总数量。
1.2.2 共同关注关系(Co-follow)在图 1中,用户u和用户v4、v5、v6共同关注用户v3。另外,用户u和用户v4也共同关注用户v2。如果用户u和用户v共同关注一个或多个其他用户,称他们之间构成共同关注关系,也称粉丝关系。直觉上,粉丝之间有相似的兴趣偏好,并且2个用户共同关注的用户越多,则他们之间的兴趣相似度越大。用户u对用户v的信任强度的计算公式如下:
$ {{t}_{uv}}^{2} = \frac{|\text{Followees}\left( u \right)\cap \text{Followees}\left( v \right)|}{|\text{Followees}\left( u \right)|} $ | (2) |
在式(2)中,Followees(u)表示用户u的所有关注好友列表。
1.2.3 共同评论关系(Co-comment)在新浪微博平台上,用户可以对任何人发布的微博进行评论,并且在评论的同时可以选择是否进行转发。多个用户共同评论一些微博,则表明他们具有相似的内容偏好,他们之间构建了隐式的共同评论关系。在图 1中,假设用户u和用户v7、v8、v9、v10、v11共同评论了一条或多条微博,则用户v7、v8、v9、v10、v11可能会有相似的转发行为。直觉上,共同评论的微博数量越多,则用户之间的兴趣相似度越大,即用户之间的隐式信任强度越大。在共同评论关系中,用户u对用户v的信任强度的计算公式如下:
$ {{t}_{uv}}^{3} = \frac{|\text{Comments}\left( u \right)\cap \text{Comments}\left( v \right)|}{|\text{Comments}\left( u \right)\cup \text{Comments}\left( v \right)|}. $ | (3) |
在式(3)中,Comments(u)表示用户u评论过的微博列表。
1.2.4 共同转发关系(Co-retweet)在微博社交网络中,因为用户之间存在错综复杂的联系,同一条微博经常被没有直接关注关系的多个用户共同转发。在微博平台上,经常转发相同微博内容的用户必然兴趣相似,在图 1中,假设用户u和用户v12、v13、v14、v15共同转发过一条或多条微博,则他们之间构建了共同转发关系。直觉上,用户之间共同转发的微博数量越多,则具有越大的兴趣相似度,即隐含的信任强度越大。用Jaccard系数来计算信任强度如下:
$ {{t}_{uv}}^{4} = \frac{|\text{Retweets}\left( u \right)\cap \text{Retweets}\left( v \right)|}{|\text{Retweets}\left( u \right)\cup \text{Retweets}\left( v \right)|}. $ | (4) |
在式(4)中,Retweets(u)表示用户u的所有转发微博列表。
2 基于多重信任关系的Poisson分解模型 2.1 模型概览本文从2个方面来考虑用户转发微博的动机:自身兴趣和社交影响。自身兴趣是指用户的本性偏好, 本文用BPF来建模自身兴趣,可以有效地估计整体结构。社交影响是指直接或间接的社交关系下,不同用户之间的信任关系对用户行为的影响, 本文在原始BPF的基础上,线性地增加用户之间的多重信任关系。该文模型命名为TrustBPF。因为多个独立的Poisson随机变量之和仍然服从Poisson分布,所以增加多重信任关系后的TrustBPF模型,不会改变原有BPF模型的概率假设。
直觉上,用户之间的信任强度越大,对用户转发行为的影响力越大。本文进一步把用户之间的信任强度整合到TrustBPF模型中,如图 2所示。
2.2 TrustBPF模型
在转发行为预测中,微博被视为物品(item),yui表示用户u是否转发微博i。把用户的转发行为看作为一个二值响应,当用户u转发微博i,yui的值为1,否则yui的值为0。观察值yui的分布表示如下:
$ {y_{ui}} \sim {\rm{Poisson}}\left( {{\mathit{\boldsymbol{\theta }}_u}^{\rm{T}}{\mathit{\boldsymbol{\beta }}_i} + \sum\limits_{m = 1}^M {\sum\limits_{v = 1}^{{V_m}} {{\tau _{uv}}^m{t_{uv}}^m{y_{vi}}} } } \right). $ | (5) |
其中:θu和βi分别表示用户u和物品i对应的K维潜在向量;M表示用户之间信任关系的总数量,不同的数据集能挖掘出的信任关系是不一样的;Vm表示在第m个信任关系中用户u的信任好友的数量;tuvm和τuvm分别表示在第m个信任关系中,用户u和关注好友v之间的信任强度和信任系数; tuvm可以使用节1中的公式,根据观察数据预计算出来;τuvm则需要训练出来;yvi表示用户u的关注好友v对微博i的转发行为。
进一步,假设θuk、βik和τuvm均服从Gamma分布。这是因为,Gamma分布是Poisson分布的共轭先验,因此,对于模型参数的Bayesian学习是非常方便的。另外,Gamma先验可以更好地迎合潜在变量的稀疏表示需求。具体地,在Gamma分布中设置较小的形状(shape)参数,使得绝大多数潜在变量的值都趋于零。
3 参数推断和微博转发预测 3.1 参数推断本文用λ、Y和Θ分别表示所有的Gamma先验的参数、用户转发行为数据和潜在变量。即λ = {λ·a,λ·b},Y = {yui},Θ = {θuk,βik,τuvm}。
为了使用TrustBPF模型,需要解决的关键问题是后验推断。也就是根据λ和Y来推断Θ,然后利用推断出的Θ预测用户的转发行为。但是,准确地推断Θ的后验是不可行的,通常采用变分推断、Markov Chain Monte Carlo (MCMC)抽样方法等进行近似。其中,变分推断的基本思想是利用Jensen不等式获得对数似然的可调下界,借助于变分分布族,把后验推断转化为一个优化问题。变分推断具有较好的可扩展性,适合处理大规模的数据[9]。本文使用变分推断来逼近模型参数的最优解。
为便于公式推导,首先增加一些辅助变量,令
$ \begin{align} &{{z}_{uik}}^{Y}\sim \text{Poisson}({{\theta }_{uk}}{{\beta }_{ik}}), \\ &{{z}_{uiv}}^{m}\sim \text{Poisson}({{\tau }_{uv}}^{m}{{t}_{uv}}^{m}{{y}_{vi}}).~ \\ \end{align} $ |
则式(5)可以变换为
$ {{y}_{ui}} = \sum\limits_{k = 1}^{K}{{{z}_{uik}}^{Y}}+\sum\limits_{m = 1}^{M}{\sum\limits_{v = 1}^{{{V}_{m}}}{{{z}_{uiv}}^{m}}}.~ $ |
在平均场变分分布中,每个变量仅受其自身变分参数的控制。令γ为潜在变量Θ的变分参数,ϕ为辅助变量Z的变分参数,则变分分布可记作q(Θ, Z|γ, ϕ)。在对数似然上寻找最逼近的下限,转换为如下的优化问题,
$ ~({{\gamma }^{*}}, {{\phi }^{*}}) = \underset{\left( \gamma, \phi \right)}{\mathop{\text{arg}\ \text{min}}}\, D\left( q\left( \mathit{\Theta }, \text{ }Z|\gamma, \phi \right)|\left| p(\mathit{\Theta } \right|Y, \text{ }\lambda \right). $ |
最终,通过最小化变分分布和后验分布之间的KL散度来找到最优的变分参数值。
为解决上述优化问题,需要计算每个潜在变量的完全条件, 它是给定所有其他变量情况下,当前潜在变量的条件分布。由于Θ中的每个潜在变量具有共轭Gamma先验,因此Θ中每个潜在变量的完全条件也是Gamma分布。而对于辅助变量Z,根据文[12]的结论,其完全条件是多项分布。
在平均场变分分布族中,每个潜在变量和辅助变量都是独立的,且仅受它自身变分参数的支配:
$ \begin{align} &q\left( \mathit{\Theta }, \text{ }Z|\gamma, \phi \right) = \prod\limits_{u, k}{q({{\theta }_{uk}}|{{\gamma }_{uka}}, \text{ }{{\gamma }_{ukb}})}\ \cdot \ \\ &\prod\limits_{i, k}{q({{\beta }_{ik}}|{{\gamma }_{ika}}, \text{ }{{\gamma }_{ikb}})}\prod\limits_{m, \text{ }u, \text{ }v}{q({{\tau }_{uv}}^{m}|{{\gamma }_{uva}}^{m}, \text{ }{{\gamma }_{uvb}}^{m})\ \cdot } \\ &\prod\limits_{u, \text{ }i, \text{ }k}{q({{z}_{uik}}^{Y}|{{\phi }_{uik}}^{Y})}\prod\limits_{m, \text{ }u, \text{ }i, \text{ }v}{q({{z}_{uiv}}^{m}|{{\phi }_{uiv}}^{m}).~} \\ \end{align} $ |
其中:γ·a和γ·b分别是变分Gamma分布的形状(shape)和尺度(rate)参数,ϕui·是变分多项分布的参数。
根据文[13]的结论,在条件共轭模型中,每个潜在变量对应的变分参数的值等于其完全条件中对应参数的期望。最终,所有潜在变量对应的完全条件和变分参数如表 2所示。
潜在变量 | 类型 | 完全条件的参数 | 变分参数 |
θuk | Gamma | ||
βik | Gamma | ||
τuvm | Gamma | ||
ZuikY | Mult | θukβik | |
Zuivm | Mult | τuvmtuvmyvt |
接下来,使用坐标上升算法来更新每个变分参数,从而得到局部最优解。伪代码如图 3所示。
图 3算法的时间复杂度主要取决于潜在向量维度K、用户好友的最大数量以及观察到的用户转发行为。对于稀疏的转发行为,图 3算法是非常有效的。
3.2 微博转发预测用TrustBPF模型预测用户的转发行为,通过转换为用户对微博预测评分,然后推荐较高评分的微博来实现。首先,利用式(11)计算用户对每条微博的评分;然后,根据评分值的高低对微博进行排序;最后,向用户推荐评分较高的top-k条微博。
$ \begin{array}{l} {{\hat y}_{ui}} = {E_q}\left[ {{\mathit{\boldsymbol{\theta }}_u}^{\rm{T}}{\mathit{\boldsymbol{\beta }}_i} + \sum\limits_{m = 1}^M {\sum\limits_{v = 1}^{{V_m}} {{\tau _{uv}}^m{t_{uv}}^m{y_{vi}}} } } \right] = \\ \sum\limits_{k = 1}^K {\frac{{{\gamma _{uka}}}}{{{\gamma _{ukb}}}}\frac{{{\gamma _{ika}}}}{{{\gamma _{ikb}}}}} + \sum\limits_{m = 1}^M {\sum\limits_{v = 1}^{{V_m}} {\frac{{{\gamma _{uva}}^m}}{{{\gamma _{uvb}}^m}}} } t_{uv}^m{y_{vi}}. \end{array} $ | (11) |
本文从数据集中选择至少转发过30次的用户,然后根据转发时间的先后顺序来分隔用户的转发数据。其中,70%的转发数据用于训练集,剩余30%的数据作为测试集。另外,从训练集中随机选择1%的数据用于验证集。
评估指标选用准确率(P@k)和归一化折损累计增益(N@k)。本文中k分别为3、5和10。
4.2 对比模型本文选择以下模型作为基准模型,用于对比本文提出的TrustBPF模型。
1) FM[14]是一个通用的预测模型,可以灵活地融入各种上下文信息进行预测。本文把用户之间的多重信任关系作为上下文用于预测用户的转发行为。
2) BPF[9]模型适合于建模用户的隐性反馈, 但是BPF模型只能建模用户和物品二者之间的交互, 不能直接混入用户之间的信任关系信息。
3) SPF[15]模型在BPF模型的基础上,仅可以混入用户之间直接的信任关系(对于微博数据,仅混入用户之间的关注关系),并且没有考虑用户之间的信任强度。
4) SA、S1、S2、S3和S4模型是本文提出的TrustBPF模型的特例。这5个模型只是保留用户之间的信任关系,而没有建模用户-物品之间的二元交互。其中SA模型考虑了所有的信任关系, 而S1、S2、S3和S4模型分别只考虑第1种、第2种、第3种和第4种信任关系。
4.3 实验结果每个潜在变量对应的Gamma先验的2个参数(λ·a和λ·b)初始化为0.3,对应的变分参数(γ·a和γ·b)初始化为0.3加上一个很小的随机数。对于所有模型的潜在向量的维度K,实验过程表明统一设置为50是一个比较合理的方式。
4.3.1 模型的有效性不同模型的性能对比结果如表 3所示。从表 3可以看出TrustBPF模型显著地优于其他的模型。比如,在P@3指标下,相对于FM、BPF和SPF模型,TrustBPF模型分别提升了129.25%、88.37%和57.79%。这表明充分利用用户之间的多重信任关系,可以有效地缓解数据稀疏问题,进而提升预测的准确度。
模型 | P@3 | N@3 | P@5 | N@5 | P@10 | N@10 |
FM | 0.106 | 0.108 | 0.098 | 0.101 | 0.085 | 0.091 |
BPF | 0.129 | 0.132 | 0.119 | 0.124 | 0.108 | 0.115 |
SPF | 0.154 | 0.157 | 0.147 | 0.152 | 0.130 | 0.139 |
TrustBPF | 0.243 | 0.252 | 0.215 | 0.231 | 0.192 | 0.209 |
从表 3还可以看出SPF模型的性能稍微优于BPF模型的性能。这说明在Poisson因子分解模型的基础上整合用户之间的社交影响能够提高预测的准确度。
另外,从表 3可以观察到FM模型的性能是最差的。这是因为在新浪微博数据集中,正例和负例是严重不平衡的,而基于Gauss似然的FM模型平等地对待正例和负例。而Poisson因子分解概率模型只需要使用正例来训练模型参数,且尤其适合于建模用户的隐性反馈行为数据[9]。
4.3.2 不同信任关系对模型性能影响力分析本文提出了TrustBPF模型可以整合用户之间的多重信任关系,接下来的实验把“用户-物品”之间的二元交互部分去除(即从TrustBPF中去除BPF),验证仅仅利用用户之间不同的信任关系会产生怎样的预测结果。实验结果如表 4所示。
模型 | P@3 | N@3 | P@5 | N@5 | P@10 | N@10 |
SA | 0.212 | 0.217 | 0.187 | 0.199 | 0.157 | 0.169 |
S1 | 0.071 | 0.073 | 0.071 | 0.072 | 0.063 | 0.065 |
S2 | 0.168 | 0.172 | 0.163 | 0.168 | 0.153 | 0.158 |
S3 | 0.178 | 0.186 | 0.163 | 0.174 | 0.153 | 0.164 |
S4 | 0.201 | 0.208 | 0.182 | 0.193 | 0.162 | 0.166 |
从表 4可以观察到用户之间的共同转发关系(S4)对预测准确度的帮助最大,其次是共同评论关系(S3)和共同关注关系(S2)。这是因为这3种类型的数据在数据集中是非常丰富的。并且,这3种关系更能表现出用户对微博的共同的偏好。而关注关系(S1)对模型的贡献度最低。这表明虽然用户之间存在关注关系,但是并不意味着粉丝用户对被关注者所发布的每条微博都感兴趣。
5 结论针对微博转发预测问题,本文从2个方面来考虑用户转发微博的动机:自身兴趣和社交影响。使用Poisson因子分解来建模自身兴趣,可以有效地估计整体结构。而通过分析用户的转发动机,发现用户之间存在异构的社交影响,进而存在多重信任关系。本文把用户之间的多重信任关系和信任强度融入到Poisson因子分解概率模型中,提出了TrustBPF模型。实验结果表明TrustBPF模型是有效的。
[1] |
SU S, WANG Y K, ZHANG Z B, et al. Identifying and tracking topic-level influencers in the microblog streams[J]. Machine Learning, 2018, 107(3): 551-578. DOI:10.1007/s10994-017-5665-1 |
[2] |
DE MAIO C, FENZA G, GALLO M, et al. Time-aware adaptive tweets ranking through deep learning[J]. Future Generation Computer Systems, 2017. DOI:10.1016/j.future.2017.07.039 |
[3] |
仲兆满, 管燕, 胡云, 等. 基于背景和内容的微博用户兴趣挖掘[J]. 软件学报, 2017, 28(2): 278-291. ZHONG Z M, GUAN Y, HU Y, et al. Mining user interests on microblog based on profile and content[J]. Journal of Software, 2017, 28(2): 278-291. (in Chinese) |
[4] |
李洋, 陈毅恒, 刘挺. 微博信息传播预测研究综述[J]. 软件学报, 2016, 27(2): 247-263. LI Y, CHEN Y H, LIU T. Survey on predicting information propagation in microblogs[J]. Journal of Software, 2016, 27(2): 247-263. (in Chinese) |
[5] |
刘玮, 贺敏, 王丽宏, 等. 基于用户行为特征的微博转发预测研究[J]. 计算机学报, 2016, 39(10): 1992-2006. LIU W, HE M, WANG L H, et al. Research on microblog retweeting prediction based on user behavior features[J]. Chinese Journal of Computers, 2016, 39(10): 1992-2006. DOI:10.11897/SP.J.1016.2016.01992 (in Chinese) |
[6] |
JIANG B, LIANG J G, SHA Y, et al. Message clustering based matrix factorization model for retweeting behavior prediction[C]//Proceedings of the 24th ACM CIKM International on Conference on Information and Knowledge Management. New York: ACM, 2015: 1843-1846.
|
[7] |
ZHANG Q, GONG Y Y, GUO Y, et al. Retweet behavior prediction using hierarchical dirichlet process[C]//Proceedings of the 29th AAAI Conference on Artificial Intelligence. Austin, Texas: AAAI, 2015: 403-409.
|
[8] |
ZHANG J, TANG J, ZHONG Y Y, et al. Structinf: Mining structural influence from social streams[C]//Proceedings of the 31st AAAI Conferences on Artificial Intelligence. San Francisco, California, USA: AAAI, 2017: 73-80.
|
[9] |
GOPALAN P, HOFMAN J M, BLEI D M. Scalable recommendation with hierarchical Poisson factorization[C]//Proceedings of the Thirty-First Conference on Uncertainty in Artificial Intelligence. Arlington, Virginia: AUAI Press, 2015: 326-335.
|
[10] |
ZHANG J, TANG J, LI J Z, et al. Who influenced you? Predicting retweet via social influence locality[J]. ACM Transactions on Knowledge Discovery from Data (TKDD), 2015, 9(3): 25. |
[11] |
JIANG B, LIANG J G, SHA Y, et al. Retweeting behavior prediction based on one-class collaborative filtering in social networks[C]//Proceedings of the 39th SIGIR International ACM SIGIR Conference on Research and Development in Information Retrieval. New York: ACM, 2016: 977-980.
|
[12] |
CEMGIL A T. Bayesian inference for nonnegative matrix factorisation models[J]. Computational Intelligence and Neuroscience, 2009, 2009: 785152. |
[13] |
HOFFMAN M, BLEI D M, WANG C, et al. Stochastic variational inference[J]. Journal of Machine Learning Research, 2013, 14(1): 1303-1347. |
[14] |
RENDLE S. Factorization machines[C]//Proceedings of the 10th IEEE International Conference on Data Mining. Sydney, NSW, Australia: IEEE, 2010: 995-1000.
|
[15] |
CHANEY A J B, BLEI D M, ELIASSI-RAD T. A probabilistic model for using social networks in personalized item recommendation[C]//Proceedings of the 9th ACM Conference on Recommender Systems. New York: ACM, 2015: 43-50.
|