论文阅读:Multi-Grained Dependency Graph Neural Network for Chinese Open Information Extraction

Lyu Z, Shi K, Li X, et al. Multi-grained dependency graph neural network for Chinese open information extraction[C]//Pacific-Asia Conference on Knowledge Discovery and Data Mining. Cham: Springer International Publishing, 2021: 155-167.
MGD-GNN开源代码

引言

  • 传统的OpenIE系统大多基于语法模式启发式规则,利用外部NLP工具获得词性(POS)标签或依赖特征,并生成语法模式来提取三元组。
  • Neural OpenIE方法可以分为序列生成跨度选择两类。
    • 序列生成模型,直接使用编解码器框架生成三元组。
    • 跨度选择模型,选择一个句子的span作为谓词或参数。
    • 以往的模型大多是基于单词的,因此在应用到中文时,会传播分词错误。(如下图,由“中国”和“外交部长”组成的“中国外交部长”被分为一个词,就会导致基于词的模型忽视第一个三元组。)

问题和方法

  • 问题定义
    • 给定一个带有N个字符的句子S,目标是从句子中提取M个事实三元组
  • MGD-GNN模型
    • MGD-GNN模型采用了一种两阶段的管道提取方法,包括谓词提取参数提取阶段。
    • 这两个阶段共享相同的神经网络架构,使用上下文编码器MGD_GNN模型来获得字符嵌入。
    • 在谓词提取阶段,我们的模型从句子中提取所有的谓词span。
    • 在参数提取阶段,我们的模型为每个谓词预测其对应的主语和宾语。

上下文编码器

  • 首先使用word2vec将每个字符映射到它的分布式表示ci
  • 在谓词和参数提取阶段为每个字符连接不同的特征嵌入fi
  • 连接xi=[ci;fi]后,就可以得到一个嵌入序列<x1,...,xN>,作为上下文编码器的输入。
  • 上下文编码器使用BiLSTM来建模序列。

MGD-GNN

  • MGD图中的单词节点字符节点通过两种类型的无向边相互连接,命名为依赖边软段边(soft-segment edge)。
  • 为了构建MGD图,我们首先使用LTP获得一个句子的分割词依赖树
  • 我们把分割后的单词作为MGD图的单词节点,并将有向依赖树边作为词节点之间的无向依赖边
  • 同时,将句子中的每个字符作为一个字符节点添加到MGD图中。单词节点具有连接到组成单词的字符节点的软段边

MGD图上的图神经网络

  • 使用图注意网络(GAT)作为本模型的图编码器,它能够在从邻居中聚合信息时控制节点的权重。
  • 初始化节点嵌入:使用来自BiLSTM编码器的隐藏状态输出来初始化节点嵌入。通过平均池化来计算字节点的初始化向量。
    • 图G={V,E},其中V是节点集合,包括词节点W和字符节点C,E是边集合,包括依赖边和软段边。
    • Ni表示和节点i有软段边的所有邻居。
  • 节点更新:使用多头注意来更新节点表示。多头注意在聚合来自邻居的信息时采用H个注意头,每个注意头将输入转换到不同的空间,并关注邻居的不同方面。
    • 首先,使用前馈神经网络计算每对节点之间的注意力分数。
      • a(h)是可学习的注意权重向量。
    • 然后,使用一个softmax函数来计算归一化的注意权重。
    • 节点i在头部h上的输出特征如下:
  • 连接H个注意头的输出,得到更新的节点特征。为了便于实现,我们选择GAT层的输入和输出的维数相同。
  • 通过叠加L个GAT层,每个节点都可以从其L-hop邻居中收集信息。
  • 保留最后一个GAT层的字符节点特征,用于三元组提取。

三元组的提取

谓词提取

  • 将谓词提取建模为一个跨度分类问题。只保留满足最大长度不重叠语法约束的跨度作为候选分类。
  • 为了整合语法特征,将POS标签嵌入到ti作为额外的特征输入fi=ti。
  • 对于一个候选跨度<ci,...,cj>,选择它的开始和结束字符特征,并预测它作为一个谓词的概率。
    • 其中,Wp为线性谓词分类器的权重。

参数提取

  • 给定在谓词提取阶段获得的每个谓词,我们提取其对应的主语和宾语。
  • 采用相对位置嵌入作为额外的输入特征fi=pi来表示谓词位置。
  • 为了提取主语,在U上应用线性分类器来计算每个字符作为一个主语的开始和结束的概率。(以同样的方式提取宾语)

实验

  • 数据集:SpanSAOKE
  • 评估:
    • 两个三元组tp=(^si, ^pi, ^oi)和t=(si, pi, oi)被认为是匹配的,需要满足两个匹配条件之一。
      • (1) g(^si, sj), g(^pi, pj), g(^oi, oj) >= δ
      • (2) g(Cat(tp), Cat(t)) >= δ
      • 其中,g(·,·)是格式塔模式匹配。Cat(·)将三个组件连接为一个整个字符串。δ在实验中为0.85。
    • 评估指标:precision, recallF1值
posted @ 2024-05-21 16:27  Barn  阅读(83)  评论(0)    收藏  举报