【每日一读】Dynamic Structural Role Node Embedding for User Modeling i

举报
海轰Pro 发表于 2022/10/10 09:44:11 2022/10/10
【摘要】 @TOC 简介Hello!非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~ ଘ(੭ˊᵕˋ)੭昵称:海轰标签:程序猿|C++选手|学生简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖…已保研学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语! 唯有努力💪 【每日一读】每天浅读一篇论文,了解专业前沿知识,培养阅读习惯...

@TOC

在这里插入图片描述

简介

Hello!
非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
 
ଘ(੭ˊᵕˋ)੭
昵称:海轰
标签:程序猿|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖…已保研
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
 
唯有努力💪
 
【每日一读】每天浅读一篇论文,了解专业前沿知识,培养阅读习惯(阅读记录 仅供参考)

论文简介

原文链接:https://dl.acm.org/doi/full/10.1145/3472955

期刊:ACM Transactions on Information Systems (CCF A类)

年度:2021年11月22日(发表日期)

Abstract

复杂的用户行为,尤其是在社交媒体等环境中,可以组织为随时间演变的网络

通过网络嵌入,我们可以提取这些动态网络的通用向量表示,这使我们能够在没有大量特征工程的情况下对其进行分析

先前的工作已经展示了如何在保持节点的结构角色接近性的同时生成网络嵌入。然而,这些方法无法捕捉动态网络中节点结构身份的时间演化

另一方面,其他工作则专注于学习微观动态嵌入。尽管这些方法可以在动态网络上学习节点表示,但这些表示捕获节点的本地上下文并且不学习节点的结构角色

在本文中,我们提出了一种在离散时间动态网络中学习结构节点嵌入的新方法。我们的方法称为 HR2vec,跟踪动态网络中的历史拓扑信息以学习动态结构角色嵌入

通过对合成和真实世界时间数据集的实验,我们表明我们的方法在结构等价和历史信息都发挥重要作用的任务中优于其他众所周知的方法

HR2vec 可用于在用户可以表示为节点的任何网络环境中对动态用户行为进行建模

此外,我们提出了一种新方法(称为网络指纹),该方法使用 HR2vecembeddings 对整个(或部分)时间演化网络进行建模。我们在合成网络和真实网络上展示了我们的网络指纹识别方法。具体来说,我们展示了我们的方法如何用于检测 Twitter 上的外国支持的信息操作。

1 INTRODUCTION

网络(有时称为图)在许多领域无处不在,从生物学(例如,蛋白质相互作用网络 [1])到通信(例如,电子邮件通信网络 [32]、在线论坛 [49]),最突出的是社交网络 [21]。一些网络是静态的,这意味着这些网络的结构(即节点和边)不会随着时间而改变;而其他网络是动态的,这意味着这些网络的结构会随着时间而变化。例如,捕获词典中单词之间关系的语义网络属于静态类别。这是因为语言通常发展缓慢,因此出于所有意图和目的,语义网络可以被视为静态的。另一方面,大多数捕捉人类互动和关系的网络(例如社交网络)都是动态的,因为人们的关系往往会随着时间的推移而发展[8]。

研究这些网络需要可推广和可扩展的表示方法。在网络上使用无监督表示学习(即网络嵌入),我们可以大规模提取通用表示,而无需复杂且大量的特征工程。这些向量表示(也称为嵌入)可用于网络中节点和边的分类和聚类。在本文中,我们对动态网络(有时也称为时间或演化网络)的表示学习感兴趣。动态网络的嵌入方法需要捕捉这种网络的结构和时间方面,而嵌入静态网络的方法只关注结构。尽管我们的方法是通用的并且可以应用于任何领域,但我们对将我们的方法应用于研究社交网络中的用户行为感兴趣。

此外,网络上的表示学习分为几类,其中,微观(即局部)和结构角色表示学习是最常见的两种。微观嵌入捕获其邻域中节点的角色,而结构角色嵌入捕获节点的全局角色。本文重点介绍动态网络的结构嵌入。能够捕捉动态网络中节点的结构角色有很多应用。例如,社交网络是一个动态网络,通常由不同的紧密连接的社区组成。

尽管动态微观嵌入可以捕捉这些社区中用户本地角色的演变,但它们并不能提供完整的画面。例如,他们将无法捕捉到不同社区中相似角色演变之间的相似性(例如,充当广播者的用户,或不同社区中的桥梁)。另一方面,静态结构角色嵌入可以捕捉不同社区中角色的当前相似性,但它们不能捕捉这些角色的演变(例如,不同用户如何随着时间的推移成为各自社区中的广播者或桥梁)。

通过动态结构角色嵌入,可以捕捉到用户结构角色的演变。例如,这使我们能够比较用户在他们的观点社区中成为桥梁(或任何其他角色)的路径。对于大量用户建模应用程序,模型必须能够考虑用户的结构角色如何随时间变化。例如,为了检测社交网络中的宣传账户,人们不仅需要查看这些账户在其视角社区中的当前结构角色,还需要查看这些账户花费了哪些拓扑“路径”才能到达现在的位置。这是因为老练的宣传者往往会慢慢地,随着时间的推移,将他们的账户定位在社区内有影响力的角色中。换句话说,这些账户的动态结构角色嵌入可以用来捕捉他们在不同社区中建立自己所使用的策略,正如我们在本文后面展示的那样,可以用来检测他们未来的操作。

图 1 有助于进一步说明动态结构角色嵌入的概念。该图显示了节点 u 和 v 不断演变的结构角色的示例,它们彼此远离并且在它们自己的透视社区中:u 和 v 在最后一个时间戳 (t = tT ) 中的结构相似,因为它们都连接到三个紫色、两个蓝色和两个绿色节点(每种颜色代表不同类型的角色)。但是,u 和 v 在之前的时间戳中在结构上并不相似。通过动态结构角色嵌入,我们可以表示节点结构角色随时间的演变。

在这里插入图片描述

因此,我们提出了 HR2vec(代表 Historical Role2vec)一种用于将节点嵌入到离散时间动态网络中的新方法,该方法保留了历史结构信息。如表 1 所示,现有的结构角色嵌入方法都不能捕捉到节点在时间网络中的结构角色的演变,并且现有的时间网络嵌入方法都不能保持结构身份。据我们所知,HR2vec 是第一个可以随时间学习节点结构角色接近度的框架。此外,我们提出了一种新型图,称为时间杠铃图,可用于研究动态结构角色嵌入方法的有效性。最后,我们提出了一种新颖的“网络指纹”方法,使用 HR2vec 对一组节点的行为进行建模,并展示了其在社交媒体上检测协调用户行为的应用。

2 RELATED WORK

在本节中,我们将回顾先前关于网络表示学习的工作。我们将之前的工作分为以下三类:

  • (1)微观结构保留嵌入
  • (2)时间网络嵌入
  • (3)结构角色保留嵌入

2.1 Microscopic Structure Preserving Embedding

大多数最近的静态嵌入方法都专注于保持局部结构的接近度(例如,一阶、二阶和高阶接近度)。一阶接近度是两个连接顶点之间的局部成对接近度。对于每个节点对(vi , vj ),如果(vi , vj ) ∈ E,vi 和vj 之间的一阶接近度为wi j (否则为0);高阶邻近度捕获每对节点之间的 kstep 关系。对于每个节点对 (vi , vj ),高阶接近度是通过从顶点 vi 到顶点 vj 的 k 步转移概率来衡量的,这也可以通过从 vi 到 vj 的 k 步路径数来反映

该领域的两种代表性方法 DeepWalk [30] 和 node2vec [10] 是建立在语言模型之上的。他们将网络中的节点视为词典中的单词,将每个节点的随机游走上下文视为语言中的句子。 LINE [37] 使用两个不同的目标函数来保留大规模网络嵌入的一阶和二阶近似。通过矩阵分解,GraRep [2] 扩展了 LINE 并保留了 k-step proximities; HOPE [27] 在有向网络中保留了不对称的高阶接近度。 SDNE [42] 也是 LINE 的扩展,它使用半监督深度自动编码器模型来捕获网络结构中的第一和第二近似值。我们之前的工作 [43] 提出了一种在双曲空间中保持异构网络的微观接近性的方法。另一个近年来成为热门研究领域的相关概念是介观结构[3,15,39,46]。介观结构接近度是微观结构接近度概念的延伸;它描述了节点之间相对于社区的成对接近度。社区通常由其中的某些类型的节点组成(例如,在社交网络中,社区可能代表具有相似兴趣或背景的人群)。

2.2 Temporal Network Embedding

上述所有模型都嵌入了静态网络,无法捕捉动态网络的演变。一些研究将图卷积网络应用于节点属性不断变化的静态图 [4, 7, 14, 47],但在大多数这些任务中,图的结构是静态的,并且节点的属性正在发生变化。

对于嵌入时间网络,CTDNE [26] 通过修改随机游走以使后续边中的时间戳始终增加,展示了 DeepWalk 的简单但有效的扩展。 tNodeEmbed 使用 node2vec 初始化每个时间快照的嵌入,并每次使用正交 Procrustes [35] 对齐它们,然后使用长短期记忆 (LSTM) [13] 从对齐的嵌入中学习随时间变化的信息。 HTNE [52] 使用霍克斯过程 [11] 和注意力机制来模拟邻域形成。DynamicTriad [50] 通过对三元闭包过程的发展进行建模来学习嵌入。我们之前的工作 [44] 提出了一种将时间网络嵌入双曲空间的方法。孟等人。提出了一个名为 CDAN [24] 的模型,该模型利用潜在高斯随机变量来动态跟踪节点和属性的表示。其他最近的算法,如 DDNE [18] 和 DynGem [9] 使用深度神经网络为动态网络生成嵌入。最接近捕捉时间宏观信息的工作是 M2DNE [22];然而,他们没有考虑结构角色随时间的演变,而是主要关注图的宏观增长,例如边和节点的数量。

2.3 Structural Role Preserving Embedding

结构角色接近度捕获了网络中每个节点的“角色”。请注意,这与 k 阶接近度是不同的概念,无论 k 设置有多大。这是因为节点之间的角色接近度不取决于它们之间的距离;两个远离彼此甚至断开连接的节点可以扮演相同的角色(例如,社区的中心,或两个群体之间的桥梁)。明确识别节点角色的早期方法之一是 RolX [12];这是一种无监督方法,可为每个节点分配已识别角色的分布。该领域最著名的方法之一是 struc2vec [31],它通过层次结构确定图中每个节点对之间的结构相似性,以测量不同尺度下的节点相似性。另一种著名的方法,GraphWave [5],通过热小波扩散模式定义节点角色相似性,并通过矩阵分解来解决它。 SNS [23] 采用基于随机游走的方法,结合了结构角色相似性和邻域局部信息。我们之前的工作 [45] 将节点结构角色身份嵌入到双曲空间中;最后,struc2gauss [29] 在高斯分布空间中学习嵌入,这允许对不确定性进行建模。

接下来我们将展示我们的模型 HR2vec,这是一个新颖的框架,它跟踪历史拓扑信息以从离散时间动态网络中学习嵌入。

3 HR2VEC

5 CONCLUSION AND FUTURE WORK

在本文中,我们提出了一种将节点嵌入到离散时间动态网络中的新方法(HR2vec),该方法保留了历史结构信息,据我们所知,这是第一个可以随时间学习节点结构角色接近度的框架。我们还提出了一种建立在 HR2vec 之上的方法(网络指纹),用于对时间网络中的节点组进行建模。我们针对时间链接预测和时间节点分类这两项任务的合成时间杠铃图和三个真实世界时间数据集上的几个基线评估了 HR2vec。 HR2vec 在结构等效性和历史信息都发挥重要作用的数据集中优于基线。我们还使用我们的网络指纹方法在合成和真实世界的数据集上进行了实验,表明我们的方法能够对整个时间网络的行为进行建模。

我们提出的方法在数据可以表示为时间网络以及用户行为反映在网络的结构和/或动态中的领域中具有用户建模应用。我们的方法可以在各种粒度的时间网络中捕获用户的行为,从单个用户(使用 HR2vec)到社区和整个网络(使用网络指纹)。我们已经展示了我们的框架在一个特定领域中的用户建模应用,检测了 Twitter 上的状态支持的影响操作。我们已经证明,我们的框架能够捕捉国家支持用户在 Twitter 上的转发策略,可用于检测同一国家未来的活动

未来,我们计划在不同的用户建模应用程序上使用我们的框架进行更多实验,其中任务可以表示为时间演化的网络。未来工作的更直接途径可能是将我们的 HR2vec 框架扩展到连续时间戳。此外,未来的工作还可能涉及将历史结构角色保留方法扩展到属性和异构网络。这将极大地扩展我们的用户建模框架的能力,因为许多领域都涉及用户属性(例如,推荐系统的人口统计信息)或异构节点(例如,与推荐系统中的用户或产品相对应的节点)。

代码和数据可用性。数据和我们的代码,包括我们对 HR2vec 的实现以及所有实验(节点分类、时间链路预测和网络比较)的代码,将根据要求提供。

结语

文章仅作为个人学习笔记记录,记录从0到1的一个过程

希望对您有一点点帮助,如有错误欢迎小伙伴指正

在这里插入图片描述

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。