赞
踩
信息抽取旨在从非结构化的自然语言文本中抽取出结构化的信息。
任务难度大,落地成本居高不下。
1)不同的信息抽取任务拥有差异较大的输出结构,难以统一化建模:
2)不同任务/设置/作用场景,需要设计大量特定模型,极其耗费资源
3)不同的任务有很多本可以共用的知识,但现有技术无法做到共享:
4)不同信息抽取任务之间的独立,导致需要对每个任务都单独进行数据标注,极其耗费时间和人力
为了解决现有信息抽取技术所面临的问题,首个结构化生成式信息抽取预训练语言模型UIE被提出,一统了信息抽取四大任务。
将信息抽取任务的目标拆解成两个原子操作Spotting和Associating,SEL可以对这两个原子操作进行表示,不同的任务只要组合不同的原子操作对应结构即可统一表示:
Spotting:指在输入的原句中找到目标信息片段,比如说实体识别中某个类型的实体,事件抽取中的触发词和论元都是原句中的片段。
Associating:指找出Spotting输出的信息片段之间的关系,比如关系抽取中两个实体之间的关系,或事件抽取中论元和触发词之间的关系。
Spot Name:指目标信息片段的类别,在实体抽取中指实体类别,在事件抽取中可以指事件类型和论元类别
Info Span:Spotting操作的输出,即原句中的目标信息片段
Asso Name:指两个信息片段之间的关系类型,也就是Associating操作的输出
有了SEL语法,模型统一了不同任务的输出结构。而SSI则是一种基于Schema的prompt,当输入句子时,在句子前面拼接上对应的prompt,即可让模型做对应的任务。
用s表示SSI,用x表示需要输入的原始句子,UIE表示由transformer的Encoder和Decoder组成的UIE模型:
输出y就是采用SEL语法描述的结构化数据:
将s和x拼接后输入至Encoder,得到每一个token的隐层表示:
然后使用隐层表示在Decoder端生成目标结构化信息:
主要由Wikipedia、Wikidata和ConceptNet三部分组成,作者通过这三部分数据构造了如下三种形式的预训练数据:
Text-to-Structure(D-pair):捕获基本的文本到结构的映射能力
Structure Generation(D-record):生成由SEL和模式定义的有效结构的能力
Retrofitting Semantic Representation(D-text):改造UIE的语义表示能力
最终将三个Loss相加作为UIE最终的Loss:
UIE采用的模型是T5-v1.1-base和T5-v1.1-large作为UIE-base和UIE-large,模型的参数初始化直接使用了T5-v1.1的参数,也就是说直接基于其进行了二次预训练。
报道:https://mp.weixin.qq.com/s/8Cr4EvN3PscThSTfCseJDQ
论文:https://arxiv.org/pdf/2203.12277.pdf
代码:https://github.com/PaddlePaddle/PaddleNLP/tree/develop/model_zoo/uie
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。