论文导读 | 社交网络上的信息传播预测
作者:北京大学苟向阳
编者按:
现代社交网络极大地促进了信息的生成和传播,也加剧了不同信息对用户注意力的竞争。
对于一条信息的传播范围进行预测,能够帮助运营者和用户提前发现潜在的热点,从而为其决策提供指导。
本文将介绍两种基于深度学习的信息传播预测算法。
问题定义
信息传播预测,即为基于一条信息当前的传播路径,预测信息未来的传播范围。具体来说。一条信息在社交网络上的传播可以被抽象为一个传播图 (cascade graph), 如下图所示。传播图上的每一个点代表社交网络上的一个用户,而边则表示该信息被用户 v 转发自用户 u 。t 指从该信息第一次被发布(下图中的)到该次转发之间经过的时间。给定一个观察窗口, 我们已知此时间窗口内的所有转发,即 T 时刻为止的传播图。我们需要以此为根据,预测该信息未来还会被转发多少次。
背景工作介绍
早期的信息传播预测主要有两类方式。一类是基于特征的方法:这类方法靠使用者手工提取特征,如信息的内容特征,当前传播的时序特征,结构特征,传播路径上的用户特征等。基于这些特征,使用回归 (regression) 算法来预测信息转发次数。这一类方法的效果非常依赖于特征的提取,对于不同的问题,需要使用者根据自己经验来提取合适的特征。第二类是生成式算法,这类算法设计模型来模拟信息传播机制,力图将信息传播的主要特点保留在模型中,然后运用该模型来计算每一条信息在未来的传播范围。这类算法的主要问题在于预测能力有限,因为其使用的模型一般来自于一些泛用数学模型,如强化泊松过程,而不能准确模拟信息传播。本文介绍的两种方法为生成类算法与深度学习算法的结合。它们将生成类方法中利用的信息传播特点,如自我激励(self-exciting),衰减机制(time decay effect)等,与深度学习相结合,从而在保持可解释性的同时获得更强的预测能力。
DeepHawkes
DeepHawkes 算法来自于2017年CIKM论文《DeepHawkes: Bridging the Gap between Prediction and Understanding of Information Cascades》[1]。该算法将Hawkes 过程与深度学习方法结合。它利用了Hawkes过程中的3个主要机制:1. 用户影响力,不同的用户具有不同的影响力,高影响力用户对于信息传播具有更大贡献。2. 自我激励机制:历史上的每一次转发都使得该信息在未来被转发的可能性提升。3.时间衰减机制:历史转发的影响力会随着时间衰减。
DeepHawkes结构如下图。它将传播图表示为一系列的传播路径,每一条传播路径代表信息从起始点到达某一个用户的过程。DeepHawkes 由 3个部分组成,第一部分为用户embedding,将用户的身份信息embedding 为一个低维的向量,从而表征用户的影响力信息;第二部分为路径编码,使用循环神经网络 (Recurrent Neural Network, RNN) 生成每一条传播路径的向量表示;第三部分为结合时间衰减的加和池化,使用监督学习得到不同时间的衰减系数,然后将每一条路径的向量表示与相应的衰减系数相乘后进行带权加和池化,得到传播图的向量表示。最后,利用一个多层感知机从传播图的向量表示得到对于未来转发次数的预测。下面我们对每一个部分进行简要介绍。
用户embedding
为了得到每一个用户身份信息的embedding, DeepHawkes 使用了监督学习的方法,每一个用户被表示为一个的 one-hot 向量,其中 N 为用户的总数。所有 N 个用户共享一个 embedding matrix, 其中 K 为一个可调节的参数,代表 embedding 的维度。这个embedding matrix把每一个用户转化为一个空间内的向量表示:
注意embedding矩阵 在将在整个神经网络的训练过程中通过监督学习来获得。
路径编码
在获得了用户的embedding 向量后,DeepHawkes使用RNN来编码每一条传播路径。具体来说,DeepHawkes使用一个GRU (Gate Recurrent Unit)[2],第k 个隐状态 (hidden state) 计算如下:
复位门 (reset gate):
其中为路径上第k个用户的embedding,为第k-1个隐状态,,,为参数矩阵, σ(∙) 表示sigmoid 函数。
更新门 (update gate):
其中
隐状态:
其中
⨀表示逐个元素相乘 (element-wise product),,,
最终的隐状态将作为该路径的向量表示。所有路径的向量表示将在下一个步骤被加权求和来得到传播图的向量表示,这体现了Hawkes过程的自激励机制,即每一次转发都会提高该信息在未来被转发的概率。
时间衰减
一次转发的影响力会随着时间的流逝而下降,为了模拟这一过程,DeepHawkes将观察窗口(0,T] 切分为L个等长的片段,每一个片段对应一个衰减系数 . 对于一个时间为的转发 (为该转发距离该信息第一次发布,即0时刻的时间差),其对应的衰减系数为, 其中
每一条传播路径对应的衰减系数由该路径上最后一次转发的时间决定。最终传播图的向量表示为
其中为路径总数。
输出层
输出层为一个多层感知机(multi-layer perceptron),以传播图的向量表示 c 为输入,输出观察窗口结束时刻 T 之后还会有多少次转发。整个神经网络的目标函数为
其中 M 为训练集中传M播图总数,为第 i 个传播图在观察窗口结束时刻T之后的转发次数,为神经网络预测的次数。训练过程中,以最小化此目标函数为目的进行参数优化。
CasCN:
CasCN 来自于2019年ICDE论文《Information Diffusion Prediction via Recurrent Cascades Convolution》[3],其思想与DeepHawkes类似,都利用了自激励机制和时间衰减机制,其与DeepHawkes的主要区别在于产生传播图的向量表示的过程中,使用了GCN(图卷积神经网络)来更好地提取传播图的拓扑结构信息,其网络结构如下图:
子图序列的抽取
与DeepHawkes不同,CasCN将传播图组织为一个的子图序列(sub-cascade graphsequence) 而非传播路径。序列包含一系列的子图 , 第一个子图只包含信息起始点,之后的每一个子图相比上一个子图增加一条转发。下图为一示例:
时序与拓扑模型
与DeepHawkes相同,CasCN使用RNN来保存传播图的时序特征,但不同点在于,CasCN的RNN是基于子图序列而非传播路径的,同时,它使用了GCN来提取传播图的拓扑结构。具体来说,它用Defferards graph convNet [4]中的图卷积操作替代了LSTM (long short-term memory) [5]中的矩阵乘法操作。LSTM的每一层接受子图序列中一个子图的邻接矩阵作为输入信号,结合上一层的隐状态 (hidden state)和细胞状态 (cell state), 计算本层的hidden state 和 cell state.
第t层的各个门状态如下:
其中表示以为参数矩阵,基于传播图的拉普拉斯矩阵的图卷积操作。在这步操作中有一些技术点,例如有向图的拉普拉斯矩阵的计算,使用切比雪夫展开来降低计算代价等,论文中有一章节进行详细介绍,具体操作在此不做过多叙述。W,U,V,b为不同的参数矩阵。
最终该层的隐状态 (hidden state)和细胞状态 (cell state) 如下所示:
时间衰减与最终输出
CasCN使用的时间衰减机制与DeepHawkes相同,最终传播图的向量表示为
为观察窗口内信息转发的总次数,为LSTM第j层的隐状态,到第 j 次转发为止的子图序列都被编码在了这个隐状态中, 为第j次转发的时间, 为对应的衰减系数,定义和DeepHawkes 相同,也是通过监督学习获得的。
之后,CasCN 同样使用多层感知机预测T之后还会有多少次转发,并使用和DeepHawkes相同的目标函数,在此不作赘述。
实验对比
下图实验节选自CasCN论文,实验使用的数据集分别为新浪微博的微博转发数据集 (Weibo Dataset) 和论文开源网站 arXiv 上的论文引用数据集(HEP-PH),M 代表不同的方法,而 T 则表示观察窗口的大小。实验使用 mean square log-transformed error (MSLE)作为准确率指标
P 为测试集大小,为第 i 个传播图在观察窗口之后增加的转发次数,为神经网络预测的次数。MSLE的计算方式与两种算法的目标函数相同。从图中我们可以看出,DeepHawkes 与CasCN 具有目前最好的预测效果,CasCN精度要高于DeepHawkes。
参考文献
[1]. Cao Q, Shen H, Cen K, et al.Deephawkes: Bridging the gap between prediction and understanding ofinformation cascades[C]//Proceedings of the 2017 ACM on Conference onInformation and Knowledge Management. 2017: 1149-1158.
[2]. Cho, Kyunghyun, et al."Learning Phrase Representations using RNN Encoder–Decoder for StatisticalMachine Translation." Empirical methods in natural language processing,2014, 1724-1734
[3]. Chen, Xueqin, et al."Information diffusion prediction via recurrent cascadesconvolution." 2019 IEEE 35th International Conference on DataEngineering (ICDE). IEEE, 2019.
[4]. Defferrard, Michaël, XavierBresson, and Pierre Vandergheynst. "Convolutional neural networks ongraphs with fast localized spectral filtering." Advances in neuralinformation processing systems. 2016.
[5]. Hochreiter, Sepp, and JürgenSchmidhuber. "Long short-term memory." Neural computation 9.8(1997): 1735-1780.
论文导读 | 社交网络上的信息传播预测相关推荐
- 4 月 24 日开播!基于神经网络建模的信息传播预测
信息传播在我们的日常生活中无处不在,例如谣言的扩散.产品的推广以及新思想和新技术的普及等等,其建模和预测已经在多个重要领域内得到了广泛的研究.近年来,很多研究者利用以循环神经网络为主的深度学习模型对信 ...
- 从信息传播角度来看链路预测
标题 利用动态网络中的信息扩散过程来评估链路预测 文献 Vega-Oliveros, D. A., Zhao, L., & Berton, L. (2019). Evaluating link ...
- 【综述专栏】陈恩红: 社交网络的信息传播分析及其应用
本期聚焦中国科技大学陈恩红教授团队综述:社交网络信息传播分析中有哪些模型?如何基于网络结构评价用户的权威性和影响力?如何实现影响力最大化?未来还有哪些前景广阔的研究方向? Study on Infor ...
- 深度学习——day42 基于时空Transformer的社交网络信息传播预测模型
基于时空Transformer的社交网络信息传播预测模型 资源下载 chap3 基于时空Transformer的社交网络信息传播预测模型 3.1 异构图的构建 3.3 时空 Transformer 神 ...
- 《改进SIR 模型在社交网络信息传播中的应用》仿真实现
摘要 基于<改进SIR 模型在社交网络信息传播中的应用>一文中提出的改进SIR模型,使用Matlab进行了仿真实现.另外,基于原文的模型,依据实际话题热度进行了其它仿真和分析. 背景 信息 ...
- 中科院计算所王永庆详解IJCAI 17录用论文:如何用注意力机制RNN进行信息传播建模?|IJCAI 2017...
雷锋网AI科技评论:IJCAI 2017即将举行,为此,雷锋网特邀请了部分录用论文作者对自己的作品进行详细解读,以供有兴趣的老师同学们了解作者的研究思路.本文原载于王永庆个人公众号"King ...
- 【论文导读】- E-LSTM-D: A Deep Learning Framework for Dynamic Network Link Prediction(动态网络链接预测)
文章目录 论文信息 摘要 论文贡献 问题定义 动态网络 动态网络链接预测 E-LSTM-D 框架 Encoder–Decoder结构 1. 编码器(Encoder) 2. 解码器(Decoder) 堆 ...
- 【论文导读】-GCLSTM graph convolution embedded LSTM for dynamic network link prediction用于动态网络边预测的图卷积嵌入LSTM
文章目录 论文信息 摘要 主要内容 问题定义 动态网络(Dynamic Networks) 动态网络中的网络链接预测 GC-LSTM 编码器(Encoder) 解码器(Decoder) 损失函数与模型 ...
- 【文献综述】陈恩红: 社交网络的信息传播分析及其应用
Study on Information Diffusion Analysis in Social Networks and Its Applications https://mp.weixin.qq ...
- 【论文导读】2019阿里CTR预估模型---DIEN(深度兴趣演化网络)
前言 今天分享一篇阿里2019发表在AAAI上的CTR预估的论文<Deep Interest Evolution Network for Click-Through Rate Predictio ...
最新文章
- 关于几种编码的那些事
- 无人驾驶汽车之争本田为何未战先败
- 牛客题霸 [子数组最大乘积] C++题解/答案
- 云计算技术背后的那些天才程序员:KVM之父Avi Kivity
- 这些高校表现亮眼!最新全球学术排名,频出黑马
- mysql数据库开发环境_MacOS下搭载开发环境之数据库篇(Mysql + Navicat)
- Git合并两个不同的仓库
- Facebook 默认开发环境采用 VS Code
- android系统面试问答_Android面试问答
- 预检请求会让服务器性能,如何避免“预检请求”?
- 【数据可视化应用】绘制风玫瑰图(附Python代码)
- iOS Instrument
- helm 错误 Error: INSTALLATION FAILED: must either provide a name or specify --generate-name
- Hbuilder X自定义安装微信开发工具无法启动
- 专科三年的教训,写给自己,也给正在学习路上的你
- 个人博客搭建系列(一) 之 阿里云购买域名及解析对应ip地址
- java for mobil,Windows Mobile上的Java(ME)
- FileReader与FileWriter使用一例
- 基于百度AL平台人体检测实现人体关键点检测代码
- 极米、当贝、海信,争抢智能投影蛋糕
热门文章
- html多重阴影,求问:CSS3多重阴影效果实现的问题。为什么没有任何的效果,怎么改颜色都没用。...
- python ui自动化面试题_UI自动化面试题
- 16S扩增子数据提交GSA实操手册—发表文章前必备技能
- python计算机二级考试大题总结
- 学的计算机专业不会编程,学计算机专业的不会编程啊怎么办?
- 统计学考研笔记:正态分布概率计算题
- js数组倒序reverse
- cognex扫码枪识别内容直接_康耐视cognex DataMan8600系列-手持终端-条码扫描枪-PDA-扫描模块-条码打印机-苏州奥维尔...
- 微信服务号只有域名没有80端口怎么办
- php怎样做艺术字体,用ps打造科幻艺术字体