CANE:用于关系建模的上下文相关网络表示学习模型

CANE: Context-Aware Network Embedding for Relation Modeling

本文工作来自第 9 期 PhD Talk 嘉宾 — 清华大学计算机系人智所自然语言处理组的涂存超博士。该工作利用社会网络中用户产生的文本信息(如论文),采用 cross attention 技术,建立了上下文敏感的网络节点表示学习模型,在这里某个网络节点的表示会根据链接邻居的不同而不同,该算法在社会网络链接预测任务上表现非常好。本文已入选 ACL2017。

论文链接:

http://www.thunlp.org/~tcc/publications/acl2017_cane.pdf

相关代码:

https://github.com/thunlp/CANE

相关数据集:


Cora: https://github.com/thunlp/CANE/tree/master/datasets/cora

HepTh: https://github.com/thunlp/CANE/tree/master/datasets/HepTh

Zhihu: https://github.com/thunlp/CANE/tree/master/datasets/zhihu

阅读笔记精选



huangchao


本文是一篇关于网络表示学习的文章,用于对一个网络结构中的节点进行向量化表示,传统的方法大都没有考虑一些异构信息(如节点的标签,文本等),在和不同的节点进行交互时,其表示也是相同的,因而是 context-free 的。本文的模型(CANE)通过引入一种相互注意机制(mutual attention),对节点的结构信息和文本信息进行了融合,从而可以考虑节点的上下文信息,在和不同的节点交互时具有不同的表示。本文的模型在连接预测和节点分类的任务上均取得了比其它模型更好的结果。

个人觉得本文的工作对于实体消歧方面的工作具有借鉴意义,另外,个人觉得本文模型可能受限的地方在于,本文考虑的 context 是针对一条边所连接的结点的文本信息,可能有点匮乏,以前看一些工作,网络中一个结点的 context 通常被认为是该结点连接的边以及其邻居结点的信息,因此,或许结合之前做关系抽取用到的 selective attention 找到和该结点连接的比较重要的一些边,再使用本文的 mutual attention 对结点的 text 和这些边的领域结点的 text 进行融合表示,或许可以学习到一个更有意义的结点的表示。

lizhili


本文主要针对目前存在的 NE 方法对于每个顶点仅有一个简单 embedding,没有考虑到网络节点根据不同的交互对象会展现出不同交互特性的缺陷,提出了上下文敏感的网络表示(CANE)。首先通过 cnn 得到网络顶点的一个 embedding(context-free embedding),之后通过计算该节点与相邻节点的 mutual attention(就是在 pooling 层引入一个相关程度矩阵),得到顶点针对该相邻节点的 context-aware embedding,最终顶点的 embedding 表示由这两个 embedding 结合得到。文章将模型用到了链接预测,节点间关系解释任务中,均取得了不错效果。

dingboy


对于传统的 NE 方法,结点只有一个 embedding,缺乏多样性。本文针对这点提出了上下文敏感的 embedding,从而构成了“动态”的结点。本文的“动态”思路与之前的 TransX 系列有类似之处。例如,TransD 与 TransR 通过投影矩阵,使得 entity 在不同 relation 下有不同的 embedding。而 TransG 认为 relation 具有多语义,通过生成模型,根据不同的实体对动态生成 relation 的语义 embedding。总体来说,本文的模型具有较好的借鉴意义。

 Q&A 精选

beryl

a low-dimensional embedding

这里是为每个顶点学习一个表示还是根据连接情况学习多个表示?

lizhili: 这里指的应该是一个固定的 embedding,也就是下文提到采用 NRL 得到 Context-free embedding,得到一个自身的 embedding。 不过除此之外,CANE 还会通过不同的邻边节点得到 context-aware embedding。

karis: 为每个顶点学习一个表示,但利用了网络结构和相关信息如节点描述 text。

Herbert002

Invthis paper, we assume that one vertex usu-ally shows different aspects when interact-ing with different neighbor vertices, and should own different embeddings respec-tively. Therefore, we present Context-Aware Network Embedding (CANE), anovel NE model to address this issue. CANE learns context-aware embeddings for vertices with mutual attention mecha-nism and is expected to model the seman-tic relationships between vertices more precisely.

作者假设一个节点通常在与不同的相邻节点交互时表现出不同的侧面,所以应当分别 embedding。因此,提出了上下文相关网络 Embedding(CANE)。CANE 为节点学习一个带相互注意机制的上下文相关 embedding,有望更准确地模拟节点间的语义关系

。 

sunflower18: 这个相互注意机制要怎么理解啊,跟上下文相关是一个意思吗?

Herbert002: 在 4.5 节有详细说明,我觉得文中主要是引入 attentive matrix A 来实现。

mikasa: 赋予不同权重。

plntr

Given a word sequence S=(w1;w2;:::;wn)

要求每个 vertex 的 word sequence 是固定长度。实际问题中,如果每个顶点的 associate text 变长怎么办? 

Update:根据后面描述,每一个顶点都有单独的 convolution matrix,也就是顶点不共享参数?

kaharjan: word sequence 的长度应该不固定。

理论理论论文NLPACLACL 2017文本处理
1
PaperWeekly
PaperWeekly

PaperWeekly 是一个推荐、解读、讨论和报道人工智能前沿论文成果的学术平台,

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

返回顶部