每天给你送来NLP技术干货!
来自:浙大KG
论文题目:Contrastive Information Extraction with Generative Transformer
本文作者:张宁豫(浙江大学)、叶宏彬(浙江大学)、邓淑敏(浙江大学)、谭传奇(阿里巴巴)、陈漠沙(阿里巴巴)、黄松芳(阿里巴巴)、黄非(阿里巴巴)、陈华钧(浙江大学)
接收期刊:IEEE/ACM Transactions on Audio, Speech, and Language Processing (中科院一区)
论文链接:https://ieeexplore.ieee.org/document/9537684
引言:世界是所有事实,而不是事物的总和 ------《逻辑哲学论》
随着计算能力的提高和神经网络的发展,大规模预训练语言模型在语义理解效果方面取得了极大的提升。然而,具备海量参数的诸如GPT-3模型仍然会犯一些基本的事实性错误,无法回答例如“我的脚有几个眼睛”这种违背常识的问题。数据驱动的模型很聪明,但缺乏对事实、常识等知识的理解。“数据”+“知识”是解决这一挑战的技术思路之一,而知识抽取是其中最为重要的一环。在具体的业务如医疗场景,结构化的领域知识有利于实现精准的复杂问答,有利于实现细粒度文本理解。高精度的领域知识图谱,是实现智能搜索、问答、推荐等业务场景的基石。然而如何抽取知识?它有哪些挑战?本文旨在回答以上几个问题,并介绍我们发表在IEEE/ACM Transactions on Audio, Speech, and Language Processing的一篇基于对比学习的生成式信息抽取论文。
一、如何抽取知识?
知识抽取(又称信息抽取),即从自然语言文本中,抽取出特定的事实信息, 这些信息通常包括实体(Entity)、关系(Relation)、事件(Event)。通常而言,知识抽取技术主要包含实体识别、关系抽取、事件抽取。知识抽取可以分为基于管道的方法和基于端到端的方法。基于管道的方法通常采用不同的模型如实体识别模型和关系抽取模型分别进行知识抽取,然而这种做法通常面临误差传播问题(虽然论文[2]指出误差传播并非主要因素)。基于端到端模型的方法采用联合训练的判别方式进行知识抽取,主流的方法有基于级联二值标注算法(CasRel)[3]、基于令牌对链接的算法(TPLinker)[4]、基于三维立体解码的方法(StereoRel)[8]、基于统一标签空间解码的方法(UniRE)[9]、基于独立片段的算法(PL-Marker)[10] 等,此外有学者提出了基于端到端生成的模型如CopyRE[5]、CopyMTL[6]等进行知识抽取。
二、动机
端到端生成的方法相比于传统分类的方法,具有模型简洁和实体关系深度交互的特点,可以使用单一的神经网络进行知识抽取。然而,以往的端到端生成式方法仍然面临以下的挑战。首先,由于递归神经网络(RNN)的固有缺陷,它们无法捕获长期依赖关系,从而导致重要信息的丢失,使得抽取模型无法应用于长文本。其次,模型缺乏生成符合事实多元组的能力。Seq2seq模型在一定程度上会记住高频出现的知识,导致生成一些不忠实于输入文本的知识序列,从而产生意义上的矛盾。例如,给定句子“美国总统特朗普在纽约市皇后区长大,并居住在那里直到13岁”,该模型可以生成事实知识(特朗普,出生于,皇后区)。尽管该知识是正确的,但我们无法从给定的句子中找到直接的证据来支持它。此外,现有的模型无法同时处理实体关系三元组和事件多元组。
三、方法
为了解决这些问题,我们扩展了之前发表在AAAI2021的工作[1],提出了基于对比学习的生成式信息抽取模型(CGT)。该框架基于一个共享的Transformer模块,采用编码器-解码器的生成式N元组抽取和对比学习的多任务学习模式。我们首先使用分隔符和部分因果掩码机制将输入序列与目标序列连接起来,以区分编码器-解码器表示形式。然后,我们提出一个N元组对比优化目标来约束模型,其中真实的N元组作为正样本,随机采样的N元组构作为负样本。为了同时优化N元组生成目标和对比学习目标,我们引入了分批的动态注意掩码机制,该机制允许我们动态选择不同的掩码机制并优化任务。最后,我们采用了一种N元组校准算法,在推理阶段过滤掉违背事实的N元组。
下图是我们模型的总体架构。其中,右上部分表示Transformer生成模块,右下部分表示N元组对比学习模块。这两个部分训练时共同优化。生成模块依靠部分因果掩码机制建模成序列生成任务,如右图中的示例所示,对于N元组序列生成,其中右上部分设置为-∞以阻止从源段到目标段的注意力;左侧部分设置为全0,表示令牌能够看到输入的文本。我们采用交叉熵损失生成来优化N元组生成过程。对比学习模块将输入文本与正确的N元组实例或者伪造的N元组进行拼接,依靠部分因果掩码机制建模成文本分类任务,其中mask矩阵的元素全为0,利用经过MLP多层感知机层的特殊token[CLS]表示来计算分类打分函数,以鉴别是否为正确实例。我们同样利用交叉熵优化对比损失。生成损失与对比学习损失通过一个超参数权衡构成了我们最终的总体损失。在解码过程中,我们采用基于启发式规则的beam search来生成N元组知识。
四、实验
我们分别对五个基准数据集(实体关系抽取、事件抽取)进行了实验:NYT,WebNLG和MIE、ACE-2005、MUC-4。MIE是医学领域的大规模中文对话信息提取数据集。我们在五个数据集上都取得了较好的效果。可以看出,对比学习的引入显著提升了模型效果。此外,与基于分类的模型相比,生成式具有较大的搜索空间,模型优化较为困难,因此在某些数据集上仍然无法取得最优效果。
详细的技术细节可以阅读我们的论文。
五、小结与展望
随着预训练模型的不断发展,端到端生成的知识抽取方法越来越受到学者们的关注。相比于传统分类的方法,具有模型简洁和实体关系深度交互的特点。本文提出了一种基于对比学习的生成式信息抽取方法,在多个数据集上取得了较好的效果。在未来,我们将考虑深入研究复杂长文本和低资源情景下的生成式知识获取。
[1] Contrastive Triple Extraction with Generative Transformer
[2] A Frustratingly Easy Approach for Joint Entity and Relation Extraction
[3] A Novel Cascade Binary Tagging Framework for Relational Triple Extraction
[4] TPLinker : Single-stage Joint Extraction of Entities and Relations Through Token Pair Linking
[5] Extracting Relational Facts by an End-to-end Neural Model with Copy Mechanism
[6] CopyMTL: Copy Mechanism for Joint Extraction of Entities and Relations with Multi-Task Learning
[7] Entity-Relation Extraction as Multi-Turn Question Answering
[8] StereoRel: Relational Triple Extraction from a Stereoscopic Perspective
[9] UniRE: A Unified Label Space for Entity Relation Extraction
[10] Pack Together: Entity and Relation Extraction with Levitated Marker
投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。
方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。
记得备注呦
整理不易,还望给个在看!