8.2.3 在线社交网络用户聚合主题模型(UATM)的建立
以下引入UATM模型的先验构建和词对提取过程,介绍UATM模型的生成过程,给出UATM模型的详细推理过程。
图8-1 基于用户聚合的在线社交网络用户搜索意图理解与挖掘算法框架图
1.基于RNN和IDF的权重先验构建
当前的主题模型方法忽视了社交网络中词之间的内部关联关系。这种关联关系在用户搜索意图理解与挖掘中具有重要的作用。如果两个词是非常相关的,那么它们出现在相同主题的可能性较大,如果能够充分利用词之间的关联关系,可以有效地学习语义信息,进而提高在线社交网络用户搜索意图理解与挖掘的性能。利用Elman RNN来学习词之间的关系。Elman RNN网络结构如图8-2所示。
图8-2 Elman RNN网络结构
采用逆文档频率(IDF)来衡量每个词,计算公式如式(8-1)所示:
其中,表示词w出现在文档中的数量。从式(8-1)可以看到,词w j出现的数量越多,IDF的结果越小。为了降低w j对语义的影响,引入权重参数对其进行调节。
综合RNN的输出和逆文档频率(IDF)的计算结果构建了权重先验,如式(8-2)和式(8-3)所示:
其中,ℓ是相对较小的一个正数,用于避免先验γ的值太小。
计算得到权重先验,替换掉原始主题模型中的超参数,使得模型学习到更一致的用户搜索意图表示。
2.UATM模型中词对的构建与提取
为了解决社交网络上下文稀疏性问题,需要对社交网络数据抽取了词对(处于同一社交网络上下文中的两个单词构成一个词对),并设定一个词对中的两个单词具有相同的主题。
对社交网络数据进行预处理,以获取微博的所有文档信息。提取词对的计算方法如式(8-4)所示:
UATM模型与BTM方法有很大的不同,主要是在提取词对的过程中引入基于RNN和IDF构建的先验知识,能够有效地学习词对间的关联关系。对于每个词对,c∈C,词对定义为C=(w j,w k,IDF w j,IDF w k,oi(j))。
3.UATM模型的生成过程
为了推断和捕获用户的搜索意图以及关注者的搜索意图,利用吉布斯采样过程来推导用户U的搜索意图分布θu和用户关注者E的搜索意图分布φu。模型中每个词对的生成来源于通用词分布ϕB或者主题词分布ϕk。通过定义一个特殊的分布x来决定词对的生成来源。其中,对于所有的用户,x=0表示词对由普通词分布ϕB生成,而x=1表示词对由主题词ϕk生成。对于x值的获取,利用分布τ进行采样。通过利用带有超参数η的分布τ作为先验来确定主题词的生成。
在在线社交网络用户聚合主题模型(UATM)中,利用式(8-4)来构建词对,以生成更多的词共现信息。综合RNN和IDF的结果,作为先验知识融合到模型中来充分地学习微博文本词之间的内部关系。给定微博短文本数据M={m 1,m 2,…,m Nd},对应的提取的词对集合为C={C1,C 2,…,C N},其中Cw=(w j,w k)。UATM模型的模型图如图8-3所示。
图8-3 在线社交网络用户聚合主题模型(UATM)的模型图
UATM模型涉及的变量或标号如表8-1所示。
表8-1 在线社交网络用户聚合主题模型(UATM)使用的变量或标号
在线社交网络用户聚合主题模型(UATM)的生成过程如下。
(1)基于超参数μ,采样微博的普通词分布ϕz,b~Dir(μ)。
(2)对于每个主题K=1,…,K,分别基于超参数γi和γj,采样微博词对分布中的一个词分布ϕk,1~Dir(γi)和另一个词分布ϕk,2~Dir(γj)。
(3)对于微博中的每一个用户u=1,…,U,分别基于超参数α,β,η采样微博中的用户搜索意图分布θu~Dir(α),关注者的搜索意图分布φu~Dir(β)以及用户的特殊分布τu~Dir(η)。
(4)对微博中的每个词对c w∈C:
1)利用用户搜索意图分布θ作为参数的多项分布,采样词对的意图分配:zu,p~Multi(θμ)。
2)利用用户关注者搜索意图分布φ作为参数的多项分布,采样词对的意图分配:z e,p~Multi(φu)。
3)对于词对中的每个词n=1,…,N p,l:
利用用户特殊分布τu作为参数的伯努利分布,采样二值开关变量x~Bern(τu):
如果x=0,利用一般词分布ϕz,b作为参数的多项分布,分别采样两个词w i,w j~Multi(ϕz,b);
如果x=1,利用词分布ϕz,1作为参数的多项分布,分别采样一个词w i~Multi(ϕz,1)和另一个词w j~Multi(ϕz,2)。
4.UATM模型的推理过程
在线社交网络用户聚合主题模型(UATM)中,采用吉布斯采样来推导UATM模型中的未知参数。吉布斯采样的核心是通过先验估计迭代采样隐变量。在采样过程中,需要积分掉用户搜索意图分布θ、关注者的搜索意图分布φ及用户的词分布ϕ,并迭代采样微博集合M、主题Z和开关变量x,根据式(8-5)采样主题Z。
其中,对于所有用户,n u,b表示普通词数量,n u,k表示主题词数量。n v,b表示词V分配给普通词的次数,nk,v表示词对C分配给主题词的次数,nu,k表示微博分配给主题Z的数量。nu=n u,b+n u,k,su,z是词对分配给用户关注者的主题的数量。
通过式(8-5)可以推导隐变量,其中Γ(x)表示伽马函数,π是权重参数,用于调整用户的搜索意图和用户关注者的搜索意图的权重表达。基于联合分布和链式法则,可以得到如式(8-6)所示的条件概率分布:
其中,-i表示不包含第i个微博的统计计数。
在获取到条件概率分布后,利用链式规则直接采样主题zdi,并通过推导开关变量x,得到如式(8-7)和式(8-8)所示的结果:
其中,-j表示不统计第j个词的计数,w i表示微博文档中的第i个词。
在吉布斯采样的初始状态,对于每个词对随机选择一个主题,采样隐变量。完成充分的迭代后,可以得到用户搜索意图分布、用户关注者的意图分布及用户的词分布分别如式(8-9)~式(8-12)所示:
得到用户搜索意图的词分布,其形式化表示如式(8-13)所示: