论文阅读2(结合表示学习和多头注意改进生物医学交叉句n元关系抽取)

本文主要是介绍论文阅读2(结合表示学习和多头注意改进生物医学交叉句n元关系抽取),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【论文阅读-BMC Bioinformatics (2020)】Incorporating representation learning and multihead attention to improve biomedical cross-sentence n-ary relation extraction

文章目录

  • 【论文阅读-BMC Bioinformatics (2020)】Incorporating representation learning and multihead attention to improve biomedical cross-sentence n-ary relation extraction
    • Abstract
    • Background
      • Binary relation
        • CNN
        • RNN
        • LSTM
      • n-ary relation
        • LSTM's variants
        • GNN
      • universal schema
      • knowledge representation learning
      • conclusion
    • Method
      • Knowledge representation learning
        • Construct knowledge graph
        • Translation model
      • overview
      • Word and position embedding
      • Bidirectional long short-term layer
      • Multihead attention
      • Concatenate layer
    • Results
      • Dataset description
      • Parameters setting
      • Compare with baseline methods
      • Fine-grained classification
      • Multihead attention results
      • The impact of position embedding
      • The effect of representation learning
      • Sentence length analysis
      • Error analysis
    • conclusion

Abstract

背景:要处理跨句的多元关系。现在主流的跨句多元关系抽取方法不仅太依赖语义解析,而且忽略了先验知识

方法:
利用了从知识图中学习到的多头注意和知识表示。
1)自注意力机制(可以直接捕捉两个词之间的关系,而不考虑它们的句法关系)
2)利用知识库中的实体和关系信息(帮助预测)

结果:
1、直接对序列进行操作
2、 并学习如何对句子的内部结构进行建模。
3、我们将从知识图中学习到的知识表示引入到跨句n元关系抽取中。基于知识表示学习的实验表明,在知识图中可以提取出实体和关系,编码这些知识可以提供一致的收益。

Background

Binary relation

1、rule-based method

基于规则的方法主要利用语言学家设计的句法规则从文档中提取实体之间的关系。随着跨句文档长度的增长,人工设计的语言规则的使用变得复杂且效率低下[7]。

2、machine learning-basedmethod

神经网络在基于机器学习的方法中占主导地位。神经网络不需要人工设计特性,而且性能非常好。

CNN

CNN(CNN通过卷积核学习序列局部特征。)
CNN模型图

RNN

RNN(RNN是一种线性神经网络,是处理序列特征的理想方法。与CNN相比,大多数生物医学关系提取方法以RNN为主要框架。)
RNN框架
RNN的局限性:1)随着序列长度的增长,需要强大的存储能力来保存长序列的完整信息。2)它很难处理树状结构文档,忽略了词的依赖关系。

LSTM

LSTM(利用一系列门控机制来避免梯度的简化和压缩。)
LSTM框架>1
2
3

n-ary relation

例:(The deletion mutation on exon 19) of the( EGFR gene) was present in 16 patients, while (the L858E point mutation on exon 21) was noted in 10. All patients were treated with (gefitinib )and showed a partial response.。显示出基因、突变、药物 的关系。

LSTM’s variants

Tree LSTM(解决第二个问题:树LSTM中的隐藏层单元不仅包含前一个序列信息,而且通过依赖关系将子节点的信息集成到当前节点中。)
Graph LSTM(为解决跨句n元关系抽取的难题,它是树LSTM的简化版本,因为每个节点最多有2个传入。)
GS GLSTM(使用并行状态对每个单词进行建模,并通过消息传递循环地丰富状态值。)
LSTM-CNN(综合了LSTM和CNN的特性,同时利用了长程序列信息并捕获了最具信息量的特征。)
LSTM 的变体https://blog.csdn.net/Wywxring98/article/details/111172197

GNN

GNN (GNN是一种可以学习节点属性信息和图的结构信息的神经网络[14]。与单纯的rnn相比,GNN具有一定的优势,因为GNN可以通过构造的句法依赖来捕获句子的长期依赖,解决关系抽取任务)
AGGCN(利用多头注意来诱导节点之间的关系。)
参考GNN综述

本文采用BiLSTM+Multi-head Attention
将Bi LSTM层与多头注意力连接起来。在跨句中,多次使用注意可能会比单个注意学习到更丰富的特征。

universal schema

在通用模式中,实体对及其关系的文本表示被编码到与规范知识库关系相同的向量空间中。

knowledge representation learning

知识表示学习是将知识三元组数据转化为低维向量空间的一种方法。该方法得到的实体和关系的连续表示保留了三元组的属性信息。然而,在跨句n元关系抽取中,知识表征学习还没有得到很好的研究。
1.TransE是一种典型的知识表示学习模型,它使用关系作为头实体到尾实体的转换操作[21]。例如,e1+r≈e2,其中e是实体,r是关系。然而,TransE模型在处理1-N、N-1和N-N复合关系时存在局限性。
TransETransE解释

2.为了解决这一问题,Wang等人提出了一种实体在不同关系下具有不同表示的TransH方法[22]。
3.Lin等人提出了一种保证不同关系具有不同语义空间的TransR方法[23]。对于每一个三元组,使用矩阵将实体投影到相应的关系空间中,然后使用从头部实体到尾部实体的转换关系。
4.针对知识库中实体的异构性和不平衡性以及TransR模型中矩阵参数过多的问题,Ji等人提出了一种TransD方法,对TransR方法进行了优化[24]。

本文使用TransR

conclusion

多头注意机制直接提取输入的全局依赖关系,而不考虑句子的长度。
知识表示学习利用KG中的实体和关系信息,在预测关系的同时施加帮助。我们的方法利用从多个注意中获得的编码上下文表示信息,以及嵌入的关系表示信息,改进跨句n元关系抽取。
贡献:
•提出了一种新的神经网络方法,利用KG的表示学习来学习n元关系抽取中的先验知识。
•我们的方法首先使用Bi LSTM对句子进行建模,然后使用多头注意力来学习Bi LSTM输出的丰富的潜在特征。
•在跨句n元关系抽取数据集上进行了实验,取得了最新的性能

Method

Knowledge representation learning

Construct knowledge graph

在数据集:
Gene Drug Knowledge Database and the Clinical Interpretations of Variants in Cancer knowledge base
基因药物知识库
癌症知识库变异的临床解释
** 来抽取drug-gene and drug-mutation pairs **
KG

E, R andT indicate the sets of entities, relations and facts.Each triple (h, r, t) ∈ T indicates that there is a relation r ∈ R between h ∈ E and t ∈ E. More generally, we can formalize two types of triples, such as (ed, r, eg) and (ed, r, em). ed, eg, em and r indicate a drug entity, gene entity, mutation entity and a relation, respectively.

Translation model

在建立KG后,我们使用翻译模型对实体和关系进行统一编码。在从句子中进行关系抽取时,我们首先从句子中获得实体的标识,然后利用标识来获得实体在KG中的向量表示。
翻译模型的基本思想是两个实体之间的关系对应于两个实体的嵌入表示之间的转换。

overview

框架我们的模型概述。bilstm首先通过连接单词和位置嵌入对每个单词进行编码,然后多线程注意力直接绘制bilstm输出的全局依赖关系。然后,利用KG中的关系信息将句子嵌入到句子中。edrug、egene和emutation分别是药物、基因和突变实体。vdrug基因和vdrug突变表示不同的关系载体。最后,将实体关系信息的句子表示输入到softmax分类器中。

Word and position embedding

Word embedding :本文利用Wikipedia和Web文本预训练向量初始化文本嵌入,通过预训练的单词将每个单词映射到相应的特征向量上。
Position embedding:根据当前单词到实体的相对距离来计算的。每个单词有三个相对距离。我们随机初始化三个位置的嵌入矩阵,然后通过查找(lookup)将相对距离转换成向量。

Bidirectional long short-term layer

LSTM使用门控机制来缓解梯度问题。本文利用双向长短时记忆网络(bilstm)来学习更多的上下文信息。

Multihead attention

虽然Bi-LSTM可以有效地自动地从输入序列中学习潜在特征,但在n元关系提取中很难学习到丰富的潜在特征。使用多头注意机制的启示是学习交叉句中的词依赖性,捕捉句子中的重要信息。
overview of multihead attention

Concatenate layer

没有直接使用多注意输出表征B,而是将每个句子的嵌入嵌入到从翻译模型中得到的对应实体的翻译关系中。

Results

Dataset description

dataset

Parameters setting

在本文的参数设置上,我们用五次交叉检验的平均精度来验证模型的性能。在我们的实验中,我们的模型基于TensorFlow作为后端计算框架[27]。我们用交叉熵作为损失函数。为了防止训练过程中模型过度拟合,模型的不同层使用了退火技术[28]。在一个小型开发数据集上的初步实验基础上设置了超参数。维向量表中所示的是通过glow向量初始化的维向量。而词向量是通过维基百科和网络文本[29]获得的,LSTM中隐藏单元数为200个,最小批数为6个,Adam的学习率为0.001[30],时代数为10个,头数为4个。在实验中,我们使用TransR作为主要的翻译模型。最后的实验结果在验证集上选择最佳实验模型,并使用测试集进行验证。和宋一样,我们从训练集中随机选择200个实例作为验证集。

Compare with baseline methods

result1

Fine-grained classification

细粒度分类结果
result2

Multihead attention results

我们评估了多脑注意在n元关系抽取中的有效性。在本实验中,所有的模型都使用多头注意机制和单词和位置嵌入相结合作为输入表征。为了验证不同头部的影响,我们从{2,4,8}中随机选取了几个头部。表5显示了结果。多头注意力可以与不同头部的重要特征相结合,表现出一种综合特征。我们注意到,当头数设置为2或8时,性能将下降。总的来说,当头部数目为4时,多头部注意力的准确率最高,达到87.1。
result3

The impact of position embedding

result4

The effect of representation learning

![result5](https://img-blog.csdnimg.cn/20201205175205714.png
result6

Sentence length analysis

result7

Error analysis

result8
result9

conclusion

我们探索了一种新的跨句n元关系抽取方法。与以前的方法不同,我们的方法直接对句子的顺序进行操作,并学习对句子的内部结构进行建模。此外,我们还将从KG学习到的知识表示引入到跨句n元关系抽取中。基于知识表示学习的实验表明,在KG中可以提取实体和关系,编码这些知识可以提供一致的好处。实验结果表明,结合知识表示学习的方法在跨句n元关系抽取方面取得了最新的成果。未来,我们计划与医疗保健专业人士合作,应用我们的方法临床决策。特别是,自动提取的事实可以作为手动策展的候选对象。然而,在本文中,我们只构造了一个小的KG来进行表征学习。我们所学的关系只是药物基因、药物突变之间的关系,以及许多我们尚未应用的生物医学二元关系。例如,基因疾病与药物疾病的关系。我们可以利用其他二元关系建立一个更大的KG来进行丰富的知识表示学习。

这篇关于论文阅读2(结合表示学习和多头注意改进生物医学交叉句n元关系抽取)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/451351

相关文章

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

MySQL中的交叉连接、自然连接和内连接查询详解

《MySQL中的交叉连接、自然连接和内连接查询详解》:本文主要介绍MySQL中的交叉连接、自然连接和内连接查询,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、引入二、交php叉连接(cross join)三、自然连接(naturalandroid join)四

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

Java进阶学习之如何开启远程调式

《Java进阶学习之如何开启远程调式》Java开发中的远程调试是一项至关重要的技能,特别是在处理生产环境的问题或者协作开发时,:本文主要介绍Java进阶学习之如何开启远程调式的相关资料,需要的朋友... 目录概述Java远程调试的开启与底层原理开启Java远程调试底层原理JVM参数总结&nbsMbKKXJx

Python结合Flask框架构建一个简易的远程控制系统

《Python结合Flask框架构建一个简易的远程控制系统》这篇文章主要为大家详细介绍了如何使用Python与Flask框架构建一个简易的远程控制系统,能够远程执行操作命令(如关机、重启、锁屏等),还... 目录1.概述2.功能使用系统命令执行实时屏幕监控3. BUG修复过程1. Authorization

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

Java深度学习库DJL实现Python的NumPy方式

《Java深度学习库DJL实现Python的NumPy方式》本文介绍了DJL库的背景和基本功能,包括NDArray的创建、数学运算、数据获取和设置等,同时,还展示了如何使用NDArray进行数据预处理... 目录1 NDArray 的背景介绍1.1 架构2 JavaDJL使用2.1 安装DJL2.2 基本操

MYSQL关联关系查询方式

《MYSQL关联关系查询方式》文章详细介绍了MySQL中如何使用内连接和左外连接进行表的关联查询,并展示了如何选择列和使用别名,文章还提供了一些关于查询优化的建议,并鼓励读者参考和支持脚本之家... 目录mysql关联关系查询关联关系查询这个查询做了以下几件事MySQL自关联查询总结MYSQL关联关系查询

使用DeepSeek API 结合VSCode提升开发效率

《使用DeepSeekAPI结合VSCode提升开发效率》:本文主要介绍DeepSeekAPI与VisualStudioCode(VSCode)结合使用,以提升软件开发效率,具有一定的参考价值... 目录引言准备工作安装必要的 VSCode 扩展配置 DeepSeek API1. 创建 API 请求文件2.