基于Transformer增强霍克斯过程的信息级联预测系统及方法

文档序号:32393670发布日期:2022-11-30 09:22阅读:181来源:国知局
基于Transformer增强霍克斯过程的信息级联预测系统及方法
基于transformer增强霍克斯过程的信息级联预测系统及方法
技术领域
1.本发明属于信息处理技术领域,涉及基于深度学习(deep learning)的信息扩散(information diffusion)、信息级联(information cascade)和流行度预测(popularity prediction),尤其涉及一种将transformer引入霍克斯过程(hawkes process),来对级联的时间特征和拓扑结构进行耦合建模,最终实现流行度预测(cascade prediction)的方法及系统(hawkesformer)。


背景技术:

2.通过twitter、facebook和微博等社交媒体平台共享内容,已成为个人对各种话题的表达意见和反应观点的主要渠道。这一趋势产生了大量描述信息传播方式的数据,并为生成、传递和传播信息项带来了前所未有的便利。最初的发布信息(例如,tweet)以及随后的分享转发(例如,retweet)形成了一条信息级联,代表了通常所说的信息扩散过程。在其他(非社交媒体)设置中也发现了类似的现象:论文引文、博客空间和电子邮件转发。大量的用户分享行为促成了信息级联的快速和海量传播。信息级联的一项典型任务是预测某一条级联(推文、微博等),在特定一段时间段后潜在受影响用户的规模,也即流行度预测(信息级联的大小),这一任务在许多下游应用中会带来巨大的经济和社会价值。例如,了解哪种类型的广告的影响力最大化,可以使得广告投放更精确;预测谣言的潜在影响用户,使得管理员可以及早进行干预以避免严重后果等。
3.现有的方法主要分为三类:(i)基于特征的模型,主要探索从结构、时间序列、用户内容和简介中提取的特征集;然而,它们依赖于大量手工制作的特征工程,无法从一个领域推广到另一个领域;(ii)概率生成模型,旨在通过时间点过程(tpp)的经典示例来建模事件,包括泊松过程和霍克斯过程;但是现有方法对级联的扩散机制做出了强有力的假设,并且对大规模级联数据的学习能力有限;(iii)深度学习模型,更关注离散时间域中特定快照内的静态时间级联扩散,对整个进化过程和充分利用所有级联动力学的关注很少,主要使用简单的事件序列模型(例如rnn)对级联事件进行建模,或者辅以gnn对时间特征和拓扑特征分开建模;但本质上两者是耦合的,这种分开建模的方式丢失了跨域信息,降低了模型的表达和预测能力。


技术实现要素:

4.针对当前信息级联预测方法存在的学习能力有限、跨域信息丢失等问题,本发明的目的旨在对级联的扩散过程提供一种新颖的建模方式,将级联扩散的过程概括成在连续时间域上不断扩散的一个有向无环图(dag),将transformer(attention机制)引入霍克斯过程(hawkes process),通过将注意力机制引入霍克斯过程,来对时间特征和拓扑特征在连续时间域上耦合建模,实现对级联扩散过程的有效建模,提高了流行度预测的准确率。
5.本发明的大致思路为:将两个层级的注意力模块连接在一起,以参数化霍克斯过
程的强度函数。该强度函数保证了在连续时域中建模级联的耦合时间和拓扑依赖关系。具体地,在第一层级上,设计了一个全局(global)依赖模块来动态捕获级联中过去已经发生事件的长期扩散过程,并提出了主/非主路径假设,以自适应地将扩散过程集成到底层dag上。这允许在任何位置参与级联的每个节点更新其当前隐藏状态。在第二层级,设计了一个局部(local)模块,通过对固定时间片窗口中的局部模式进行编码,来捕获信息级联的短期演化率。通过两个层级的设计,我们拿到节点在全局和局部上的表示,最后送进一个全连接层进行流行度预测。
6.在给定具体流程前,先给出一些基本的术语和定义。给定一条信息级联ck和它在观测时间to内的转发历史记录其中tj∈(0,to],l是观测时间窗口内(t0,t0+to)的转发数量,t0表示开始时间。每个三元组(tj,vj,uj)代表在tj时刻,用户uj转发了用户vj。例如附图1的转发历史记录为:(t4,u1,u4),(t5,u3,u5)},为简单起见,后面省略为另外,我们用另外,我们用代表当前时刻之前的时间戳集合。
7.基于上述发明思路,本发明提供的基于transformer增强霍克斯过程的信息级联预测系统,其包括:
8.用户嵌入模块(initial user embeddings),用于获取用户position-wise嵌入和时间编码,并以用户position-wise嵌入和时间编码作为用户嵌入;
9.全局依赖模块(global dependency module),用于对用户嵌入中每个用户节点,区分所有前驱节点为主路径节点和非主路径节点,并获取主路径节点和非主路径节点的注意力概率矩阵,进而获取每个节点的全局依赖,再经全连接得到所有节点的全局嵌入;
10.局部依赖模块(local dependency module),用于依据设定的时间片窗口,获取每个节点的局部模式,然后对每个节点的局部模式进行池化操作得到每个节点的池化表示;最后基于掩码注意力机制,生成每个节点局部模式的隐藏向量;
11.强度函数获取模块,用于依据全局嵌入和局部模式隐藏向量来参数化霍克斯过程的强度函数;
12.流行度预测模块,用于结合霍克斯过程的积分,以及全局嵌入和局部模式隐藏向量的全连接处理结果生成流行度预测结果。
13.上述用户嵌入模块,用户嵌入x由position-wise嵌入和时间编码组成,用来作为后续模块(全局依赖模块)的输入。
14.该用户嵌入模块包括position-wise嵌入获取子模块和时间编码获取子模块。
15.1.position-wise嵌入获取子模块,包括共享矩阵其中d是用户嵌入的维度,l是最大的转发次数。u的第j列代表第j次转发的用户,每个级联在时间轴上具有相同次序的节点共享一个初始嵌入。首先随机初始化共享矩阵u,然后通过后续的全局依赖模块来动态更新与底层级联相关的后续上下文嵌入。共享矩阵u大大减少了计算开销,使系统更有效。在一个级联中,对于第j次转发的用户uj,让vj代表它在共享矩阵u上的one-hot索引向量,那么用户uj的position-wise嵌入就由uvj索引得到,其中代表所有用户嵌入的one-hot索引集合。因此,基于共享矩阵u,position-wise嵌入获取子模块
得到的用户position-wise嵌入为uv。
16.2.时间编码获取子模块(temporal encoding),本发明的关键组成部分是两层级的注意力模块,由于注意机制没有考虑顺序依赖性,因此时间编码获取子模块利用时间编码z来表征序列位置,定义如下:
[0017][0018]
该时间编码是来自原始transformer绝对位置编码的一个变体。其中是时间编码,d是时间编码的维度,[z(tj)]i代表编码第i个维度的值,i∈[1,d]。代表编码第i个维度的值,i∈[1,d]。是时间编码的集合。
[0019]
因此,转发序列的初始用户嵌入最终可以记为:x=uv+z。所以初始用户嵌入x由可学习的共享position-wise嵌入uv和固定的时间编码z共同组成。
[0020]
上述全局依赖模块,简称全局模块;信息级联的全局依赖性可以被视为在长期扩散过程中某个用户可能促进或抑制另一个用户的指示。
[0021]
该全局依赖模块包括:
[0022]
路径感知注意力层,用于对用户嵌入中每个用户节点,区分所有前驱节点为主路径节点和非主路径节点,并获取主路径节点和非主路径节点的长期依赖注意力分数,构建主路径和非主路径的注意力概率矩阵;再依据每个节点的主路径和非主路径的注意力概率矩阵,获取其全局依赖;
[0023]
第一输出网络,用于对每个节点的全局依赖进行全连接处理,得到所有节点的全局嵌入。
[0024]
在得到用户嵌入后,又在全局模块中设计了一个路径感知注意力层来参数化hawkesformer的强度函数,用于捕捉输入级联节点之间的长期扩散依赖,并利用用户完整扩散依赖提取子模块提取主路径节点和非主路径节点耦合的时间拓扑依赖。
[0025]
霍克斯过程的理论表明:信息级联的最终流行度与用户过去的参与有关,这意味着当前节点不仅影响其即时(immediate)转发者,还通过传递性影响非即时(non-immediate)转发者。为了从拓扑角度表示每个节点对级联未来流行度的影响,因此在全局模块中提出了一个路径感知假设,即主路径/非主路径假设:认为主路径上的节点对当前节点uj的贡献较大,非主路径上的节点则次之,对uj节点的到达贡献较小,但仍然对最终的流行度有影响,这也符合霍克斯过程的假设。对于当前节点uj,所有的前驱结点,所有的前驱结点被分成两个类别:(1)主路径上的节点,记为其包括前节点uj回溯到根节点u0的整个转发路径上的所有先前节点;(2)非主路径上的节点,即除了主路径节点以外的所有节点,记为附图2中给出了一个示例,其中,对于当前节点u4,



表示主路径上的节点,

表示非主路径上的节点。
[0026]
基于上述解释,全局依赖模块的实现步骤:
[0027]
给定一个当前节点uj,得到其与主路径中某个节点的长期依赖注意力分数:
[0028][0029]
其中a、b和分别代表用户嵌入矩阵x经主路径q(query)矩阵非主路径q(query)矩阵和k(key)矩阵转换后的用户嵌入向量,这三个转换矩阵用于区分长期依赖中用户的角色。其中,《
·
,
·
》代表内积函数。类似的,当前节点uj与非主路径中某个节点的长期依赖注意力分数为:
[0030][0031]
然后,通过以下公式进行注意力加权和计算,得到用户uj完整的扩散依赖ej:
[0032][0033]
最终,依据每个节点的主路径和非主路径的注意力分数得到了每个节点的上下文嵌入:e={e0,e1,

,ej,

,e
l
},e中每一行代表级联中某个节点的全局依赖;代表用户嵌入矩阵x经v(value)矩阵转换后的用户嵌入向量。
[0034]
以上针对当前单个用户uj的依赖进行计算。在实际运算中,将以上的注意力依赖使用矩阵并行的方式以加快运算速度。全局依赖的矩阵计算流程可参考附图3。
[0035]
首先,基于路径感知注意力层,通过以下公式计算出当前节点分别在主路径、非主路径上的注意力分数:
[0036][0037][0038]
其中m
p
,分别用来保留主路径和非主路径上节点的注意力分数的one-hot矩阵,如果则元素相应的,如果最终,主路径和非主路径的注意力概率矩阵可以推导为:
[0039][0040]
其中,d是输入嵌入的维数。掩码矩阵用来防止系统偷窥未来的数据,如果i《j,m
i,j
=0,否则m
i,j
=-∞。矩阵m强制softmax函数仅在uj之前的转发者上分配有效的长期依赖注意力,而给后续用户(即,晚于tj激活的用户)分配0。矩阵a中的每个列向量代表uj对其先驱节点的注意力,包括主路径和非主路径上的节点。
[0041]
然后,按照以下公式得到每个节点全局依赖的矩阵形式:
[0042]
e=(wvx)a
[0043]
为了学习到更多的语义信息,这里还可以将路径感知注意力层设计为基于多头注意力机制的模块,将上下文嵌入映射到不同的子空间,这些子空间可以使用前面给出的矩阵乘法并行运算,进而计算多个头e1,e2,

,eh,然后将它们连接成e=woconcat(e1,e2,

,eh),其中是一个聚合矩阵。最终,我们将e送进第一输出网络(这里使用的是
全连接神经网络fcnn),得到所有级联的全局嵌入:
[0044][0045]
h(tj)=h(:,j)
[0046]
其中,是神经网络的参数;h(tj)是中的第j列,代表用户uj的长期依赖表示。
[0047]
上述局部依赖模块,可以简称局部模块;信息级联中转发数量的增长速率并不稳定,传播过程中的短期爆发对最终的流行度影响很大。为了更好地嵌入信息级联的演化速率,这里利用池化注意力以捕获局部模式。基于全局依赖模块中已经学到的用户全局嵌入表示,对每一个当前节点的局部模式执行池化操作。
[0048]
该局部依赖模块包括:
[0049]
局部模式获取子模块,用于依据设定的时间片窗口,从全局依赖中截取位于每个节点之前的部分,得到每个节点的局部模式;
[0050]
池化子模块,用于对每个节点的局部模式进行池化操作得到每个节点的池化表示;
[0051]
掩码注意力层,用于动态聚合每个节点和与其之前节点的局部模式池化表示,生成每个节点局部模式的隐藏向量。
[0052]
每个当前节点都具有一个局部模式,设定一个固定时间片窗口ts内,利用局部模式获取子模块,从全局依赖中截取位于每个节点之前的部分,得到每个节点的局部模式;因此,当前节点的局部模式由当前节点uj和部分前驱节点的全局依赖组成,表示为表示一条信息级联的所有局部模式的集合。
[0053]
对于每个当前节点uj,通过池化子模块对它的局部模式进行池化操作以聚合时间片ts中的特征来生成新的表示形式因此,所有局部模式的总池化表示可以形式化为:中的每一列对应于局部模式的池化表示。
[0054]
为了捕捉与级联短期爆发/暴跌相关的进化率,本发明通过设计的掩码注意力层来合并局部模式带来的影响。基于掩码注意力机制,利用掩码注意力层动态聚合当前时间tj之前所有的局部模式嵌入(即池化表示),生成一个隐藏向量来概括所有先前模式的演化过程:
[0055][0056]
g(
·
)是一个线性变换函数,γ={v(t0),v(t1),

,v(tj),

,v(t
l
)}是演化速率的局部依赖的集合。相似函数f(
·
,
·
)指定为:
[0057][0058]
上述强度函数获取模块,是通过上述全局模块和局部模块,来参数化霍克斯过程
的强度函数,来得到本发明hawkesformer的强度函数λ(t)。给定一条信息级联ck和它在观测时间to内的转发历史记录代表时间戳tj之前但不包括时间tj的序列。这里,强度函数获取模块是使用以下条件强度函数对级联扩散的连续动态进行建模:
[0059][0060]
其中,θ代表模型的参数,转发时间t定义在区间[tj,t
j+1
),其中f(x)=βlg(1+exp(x/β))是softplus函数,参数β用于约束强度函数为正;第一项current表示连续时域的演化过程,α控制两个时间戳内的插值节点的重要程度;w1、w2分别是全局依赖和局部模式在t时刻的学习权重,强度函数λ(t)表示t时刻的推文到达率。hawkesformer的全局和局部依赖都具有表现力和灵活性,该强度函数的设计使得hawkesformer从连续时间域捕获耦合的时空动态。
[0061]
上述流行度预测模块,主要是用于预测信息流行度。根据hawkes理论,t时刻生存函数为:该函数表示在[tn,t]之间没有事件发生的条件概率。随后,我们可以推导出在任意时间t

观察到一个事件的概率:
[0062][0063]
最后,通过流行度预测模块,结合时间点过程和两层级的注意力机制模块(全局模块和局部模块)输出,按照以下公式来预测最终的流行度
[0064][0065]
第一项λ表示霍克斯过程的积分,表示期望的流行度大小;to表示观测时间;t
p
表示预测时间;第二项表示将全局嵌入和局部模式隐藏向量拼接结果经第二输出网络(这里使用的是全连接神经网络fcnn)后的输出结果。
[0066]
本发明提供的基于transformer增强霍克斯过程的信息级联预测系统还包括优化模块,用于系统训练过程中的参数优化。
[0067]
一条级联ck的转发时间的联合似然可以表示为:
[0068][0069]
其中表示直到时间tj的时间集合。
[0070]
假设训练用的有n条信息级联标签样本,{c1,c2,

,cn},优化模块通过最小化均方对数误差(msle)对流行度的损失和最大化所有信息级联的对数似然进行优化:
[0071][0072]
yk表示第k条信息级联标签样本的真实流行度,表示第k条信息级联标签样本对应的预测流行度。
[0073]
然后使用adam梯度下降算法对系统网络参数进行优化。
[0074]
本发明还提供了一种基于transformer增强霍克斯过程的信息级联预测方法,其包括以下步骤:
[0075]
s1获取用户position-wise嵌入和时间编码,并以用户position-wise嵌入和时间编码作为用户嵌入;
[0076]
s2对用户嵌入中每个用户节点,区分所有前驱节点为主路径节点和非主路径节点,并分别获取主路径节点和非主路径节点的注意力概率矩阵,进而获取每个节点的全局依赖,再经全连接处理得到所有节点的全局嵌入;
[0077]
s3依据设定的时间片窗口,获取每个节点的局部模式,然后对每个节点的局部模式进行池化操作得到每个节点的池化表示;然后基于掩码注意力机制,生成每个节点的局部模式隐藏向量;
[0078]
s4用于依据全局嵌入和局部模式隐藏向量来参数化霍克斯过程的强度函数;
[0079]
s5用于结合霍克斯过程的积分,以及全局嵌入和局部模式隐藏向量的全连接处理结果生成流行度预测结果。
[0080]
至此,本发明就实现了一种通过将两层注意力机制引入霍克斯过程,来对时间特征和拓扑特征在连续时间域上耦合建模和预测的系统及方法。在第一层级,我们将dag按照主路径和非主路径进行区分,该层用于捕获节点之间的全局依赖关系,也即耦合的时间和拓扑依赖;在第二层级,提出了一个局部池注意模块来嵌入级联的演化率,以模拟短期转发数量的爆发和暴跌。
[0081]
与现有技术相比,本发明具有以下有益效果:
[0082]
1、本发明首先获取用户position-wise嵌入和时间编码作为用户嵌入,然后以拓扑结构的视角,引入路径感知假设,并从全局嵌入和局部模式两个角度设计两层注意力层,
参数化霍克斯过程的强度函数,并结合霍克斯过程、全局嵌入和局部模式,学习信息级联扩散过程耦合的时间和拓扑随机特性,以进行流行度预测;本发明扩展了传统的霍克斯过程,并有效地从连续时间域中获取知识,提升了流行度预测准确性。
[0083]
2、本发明提出了一个两层级注意力架构,它参数化霍克斯过程的强度函数;首先设计了一个基于路径感知的全局模块注意力层来捕获动态扩散拓扑中节点之间的长期扩散依赖关系,然后提出了一个局部模块来捕获信息级联中的短期演化率。
[0084]
3、本发明为信息级联有向无环图定制了一种可学习的position-wise用户嵌入方法,提高了参数效率,降低了计算负担;
[0085]
4、本发明对于理解社交网络平台的演化过程、解释级联的流行原因极其重要;例如,通过本发明预测某条微博在未来一段时间的转发量,解释流行的因素,可用于营销设计,谣言预测,影响最大化等下游任务。
附图说明
[0086]
图1为呈现出有向无环图(dag)的信息级联扩散过程。现存模型的建模方式将节点出现的时间特征和在图中出现的拓扑特征分开建模,例如,将时间特征送进rnn、拓扑特征送进gnn。但本质上两者是耦合形式出现的,当某个节点转发时间确定的时候,在dag中的拓扑结构也同时确定了;例如,u2的转发行为取决于u0而不是它的在时间上的先前节点u1;因此,dag形成了耦合的时间拓扑依赖,而分开建模无法捕捉到耦合的依赖。
[0087]
图2为全局依赖模块中的主路径和非主路径假设,区别于基于rnn序列模型的链式结构;该假设可以直接获取主路径(非主路径)上的长期依赖。
[0088]
图3为全局依赖模块中,主路径和非主路径假设的实现细节图,也就是图2的实现细节。
[0089]
图4为本发明基于transformer增强霍克斯过程的信息级联预测系统的模型图,包括初始用户嵌入、全局依赖模块、局部依赖模块和预测模块。
[0090]
图5为注意力概率矩阵a的可视化绘制,代表了weibo数据集中随机挑选的三个级联对应的热力图(heatmaps)和级联结构;热力图中的对角线代表当前节点对自己的注意力,每一行代表当前节点对所有前驱节点的注意力;每个条目范围在[0,1],条目颜色越深,注意力越高,每行之和为1。
[0091]
术语解释
[0092]
信息级联(information cascade):附图1以一个示例说明了该过程:一个根节点发布一条公共内容后,根节点的朋友和关注者将看到公共内容后一个接一个的进行转发。这样,公共内容通过社交网络的边缘传播并创建了信息级联,信息级联的一项典型任务是预测某一条级联(推文、微博等),在一段观测时间段后潜在受影响用户的规模。其理论基础可以参考文献【j.cheng,l.adamic,p.a.dow,j.m.kleinberg,and j.leskovec.can cascades be predicted?in proc.of www,2014.】
[0093]
霍克斯过程(hawkesprocess,hp):霍克斯过程是一种主流的时间点过程(temporal point processes,tpps)。hp有三个关键因素:(1)用户影响力,有影响力的用户对新转发的到达率贡献更大,表明有影响力的用户转发的推文往往被更多地转发;(2)自激机制,每条转发都会影响未来新转发的到达率;(3)时间衰减效应。转发的影响随着时间的
增加而衰减。但是传统的hp简化了事件的到达率,使用例如指数或幂律函数对事件的到达进行建模,并对级联事件中的扩散机制做出强有力的假设,限制了它们在大规模级联数据上的学习能力。
[0094]
自注意力机制(self-attention mechanism):自注意力机制是最近在transformer【vaswani,ashish,et al."attention is all you need."advances in neural information processing systems 30(2017).】中提出的注意力机制的一个特例,它已广泛应用于机器翻译、语言建模等各种nlp任务中,并产生了相当大的改进。它通过将输入的token相互关联来对输入序列进行编码,输入由矩阵q(queries),k(keys)和v(values)组成。注意力函数的矩阵形式为:
[0095]
具体实施方式
[0096]
结合附图对本发明做进一步描述。
[0097]
实施例1
[0098]
为了方便起见,在本发明的其余部分中,我们将推特(twitter)级联作为示例设置,但本发明也适用于其他类型的信息级联,例如微博、学术引用等,我们会在实验部分给出示例。
[0099]
本实施例提供的基于transformer增强霍克斯过程的信息级联预测系统,如图4所示,其包括用户嵌入模块、全局依赖模块、局部依赖模块、强度函数获取模块和流行度预测模块。
[0100]
(1)用户嵌入模块
[0101]
用户嵌入模块,用于获取用户position-wise嵌入和时间编码,并以用户position-wise嵌入和时间编码作为用户嵌入。
[0102]
该用户嵌入模块包括position-wise嵌入获取子模块和时间编码获取子模块。
[0103]
position-wise嵌入获取子模块,包括共享矩阵在一个级联中,对于第j次转发的用户uj,让vj代表它在共享矩阵u上的one-hot索引向量,那么用户uj的position-wise嵌入就由uvj索引得到,其中代表所有用户嵌入的one-hot索引集合。因此,基于共享矩阵u,position-wise嵌入获取子模块得到的用户position-wise嵌入为uv。
[0104]
时间编码获取子模块利用时间编码z来表征序列位置,定义如下:
[0105][0106]
该时间编码是来自原始transformer绝对位置编码的一个变体。其中是时间编码,d是时间编码的维度,[z(tj)]i代表编码第i个维度的值,i∈[1,d]。代表编码第i个维度的值,i∈[1,d]。是时间编码的集合。
[0107]
因此,用户嵌入最终可以记为:x=uv+z。所以初始用户嵌入x由可学习的共享position-wise嵌入uv和固定的时间编码z共同组成。
[0108]
共享矩阵u一开始经初始化得到,其参数通过设计的优化模块使用反向传播一起动态更新,以得到与底层级联相关的后续上下文嵌入。
[0109]
(2)全局依赖模块
[0110]
全局依赖模块,用于对用户嵌入中每个用户节点,区分所有前驱节点为主路径节点和非主路径节点,并获取主路径节点和非主路径节点的注意力概率矩阵,进而获取每个节点的全局依赖,再经全连接处理得到所有节点的全局嵌入。
[0111]
该全局依赖模块包括路径感知注意力层和第一输出网络。
[0112]
路径感知注意力层,用于对用户嵌入中每个用户节点,区分所有前驱节点为主路径节点和非主路径节点,并获取主路径节点和非主路径节点的长期依赖注意力分数,构建主路径和非主路径的注意力概率矩阵;再依据每个节点的主路径和非主路径的注意力概率矩阵,获取其全局依赖。
[0113]
如图2及图3所示,在全局模块中提出一个路径感知假设,即主路径/非主路径假设。给定一个当前节点uj,得到其与主路径中某个节点的长期依赖注意力分数:
[0114][0115]
其中a、b和分别代表用户嵌入矩阵x经主路径q(query)矩阵非主路径q(query)矩阵和k(key)矩阵转换后的用户嵌入向量,这三个转换矩阵用于区分长期依赖中用户的角色。其中,《
·
,
·
》代表内积函数。类似的,当前节点uj与非主路径中某个节点的长期依赖注意力分数为:
[0116][0117]
然后,通过以下公式进行注意力加权和计算,得到用户uj完整的扩散依赖ej:
[0118][0119]
最终,依据每个节点的完整扩散依赖,构建所有节点的全局依赖。依据每个节点的主路径和非主路径的注意力分数得到了每个节点的上下文嵌入:e={e0,e1,

,ej,

,e
l
},e中每一行代表级联中某个节点的全局依赖;代表用户嵌入矩阵x经v(value)矩阵转换后的用户嵌入向量。
[0120]
以上针对当前单个用户uj的依赖进行计算。在实际运算中,将以上的注意力依赖使用矩阵并行的方式以加快运算速度。
[0121]
基于路径感知注意力层,通过以下公式计算出当前节点分别在主路径、非主路径上的注意力分数:
[0122][0123]
[0124]
其中m
p
,分别用来保留主路径和非主路径上节点的注意力分数的one-hot矩阵,如果则元素相应的,如果最终,主路径和非主路径的注意力概率矩阵可以推导为:
[0125][0126]
其中,d是输入嵌入的维数。掩码矩阵用来防止系统偷窥未来的数据,如果i《j,m
i,j
=0,否则m
i,j
=-∞。矩阵m强制softmax函数仅在uj之前的转发者上分配有效的长期依赖注意力,而给后续用户(即,晚于tj激活的用户)分配0。矩阵a中的每个列向量代表uj对其先驱节点的注意力,包括主路径和非主路径上的节点
[0127]
然后,按照以下公式得到了每个节点全局依赖的矩阵形式:
[0128]
e=(wvx)a
[0129]
为了学习到更多的语义信息,这里将路径感知注意力层设计为基于多头注意力机制的模块,将上下文嵌入映射到不同的子空间,这些子空间可以使用前面给出的矩阵乘法并行运算,进而计算多个头e1,e2,

,eh,然后将它们连接成e=woconcat(e1,e2,

,eh),其中是一个聚合矩阵。第一输出网络,用于对所有节点的全局依赖进行全连接处理,得到所有节点的全局嵌入。本实施例中,使用全连接神经网络fcnn作为第一输出网络,将所有节点的全局依赖e送进第一输出网络,得到所有节点的全局嵌入:
[0130][0131]
h(tj)=h(:,j)
[0132]
其中,是神经网络的参数;h(tj)是中的第j列,代表用户uj的长期依赖表示。
[0133]
(3)局部依赖模块
[0134]
局部依赖模块,用于依据设定的时间片窗口,获取每个节点的局部模式,然后对每个节点的局部模式进行池化操作得到每个节点的池化表示;然后基于掩码注意力机制,生成每个节点局部模式的隐藏向量。
[0135]
局部依赖模块包括局部模式获取子模块、池化子模块和掩码注意力层。
[0136]
局部模式获取子模块,用于依据设定的时间片窗口,从全局依赖中截取位于每个节点之前的部分,得到每个节点的局部模式。设定一个固定时间片窗口ts内,利用局部模式获取子模块,从全局依赖中截取位于每个节点之前的部分,得到每个节点的局部模式;因此,当前节点的局部模式由当前节点uj和部分前驱节点的全局依赖组成,表示为表示一条信息级联的所有局部模式的集合。
[0137]
池化子模块,用于对每个节点的局部模式进行池化操作得到每个节点的池化表示。对于每个当前节点uj,通过池化子模块对它的局部模式进行池化操作以聚合时间片ts中的特征来生成新的表示形式因此,所有局部模式的总池化表示可以形式化为:中的每一列对应于局部模式的池
化表示。
[0138]
掩码注意力层,用于动态聚合每个节点和与其之前节点的局部模式池化表示,生成每个节点局部模式的隐藏向量。基于掩码注意力机制,利用掩码注意力层动态聚合当前时间tj之前所有的局部模式嵌入(即池化表示),生成一个隐藏向量来概括所有先前模式的演化过程:
[0139][0140]
g(
·
)是一个线性变换函数,υ={v(t
01
),v(t1),

,v(tj),

,v(t
l
)}是演化速率的局部依赖的集合。相似函数f(
·
,
·
)指定为:
[0141][0142]
(4)强度函数获取模块
[0143]
强度函数获取模块,用于依据全局嵌入和局部模式隐藏向量来参数化传统霍克斯过程的强度函数。这里,强度函数获取模块是使用以下条件强度函数对级联扩散的连续动态进行建模:
[0144][0145]
其中,θ代表模型的参数,转发时间t定义在区间[tj,t
j+1
),其中f(x)=βlg(1+exp(x/β))是softplus函数,参数β用于约束强度函数为正;第一项current表示连续时域的演化过程,α控制两个时间戳内的插值节点的重要程度;w1、w2分别是全局依赖和局部模式在t时刻的学习权重,λ(t)表示t时刻的推文到达率。
[0146]
(5)流行度预测模块
[0147]
流行度预测模块,用于结合霍克斯过程的积分,以及全局嵌入和局部模式隐藏向量的全连接处理结果生成流行度预测结果。这里,按照以下公式来预测最终的流行度
[0148][0149]
第一项λ表示霍克斯过程的积分,表示期望的流行度大小;to表示观测时间;t
p
表示预测时间;第二项表示将全局嵌入和局部模式隐藏向量拼接结果经第二输出网络(这里使用的是全连接神经网络fcnn)后的输出结果。
[0150]
实施例2
[0151]
本实施例是在实施例1基础上的进一步改进。
[0152]
本实施例提供的基于transformer增强霍克斯过程的信息级联预测系统,还包括优化模块,用于系统训练过程中的参数优化。
[0153]
假设训练用的有n条信息级联标签样本,{c1,c2,

,cn},优化模块通过最小化均方对数误差(msle)对流行度的损失和最大化所有信息级联的对数似然进行优化:
networks."ijcai.2019.】
[0182]
vacas:集成了信息级联的分层扩散模型和时空结构特征,同时还捕获了扩散不确定性。【fan zhou,xovee xu,kunpeng zhang,gocetrajcevski,and ting zhong.2020.variational information diffusion for probabilistic cascades prediction.ininfocom.1618

1627.】
[0183]
tempcas:使用rnn实现一种启发式方法来嵌入级联图,并在专门设计的基于注意力的cnn上使用lstm来学习历史短期变化趋势。【tang,xiangyun,et al."fully exploiting cascade graphs for real-time forwarding prediction."proceedings of the aaai conference on artificial intelligence.vol.35.no.1.2021.】
[0184]
从表1的实验结果可以看出,本发明提出的基于transformer增强霍克斯过程的信息级联预测系统,相比于其他基线模型,可以大幅度提高流行度预测的准确率。
[0185]
并且,为了研究本发明提供的全局依赖模块捕获动态扩散拓扑中节点之间的长期扩散依赖关系有效性,本应用例进一步获取注意力概率矩阵a,如图5所示。下面进行逐步分析:
[0186]
(1)对于较小(13个用户)的信息级联c1,本发明提供的信息级联预测系统更加关注主要路径以及参与扩散的早期用户。对于矩阵a的每一行,我们可以看到主路径上的用户通常具有最显着的颜色,这验证了我们在信息传播过程中的主/非主假设(类似的现象也显示在级联c2和c3)。对于级联c1中的节点9,hawkesformer检测到0
→2→
9是主路径,表明节点0和节点2对节点9的影响较大,而非主路径上的其他节点对节点9的转发行为的影响较小。对于节点8,hawkesformer检测到0
→4→
8是主路径,表明节点0和节点4对节点8的影响较大,而非主节点上的其他节点对节点8的转发行为影响较小。
[0187]
(2)对于中等(58个用户)的信息级联c2,观察到根用户和后续节点之间存在长期依赖关系。这表明需要对动态扩散拓扑中节点之间的长期依赖关系进行建模,因为诸如rnn之类的序列模型很难在长序列上训练,并且当序列太长时会面临梯度消失/爆炸问题。此外,还观察到了几次短期爆发,这再次验证了本发明为信息级联学习局部模式的假设。
[0188]
(3)同时展示了一个病毒传播级联c3,它有106个用户,最大深度为8。这个级联中的大多数转推(84%)是从间接用户到根的。我们发现,即使是扩散树末端的“尾”用户也可能引发爆发(例如,用户19和43)。一些用户充当连接其他有影响力的用户的枢纽,将他们带入信息传播过程。
[0189]
由此可知,本发明提出的基于transformer增强霍克斯过程的信息级联预测系统不仅能提高流行度预测的准确率,也具有较强的可解释性。在三个真实数据集上的实验证明了本发明相对于最先进的基线模型的优越性能。所提方案在性能上的改进表明,将深度学习(transformer)的优点与概率模型(霍克斯过程)结合起来起来,是一种有效地模拟信息级联扩散过程,并提高预测准确度的新方向。
[0190]
综上所述,信息传播过程的建模方式对理解信息传播机制和流行度预测任务至关重要,信息扩散的演化呈现出有向无环图(directed acyclic graph,dag),本质上拓扑特征和时间是耦合的,但现有的研究对级联最重要的两个特征(拓扑特征和时间特征)采取分开建模的方式,因此丢失了跨域信息,降低了模型的表达和预测能力。本发明将多层级注意力机制与霍克斯自激励点过程联系起来,以实现对信息级联更有效更合理的建模,以达到
更准确的流行度预测。具体地,使用两层注意力结构来参数化霍克斯过程的强度函数,已实现有效地从连续时间域获取表示知识。
[0191]
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1