基于GAT-LSTM的信息级联预测方法

著录项
  • CN202210318990.8
  • 20220329
  • CN114707718A
  • 20220705
  • 山东省计算中心(国家超级计算济南中心);齐鲁工业大学
  • 李刚;孟涛;周鸣乐;韩德隆;李敏;李旺
  • G06Q10/04
  • G06Q10/04 G06Q10/06 G06Q50/00 G06N3/08

  • 山东省济南市经十路东首科学院路19号
  • 山东(37)
摘要
本发明公开了一种针对转发级联规模的预测方法,该方法提出将GAT(图注意力网络)、动态路由、LSTM(长短期记忆循环神经网络)组合成为一个新的模型用于信息级联规模的预测方法。所述方法包括:数据预处理;图注意力网络提取节点特征;划分级联快照;动态路由聚合节点信息;LSTM提取时间信息;MLP(多层感知器)进行最后预测;模型测试。本发明可应用于流行度预测领域。本发明为该领域提供了新的特征提取方法,解决了该领域预测效率低、多模型结合后信息利用率低等问题,并满足了热点事件快速预测及捕捉的需求。
权利要求

1.基于GAT-LSTM的信息级联预测方法,其特征是,包括步骤如下:

步骤1:本发明选择了公开的信息级联数据集,对该数据进行预处理,通过定义节点处于激活或非激活状态,使一个级联分解为多个快照,并设置状态向量捕获级联图中时间t处节点的状态;

步骤2:将所述级联快照中节点的表示通过一个简易的单层GAT(图注意力网络)学习,使用了多头注意力机制(四头)进行节点特征的提取,输入包括顶点和特征,得到节点的输出特征;

步骤3:使用胶囊网络中的动态路由来计算出每个节点的权重,将多个节点向量聚合为一个向量,并将得到的这个向量作为级联快照的表示;

步骤4:本发明应用LSTM(长短期记忆循环神经网络)处理时间信息,时间信息保存在了级联快照序列中,通过对这些信息的处理结合了时间特征进行预测;

步骤5:将LSTM层的输出送入MLP(多层感知器)层,以获得最终预测;

步骤6:设置损失函数,对模型进行训练,本发明选择MSLE(均方对数损失)作为评估指标,MSLE预先将所有值取log,缓解了预测的值范围很大,会受到不正确引导的这一问题;

步骤7:通过构建好的模型对信息级联数据规模进行预测;

对模型进行测试,利用训练时学习的参数,将部分数据放到模型上进行测试并得出测试结果。

2.如权利要求1所述的基于GAT-LSTM的信息级联预测方法,其特征在于,所述步骤1中 对信息级联数据进行如下处理:将级联数据前70%划分为训练集数据,20%为验证集,10%为 测试集,设是一个静态的社交网络,其中X是所有节点(用户)的集合,Y是所有边 的集合,通过定义节点处于激活或非激活状态,本发明将一个级联分解为多个快照,并设置 状态向量捕获级联图中不同时间节点的状态。

3.如权利要求1所述的基于GAT-LSTM的信息级联预测方法,其特征在于,所述步骤2中将预处理后的级联数据送入GAT学习节点特征,输入包括级联图中的节点及特征,在此处运用了一个四头注意力机制的单层图注意力网络来学习节点的特征,图注意力网络中采用了LeakyReLU激活函数,得到了节点的结果特征向量。

4.如权利要求1所述的基于GAT-LSTM的信息级联预测方法,其特征在于,所述步骤3将步骤2中输出的节点结果向量用动态路由算法来计算出每个节点的权重,将节点权重进行聚合后得到级联快照的向量表示。

5.如权利要求1所述的基于GAT-LSTM的信息级联预测方法,其特征在于,所述步骤4中将级联快照中隐藏的时间顺序送入LSTM此处建立了一个单层的循环神经网络,通过对时间信息的提取结合结构信息送入步骤5中所述的MLP(多层感知器)层得到最后的预测信息。

说明书
技术领域

本发明属于流行度预测领域,更进一步涉及的是一种基于GAT-LSTM的信息级联预测方法。

在线社交网络中的消息流行度预测研究,旨在提前从海量的信息中预测并识别出未来的热门消息,并帮助人们从信息过载的困境中解脱出来。但由于社交网络的开放性以及社交网络中级联传播效应具有很强的不确定性,准确地预测消息未来的流行度是一项极具困难和挑战的任务。

目前消息流行度预测方法主要分为两类,一种是基于特征的提取方法,该方法通常会从文本内容、点赞量、转发量、原发用户的性别、注册时间、活跃度等多个方面进行特征的提取,之后结合机器学习模型对未来的流行度进行回归或分类预测。另一种方法是基于点过程建模的方法,该方法是将信息的转发过程看作一个点到点的过程,根据特定的假设,对点过程的速率函数进行不同的建模。从而形成信息级联,之后运用深度学习模型来对该级联未来发展规模进行预测。相比基于特征的方法该方法能够较好地解释热度预测的理论基础,可解释性更强。

目前已提出的模型有DeepCas、DeepHawkes、CoupledGNN等模型,DeepCas是第一个将深度学习应用于级联预测问题的模型。它通过随机游走生成一系列路径来学习级联图的表示。将嵌入向量发送到一个带有注意机制的双向GRU神经网络模型中,得到预测结果;DeepHawkes是将节点向量输入GRU,得到序列表示。之后再考虑用户影响、自刺激和时间衰减。经过加权和池化操作后,通过循环神经网络获得预测结果;CoupledGNN通过图神经网络层的叠加,描述了级联效应的两个关键成分(状态和影响)以及网络结构。虽然网络结构和级联时间序列可以很容易地独立获得,但如何最好地学习和结合这两个相互依赖的特征仍有待探索。

如何更好的学习和结合结构信息和时间信息,提升预测效率和模型精确度来满足热点信息的及时预测和捕捉是当前研究的重点。

为了解决以上所述问题,本发明提出了一种新的级联信息预测方法,该方法通过单层四头的GAT(图注意力网络)来学习节点特征,将级联数据用子图的形式进行表示,由于图注意力网络中使用了Attention(注意力)机制,通过对相邻节点分配权重的形式,可以更加有效的学习节点特征。级联快照的向量表示是使用动态路由算法进行节点的聚合,这种方法会降低时间复杂度并且聚合效果较好。之后再结合级联快照中隐藏的时间信息并送入LSTM(长短期记忆循环神经网络),LSTM采用了单层结构使训练时间更快,并且由于遗忘门和更新门的存在,使网络可以更加有效的学习到相应的信息并进行输出。通过多个模型相叠加的方式充分利用了结构信息和时间信息,极大的提高了预测的准确率,最终测试的结果优于之前的任何一个模型并有效降低了训练时长。具体步骤包括:

步骤1:本发明选择了公开的信息级联数据集,对该数据进行预处理,通过定义节点处于激活或非激活状态,使一个级联分解为多个快照,并设置状态向量捕获级联图中时间t 处节点的状态。

步骤2:将所述级联快照中节点的表示通过一个简易的单层GAT(图注意力网络)学习,使用了多头注意力机制(四头)进行节点特征的提取,输入包括顶点和特征,得到节点的输出特征。

步骤3:使用胶囊网络中的动态路由来计算出每个节点的权重,将多个节点向量聚合为一个向量,并将得到的这个向量作为级联快照的表示。

步骤4:本发明应用LSTM(长短期记忆循环神经网络)处理时间信息,时间信息保存在了级联快照序列中,通过对这些信息的处理结合了时间特征进行预测。

步骤5:将LSTM层的输出送入MLP(多层感知器)层,以获得最终预测。

步骤6:设置损失函数,对模型进行训练,本发明选择MSLE(均方对数损失)作为评估指标,MSLE预先将所有值取log,缓解了预测的值范围很大,会受到不正确引导的这一问题。

步骤7:通过构建好的模型对信息级联数据规模进行预测。

对模型进行测试,利用训练时学习的参数,将部分数据放到模型上进行测试并得出测试结果。

进一步的,所述步骤1中对信息级联数据进行如下处理:将级联数据前70%划分为训练集数据,20%为验证集,10%为测试集,设D=(X,Y)是一个静态的社交网络,其中X 是所有节点(用户)的集合,Y是所有边的集合,通过定义节点处于激活或非激活状态,本发明将一个级联分解为多个快照,并设置状态向量捕获级联图中不同时间节点的状态。

进一步的,所述步骤2中将预处理后的级联数据送入GAT学习节点特征,输入包括级联图中的节点及特征,在此处运用了一个四头注意力机制的单层图注意力网络来学习节点的特征,图注意力网络中采用了LeakyReLU激活函数,得到了节点的结果特征向量。

更进一步的,所述步骤3将步骤2中输出的节点结果向量用动态路由算法来计算出每个节点的权重,将节点权重进行聚合后得到级联快照的向量表示。

更进一步的,所述步骤4中将级联快照中隐藏的时间顺序送入LSTM,此处建立了一个单层的循环神经网络,通过对时间信息的提取结合结构信息送入步骤5中所述的MLP (多层感知器)层得到最后的预测信息。

与现有的技术相比,本发明的提升和优势在于:对现有的信息级联规模预测方法进行了创新,提出了一种专门用于信息级联规模预测的方法,通过结合图注意力网络,动态路由算法及长短时记忆网络充分考虑了结构和时间因素的影响,由于注意力机制的存在,使节点特征的提取更有针对性,节点特征提取的精度更强,与以往相比,提升了模型的预测精度,降低了训练时长,更加适用于信息级联规模预测。

为了能够详细并且清晰的对本技术方案进行说明,下面将对实施例和其中所用到的技术以及相关数据用附图的形式进行介绍,对于本领域熟悉此方向的技术人员来说,并不仅局限于此说明书中所记载的实施例,该实施例只是在实验中结果较好的情况,并不局限于此。

图1为本说明书实施例中所提到的基于GAT-LSTM的信息级联预测方法的流程图。

图2为本说明书实施例中该实验的级联数据示意图。

图3为本说明书实施例中时间信息经过LSTM层示意图。

图4为本说明书实施例中运行过程遵循的整体框架图。

为了更加详细清晰的对本发明的技术和优点进行解释,下面结合附图对本发明的实施例和效果做进一步详细的描述。

基于GAT-LSTM的信息级联预测方法,其总体结构框图如图1所示;首先对公开的信息级联数据集进行预处理、定义级联快照的形式,通过单层四头的GAT(图注意力网络)来学习节点特征。将这些节点特征送入动态路由算法中进行节点的聚合,从而产生级联快照的向量表示。之后再结合级联快照中隐藏的时间信息并送入单层的LSTM(长短期记忆循环神经网络)使模型充分学习到结构信息和时间信息。之后将结果向量送入MLP(多层感知器)层进行最后的预测。并用测试数据进行测试得出最后的结果。其具体包括如下步骤:

1.数据收集

本方法使用的是论文CasSeqGCN中使用的级联数据集,该数据集明确给出了网络结构和扩展机制,有效的消除由于网络结构损耗和扩展模式中的噪声而产生的潜在偏差。最大的级联包含880个节点和1992个链路。使用IC(独立级联)模型和LT(线性阈值)模型来模拟从随机选择的种子节点开始的信息传播,过滤掉时间步长小于3个、节点数小于10个的级联。选取了70%的数据作为训练数据,20%作为验证集,10%作为测试集。

2.(步骤1)数据预处理

如图2所示级联数据示意图,设D=(X,Y)是一个静态的社交网络,其中X是所有节点(用户)的集合,Y是所有边的集合,表示通过消息i的级联节点集,子图 Di=(Xi,Yi),被定义为级联图,其中是连接Xi中节点之间的所有边的集合。 DiT=(XiT,YiT)表示了观察时间窗口T的信息级联图i,通过定义节点处于激活或非激活状态,本实施例将一个级联分解为多个快照,令状态向量捕获级联图中时间t处节点的状态DiT。

3.(步骤2)图注意力网络提取级联数据中的节点特征

将预处理后的数据送入GAT学习节点特征,例如网络中有i,j两个节点,GAT应用了自主意力机制计算出节点j对于节点i的重要性,具体做法是将节点i、j的特征向量拼接在一起,然后和一个2F′维的向量计算内积。激活函数采用 LeakyReLU,具体公式如下。

需要说明的是,在此处本实施例运用了一个四头注意力机制的单层GAT(图注意力网络)来学习节点的特征。添加多头注意力后的运算公式为由于注意力机制的存在,通过对相邻节点分配权重的形式,更加有效的学习了节点的特征。这是非常关键的一步,节点特征的提取关系到整个模型的成败。

4.(步骤3)动态路由算法聚合节点向量

节点结果向量用动态路由算法来计算出每个节点的权重,权重系数反映了节点在图表示中的贡献。首先对节点表示向量执行线性仿射变换,如公式1;其中W是映射矩阵,H′是节点表示矩阵。动态路由的输出结果如公式2;其中cij是动态路由第j次迭代中节点i 的权重系数,ui是用户i仿射变换后的表示向量。其中cij的计算如公式3;令所有的bij初始化都为0。经过以上运算后,最终得出级联快照的向量表示。

公式1:U=WH′

公式2:

公式3:bij=cos_sim(ui,vj-1)

需要说明的是,在传统的IC和LT模型中,无法明确确定同一时间步中节点的顺序,因此,本实施例使用时间步长在本数据中拍摄级联快照,就是在一个时间步长结束时拍摄新快照。令动态路由的迭代次数为3,过大或过小的迭代次数都会使模型准确率降低甚至失效。

5.(步骤4)长短期记忆循环神经网络处理时间信息

如图3所示时间信息经过LSTM层示意图将级联快照中隐藏的时间信息送入LSTM(长短期记忆循环神经网络)具体的四种状态的计算如公式4所示,其中vt是当前的输入 ht-1是上一单元的输出。zm、zf、zo是介于0和1之间的门值。σ是sigmoid激活函数。LSTM先经过遗忘门丢弃掉上一层中不重要的信息,再结合更新门决定让多少信息加入进来,将两部分相结合后得到ct,具体计算形式如公式5所示。输出主要由ct和zo控制,如公式6,公式7。

需要说明的是,此处采取了一个单层的LSTM网络,单层结构使训练时间更快,使用时间步长在合成数据中拍摄级联快照,即在一个时间步长结束时拍摄新快照。此处的级联快照的顺序就是所要提取的时间信息,并且由于遗忘门和更新门的存在,使网络可以更加有效的学习到相应的信息并进行输出。

公式4:z=tanh(W(vt||ht-1))

zm=σ(Wm(vt||ht-1))

zf=σ(Wf(vt||ht-1))

zo=σ(Wo(vt||ht-1))

公式5:ct=zf⊙ct-1+zm⊙z

公式6:ht=zo⊙tanh(ct)

公式7:yt=σ(W′ht)

6.(步骤5)MLP(多层感知器)层进行最后预测

多层感知机除了输入输出层,它中间可以有多个隐层,之所以选择MLP是因为其可以高度的并行处理并且有良好的容错性同时具有联想记忆功能MLP还具有非常强的自适应、自学习功能。在本模型中,将LSTM层的输出送入多层感知机中以获得最终预测,如公式8所示:

公式8

7.划分数据集,构造损失函数,对模型进行训练和测试

如图4所示,遵循整体流程,将信息级联数据集的70%作为训练集,20%作为验证集 10%作为测试集。本实施例选取了MSLE(均方对数损失)作为评估指标,MSLE(均方对数损失)通过预先将所有值取log缓解了预测的值范围很大会受到一些大的值的引导的这一问题。MSLE的具体实现过程如公式9。

在进行训练时,设置了50个epoch,每训练5个epoch后进行验证和测试,最终训练loss值降到0.131左右,验证和测试loss都降到了0.135。还进行了对比试验,当使用 GCN(图卷积神经网络)进行节点信息提取时,loss为0.224,经过对比可得本发明使用的图注意力网络是目前最好的节点特征提取方式。

公式9:

最终通过本方法对信息级联规模进行预测,相较于之前的信息级联规模预测模型在精度和准确率方面有了明显提升,并且降低了训练时长,能够更加快速的做出预测,为信息级联规模预测提供了一种新的思路,也为流行度预测领域提出了一种更有力的方法。

综上所述,尽管已经给出本发明的实施例,但这仅是本发明较好的实施例而已,并非是对本发明其他形式的限制,对于本领域的技术人员而言,对该方法进行技术内容的替换修改和变更和组合达到等同效果,这些方式仍属于本发明技术的保护范围内。

本文发布于:2024-09-24 14:26:19,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/84900.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议