概述
题目
A General Framework for Content-enhanced Network Representation Learning
题目分析(analysis
):
1)结构+内容的Network Embedding
;
2)Content-enhanced
,应该注意内容如何enhance
;
摘要
现有的网络嵌入方法大多只依赖于网络结构,而忽视了能够代表这个节点的丰富的相关文本信息。本文提出内容增强网络嵌入(CENE
),来联合学习这两个部分的信息。该方法将内容信息作为一种特殊的节点来处理,将文本建模和结构建模集成在一个通用框架中。
简介
网络嵌入的经典算法有:Deepwalk(2014)
、LINE(2015)
、GraRep(2015)
、node2vec(2016)
等。
之前的这些大多数方法只利用来自网络结构的信息,而没有考虑使用文本信息,而文本信息对于节点的表示是有益的,并且也有利于下游任务的表示。
为了应对这个挑战,相应的算法也应运而生:
Text-associated DeepWalk (TADW)(2015)
:它通过矩阵分解将文本特性合并到网络嵌入中,但是这个方法通常存在计算成本高和无法扩展到大规模网络的问题。此外,TADW
中的内容被简单地合并为无序的文本特性,而不是显式地建模。因此,不能很好地捕获内容中包含的更深的语义。
本文提出的方法:Content-Enhanced Network Embedding (CENE)
1)联合学习网络结构和文本内容;
2)每一条内容信息都整合成一个文档,并且创建一个特殊的节点用来将每个文档都整合到这个网络当中;
3)最终这个网络将有两种类型的链接:node-node
、node-content
;
4)通过对联合目标的优化,有效地将内容中包含的知识提取为节点嵌入;
相关工作
1. 文本嵌入(Text Embedding)
简单直观的方法就是平均在文本中每个单词的嵌入表示,如:
Composition in distributional models of semantics. 2010
Linear compositional distributional semantics and structural kernels. 2013
Deep unordered composition rivals syntactic methods for text classification. 2015
大多数复杂的模型就使用句子或者文档的内部结构去辅助这个嵌入,如:Recursive deep models for semantic compositionality over a sentiment treebank. 2013
Grounded compositional semantics for finding and describing images with sentences. 2014
就使用RNN
来解析得到的解析树,取获得句子的表示。为了缓解对语法解析的依赖,CNN
就被使用:A convolutional neural network for modelling sentences. 2014
Effective use of word order for text categorization with convolutional neural networks. 2015
就使用CNN
,使用简单的自底向上层次结构进行组合。其他的一些缓解模型就有基于LSTM
,如:Skip-thought vectors. 2015
使用长短期记忆单元来捕获长期的依赖。
2. 网络嵌入(Network Embedding)
Hoff
等人在2002
年Latent space approaches to social network analysis.
一文中首次提出了学习网络中节点的潜在空间表示。早期的工作关注于特征向量(feature vectors
& leading eigenvectors
)的网络表示,如:
MDS:Modern multidimensional scaling: Theory and applications. 2005
IsoMap:A global geometric framework for nonlinear dimensionality reduction. 2000
LLE:Nonlinear dimensionality reduction by locally linear embedding. 2000
Laplacian Eigenmaps:Laplacian eigenmaps and spectral techniques for embedding and clustering. 2001
最近的一些发展就包括:
DeepWalk:Deepwalk: Online learning of social representations. 2014
受到DeepWalk
和walklet
:
Walklets: Multiscale graph embeddings for interpretable network classification. 2016
关注于多刻度表示学习
的启发,node2vec
:
Node2vec: Scalable feature learning for networks. 2016
被提出,探寻了不同的随机游走策略。
LINE:Line: Large-scale information network embedding. 2015
提出了网络中一阶、二阶相似度的概念,
Cao
等人,在Grarep: Learning graph representations with global structural information. 2015
扩展了这个相似性到K
阶,并整合了网络全局结构信息到这个学习过程中。
Tang
等人在2015
年,在Pte: Predictive text embedding through large-scale heterogeneous text networks.
中将嵌入方法应用在了异构文本网络中;
Structural deep network embedding. 2016
采用了深度模型来捕获非线性网络结构;
Yang
等人在2015
年,在Network representation learning with rich text information.
中首次组合了网络结构信息和文本信息来学习网络嵌入表示;他们表明,DeepWalk
等价于矩阵分解(MF
)和文本特征的顶点可以通过分解一个文本相关的矩阵合并。但该方法存在MF
算法计算量大、难以扩展到大规模网络的问题。
在2016
年,Pan
等人,在Tri-party deep network representation.
中组合了DeepWalk
和Doc2Vec
,用部分节点标签来组成一个半监督的模型。
Doc2Vec:Distributed representations of sentences and documents. 2014
然而,Doc2Vec
远不能表达内容。此外,它也不能推广到图像等其他形式。
问题定义
有向图
G
=
(
V
,
E
,
C
)
G=(V,E,C)
G=(V,E,C),
C
=
{
(
v
,
d
o
c
)
∣
v
∈
V
;
d
o
c
=
{
S
i
}
}
C={ (v, doc)|v in V; doc = { S_i}}
C={(v,doc)∣v∈V;doc={Si}},
S
i
S_i
Si 是文档中第
i
i
i个句子,组成是单词序列,如
<
w
1
,
w
2
,
.
.
.
,
w
n
>
<w_1, w_2,..., wn>
<w1,w2,...,wn>。
网络嵌入的目标是:给定一个网络
G
G
G,取学习到图中的每个点的向量表示,即:
e
v
∈
R
d
,
d
<
<
∣
V
∣
e_v in mathbb{R}^d, d<<|V|
ev∈Rd,d<<∣V∣,其中
e
v
e_v
ev是节点
v
v
v的嵌入向量表示。
方法
网络结构信息,最小化目标函数:
S
P
SP
SP是积极顶点对,
S
N
SN
SN是消极顶点对。例如:
在基于随机游走的算法中,如:DeepWalk、walklet、node2vec,
S
P
SP
SP是随机行走生成的路径中相邻顶点对的集合,
S
N
SN
SN是所有负采样集的并集。
p
(
u
,
v
;
θ
)
p(u, v;theta)
p(u,v;θ)是顶点
u
u
u和顶点
v
v
v之间的联合概率,意味着在
S
P
SP
SP中
(
u
,
v
)
(u, v)
(u,v)对存在的概率;
相应的,
1
−
p
(
u
,
n
;
θ
)
1-p(u, n;theta)
1−p(u,n;θ)是在
S
P
SP
SP中
(
u
,
v
)
(u, v)
(u,v)对不存在的概率;
注:
由于在本文中,作者对于 e u e_u eu和 e v e_v ev等的解释没有详细的说明,这里就看作对整体nn
和nc
网络进行随机游走后所产生的游走序列,进而得到的一个嵌入向量表示。
因为,在该文中,作者在计算逻辑斯特概率的时候,直接表示为 e x p ( − e u ⋅ e v ) exp(-e_u cdot e_v) exp(−eu⋅ev),而又没有其余的解释。
为了利用内容信息,一个简单的方式就是联合内容嵌入和节点嵌入,然后各自独立训练。
形式化的定义:
e
u
=
e
u
⨁
f
e
(
C
u
)
e_u=e_u bigoplus f_e(C_u)
eu=eu⨁fe(Cu) 表示为节点
u
u
u的表示,
C
u
=
{
(
u
,
c
)
∣
(
u
,
c
)
∈
C
}
C_u={ (u, c) | (u, c) in C}
Cu={(u,c)∣(u,c)∈C} 表示为节点
u
u
u的所有的内容的集合,
在本文中,将文本作为一种特殊的节点考虑,那么扩展后的网络可以表示为:
G
a
u
g
=
(
V
n
,
V
c
,
E
n
n
,
E
n
c
)
G^{aug} = (V_n, V_c, E_{nn}, E_{nc})
Gaug=(Vn,Vc,Enn,Enc),
V
n
=
v
V_n = v
Vn=v,
V
c
=
{
c
∣
(
u
,
c
)
∈
C
,
u
∈
V
}
V_c = { c| (u, c) in C, u in V}
Vc={c∣(u,c)∈C,u∈V},
E
n
n
=
E
=
V
n
×
V
n
E_{nn} = E = V_n times V_n
Enn=E=Vn×Vn, 节点之间的边集合
E
n
c
=
V
n
×
V
c
E_{nc} = V_n times V_c
Enc=Vn×Vc, 节点和内容的链接集合
这种方式可以缓解原始图中边的稀疏性问题。
这个框架就可以表示为下图:
下面,就根据前面的公式1
介绍node-node
和node-content
这两类连接各自的损失函数。
1. Node-Node Link
受到2013
年Distributed representations of words and phrases and their compositionality.
中负采样的启发,文中采样集合:
S
P
=
E
n
n
SP= E_{nn}
SP=Enn
S
N
n
n
u
=
{
v
′
=
(
u
,
v
′
)
∉
E
n
n
}
SN^u_{nn} = {v' = (u, v') notin E_{nn}}
SNnnu={v′=(u,v′)∈/Enn}
S
N
=
∪
u
∈
V
n
n
S
N
n
n
u
SN = underset{u in V_{nn}} cup SN^u_{nn}
SN=u∈Vnn∪SNnnu ,取并集
那么,节点-节点连接之间的损失函数可以描述为:
使用logistic
函数来计算概率
p
(
u
,
v
;
θ
)
p(u, v; theta)
p(u,v;θ) , 简写为:
p
(
u
,
v
)
p(u, v)
p(u,v):
p
(
u
,
v
)
=
σ
(
e
u
⋅
e
v
)
=
1
1
+
e
x
p
(
−
e
u
⋅
e
v
)
p(u, v) = sigma (e_u cdot e_v) = frac{1}{1+ exp(-e_u cdot e_v)}
p(u,v)=σ(eu⋅ev)=1+exp(−eu⋅ev)1
注:
⋅
cdot
⋅是点乘。
但是,可以注意到上式是一个对称的操作,也即是
p
(
u
,
v
)
p(u, v)
p(u,v) =
p
(
v
,
u
)
p(v, u)
p(v,u),这显然是不合适的,因为前面也提到了是有向图,故而我们可以根据入度和出度来描述:
2. Node-Content Link
类似的,我们定义:
S
P
=
E
n
c
SP = E_{nc}
SP=Enc
S
N
n
c
u
=
{
c
′
∣
(
u
,
c
′
)
∉
E
n
c
}
SN^u_{nc} = { c' | (u, c') notin E_{nc} }
SNncu={c′∣(u,c′)∈/Enc} 表示负采样的边
(
u
,
c
)
(u, c)
(u,c)集合,损失函数如下:
类似的,使用logistic
函数来计算概率
p
(
c
,
u
;
θ
)
p(c, u; theta)
p(c,u;θ) , 简写为:
p
(
c
,
u
)
p(c, u)
p(c,u):
p
(
c
,
u
)
=
σ
(
e
u
⋅
f
e
(
c
)
)
=
1
1
+
e
x
p
(
−
(
e
u
o
u
t
⨁
e
u
i
n
)
⋅
f
e
(
c
)
)
p(c, u) = sigma (e_u cdot f_e(c)) = frac{1}{1+ exp(-(e^{out}_u bigoplus e^{in}_u) cdot f_e(c))}
p(c,u)=σ(eu⋅fe(c))=1+exp(−(euout⨁euin)⋅fe(c))1
⨁
bigoplus
⨁运算符,表示连接。
f
e
(
c
)
f_e(c)
fe(c)是一个复合函数,用于计算文档c
的一个嵌入表示,将在下面介绍。
对于学习句子的表示在文中给出了三种典型的模型,分别是,如下图:
1. Word Embedding Average (WAvg)
该方法简单地将单词向量的平均值作为句子嵌入,而忽略了语序:
提出:Bag of tricks for efficient text classification. 2016
2. Recurrent Neural Network (RNN)
这里使用gated recurrent unit(GRU, 2014, Learning phrase representations using rnn encoder-decoder for statistical machine translation.)
,不是简单地使用最终状态的隐藏表示作为句子表示,我们对所有历史隐藏状态应用平均pooling
:
3. Bidirectional Recurrent Neural Network(BiRNN)
在实践中,甚至GRU
、RNN
仍然不能很好的捕获特有的长短期依赖。因此,我们进一步采用了双向变体(Schuster和Paliwal 1997)
,该变体使用两个独立的隐藏层在两个方向上处理句子。然后将两个方向的GRU
单元在每个位置的隐藏状态向量连接起来,最后通过平均池化层。
联合学习
文中作者根据node-node
和node-content
两个部分定义了联合优化的目标函数:
α
alpha
α是平衡参数。
采用带学习率衰减的随机梯度下降算法进行优化。梯度用反向传播计算。对应的算法如下:
最后
以上就是开放火为你收集整理的内容增强网络表示学习的一般框架(A General Framework for Content-enhanced Network Representation Learning)(1)的全部内容,希望文章能够帮你解决内容增强网络表示学习的一般框架(A General Framework for Content-enhanced Network Representation Learning)(1)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复