导读:信息提取终于到了这一步:进入大一统时代!
今天,我我给大家介绍一篇好朋友陆博士的ACL22论文《Unified Structure Generation for Universal Information Extraction》,也是中科院和百度联合发表的《信息抽取统一建模》的UIE。
UIE官方链接:https://universal-ie.github.io
本文的组织结构是:
1.统一建模是工业工程发展的必然趋势。
众所周知,信息抽取是一个从文本到结构的转换过程。公共实体、关系和事件是跨度、三元组和记录形式的异构结构。
曾几何时,当我们面对各种复杂的IE任务时,我们总是会构建各种IE模型的轮子,以满足不同复杂任务的多变需求。
如上图所示,由于抽取目标多样、结构复杂程度不同、领域需求多变,信息抽取模型的统一建模始终难以实现,极大地限制了IE系统的高效架构开发、有效知识共享和快速跨领域适配。
举个例子,一个真实的情况是:对于不同的任务设置,需要建模特定的领域schema,不同的IE模型是单独训练的,不共享,所以一个公司可能需要管理很多IE模型。
每次造不同的IE轮子,都要喝不同的肥宅开心水来解忧(这不是开玩笑)。
然而,在今天各种NLP任务的s代统一建模,信息抽取的统一建模也是可能的。
不久前,JayJay在文章《信息抽取的"第二范式"》中指出:生成式统一建模可能是一种深刻的变化发生在信息提取领域。
因此,开发一个通用的IE结构是很有帮助的,它可以以统一的方式对不同的IE任务进行建模,并从各种资源中自适应地预测异构结构。总之:统一一、通用IE铺天盖地!
在这篇ACL2022论文中,@ Lu博士提出了一个统一的文本到结构生成框架用于信息抽取,它可以:
不同IE任务的统一建模;
适应性地生成目标结构;
从不同的知识来源中学习一般的信息提取能力。
具体来说,UIE:
用结构化抽取语言统一编码不同的信息抽取目标结构;
通过结构化模式线索自适应地生成目标结构;
通过大规模结构化/非结构化数据对模型进行预训练,捕捉常见的IE能力;
实验结果表明,本文提出的基于T5模型的统一生成框架进行IE预训练,在实体、关系、事件和情感四种信息抽取任务下,在13个数据集的全监督、低资源和少样本设置下达到SOTA性能。
接下来,我们将具体介绍UIE是如何统一建模的,以及具体是如何进行预训练的。
2.UIE统一建模方法:文本到结构的生成
信息抽取任务可以表示为文本到结构问题,而不同的IE任务对应不同的结构。
UIE旨在通过单一框架对不同IE任务的文本到结构转换进行建模,即不同的结构转换在模型中共享相同的底层操作和不同的转换能力。
这里有两个主要挑战:
IE任务的多样性要求提取许多不同的目标结构,如实体、关系、事件等。
IE任务是通常由不同模式定义的特定需求(不同模式),需要自适应地控制抽取过程;
因此,为了应对上述挑战,有必要:
SEL(结构化抽取语言)旨在统一编码异构抽取结构,即编码实体、关系和事件的统一表示。
SSI(结构化模式指导者)是一种基于模式的提示机制,用于控制不同的生成需求。
该图显示了UIE的总体框架,即SSI Text-SEL。
总之,SSI是具体提取任务的图式,SEL是不同任务提取结果在一种语言中的统一表达。
1)SEL:结构化提取语言
的不同IE任务可以分解为2个原子操作:
定位:找出与定位名称相对应的信息跨度,如实体或触发词;
关联:找出Asso名称对应的Info Span,链接Info Span片段之间的关系:比如两个实体对之间的关系,论元和触发词之间的关系;
如上图(a)所示,SEL语言可以用(spot name:infospan(asso name:infospan)的形式表示.),具体来说:
点名称:信息跨度的类别信息点名称:点操作,如实体类型;
Assonname:关联操作信息范围的类别信息,如关系类型、关系类型;
Span:文本相关信息Span:定位或关联操作Span;
如上图(b)所示:
蓝色部分代表关系型任务:person是实体型域名,work for是关系型域名;
红色部分表示事件任务:start-position是事件类型Spot Name,employee是参数类型Assoname
黑色部分代表实体任务:组织和时间是实体类型spotname
上图是一个中文案例:调查事件为事件类型Spot Name,主角/时间/地点为论据类型Asso Name。
2)SSI:结构化模式提示器
SSI的本质是一种基于模式的提示机制,用来控制不同的生成需求:在文本前拼接相应的模式提示,输出相应的SEL结构语言。
不同形式的任务有:
实体提取:[spot]实体类别[text]
关系提取:[点]实体类[关联]关系类[文本]
事件提取:[spot]事件类[asso]参数类[text]
意见提取:[spot]评价维度[asso]意见类别[text]
下图显示了不同任务数据集的SSI表单:
3.UIE预培训和微调方法
在本节中,我们将介绍:
1)预训练:如何预训练大规模UIE模型,以捕捉不同IE任务之间的通用IE能力?
2)Finetune:如何通过快速Finetune使UIE适应不同设置下的不同IE任务。
1)预培训:大规模异构监管预培训
UIE预训练语料主要来自维基百科、维基数据和概念网,构建了三种预训练数据:
D_pair:通过维基百科对齐维基数据,构建一个文本到结构的平行语料库:(SSI,Text,SEL)
D_record:构造只包含SEL语法的结构化记录数据:(None,None,SEL)
D_Text:构造非结构化的原始文本数据:(None,text ,正文')
根据上述数据,分别构建三种预训练任务,整合大规模异构数据进行预训练:
文本到结构的预训练:为了建立从文本到结构的基本映射能力,训练平行语料库D_pair,构造负样本作为噪声训练(引入负图式)。
结构生成预训练:为了具备SEL语言的结构能力,对于D_pair数据只训练UIE的解码器部分。
改造语义表示:为了具备基本的语义编码能力,D_text数据通过span corruption进行训练。
最终的职前培养目标包括以上三个部分;
2)Finetune:拒绝噪声注入的模型微调机制。
为了解决自回归教师强制的暴露偏差,构建了一个拒绝噪声注入的模型微调机制:随机抽样SEL中不存在的SpotName类别和AssoName类别,即:(SPOTNAME,[NULL])和(ASSONAME,[NULL]),学习拒绝错误结果产生的能力,如下图所示:
4.UIE的主要实验结论
1)全程监督实验
如上图所示,SEL代表未经训练的UIE模型。可以看出:
1、 UIE在4类信息抽取任务、13个数据集和7大领域的IE任务上取得了SOTA性能;
2、 SEL与UIE结果对比:异质督导预培训显著提高UIE 具有更好的跨任务迁移能力;
2)小样本实验
几个样本实验可以表明:
1、大规模异构监督预训练可以学习通用信息提取能力,使得模型具有更好的小样本学习能力。
2、当SSI结构化模式提示被移除时,发现索引下降。因此,结构化提取指令具有更好的定向迁移能力。
3)烧蚀实验
上述烧蚀实验表明,基于拒绝噪声注入的模型微调机制可以有效缓解自回归生成过程中的暴露偏差问题。
总结与展望
本文介绍了一个统一的文本到结构生成框架——UIE,它可以通用地建模不同的IE任务,自适应地生成目标结构,并从不同的知识源学习通用的信息抽取能力。
实验结果表明,UIE在监督和低资源条件下实现了SOTA性能,其普适性、有效性和可移植性也得到了验证。
编辑:李倩
标签:任务信息结构