目录
- 前言
- 简介
- ABSTRACT
- 1 INTRODUCTION
- 2 RELATED WORK
- 3 PROBLEM FORMULATION
- 4 METHODOLOGY
- 4.1 Content Embedding
- 4.2 Ego Network Encoder
- 4.3 Node Identification
- 4.4 Optimization
- 4.5 Discussion
- 5 EXPERIMENTS
- 5.1 Datasets
- 5.2 Comparison Models
- 5.3 Experimental Settings
- 5.4 Classification Results
- 5.5 Parameter Analysis
- 6 CONCLUSION
- 读后总结
- 2022/07/11 第一次阅读
- 结语
前言
Hello!
非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
自我介绍 ଘ(੭ˊᵕˋ)੭
昵称:海轰
标签:程序猿|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,获得过国家奖学金,有幸在竞赛中拿过一些国奖、省奖…已保研。
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
唯有努力????
知其然 知其所以然!
本文仅记录自己感兴趣的内容
简介
代码链接:https://github.com/NKU-IIPLab/Net2Net-NE
会议:KDD '19: Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (CCF A类)
年度:2019/07/25
ABSTRACT
近年来,网络嵌入(network embedding, NE)在学习网络节点的低维表示方面取得了很大的成功,并越来越多地应用于各种网络分析任务中
本文研究了具有丰富内容信息的节点的富内容网络的表示学习问题
内容丰富的网络嵌入在融合复杂的结构依赖关系和丰富的内容方面具有挑战性
为了应对这一挑战,我们提出了一个生成模型——网络到网络的网络嵌入(Net2Net-NE)模型,该模型可以有效地将每个节点的结构和内容信息融合为一个连续的嵌入向量
具体而言,我们将内容丰富网络看作是一对具有不同形态的网络,即内容网络和节点网络
- 利用焦点节点与所连接节点之间的强相关性,提出了一种多层递归可组合编码器
- 将整个ego网络的结构和内容信息融合到ego中心节点嵌入中
此外,跨模态解码器部署到映射ego中心节点嵌入到节点身份在互联网络
根据每个节点的内容学习其身份,以生成式的方式学习从内容网络到节点网络的映射
因此,Net2Net-NE学习到的潜在编码向量可以作为有效的节点嵌入
1 INTRODUCTION
近年来,网络嵌入(network embedding, NE)引起了广泛的研究兴趣,并被广泛认为是网络分析应用中的一种新范式
NE的目标是通过保留网络节点的结构信息来学习网络节点的低维向量表示,从而使现成的机器学习模型可以应用于节点分类[31][13]、链路预测[45][51]、网络可视化[37][44]等下游分析任务
然而,这一领域的一个关键的开放挑战是开发可以直接学习网络表示的方法,以一种无监督学习方式融合来自给定网络的结构和内容信息
而经典的NE方法则是基于随机游动[31][13]、本地邻居[37][44]或其他高级结构信息[32][29][30]来学习节点表示
这种纯结构模型无法兼顾丰富的内容信息
因此,学习到的表示是次优的
深度神经网络模型的最新进展,如CNN和RNN,在图像和文本数据等复杂领域的建模方面取得了重要进展
在这些方法的基础上,人们提出了许多用于网络嵌入的深度学习模型[2][18][15][43]
- Battaglia等人总结了目前的研究成果,提出了一种用于网络结构数据的深度学习框架[2]
- Kipf等人提出了一种基于图卷积[18]的半监督框架
- 而Velickovic等人则为内容丰富的网络[43]提出了一种基于注意力的方法
但是,这些方法主要关注节点间基于内容的亲缘关系,没有专门用于结构信息学习的策略,因此对保留结构信息有一定的限制
此外,这些模型是在监督方案中学习的, 学习到的表示仅限于特定的任务,不适用于下游的各种任务
在本文中,我们提出了一种新的网络到网络的网络嵌入(Net2Net - NE)模型
为了更好地捕获和融合内容和结构语义信息,我们开发了一个基于编码器-解码器的生成模型,建立了从内容到结构的映射
我们方法的关键是身份生成的内容网络编码器和解码器,具体地说
- 首先推导出一对网络,即节点内容网络和节点标识网络,它们可以看作是用两种不同的方式描述原始网络的并行网络
- 通过学习两个并行网络之间的映射关系,Net2Net-NE模型可以学习有效的网络表示
编码器对每个网络节点的内容信息进行编码
由于我们提出的Net2Net-NE方法实际上是一个通用的框架,有几种可选的方法可以作为编码器,如GCN [18], GAT[43]等
在我们的实现中,为了更好地编码内容网络,我们提出了一个分层的ego中心内容网络编码器(hierarchical egocentric content network encoder)
在每个节点的ego网络中,通过一种新颖的可递归组合和排列不变的编码器集成局部语义和结构信息,使我们能够控制考虑的内容信息的顺序
所提出的ego网络编码器具有直观的解释性和良好的扩展性
在内容网络编码器之上,进一步设计了一个跨模式解码器( cross-modal decoder),将节点内容嵌入映射到它们的身份( map the node content embeddings to their identities.)
该解码器基于ego网络的同质性假设,认为在一个ego网络中, focal node与 alters之间存在很强的相关性
单个节点的ego中心结构很重要,因为它描述了该节点如何连接到其他节点,并定义了其在全局网络中的结构角色
通过这种方式,我们的网络到网络的方法能够从内容编码的上下文向量恢复网络结构
因此,解码器可以指导我们的网络到网络模型学习有效的网络编码表示
在现实网络上的大量实验结果表明,自我中心节点嵌入不仅能更好地完成下游任务,而且保持了ego网络的特征
最后,我们作出了以下几个值得注意的贡献:
- 我们提出了一种原则性的编码器-解码器框架,该框架嵌入原始内容和结构信息,并以自我中心网络-网络的方式学习从输入网络到嵌入空间的映射。通过引入身份网络生成技术,将GNN、GCN及其扩展等主流网元方法进行了改进,使捕获更多的结构和上下文语义信息,从而实现结构和内容信息的无缝融合
- 我们开发了一个网络到网络的网络嵌入模型,它有效地实现了生成网络编码器-解码器框架。该模型能够嵌入原始输入文本,并通过端到端的方式学习从节点内容网络到节点标识网络的映射。
- 对现实世界的网络数据集进行了大量的实验分析。结果表明,该模型提高了下游任务的性能。
2 RELATED WORK
近年来,网络嵌入已经成为学习用于网络分析任务的低维节点嵌入的一种范式
它旨在通过保留网络中的结构和属性信息来学习低维向量表示,从而使现成的机器学习算法可以直接应用于下游任务
在本节中,我们简要回顾了一些具有代表性的网络嵌入模型,详细的调查可以参考[4][7][10][12][14][50]
传统上,网络用图表示。然后利用数据点的特征向量构造亲和图[33]
这样,通过学习低维表示,亲和力图就可以嵌入到低维空间中
广泛的图嵌入方法已经被提出,如多维尺度[9],IsoMap [39], LLE[33]和Laplacian特征映射[3]
由于依赖于求解亲和矩阵的主导特征向量,计算复杂度是一个关键的瓶颈,使其在实际应用中效率低下
近年来,网络嵌入已经成为一个活跃的研究问题
- DeepWalk[31]在网络上进行随机漫步,并引入了一个高效的词表示学习模型——skip-gram[27]来学习网络嵌入
- LINE[37]优化了大规模网络中边的联合概率和条件概率
- Node2vec[13]设计了一种有偏随机游走,以更有效地探索网络结构。所有这些方法都只考虑一阶和/或二阶近似,以保留微观和局部结构
- Cao等人[5]提出了捕获高阶邻近性的方法
- Zhang等人[51]提出了一种新颖的NE模型,该模型可以在任意阶的邻近点之间移动
- Wang et al.[46]引入了任务特定结构,即社区模块,以考虑更高阶的接近性
- Tu等[42]提出了利用结构等效学习网络嵌入
从本质上讲,这些方法关注的是两两关系或抽样节点序列,未能利用完整的结构信息
相反,我们的建议通过考虑完整的局部结构来解决这个问题
除了网络拓扑信息外,还可以考虑异构信息[6][16][47]、监督标签信息[41][20][8]、节点特性[48][49][30]等
而在本文中,我们主要关注节点内容信息。
为了考虑到内容
- Yang等人提出了文本相关的DeepWalk (TADW)[48]来融合文本信息
- TriDNR[30]将段落向量模型[19]与DeepWalk结合起来,合并了节点-词和标签-词的关系。在建立了单词、文档和标签的网络之后
- Tang等人进一步提出了PTE[36]来从中学习文本表示
- 在LINE模型的基础上,CANE[40]进一步用一种相互的方式对节点对之间的语义关系进行建模
- Sun等人将文本内容作为一种特殊的节点,提出了上下文增强网络嵌入(CENE)[35]
- Wang等人提出用一个概率生成模型[45]融合word-document、document-document和document-label关系
- Liu等人提出了一个基于seq2seq的框架,将文本内容转换为节点标识[22]
我们的Net2Net - NE模型还利用了节点的原始内容信息,其中内容表示以ego为中心的方式聚合到焦点节点
ego网络是社会网络分析中的一个热点研究问题
在网络分析任务中分析了自我网络的各种性质,如介乎性[11]和中心性[23]
我们基于ego网络的常备假设,即焦点节点与变更节点之间的同质性来构建我们的模型
3 PROBLEM FORMULATION
我们建议在学习低维节点嵌入的同时保留完整的局部结构
在这项工作中,我们考虑了内容丰富的网络,其中节点伴随着丰富的内容
在介绍我们的方法的技术细节之前,下面给出基本的符号和定义
Definition 1: Content-rich Network
假设有一个网络,其中
- 是所有节点的集合
- 是这些节点之间所有边的集合,即
- 对于每个节点, 是节点的标识,是与相关的内容
- 每条边表示两个节点之间的关系
在本文中,为了便于描述,我们只考虑无向和无权网络
然而,所提出的方法可以很容易推广到有向图和加权图
网络嵌入的目的是对每个节点学习一个低维表示,其中是表示空间的维数,期望远小于
学习到的表示对网络中节点的语义内容和结构信息进行编码,可用于下游的分析任务
在本文中,我们的目标是学习基于节点的ego网络的ego中心嵌入
Definition 2: Ego Network.
给定网络中的一个节点,由和它的邻居节点,以及它们之间的边组成的子图称为的ego网络,记作,其中
- 为邻居节点集
- 表示的节点集
- 包含的边
在中
- 被称为焦点节点或ego
- 而其他节点被称为alters
在网络分析中,的高阶邻居也可以通过 snowball sampling[28]作为的改变量
但是,作为一个原型,我们只考虑一阶近邻,对高阶近邻进行递归处理,即alters的alters
高阶通过一阶的递归就可以得到
而且,ego与alters关系不是决定性的,而是相对的
- 假设节点和相互连接,是中的焦点节点,是其中一个alters节点
- 然而,的情况恰恰相反
在一个ego网络中,可能是焦点节点,但是再另一个ego网络中,可能是一个alters节点
这就是ego中心的意思,即每个节点都是自己的ego网络中的焦点节点或ego
关于ego网络的一个站定的假设是ego与alters之间的同质性
- 也就是说,节点在关键属性上,如引文网络中的研究主题,与其他与自己相似的节点有很强的联系
- 为了学习以ego为中心的节点嵌入,我们定义了一个基于同质性假设的跨模式生成任务,这是提出的Net2Net-NE模型的目标
Definition 3: Node Identification
给定ego网络,节点识别是学习焦点节点在其ego网络下的身份生成概率
Given an ego network , node identification is to learn the generative probability of the focal node’s identity given its ego network, i.e.,
我们以ego中心( egocentric manner)的方式解决了节点识别问题
- 在节点的ego网络中
- 和所携带的所有内容和结构信息都将被有效地整合到节点的嵌入向量中
- 而在的邻居节点的ego网络中,反过来的内容和结构信息会被整合到的嵌入中
因此,学习到的节点嵌入不仅以ego为中心,而且具有内在的联系
图1说明了我们所提议的方法的概述
图1: 网络到网络的网络嵌入框架
每个节点都是由整个局部结构构建的自我网络中的焦点节点
在每个自我网络中,通过一个网络到网络的编码器-解码器框架解决节点识别问题,学习焦点节点的自我中心节点嵌入
对于给定的内容丰富的网络
- 将每个节点作为其自身及其邻域组成的自我网络的焦点节点,设计一个网络到网络的模型来学习从的自我网络到其同一性的跨模态映射
- 并利用自我网络编码器的潜在表征作为对下游各种任务的ego中心嵌入
4 METHODOLOGY
在本文中,我们提出了一种新的学习ego中心网络嵌入的模型,即Net2Net-NE
其概述如图1所示
基本上,我们提出了一个由分层内容编码器和跨模态解码器组成的深度架构
Net2Net-NE的关键点是编码器-解码器过程,该过程将ego网络的局部内容图转换为焦点节点的身份
图2说明了Net2Net - NE的总体框架
- 首先对网络中的每个节点提取ego网络
- ego网络由一个焦点节点、几个节点和它们之间的边组成
- 例如,ego网络由焦点节点、4个alters和它们之间的5条边组成
- 在ego网络中,每个节点首先通过内容嵌入组件映射到语义空间
- 然后,高级编码器进一步将整个网络中的内容信息编码为焦点节点的ego中心嵌入
- 最后,跨模态解码器将ego中心嵌入映射到互联网络中的节点标识
图2:用于自我中心网络嵌入的Net2Net-NE
u的自我网络通过内容编码器、高级自我网络编码器和跨模态身份解码器映射到其节点身份
4.1 Content Embedding
基于同质性假设,Net2Net-NE在自我网络上工作,学习自我网络到焦点节点的映射关系
作为第一步,我们设计了一个内容嵌入组件来将原始输入内容转换为潜在的语义空间
对于任何节点, Net2Net-NE首先读取其原始内容,并将其嵌入到低维语义空间
根据实际应用中的具体情况,嵌入函数可以是任何语义特征学习模型
例如,当原始文本内容可用时,可以采用文本[17]上的一个端到端的CNN层对原始文本进行学习,避免人工干预。
假设节点文本的词汇量为
文本内容首先将转换为一个连接词嵌入的矩阵:
式中
- 为整个词汇的词嵌入矩阵
- 为词嵌入的维数
- 是拼接算子
通过LookUp(·,·)函数,将中单词的嵌入顺序连接起来
然后,利用卷积层和最大池化层将的局部语法语义信息保存到一个向量表示中
对于给定的滤波器,通过大小的滑动窗口计算特征向量:
式中
- 为从第j个单词开始的嵌入序列拼接
- 为矩阵的元积
- 为偏置
- 使用双曲正切激活函数tanh(·)
然后,对进行max-over-time pooling操作,取filter 对应的最显著特征:
一个维的内容嵌入向量由所有的的过滤器组成:
4.2 Ego Network Encoder
为了充分融合内容嵌入和结构关系,在内容嵌入的基础上应用了一种高级自我网络编码器
在一个典型的无向图中,有三个基本点需要考虑:
- 首先,ego-alters关系是一个对称的环节
- 例如,如果节点和之间有一条边,则是自我,是自我网络中的一个alters
- 因此的结构和语义信息应该向聚集,而在自我网络中则相反
- 第二,这些变化不是完全脱节的,而是相互联系的
- 例如,在社交网络中,如果用户A和用户B都是用户C的朋友,那么用户A和用户B也很有可能是朋友
- 此外,A(或B)也可以有自己的非C的直接友元,即C的二阶邻元。
- 第三,alters通常缺乏一个自然的秩序
- 例如,如果一篇论文引用了两篇不同的论文,区分哪一篇比另一篇更重要是很重要的
基于以上分析,可以开发出不同的ego网络编码器
在本文中,我们使用多层图卷积网络(GCN)[18]模型演示了有原则的Net2Net-NE框架
假设编码器由几层组成,则第1层所有自我网络的自我中心整合可以表示为:
这里
- 和分别是节点的输入和输出自我中心嵌入
- 是自我网络中所有节点的聚合表示
- 矩阵为元素表示与自我节点的连接
- 和是分层可训练权重和偏差
- 激活函数采用双曲正切函数tanh(·)
- 在编码器的第一层,采用内容嵌入作为隐藏表示,即
利用上面给出的卷积层,可以很好地解决这三个基本点
通过在相应的栏目中加入所需的自我改变链接,可以满足对称性和互联性的要求
此外,式(5)中的求和操作对排列不变,因此改变节点的顺序不会影响嵌入学习
因此,关键是如何定义显示矩阵
作为一个原型,可以使用的归一化邻接矩阵:
其中
- 为邻接矩阵
- 为中加入自连接的单位矩阵
- 为归一化对角矩阵
每个节点以自我为中心,逐层递归地聚合来自其本地邻居的信息
通过设计深度编码器,也可以获取全局信息
在每一层中,节点不仅收集其在前一层中的变更表示,而且还将其自身的潜在表示扩散到下一层的所有变更
因此,学习到的每一层的嵌入都是内在关联的,这就是我们将提出的模型命名为Net2Net的网络嵌入的原因
4.3 Node Identification
该编码器在结构上和语义上都将节点的自我网络压缩为以自我为中心的嵌入
基于同质性假设,我们使用跨模态解码器来解决节点识别问题
具体来说,译码器是ego中心嵌入空间与身份空间之间的支点
由于多层编码器编码了足够的内容和结构信息
为了证明本文提出的Net2Net-NE框架的有效性,利用简单的全连接层将自我中心嵌入转换为节点身份:
其中
- 和为权值和偏置
- 激活函数为sigmoid函数σ(·)
- 输出表示在等式上的概率分布(也就是输出网络识别该节点为其他节点的一个概率,维度为, 一个节点有一个标识)
采用交叉熵损失来衡量节点识别的正确性:
其中
- 是一个二元函数
- 当等于j时输出1,否则输出0
4.4 Optimization
算法流程
4.5 Discussion
这里我们讨论Net2NetNE与经典的NE方法的一些联系和区别
一方面
- 我们在式(5)、(6)和(8)中框架的聚合和预测过程在某种程度上类似于CBOW word2vec模型[27],因为它们都是通过解决上下文感知的预测任务来学习嵌入
- DeepWalk也是基于word2vec模型,即跳跃图
- word2vec和DeepWalk都证明了节点预测在上下文结构信息建模中的有效性,而GCN等基于神经网络的图嵌入模型忽略了这一点
- 为了对网络节点之间的上下文关系进行建模和保存,我们的多层编码器将CBOW从序列结构推广到图结构
另一方面
- DeepWalk需要通过随机漫步进行节点序列采样
- 在实际应用中,确定最优随机游动次数和长度是一项困难而繁琐的工作,而这对网络嵌入的性能至关重要
- 相比之下,我们的Net2Net-NE避免了DeepWalk及其扩展常用的分离序列采样过程
- 给定指示矩阵,图卷积运算是将网络作为一个整体来进行的,具有良好的语义建模和计算效率
因此,我们的Net2Net-NE结合了DeepWalk和GCN的优点
建议的Net2Net-NE是一个有原则的框架
在不失一般性的前提下,我们提出了
- 一个CNN节点内容编码器
- 一个基于gcn的自我内容网络编码器
- 以及一个用于节点识别的全连接解码器
基本上,该框架可以很容易地与其他编码器和解码器实现
例如GraphSAGE[15]模型和GAT[43]模型也可以作为自我网络编码器。
5 EXPERIMENTS
5.1 Datasets
5.2 Comparison Models
5.3 Experimental Settings
为了便于再现,我们给出了实验中一些重要的超参数值
- 将单词嵌入的维数设为,
- CNN滤波器有5种不同的大小,大小分别为1 × 500、2 × 500、3 × 500、4 × 500、5 × 500
- 有200个不同尺寸的过滤器
对于CNN学习到的内容嵌入,我们进一步使用dropout层
- dropout概率为p = 0.2
- 编码器的深度为L = 2
- 潜维设为k = 500
- 优化过程一般分别在Cora、Citeseer和DBLP上收敛15、20和50个epoch
对于所有比较的无监督算法,为了消除分类器对性能的影响,我们在学习节点表示后应用Logistic回归分类器
分类结果用微观平均F1评分指标进行评估
5.4 Classification Results
5.5 Parameter Analysis
6 CONCLUSION
在本文中,我们探讨了内容丰富网络的表示学习任务
我们将此问题转化为跨模式的节点识别任务,并提出Net2Net-NE通过网络到网络编码器-解码器模型学习节点表示
Net2Net-NE的优点主要来自三个方面
- 首先,利用多层自我网络编码器保存完整的局部结构信息;
- 其次,为每个节点自动学习到无缝融合内容和结构信息的自中心嵌入向量,这避免了分离内容和结构向量的手工组合
- 第三,提出的框架是一个无监督学习模型,使学习到的嵌入适用于下游的各种任务
读后总结
2022/07/11 第一次阅读
这篇文章开始读起来感觉比较难懂
多看了几遍 还是很多地方不懂
目前只有理解了一点点
一个很关键的地方没有理解为什么是Net2Net
首先是提取每个节点的ego网络,然后对其依据content进行嵌入(这里使用CNN)
这里有个疑问就是,怎么依据ego网络结构的不同来进行content的嵌入呢??
然后对得到的节点内容嵌入使用GCN进行编码(递归获取高阶领域的信息,也就是全局结构)
然后利用得到编码,利用全连接层与节点的标识计算损失
大概意思就是利用,利用ML计算其节点标签(算出为每个标签的概率)
利用这个概率,使用交叉熵作为损失
利用这个损失从而来训练编码器 + 全连接层
结语
文章仅作为个人学习笔记记录,记录从0到1的一个过程
希望对您有一点点帮助,如有错误欢迎小伙伴指正