图神经网络关系抽取论文阅读笔记(四)

1 GDPNet:用于关系提取的潜在多视图图的精炼(GDPNet: Refining Latent Multi-View Graph for Relation Extraction)

论文:GDPNet: Refining Latent Multi-View Graph for Relation Extraction,2021

1.1 引言

由于基于 BERT 等序列模型与基于图模型算法是关系抽取任务的研究前沿,这篇文献构造了利用潜在的多视图来捕获 token 之间各种可能的关系,随之对这个图进行精炼以选择重要的词进行关系预测,最后将改进的图表示和基于 BERT 模型的表示连接起来进行关系抽取。论文的重要创新点在于提出了 GDPNet (Gaussian Dynamic Time Warping Pooling Net),利用高斯图生成器 (Gaussian Graph Generator, GGG)来产生多视图的边,这个图通过 Dynamic Time Warping Pooling (DTWPool)来精炼。在dialgre和TACRED上,我们表明GDPNet在对话级RE上取得了最好的性能,在句子级RE上取得了与先进水平相当的性能

1.2 创新点

以前:许多研究依靠外部解析器将文本序列转换为依赖树来初始化图;缺点解析工具产生的错误因此传播到图中

现在:最近的研究直接从文本中学习潜在图

挑战:挑战在于处理长文本,如图所示,使用令牌级节点表示的长序列很难学习潜在图。

在这里插入图片描述

改进动机:

  • 之前也有学者,通过使用预定义的规则和额外的标签简化了潜在图,但这些规则和标签在原始数据中并不容易获得
  • 在基于bert的模型中,“[CLS]”标记被用作关系预测的特定于任务的表示。虽然BERT可以被看作是全连通图的特例,但它太大太复杂,无法作为任务特定图进行关系提取。更重要的是,在给定的上下文中,许多单词与关系预测任务的相关性较小
  • 提出了一个高斯图生成器(GGG),通过测量标记的不同高斯分布之间的KL发散度来初始化潜在多视图图的边缘。
  • 提出了一种图形池化方法DTWPool,以灵活的池化比例细化从文本序列中学习到的潜在多视图图。据我们所知,这是关于多视图图池的第一个工作。

1.3 相关工作

1.3.1 基于RNN的关系抽取

早期的关系提取工作依赖于手工制作的特征来表示实体对,模型的有效性高度依赖于手工制作的特征的质量。目前的工作主要集中在基于学习的模型,例如RE的循环神经网络(RNN)。Zhou等人(2016)提出了双向LSTM模型,以捕获实体对之间的长期依赖性。Zhang等人(2017)提出了PALSTM对全局位置信息进行编码,以提高RE的性能。

1.3.2 基于图的关系提取

基于图的模型由于其在关系推理方面的有效性和强度,现在在RE中被广泛采用。Zhang、Qi和Manning(2018)利用图卷积网络(GCN)在依赖结构上捕获信息。Guo、Zhang和Lu(2019)提出了一种注意引导的GCN (AGGCN),通过自注意机制改进图表示。AGGCN在句子级正则方面表现良好,但它依赖于外部解析器,在生成图时可能导致错误传播。为了减少错误传播,Christopoulou、Miwa和Ananiadou(2018)和Nan等人(2020)提出以端到端方式从文本中学习潜在图,而不需要外部解析器生成的依赖树。Guo等人(2020)将依赖结构视为潜在变量,并以端到端方式从非结构化文本中归纳出依赖结构

1.3.3 基于bert的关系提取

最近,大规模的预训练语言模型,如BERT,已经在许多任务上取得了SoTA性能。多项研究表明,基于bert的模型在很大程度上优于RNN和基于图的模型(Wu和He 2019;Joshi等2020年;Y u et al 2020)。乔希等人(2020)提出SpanBERT学习更好的表示,并在TACRED上实现SoTA性能(Zhang等2017),一个句子级RE数据集。对于对话级正则任务,Yu等人(2020)提出了一种BERTs模型,该模型考虑了说话人信息,并取得了最佳结果。在我们的解决方案中,多视图图是在BERT的令牌表示的基础上构建的。

1.3.4 Graph Pooling

图通常包含不同的子结构,图中的不同节点可能扮演不同的角色。因此,简单地应用像求和或平均这样的池操作来编码图中的全局节点表示可能会导致信息丢失(Atwood和Towsley 2016;Simonovsky和Komodakis 2017)。为了解决这个问题,提出了几种先进的图池方法,包括DiffPool (Ying等人2018)、TopKPool (Gao和Ji 2019)、SAGPool (Lee, Lee,和Kang 2019)和StructPool (Y uan和Ji 2019)。DiffPool在节点上生成一个集群分配矩阵,构造一个可微的池化层。TopKPool通过操纵一个可训练的投影向量对基本节点的子集进行采样。SAGPool进一步应用了自注意和图卷积来改进TopKPool。

StructPool提出了一种基于条件随机场的图池方法,改进了不同节点之间的关系表示。然而,所有这些方法都没有在多视图图上进行评估,多视图图可以模拟节点之间的复杂关系。在本文中,我们提出DTWPool来处理从文本序列中学习到的潜在多视图图。注意,DTWPool能够使用自适应池比率而不是固定的池比率。

1.3.5 Multi-view Graph(多视点图)

在多视图图中,一对节点之间存在多条边,每条边来自一个视图。形式上,我们可以将多视图图表示为: G = ( V , A 1 , A 2 , … , A N ) G=\left(V, A^1, A^2, \ldots, A^N\right) G=(V,A1,A2,,AN),其中V是节点的集合,A是相邻矩阵,N是视图的数量。

在模型中,我们的目标是使用多视图图来建模给定序列中标记之间的复杂关系(例如,语法和语义)。在这个多视图图中,序列X中的每个令牌对应一个节点。注意,一个实体可能包含多个令牌,并且有多种处理实体令牌的方法(即Xs和Xo中的令牌)。为了便于表示,我们将实体中的令牌与后续讨论中序列中的其他令牌一视同仁

1.4 GDPNet

GDPNet的总体架构显示如图所示。其中有三个关键组件:BERT模块、图模块和SoftMax分类器。BERT模块将令牌编码为相应的特性表示。如图所示,图模块接受来自BERT的令牌表示,并使用高斯图生成器(GGG)构造一个多视图图。然后通过图卷积和DTWPool的多重交互对图进行细化。最后,将改进后的潜图输入SoftMax分类器进行关系类型预测。

在这里插入图片描述

1.4.1 BERT Module

论文使用 BERT 作为特征编码器来提取 token 表示,将序列 映射为 BERT 的输入序列,对应的 BERT 产生的 token 表示为 H = { h 0 , h 1 , h 2 , … , h T , h T + 1 } H=\left\{h_0, h_1, h_2, \ldots, h_T, h_{T+1}\right\} H={h0,h1,h2,,hT,hT+1} ,在GDPNet中,我们通过图形模块充分利用了整个令牌表示H。简单地说,图模块使用令牌 H = { h 0 , h 1 , h 2 , … , h T , h T + 1 } H=\left\{h_0, h_1, h_2, \ldots, h_T, h_{T+1}\right\} H={h0,h1,h2,,hT,hT+1}学习特定于任务的图。然后将学习到的图与h0结合,作为SoftMax分类器的输入。

1.4.2 Graph Module

图模块由高斯图生成器(GGG)、多层图卷积和DTWPool组成。GGG用于生成潜在的多视图图,而图卷积层和DTWPool层用于图的细化。

Gaussian Graph Generator h 0 h_0 h0 令牌“[CLS]”被认为是整个序列的任务特定令牌,这是第一部分。剩下的表示 { h 1 , h 2 , … , h T , h T + 1 } \left\{h_1, h_2, \ldots, h_T, h_{T+1}\right\} {h1,h2,,hT,hT+1}构成第二部分。*我们从第二部分生成一个多视图图来建模令牌之间的关系。

我们将潜在图的初始节点表示表示为 V 0 = { v 1 0 , v 2 0 , … , v T + 1 0 } V^0=\left\{v_1^0, v_2^0, \ldots, v_{T+1}^0\right\} V0={v10,v20,,vT+10}其中每个节点对应于一个token表示。然后,提出了一种基于 v 0 v_0 v0的高斯图生成器(GGG)来初始化潜在多视图图的边缘。具体来说,我们首先将每个节点v0i编码为多个高斯分布:
{ μ i 1 , μ i 2 , … , μ i N } = g θ ( v i 0 ) { σ i 1 , σ i 2 , … , σ i N } = ϕ ( g θ ′ ( v i 0 ) ) \begin{aligned} &\left\{\mu_i^1, \mu_i^2, \ldots, \mu_i^N\right\}=g_\theta\left(v_i^0\right) \\ &\left\{\sigma_i^1, \sigma_i^2, \ldots, \sigma_i^N\right\}=\phi\left(g_\theta^{\prime}\left(v_i^0\right)\right) \end{aligned} {μi1,μi2,,μiN}=gθ(vi0){σi1,σi2,,σiN}=ϕ(gθ(vi0))
其中gθ和g0θ为两个可训练神经网络,φ为非线性激活函数,N为多视图图中的视图数。我们设激活函数φ为SoftPlus函数,因为高斯分布的标准差有界于(0,+∞),因此,我们得到了若干个高斯分布用于多视图图的第N个视图。

多视图图的目的是捕获令牌之间所有可能的关系,因此我们鼓励在语义差异较大的令牌表示之间传播消息。我们采用两个标记高斯分布之间的KL散度来建模边权。具体来说,第n个视图上第i个节点和第j个节点之间的边权计算为:
e i j n = K L ( N i n ( μ i n , σ i n 2 ) ∥ N j n ( μ j n , σ j n 2 ) ) e_{i j}^n=\mathrm{KL}\left(\mathcal{N}_i^n\left(\mu_i^n, \sigma_i^{n 2}\right) \| \mathcal{N}_j^n\left(\mu_j^n, \sigma_j^{n 2}\right)\right) eijn=KL(Nin(μin,σin2)Njn(μjn,σjn2))
在计算每个视图上节点之间的边后,我们得到多个相邻矩阵 A 1 , A 2 , … , A N A^1, A^2, \ldots, A^N A1,A2,,AN,每个视图一个。因此,生成的多视图图被写成 G = ( V , A 1 , A 2 , … , A N ) G=\left(V, A^1, A^2, \ldots, A^N\right) G=(V,A1,A2,,AN)。由于KL散度的不对称性,G是一个有向多视图图。

1.4.3 Multi-view Graph Convolution

受Guo、Zhang和Lu(2019)的启发,我们进一步使用具有密集连接的多视图图卷积(Guo等人2019)来捕获图上的结构信息。通过使用密集连接,我们可以训练一个更深入的模型来捕获本地和非本地信息。多视图图卷积写为:
v n i ( ℓ ) = ρ ( ∑ j = 1 T A i j n W n ( ℓ ) k j ( ℓ ) + b n ( ℓ ) ) v_{n_i}^{(\ell)}=\rho\left(\sum_{j=1}^T A_{i j}^n W_n^{(\ell)} k_j^{(\ell)}+b_n^{(\ell)}\right) vni()=ρ(j=1TAijnWn()kj()+bn())
第一个图卷积层的输出 V 1 = { v 1 1 , v 2 1 , … , v T + 1 1 } = { k 1 ( ℓ ) , k 2 ( ℓ ) , … , k T + 1 ( ℓ ) } V^1=\left\{v_1^1, v_2^1, \ldots, v_{T+1}^1\right\}=\left\{k_1^{(\ell)}, k_2^{(\ell)}, \ldots, k_{T+1}^{(\ell)}\right\} V1={v11,v21,,vT+11}={k1(),k2(),,kT+1()},我们建议读者参考密连通图卷积网络(Guo等人2019)了解更多细节。

1.4.4 Dynamic Time Warping Pooling

在图卷积通过消息传播更新节点表示之后,引入动态时间扭曲池(Dynamic Time Warping Pooling, DTWPool)来细化潜在的多视图图。在DTWPool中,我们首先引用SAGPool (Lee, Lee, and Kang 2019)来计算图表每个视图上的注意力得分:
s n i = α ( ∑ j = 1 T A i j n W pool  v j + b pool  ) s_{n_i}=\alpha\left(\sum_{j=1}^T A_{i j}^n W_{\text {pool }} v_j+b_{\text {pool }}\right) sni=α(j=1TAijnWpool vj+bpool )
对于潜在多视图中的第 n 个视角,会得到分数集 ,论文保留了 SAGPool 的节点选择方法,即使在图的大小和结构发生变化时,也保留了输入图中的一部分节点。在节点选择之后,第 个视角保留的节点是 的子集,因为潜在图通常有多个视角,所以会发现多个 不同的子集。

由于多视图的特性,DTWPool 通过从不同视图获取节点的联合集,自适应地对图进行了细化:
V 2 = V 1 2 ∪ V 2 2 ∪ … ∪ V N 2 V^2=V_1^2 \cup V_2^2 \cup \ldots \cup V_N^2 V2=V12V22VN2
其中 是从所有不同视图中选择的子集的并集。在图模块中,论文对图卷积和 DTWPool 进行迭代操作,从而得到一个图序列 。

信息节点的数量在不同的文本序列中是不同的。在图的池化过程中,保持重要信息是很重要的。这个图中的节点嵌入了丰富的上下文信息,因此将上下文总结到 pooling 节点中是有益的。为了这个目的,作者提出了使用 SoftDTW 来指导图池化操作。SoftDTW 是一个可微分的损失函数,用于寻找不同长度的两个序列之间可能的最佳对齐方式:
DTW ⁡ γ ( L 1 , L 2 ) = min ⁡ γ { ⟨ M , Δ ( L 1 , L 2 ) ⟩ , M ∈ M } \operatorname{DTW}_\gamma\left(L_1, L_2\right)=\min ^\gamma\left\{\left\langle M, \Delta\left(L_1, L_2\right)\right\rangle, M \in \mathcal{M}\right\} DTWγ(L1,L2)=minγ{M,Δ(L1,L2),MM}
在 GDPNet 中,论文利用 SoftDTW 损耗最小化原始图与最后池化图之间的距离:
L = CSE ⁡ ( r , r ^ ) + λ D T W γ ( V 1 , V D ) \mathcal{L}=\operatorname{CSE}(r, \hat{r})+\lambda \mathrm{DTW}_\gamma\left(V^1, V^D\right) L=CSE(r,r^)+λDTWγ(V1,VD)
使用 SoftDTM 损失,DTWPool 可以在不丢失大量上下文信息的情况下细化图。

为了最小化信息损失,论文将池化过程中创建的中间图的节点表示连接起来,从而得到最终的图 ,类似于学习图的残差连接。由于池中的图具有不同的大小,论文对所有节点只连接其中的节点表示,因此,最终图 的节点与 1 相同。

1.4.5 Classifier

给定最终的图V,我们采用具有最大池化的神经网络来计算图的表示。然后将计算得到的表示与“[CLS]”标记h0的表示连接起来,形成最终表示:
h final  = [ h 0 ; f ( V ) ] h_{\text {final }}=\left[h_0 ; f(V)\right] hfinal =[h0;f(V)]

1.5 实验

论文提出的 GDPNet 可以应用于句子级和对话级的 RE 任务。由于数据格式、适用的基线模型以及处理主体和客体实体 和 的方式的不同,论文进行了两组实验,将 GDPNets 和 SoTA 模型在两项任务上进行了比较。表 2 与表 5 总结了在 DialogRE 和 TACRED 上的结果。论文还展示了如何容易地修改 GDPNet,如表 4 所示,以便在每个任务上与 SoTA 模型进行公平比较。

Dialogue-level Relation Extraction

在这里插入图片描述

Sentence-level Relation Extraction

在这里插入图片描述

1.6 结论

本文提出了基于GDPNet的关系提取方法。

GDPNet设计用于从长序列(如对话)中查找指示性词,以便有效地提取关系

我们证明了GDPNet在对话级RE上实现了最好的性能。特别是,当对话较长时,GDPNet比基于bert的模型获得了更好的性能。GDPNet的关键是构建一个潜在的多视图图来模拟长序列中令牌之间可能的关系,然后通过DTWPool对图进行细化。从对话和TACRED的结果来看,这种机制在处理长序列方面有很大的潜力。评估这一机制对其他任务的有效性,是我们今后工作的一部分。

1.7 个人点评

论文提出的方法参考了很多以前学者的方法,有点大杂烩的意思,如bert、端对端生成多个权重矩阵、密连通图卷积网络等,从文本中学习到多个潜在的矩阵的方法和动态时间polling方法是本文最大的创新点,polling方法实现了自适应,如何获取多个潜在的矩阵的方法并没有搞懂缘由,涉及到一些数学知识,并没有搞懂,不予点评。

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
卷积神经网络关系抽取任务中面临以下几个技术难点: 1. 上下文建模:关系抽取需要考虑文本中的上下文信息,但卷积神经网络是基于局部感知野的,无法直接建模长距离的上下文依赖关系。解决方法可以是增加卷积层的深度或引入循环神经网络 (RNN) 或者注意力机制来捕捉更长的上下文信息。 2. 多义词和歧义性:关系抽取中常常会遇到多义词和歧义性问题,即一个词可能有多种不同的含义或对应多个关系。卷积神经网络很容易受到局部信息的影响,难以对多义词进行准确的区分。解决方法可以是引入词义消歧技术或者结合上下文信息进行推理。 3. 数据稀疏性:在关系抽取任务中,正样本通常比负样本要少得多,导致数据集的不平衡性和稀疏性。这会给模型的训练带来困难,因为模型倾向于预测常见的关系而忽略罕见的关系。解决方法可以是采用样本加权或者引入正负样本平衡的损失函数。 4. 多跳关系抽取:有些关系需要通过多个实体之间的多跳推理才能确定,而卷积神经网络只能在有限的感知野内进行信息提取。解决方法可以是引入神经网络或者递归神经网络来处理多跳关系抽取任务。 综上所述,卷积神经网络关系抽取任务中的技术难点主要包括上下文建模、多义词和歧义性、数据稀疏性以及多跳关系抽取等方面。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程哥哥吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值