IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> (ACL2021)Discriminative Reasoning for Documnet-level Relation Extraction -> 正文阅读

[人工智能](ACL2021)Discriminative Reasoning for Documnet-level Relation Extraction

文档级关系抽取(DocRE)模型一般使用图网络对与文档中一个实体对之间的关系相关的推理方法(reasoning skills,比如模式识别、逻辑推理、共指推理) 进行隐式建模。本文提出了一个新颖的判别推理框架,对文档中的每个实体对之间关系的推理方法进行显式建模。因此,基于所构建的图和每个实体对向量化的文档上下文、设计一个判别推理网络来估计不同推理路径的关系概率分布。实验结果显示本模型在大规模DOcRE数据集上的表现超越了SOTA。

模型源码

1. Introduction

文档级关系抽取(DocRE)的目标是抽取出文档中实体之间的关系,需要利用多种推理方法(如模式识别pattern recognition,逻辑推理logical reasoning,共指推理coreference reasing以及常识推理common-sense reasoning等)。一般来说会基于语法树、共指或者启发式规则将输入文档构建成一个结构化的图来表示所有实体对之间的关系信息。因此,图神经网络常被应用在构建好的结构图上对这些推理方法进行建模。在进行多跳图卷积之后,连接两个实体的特征表示,并通过分类器识别它们的关系,以在DocRE任务上达到SOTA表现。然而,对这些推理方法进行隐式建模与本文提出的对一对实体之间的直觉推理方法是否有竞争性尚未可知。

?图一展示了DocRE数据集中实体对的四种推理方法。以实体对{“Me Musical Nephews”, "1942"}{"William", "Adelaide"}为例,“Me Musical Nephews”"1942"需要模式识别,而"William""Adelaide"则是常识推理。此外,实体对{"U.S", "Baltimore"}之间的逻辑推理需要"U.S"\rightarrow"Maryland"\rightarrow"Baltimore"这样的推理路径。而对于实体对{"Dwight Tillery", "University of Michigan Law School"}的共指推理则关注"Dwight Tillery"\rightarrow"He"(指代词)\rightarrow"University of Michigan Law School"这样的推理路径。

然而目前比较先进的DocRE模型一般都是用通用多跳卷积神经网络来隐式的对这些推理方法进行建模,并没有显式地考虑上述推理方法,这可能会阻碍DocRE未来的发展。

本文提出一个新颖的判断推理框架显式地对这些推理方法的推理过程进行建模,比如句内推理(intra-sentence,包括模式识别和常识推理)、逻辑推理和共指推理。受元路径的启发,本框架有区别地从输入文档中提取三种推理技能的推理路径。因而,还设计了一个判断推理网络,以基于所构建的图和向量化的文档中实体对的上下文来估计关系概率分布,从而识别出实体之间的关系。主要贡献有以下几点:

  • 提出一个判别推理框架为文档中两实体之间的推理方法建模。这是目前首次通过显式建模不同的推理方法来增强DocRE的工作
  • 引入一个判别推理神经网络、基于构建的异构图和向量化的源实文档对推理路径进行建模从而通过分类器识别两实体之间的关系
  • 再大规模DocRE数据集上的实验结果显示所提出模型的有效性,超越了最近的SOTA模型

2. Discriminative ReasoningFramework

判别推理框架包括三个部分:推理路径的定义、有区别地建模推理(路径)以及基于多种推理的关系分类

2.1 Definition of Reasoning Path

?一些标记:

  • N个句子组成的非结构化文档D=\{s_1, s_2, ...,s_N\}
  • 每个句子都是一个单词序列s_n=\{s_n^1,s_n^2,...,s_n^J \},其长度J_n=|s_n|
  • 概念级实体\varepsilon =\{e_i\}_{i=1}^P
  • 每个实体的多个指称e_i=\{m_i^{s_k}\}_{k=1}^Q(m_i^{s_k}表示实体e_i出现在句子s_k的指称
  • 实体的类型(如 location, organizations, persons)
  • DocRE的目标是抽取出两个实体的关系,P=(r|e_i,e_j,D)

为了简化推理方法,将模式识别和常识推理合并为句内推理(intra-sentence reasoning)。因此源实的四种推理方法被进一步分为三种:句内推理、逻辑推理和共指推理。受到其他工作的启发,使用元路径策略对每种推理方法抽取推理路径,从而显式地表示这三种推理方法。特别地,不同推理方法的元路径表示如下:

  • 句内推理路径:PI_{ij}=m_i^{s_1}\circ s_i\circ m_j^{s_1},实体对(e_i,e_j)在输入文档D的同一个句子s_1中,\circ表示从e_ie_j的推理路径上的推理步骤
  • 逻辑推理路径:PL_ij=m_i^{s_1}\circ s_1\circ m_l^{s_1}\circ m_l^{s_2}\circ s_2\circ m_j^{s_2},实体对(e_i,e_j)来自于s1和s2两个句子,在逻辑推理中它们由桥接实体e_l间接地建立连接
  • 共指推理路径:PC=m_i^{s_1}\circ s_1 \circ s_2\circ m_j^{s_2},指代词是指两个实体ei和ej中的一个,它们与另一个实体出现在同一个句子中,将条件简化并且假设当实体出现在不同句子中时存在一个共指推理路径,从而可以将共指推理路径建模成如上的形式。

与之前的工作定义的元路径相比,本文的路径定义中没有实体(注:只有实体的指称)。这个不同主要是基于以下的考虑安排的:1)推理路径更关注指称以及指向的句子;2)实体通常包括在指称中;3)这样会使推理路径的建模更简单。

2.2 Modeling Reasoning Discriminatively

基于前面定义的推理路径,将DocRE问题结构成三个推理子任务:句内推理(IR)、逻辑推理(LR)和共指推理(CR)。

  • 建模句内推理:给定实体对\{e_i,e_j\}以及它在句子s_1中的推理路径PI_{ij},则将句内推理建模为:R_{PI}(r)=P(r|e_i,e_j,PI_{ij},D),以识别实体对的关系
  • 建模逻辑推理:给定实体对\{e_i,e_j\}和它的推理路径PL_{ij},则将逻辑推理建模为:R_{PL}(r)=P(r|e_i,e_j,PL_{ij},D)
    因为e_l分别与e_ie_j共同出现,逻辑推理进一步建模为:R_{PL}(r)=P(r|e_i,e_j,e_l,PI_{il}\circ PI_{lj},D)\circ表示路径的连接
  • 建模共指推理:相似地,给定实体对\{e_i,e_j\}和它的推理路径PC_{ij},将共指推理建模为:R_{PC}(r)=P(r|e_i,e_j,PC_{ij},D)

?2.3 Multi-reasoning Based Relation Classification

在DocRE任务中,一个实体通常会根据不同的推理类型而参与到多个关系中。因此一个实体对之间的关系可能会由多种推理类型推理得到。基于已经提出的三个推理子任务,将实体对之间的关系推理问题看作一个多推理分类问题。形式上,选择概率最大的推理类型来识别每个实体对之间的关系如下:

P(r|e_i,e_j,D)=\max[R_{PI}(r),R_{PL}(r),R_{PC}(r)]

?此外,同一种推理方式在两实体之间也可能存在多条推理路径,因此上式的分类概率可以重写为:

P(r|e_i,e_j,D)=\max[\{R_{PI_1}(r),...,R_{PI_K}(r)\},\{R_{PL_1}(r),...,R_{PL_K}(r)\},\{R_{PC_1}(r),...,R_{PC_K}(r)\}]

?K是一个推理方法的推理路径数,为了简单起见每个推理方法的K都相同。若推理路径数量超过K,则取前K个路径。否则(推理路径数<=K)使用原本的推理路径。

3. Discriminative Reasoning Network

?设计一个判别推理网络(Discriminative Reasoning Network, DRN)来对三种定义好的推理子任务进行建模从而识别出文档中两实体之间的关系。并且使用了两种上下文表示(异构图上下文表示和文档级上下文表示)来建模不同的推理路径。

?3.1 Heterogrneous Graph Context Representation

  • ?将每个单词的嵌入\mathbf{w}_e与它的实体类型嵌入\mathbf{w}_t以及它的共指嵌入\mathbf{w}_c连接起来组成单词的嵌入:\mathbf{b}=[\mathbf{w}_e:\mathbf{w}_t:\mathbf{w}_c]
  • 再将这些单词表示序列送入BiLSTM网络获取输入文档的上下文表示D=\{\mathbf{H}^1,\mathbf{H}^2,...,\mathbf{H}^N\},其中\mathbf{H}^n=(\mathbf{h}_1^n,\mathbf{h}_2^n,...,\mathbf{h}_{J_n}^n)\mathbf{h}_i^j表示文档的第j个句子中的第i个单词的隐藏表示

构建一个包含句子节点和指称节点的异构图,该图中包含四种类型的边:sentence-sentence边(连接所有的句子节点),mention-mention边(连接所有的指称节点),sentence-mention边(连接句子和该句中的指称的边)以及co-reference边(连接指代同一个实体的指称节点)。然后应用一个基于图的DocRE方法对这个异构图进行编码,获得异构图上下文表示(HGCRep)。每个指称节点和句子节点的HGCRep?\mathbf{g}_n为:

\mathbf{g}_n=[\mathbf{v}_n:\mathbf{p}_n^1:\mathbf{p}_n^2:...:\mathbf{p}_n^{l-1}]

?其中\mathbf{g}_n\in\mathbb{R}^{d_1},":"表示向量的连接,\{\mathbf{p}_n^1,\mathbf{p}_n^2,...,\mathbf{p}_n^{l-1}\}是通过多跳图卷积神经网络得到,\mathbf{v}_n是从\mathbf{D}中抽取到的第n个节点的初始表示。最后会得到一个包含每个指称节点和句子节点的异构图表示\mathbf{G}=\{\mathbf{g}_1,\mathbf{g}_2,...,\mathbf{g}_N\}

3.2 Document-level Context Representation

在DocRE任务中,推理方法会更依赖于原始文档上下文信息而不是异构图上下文信息。目前现有的DocRE模型会使用语法树或启发式规则来抽取出与实体对之间关系相关的上下文信息(如实体、指称和句子)。然而这种方法会破坏本来的文档结构,从而弱化对两实体之间关系推理的建模。因此,本文使用一个自注意力机制、基于已经向量化的输入文档对每个指称学习一个文档级上下文表示(Document-level context representation, DLCRep\mathbf{c}_n

\mathbf{c}_n=softmax(\frac{\mathbf{h}_j^n\mathbf{K}^{\top}}{\sqrt{d_{model}}}\mathbf{V})

?其中\mathbf{c}_n\in \mathbb{R}^{d_2}\{\mathbf{K},\mathbf{V}\}是将输入文档\mathbf{D}通过一个线性层转化得到的健矩阵和值矩阵。这里受之前的关系学习工作的启发,为了简化起见,用一个指称或句子的头单词的隐藏状态来表示它们。

3.3 Modeling of Reasoning Paths

使用连接操作对推理路径上的推理步骤进行建模,因此对之前定义的推理路径进行如下的建模:

  1. 对于句内推理路径,将两个指称的HGCReps和DLCReps都连接起来作为一个推理表示:
    \alpha_{ij}=[\mathbf{g}_{m_i^{s_1}}:\mathbf{g}_{m_j^{s_1}}:\mathbf{c}_{m_i^{s_1}}:\mathbf{c}_{m_j^{s_1}}]
    其中\alpha_{ij}\in \mathbb{R}^{2d_1+2d_2},":"表示向量的连接
  2. 对于逻辑推理路径,将两个指称的HGCReps?m_i^{s_1}m_j^{s_2}以及两个指称对的DLCReps(m_i^{s_1},m_l^{s_1})(m_j^{s_2},m_l^{s_2})连接起来作为它们的推理表示:
    \beta_{ij}=[\mathbf{g}_{m_i}^{s_1}:\mathbf{g}_{m_j}^{s_1}:\mathbf{c}_{m_i}^{s_1}+\mathbf{c}_{m_l}^{s_1}:\mathbf{c}_{m_j}^{s_2}+\mathbf{c}_{m_l}^{s_2}]
    其中\beta_{ij}\in\mathbb{R}^{2d_1+2d_2}
  3. 对于共指推理路径,将两个指称的HGCReps和两个句子的DLCReps连接作为它们的推理表示:
    \gamma_{ij}=[\mathbf{g}_{m_i}^{s_1}:\mathbf{g}_{m_j}^{s_2}:\mathbf{c}_{s_1}:\mathbf{c}_{s_2}]
    其中\gamma_{ij}\in\mathbb{R}^{2d_1+2d_2}\mathbf{c}_{s_2}\ \mathbf{c}_{s_2}表示两个句子的DLCReps

将学习到的推理表示\alpha_{ij}\beta_{ij}\gamma_{ij}作为分类器的输入,用一个多层感知机来分别计算实体e_ie_j之间的关系概率:

P(r|e_i,e_j,D)=\max[sigmoid(MLP_r(\alpha_{ij})),sigmoid(MLP_r(\beta_{ij})),sigmoid(MLP_r(\gamma_{ij}))]

?类似地,当两个实体之间通过一种推理类型有多条推理路径时,将上式重写为:

P(r|e_i,e_j,D)=\max[MLP_r(\alpha_{ij}^1),...,MLP_r(\alpha_{ij}^K),MLP_r(\beta_{ij}^1),...,MLP_r(\beta_{ij}^K),MLP_r(\gamma_{ij}^1),...,MLP_r(\gamma_{ij}^K)]

另外,也使用二元交叉熵作为训练对象,这与目前的先进模型相同。

4. Experiments

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-04 11:12:44  更:2021-08-04 11:14:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 22:29:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码