可左右滑动选省市

实体文本提取模型的训练方法、装置及设备实用新型专利

更新时间:2023-12-14
实体文本提取模型的训练方法、装置及设备实用新型专利 专利申请类型:实用新型专利;
地区:四川-成都;
源自:成都高价值专利检索信息库;

专利名称:实体文本提取模型的训练方法、装置及设备

专利类型:实用新型专利

专利申请号:CN202011135995.4

专利申请(专利权)人:中移(成都)信息通信科技有限公司,中国移动通信集团有限公司
权利人地址:四川省成都市中国(四川)自由贸易试验区成都高新区交子大道575号J座6楼

专利发明(设计)人:柳岸,马靖博,袁磊,黄承基

专利摘要:本申请实施例提供了一种实体文本提取模型的训练方法、装置及设备,该方法包括:获取训练样本集,训练样本集包括第一样本集和第二样本集;针对每个训练样本,分别执行以下操作:将原始文本输入第一模型,输出目标实体文本;将问题模板文本和目标实体文本输入第二模型,输出目标问题文本;根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据;当指标数据不满足预设阈值时,调整第一模型参数和第二模型参数;返回将原始文本输入第一模型,直至指标数据满足预设阈值,将第一模型确定为实体文本提取模型;本申请实施例能够解决现有技术中基于深度学习进行实体抽取的方法的性能较差的问题。

主权利要求:
1.一种实体文本提取模型的训练方法,其特征在于,包括:获取训练样本集,所述训练样本集包括第一样本集和第二样本集;
所述第一样本集包括多个第一训练样本,每个所述第一训练样本包括原始文本和其对应的多个实体标签文本;
所述第二样本集包括多个第二训练样本,每个所述第二训练样本包括根据所述实体标签文本生成的问题模板文本;
针对每个训练样本,分别执行以下操作:
将所述原始文本输入第一模型,输出目标实体文本;
将所述问题模板文本和所述目标实体文本输入第二模型,输出目标问题文本;
根据所述目标实体文本及其对应的所述实体标签文本、所述目标问题文本及其对应的所述问题模板文本生成指标数据;
当所述指标数据不满足预设阈值时,调整所述第一模型参数和所述第二模型参数;
返回所述将所述原始文本输入第一模型,直至所述指标数据满足预设阈值,将所述第一模型确定为所述实体文本提取模型;
所述第一模型,包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z‑gate模型;
所述将所述原始文本输入第一模型,输出目标实体文本,包括:将所述原始文本输入所述第一BERT语言模型,输出指示所述原始文本中多个单词与所述多个单词相应的单词向量的映射关系的第一向量;
将所述第一向量输入所述第一Transformer模型的解码器,输出隐状态向量、所述隐状态向量与所述第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的所述原始文本的第二向量;
根据预设掩码规则调整所述第一注意力分布向量,以生成第二注意力分布向量;
将所述第二注意力分布向量输入所述前馈神经网络模型,输出多个包含实体的单词;
将所述第二向量与所述多个包含实体的单词输入所述Z‑gate模型,输出所述目标实体文本,所述目标实体文本为被所述分隔符分隔后的所述多个包含实体的单词;
所述第二模型,包括:与所述第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型;
所述将所述问题模板文本和所述目标实体文本输入第二模型,输出目标问题文本,包括:将所述问题模板文本输入所述第二BERT语言模型进行编码,输出所述问题模板文本对应的文本向量;
将所述目标实体文本输入所述第二BERT语言模型,输出所述目标实体文本对应的多个单词向量;
将所述目标实体文本对应的多个单词向量和所述问题模板文本对应的文本向量输入所述第二Transformer模型的编码器进行拼接,输出拼接向量;
将所述拼接向量输入所述GPT‑2模型,输出所述目标问题文本。
2.如权利要求1所述的实体文本提取模型的训练方法,其特征在于,所述根据所述目标实体文本及其对应的所述实体标签文本、所述目标问题文本及其对应的所述问题模板文本生成指标数据,包括:根据所述目标实体文本及其对应的所述实体标签文本构建F1分数,将所述F1分数输出的结果作为第一指标数据;
根据所述目标问题文本及其对应的所述问题模板文本构建BLUE分数,将所述BLUE分数输出的结果作为第二指标数据。
3.如权利要求2所述的实体文本提取模型的训练方法,其特征在于,经过N次训练得到所述实体文本提取模型;
所述当所述指标数据不满足预设阈值时,调整所述第一模型和所述第二模型参数,包括:对于前预设N1次训练,当所述第一指标数据和所述第二指标数据不满足其各自的预设阈值时,分别调整所述第一模型和所述第二模型各自的参数;
对于后预设N‑N1次训练,根据所述第一指标数据和所述第二指标数据以及所述第一指标数据和所述第二指标数据分别对应的预设权重计算出整合指标数据,当所述整合指标数据不满足预设阈值时,调整所述第一模型和所述第二模型参数。
4.一种应用实体文本提取模型提取实体文本的方法,所述实体文本提取模型通过权利要求1所述的方法而训练,所述方法包括:获取目标文本;
将所述目标文本输入所述实体文本提取模型,输出目标实体文本。
5.一种实体文本提取模型的训练装置,其特征在于,包括:获取模块,用于获取训练样本集,所述训练样本集包括第一样本集和第二样本集;
所述第一样本集包括多个第一训练样本,每个所述第一训练样本包括原始文本和其对应的多个实体标签文本;
所述第二样本集包括多个第二训练样本,每个所述第二训练样本包括根据所述实体标签文本生成的问题模板文本;
针对每个训练样本,分别执行以下操作:
输出模块,用于将所述原始文本输入第一模型,输出目标实体文本;
输出模块,还用于将所述问题模板文本和所述目标实体文本输入第二模型,输出目标问题文本;
生成模块,用于根据所述目标实体文本及其对应的所述实体标签文本、所述目标问题文本及其对应的所述问题模板文本生成指标数据;
调整模块,用于当所述指标数据不满足预设阈值时,调整所述第一模型参数和所述第二模型参数;
确定模块,用于返回所述将所述原始文本输入第一模型,直至所述指标数据满足预设阈值,将所述第一模型确定为所述实体文本提取模型;
所述第一模型,包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z‑gate模型;
所述输出模块,具体用于:
将所述原始文本输入所述第一BERT语言模型,输出指示所述原始文本中多个单词与所述多个单词相应的单词向量的映射关系的第一向量;
将所述第一向量输入所述第一Transformer模型的解码器,输出隐状态向量、所述隐状态向量与所述第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的所述原始文本的第二向量;
根据预设掩码规则调整所述第一注意力分布向量,以生成第二注意力分布向量;
将所述第二注意力分布向量输入所述前馈神经网络模型,输出多个包含实体的单词;
将所述第二向量与所述多个包含实体的单词输入所述Z‑gate模型,输出所述目标实体文本,所述目标实体文本为被所述分隔符分隔后的所述多个包含实体的单词;
所述第二模型,包括:与所述第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型;
所述输出模块,具体用于:
将所述问题模板文本输入所述第二BERT语言模型进行编码,输出所述问题模板文本对应的文本向量;
将所述目标实体文本输入所述第二BERT语言模型,输出所述目标实体文本对应的多个单词向量;
将所述目标实体文本对应的多个单词向量和所述问题模板文本对应的文本向量输入所述第二Transformer模型的编码器进行拼接,输出拼接向量;
将所述拼接向量输入所述GPT‑2模型,输出所述目标问题文本。
6.一种应用实体文本提取模型提取实体文本的装置,所述实体文本提取模型通过权利要求5所述的装置而训练,所述装置包括:目标获取模块,用于获取目标文本;
目标输出模块,用于将所述目标文本输入所述实体文本提取模型,输出目标实体文本。
7.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至4中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有信息传递的实现程序,所述程序被处理器执行时实现如权利要求1至4中任一项所述的方法。 说明书 : 实体文本提取模型的训练方法、装置及设备技术领域[0001] 本申请属于深度强化学习领域,尤其涉及一种实体文本提取模型的训练方法、装置及设备。背景技术[0002] 命名实体识别(NamedEntityRecognition,NER),又称作专名识别,是自然语言处理中的一项基础任务,命名实体一般指的是文本中具有特定意义或者指代性强的实体,通常包括人名、地名、组织机构名、日期时间、专有名词等。NER系统就是从非结构化的输入文本中抽取出上述实体,并且可以按照业务需求识别出更多类别的实体,比如产品名称、型号、价格等。因此实体这个概念可以很广,只要是业务需要的特殊文本片段都可以称为实体,故而使得NER的应用范围非常广泛。[0003] 例如,在医疗领域中,NER旨在从非结构化的文本描述中识别出其中的命名实体(例如疾病、药物名称等),是构建医疗知识图谱的重要部分;而医疗知识图谱作为医疗AI最重要的底层基础设施之一,在很多应用场景都是不可或缺的部分。[0004] 现有技术中已有基于深度学习进行NER的方法,但是现有的基于深度学习进行实体抽取的方法的性能较差。发明内容[0005] 本申请实施例提供一种在实体文本提取模型的训练方法、装置及设备,能够解决现有技术中基于深度学习进行实体抽取的方法的性能较差的问题。[0006] 第一方面,本申请实施例提供一种实体文本提取模型的训练方法,该方法包括:[0007] 获取训练样本集,训练样本集包括第一样本集和第二样本集;[0008] 第一样本集包括多个第一训练样本,每个第一训练样本包括原始文本和其对应的多个实体标签文本;[0009] 第二样本集包括多个第二训练样本,每个第二训练样本包括根据实体标签文本生成的问题模板文本;[0010] 针对每个训练样本,分别执行以下操作:[0011] 将原始文本输入第一模型,输出目标实体文本;[0012] 将问题模板文本和目标实体文本输入第二模型,输出目标问题文本;[0013] 根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据;[0014] 当指标数据不满足预设阈值时,调整第一模型参数和第二模型参数;[0015] 返回将原始文本输入第一模型,直至指标数据满足预设阈值,将第一模型确定为实体文本提取模型。[0016] 进一步地,在一种实施例中,第一模型,包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z‑gate模型;[0017] 将原始文本输入第一模型,输出目标实体文本,包括:[0018] 将原始文本输入第一BERT语言模型,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量;[0019] 将第一向量输入第一Transformer模型的解码器,输出隐状态向量、隐状态向量与第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的原始文本的第二向量;[0020] 根据预设掩码规则调整第一注意力分布向量,以生成第二注意力分布向量;[0021] 将第二注意力分布向量输入前馈神经网络模型,输出多个包含实体的单词;[0022] 将第二向量与多个包含实体的单词输入Z‑gate模型,输出目标实体文本,目标实体文本为被分隔符分隔后的多个包含实体的单词。[0023] 进一步地,在一种实施例中,第二模型,包括:与第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型;[0024] 将问题模板文本和目标实体文本输入第二模型,输出目标问题文本,包括:[0025] 将问题模板文本输入第二BERT语言模型进行编码,输出问题模板文本对应的文本向量;[0026] 将目标实体文本输入第二BERT语言模型,输出目标实体文本对应的多个单词向量;[0027] 将目标实体文本对应的多个单词向量和问题模板文本对应的文本向量输入第二Transformer模型的编码器进行拼接,输出拼接向量;[0028] 将拼接向量输入GPT‑2模型,输出目标问题文本。[0029] 进一步地,在一种实施例中,根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据,包括:[0030] 根据目标实体文本及其对应的实体标签文本构建F1分数,将F1分数输出的结果作为第一指标数据;[0031] 根据目标问题文本及其对应的问题模板文本构建BLUE分数,将BLUE分数输出的结果作为第二指标数据。[0032] 进一步地,在一种实施例中,经过N次训练得到实体文本提取模型;[0033] 当指标数据不满足预设阈值时,调整第一模型和第二模型参数,包括:[0034] 对于前预设N1次训练,当第一指标数据和第二指标数据不满足其各自的预设阈值时,分别调整第一模型和第二模型各自的参数;[0035] 对于后预设N‑N1次训练,根据第一指标数据和第二指标数据以及第一指标数据和第二指标数据分别对应的预设权重计算出整合指标数据,当整合指标数据不满足预设阈值时,调整第一模型和第二模型参数;[0036] 其中,N和N1均为正整数,且N>N1。[0037] 第二方面,本申请实施例提供一种应用实体文本提取模型提取实体文本的方法,该实体文本提取模型通过实体文本提取模型的训练方法而训练,该方法包括:[0038] 获取目标文本;[0039] 将目标文本输入实体文本提取模型,输出目标实体文本。[0040] 第三方面,本申请实施例提供一种实体文本提取模型的训练装置,该装置包括:[0041] 获取模块,用于获取训练样本集,训练样本集包括第一样本集和第二样本集;[0042] 第一样本集包括多个第一训练样本,每个第一训练样本包括原始文本和其对应的多个实体标签文本;[0043] 第二样本集包括多个第二训练样本,每个第二训练样本包括根据实体标签文本生成的问题模板文本;[0044] 针对每个训练样本,分别执行以下操作:[0045] 输出模块,用于将原始文本输入第一模型,输出目标实体文本;[0046] 输出模块,还用于将问题模板文本和目标实体文本输入第二模型,输出目标问题文本;[0047] 生成模块,用于根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据;[0048] 调整模块,用于当指标数据不满足预设阈值时,调整第一模型参数和第二模型参数;[0049] 确定模块,用于返回将原始文本输入第一模型,直至指标数据满足预设阈值,将第一模型确定为实体文本提取模型。[0050] 进一步地,在一种实施例中,第一模型,包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z‑gate模型;[0051] 输出模块,具体用于:[0052] 将原始文本输入第一BERT语言模型,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量;[0053] 将第一向量输入第一Transformer模型的解码器,输出隐状态向量、隐状态向量与第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的原始文本的第二向量;[0054] 根据预设掩码规则调整第一注意力分布向量,以生成第二注意力分布向量;[0055] 将第二注意力分布向量输入前馈神经网络模型,输出多个包含实体的单词;[0056] 将第二向量与多个包含实体的单词输入Z‑gate模型,输出目标实体文本,目标实体文本为被分隔符分隔后的多个包含实体的单词。[0057] 进一步地,在一种实施例中,第二模型,包括:与第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型;[0058] 输出模块,具体用于:[0059] 将问题模板文本输入第二BERT语言模型进行编码,输出问题模板文本对应的文本向量;[0060] 将目标实体文本输入第二BERT语言模型,输出目标实体文本对应的多个单词向量;[0061] 将目标实体文本对应的多个单词向量和问题模板文本对应的文本向量输入第二Transformer模型的编码器进行拼接,输出拼接向量;[0062] 将拼接向量输入GPT‑2模型,输出目标问题文本。[0063] 第四方面,本申请实施例提供一种应用实体文本提取模型提取实体文本的装置,该实体文本提取模型通过实体文本提取模型的训练装置而训练,该装置包括:[0064] 目标获取模块,用于获取目标文本;[0065] 目标输出模块,用于将目标文本输入实体文本提取模型,输出目标实体文本。[0066] 第五方面,本申请实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现实体文本提取模型的训练方法和应用实体文本提取模型提取实体文本的方法。[0067] 第六方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有信息传递的实现程序,程序被处理器执行时实现实体文本提取模型的训练方法和应用实体文本提取模型提取实体文本的方法。[0068] 本申请实施例的实体文本提取模型的训练方法、装置及设备,将原始文本和问题模板文本结合作为训练样本进行模型的训练,实现了数据增强;基于指标数据进行第一模型和第二模型的调参,由于指标数据是基于目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成的,极大地减少了暴露偏置exposurebias对模型精度的影响,提升了第一模型和第二模型的性能;基于训练后的第一模型进行实体文本抽取,确保了抽取精度,解决了现有的基于深度学习进行实体抽取的方法的性能较差的问题。附图说明[0069] 为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。[0070] 图1是本申请一个实施例提供的实体文本提取模型的训练方法的流程示意图;[0071] 图2是本申请一个实施例提供的第一模型和第二模型的结构示意图;[0072] 图3是本申请一个实施例提供的应用实体文本提取模型提取实体文本的方法的流程示意图;[0073] 图4是本申请一个实施例提供的实体文本提取模型的训练装置的结构示意图;[0074] 图5是本申请一个实施例提供的应用实体文本提取模型提取实体文本的装置的结构示意图;[0075] 图6是本申请一个实施例提供的电子设备的结构示意图。具体实施方式[0076] 下面将详细描述本申请的各个方面的向量和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本申请,并不被配置为限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。[0077] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。[0078] 为了进行医疗实体识别,目前技术主要分为基于规则、基于统计和基于深度学习的三大类方法。其中基于规则的方法采用医学专家手工编写的模板进行实体匹配抽取,但是存在规模小,一致性差的问题,难以推广应用。而基于统计模型的方法,例如隐马尔可夫模型,条件随机场模型等,首先通过手工提取输入文本的向量,将实体识别视为一个基于概率模型的观测标注任务,通常会出现由于理论概率模型泛化能力弱而导致识别不准确的问题。目前业和学术界普遍基于深度学习的方法进行实体抽取,这类方法主要有三类:[0079] 第一类,结合统计模型和神经网络模型进行序列标记的实体抽取方法,利用神经网络:卷积神经网络(ConvolutionalNeuralNetworks,CNN)、循环神经网络(RecurrentNeuralNetwork,RNN)、以及Transformer等,从输入文本自动化抽取特征,并采用统计模型,例如条件随机场(conditionalrandomfield,CRF)等,对输入文本序列进行标注,从而抽取相应实体。还有些方法,通过序列到序列的生成方法,直接生成每个实体标记。[0080] 序列标记类方法难以识别复杂的网状多层实体NestedNER,医疗实体更为复杂,且实体间频繁重叠,并且当训练文本中的一些标记类数目过少时,会导致模型的性能下降。[0081] 第二类,基于机器阅读理解的实体抽取方法,将实体抽取问题转化为问答形式。首先根据输入文本构造要抽取实体类型的问题,将输入文本作为上下文,并把文本中的该类实体作为答案,构造训练数据集。然后构建模型,对输入的问题和上下文进行编码,训练模型预测答案,从而实现实体抽取。最后在进行实体抽取时,这类方法可以通过问题获取先验知识,从而从文本中抽取实体。[0082] 基于机器阅读类方法依赖问题的设计构造,问题质量影响实体抽取精度,问题覆盖度影响实体抽取召回率。[0083] 第三类,基于大规模与训练模型对增强现有深度学习方法编码性能。这类方法一般使用谷歌的BERT(BidirectionalEncoderRepresentationsfromTransformer)、FaceBook的Roberta等模型增强对输入文本的编码能力,从而获得更好的性能。[0084] 现有方法在训练阶段采用分类指标对每个文本所属实体进行判断,而在测试中,缺失用精度、召回率、F1分数(F1Score)等数值进行评测,存在一定的暴露偏置(exposurebias)问题。[0085] 为了解决现有技术问题,本申请实施例提供了一种实体文本提取模型的训练方法、装置及设备。本申请采取了第一模型与第二模型对偶学习的方式进行模型构建。在训练时,本申请同时训练用于生成实体文本的第一模型和用于生成问题模板文本的第二模型,从而扩充训练语料,并且扩大所关注的医疗实体的关注度,进而使得生成的实体文本能够完整地覆盖所有实体,降低抽取无关信息的风险。下面首先对本申请实施例所提供的实体文本提取模型的训练方法进行介绍。[0086] 图1示出了本申请一个实施例提供的实体文本提取模型的训练方法的流程示意图。如图1所示,该方法可以包括以下步骤:[0087] S100,获取训练样本集。[0088] 其中,训练样本集包括第一样本集和第二样本集,第一样本集包括多个第一训练样本,每个第一训练样本包括原始文本和其对应的多个实体标签文本;第二样本集包括多个第二训练样本,每个第二训练样本包括根据实体标签文本生成的问题模板文本。[0089] 本申请可以从公开数据集:ACE2004、ACE2005、GENIA、以及KBP2017获取第一样本集。第二样本集基于第一样本集中的实体标签文本设计,例如表1所示:[0090][0091] 表1[0092] 针对每个训练样本,分别执行以下操作:[0093] S102,将原始文本输入第一模型,输出目标实体文本。[0094] 在一种实施例中,图2示出了第一模型和第二模型的结构示意图,如图2所示,第一模型可以包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z门(Z‑gate)模型。[0095] 基于上述第一模型,S102可以包括:[0096] 将原始文本输入第一BERT语言模型,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量。[0097] 具体的,用第一BERT语言模型对原始文本进行编码建模,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量。[0098] 将第一向量输入第一Transformer模型的解码器,输出隐状态向量、隐状态向量与第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的原始文本的第二向量。[0099] 根据预设掩码规则调整第一注意力分布向量,以生成第二注意力分布向量。[0100] 预设掩码规则具体为:[0101] 第二向量对应的多个单词中:首个预测到的单词不能是分割符,否则该词注意力掩码为0;某个单词之后的单词首先保证该单词与之前的分割符之后的这些词在原文中是连续的,否则该词注意力掩码为0;某个之前出现的实体,如果其中部分单词已经出现,则新单词及其后续预测到的分割不能导致与之前的实体相同,否则所有复制位置掩码为0,提前输出分割符,进而能够上述几种情况输出无法得分,从而使模型学会规避这种情况。[0102] 隐状态向量初始化为一个开始位置标识符(),之后逐单词生成实体时,基于之前生成的实体信息来更新注意力向量和隐状态向量。[0103] 将第二注意力分布向量输入前馈神经网络模型,输出多个包含实体的单词。[0104] 将第二向量与多个包含实体的单词输入Z‑gate模型,输出目标实体文本,目标实体文本为被分隔符分隔后的多个包含实体的单词。[0105] S104,将问题模板文本和目标实体文本输入第二模型,输出目标问题文本。[0106] 在一种实施例中,图2示出了第一模型和第二模型的结构示意图,如图2所示,第二模型可以包括:与第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型。[0107] 基于上述第二模型,S104可以包括:[0108] 将问题模板文本输入第二BERT语言模型进行编码,输出问题模板文本对应的文本向量。[0109] 将目标实体文本输入第二BERT语言模型,输出目标实体文本对应的多个单词向量。[0110] 将目标实体文本对应的多个单词向量和问题模板文本对应的文本向量输入第二Transformer模型的编码器进行拼接,输出拼接向量。[0111] 将拼接向量输入GPT‑2模型,输出目标问题文本。[0112] 在将拼接向量输入GPT‑2模型后,首先基于拼接向量初始化GPT‑2模型,然后以BeamSearch的形式处理拼接向量,生成目标问题文本。[0113] S106,根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据。[0114] 在一种实施例中,S106可以包括:[0115] 根据目标实体文本及其对应的实体标签文本构建F1分数,将F1分数输出的结果作为第一指标数据。[0116] 根据目标问题文本及其对应的问题模板文本构建BLUE分数,将BLUE分数输出的结果作为第二指标数据。[0117] S108,当指标数据不满足预设阈值时,调整第一模型参数和第二模型参数。[0118] 模型需要多轮训练,经过N次训练得到实体文本提取模型。[0119] S108可以包括:[0120] 对于前预设N1次训练,当第一指标数据和第二指标数据不满足其各自的预设阈值时,分别调整第一模型和第二模型各自的参数。[0121] 对于后预设N‑N1次训练,根据第一指标数据R1和第二指标数据R2以及第一指标数据和第二指标数据分别对应的预设权重计算出整合指标数据R,当整合指标数据不满足预设阈值时,调整第一模型和第二模型参数。[0122] 具体的,R=λR1+(1‑λ)R2,(其中λ∈[0,1]),λ为R1的预设权重;1‑λ为R2的预设权重。[0123] 训练模型时,初始N1/N可以设置为0~10%,随着轮数增加,逐渐提高N1所占比例。[0124] 其中,N和N1均为正整数,且N>N1。[0125] 在一个实施例中,本申请提供的方法还可以包括:[0126] 采用一个重放缓存,将训练过程每个批次生成的60%的中间生成样本(目标实体文本和目标问题文本)保存起来,且在之后的每个批次训练中,有30%的训练样本采样自该缓存,进而高效地使用数据。[0127] 第一模型在训练过程中已经学到了如何从原始文本映射到实体文本,而第二模型可以校核生成的实体是否正确,辅助第一模型的训练,整个训练过程可采用优势动作评论算法(AdvantageActorCritic,A2C)的策略梯度更新算法,保证模型高效地进行训练。[0128] S110,返回将原始文本输入第一模型,直至指标数据满足预设阈值,将第一模型确定为实体文本提取模型。[0129] 本申请实施例提供的实体文本提取模型的训练方法,将原始文本和问题模板文本结合作为训练样本进行模型的训练,实现了数据增强;基于指标数据进行第一模型和第二模型的调参,由于指标数据是基于目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成的,极大地减少了暴露偏置exposurebias对模型精度的影响,并使得第二模型能够起到校核第一模型提取的实体是否正确的作用,提升了第一模型的性能。[0130] 完成实体文本提取模型的训练后,即可应用该实体文本提取模型对目标文本进行提取。[0131] 基于此,本申请实施例提供一种应用实体文本提取模型提取实体文本的方法,图3示出了该应用实体文本提取模型提取实体文本的方法的流程示意图,该实体文本提取模型通过实体文本提取模型的训练方法而训练,如图3所示,该方法包括:[0132] S300,获取目标文本。[0133] S302,将目标文本输入实体文本提取模型,输出目标实体文本。[0134] 本申请实施例提供的应用实体文本提取模型提取实体文本的方法,基于训练后的第一模型进行实体文本抽取,确保了抽取精度,解决了现有的基于深度学习进行实体抽取的方法的性能较差的问题。[0135] 图1‑3描述了本申请实施例提供的实体文本提取模型的训练方法和应用实体文本提取模型提取实体文本的方法,下面结合附图4‑6描述本申请实施例提供的装置。[0136] 图4示出了本申请一个实施例提供的实体文本提取模型的训练装置的结构示意图,图4所示装置中各模块具有实现图1中各个步骤的功能,并能达到其相应技术效果。如图4所示,该装置可以包括:[0137] 获取模块400,用于获取训练样本集,训练样本集包括第一样本集和第二样本集。[0138] 其中,第一样本集包括多个第一训练样本,每个第一训练样本包括原始文本和其对应的多个实体标签文本;第二样本集包括多个第二训练样本,每个第二训练样本包括根据实体标签文本生成的问题模板文本。[0139] 本申请可以从公开数据集:ACE2004、ACE2005、GENIA、以及KBP2017获取第一样本集。第二样本集基于第一样本集中的实体标签文本设计,例如表1所示。[0140] 针对每个训练样本,分别执行以下操作:[0141] 输出模块402,用于将原始文本输入第一模型,输出目标实体文本。[0142] 在一种实施例中,图2示出了第一模型和第二模型的结构示意图,如图2所示,第一模型可以包括:第一BERT语言模型、第一Transformer模型、前馈神经网络模型、以及Z门(Z‑gate)模型。[0143] 基于上述第一模型,输出模块402可以具体用于:[0144] 将原始文本输入第一BERT语言模型,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量。[0145] 具体的,用第一BERT语言模型对原始文本进行编码建模,输出指示原始文本中多个单词与多个单词相应的单词向量的映射关系的第一向量。[0146] 将第一向量输入第一Transformer模型的解码器,输出隐状态向量、隐状态向量与第一向量之间的第一注意力分布向量、以及指示经分隔符分隔的原始文本的第二向量。[0147] 根据预设掩码规则调整第一注意力分布向量,以生成第二注意力分布向量。[0148] 预设掩码规则具体为:[0149] 第二向量对应的多个单词中:首个预测到的单词不能是分割符,否则该词注意力掩码为0;某个单词之后的单词首先保证该单词与之前的分割符之后的这些词在原文中是连续的,否则该词注意力掩码为0;某个之前出现的实体,如果其中部分单词已经出现,则新单词及其后续预测到的分割不能导致与之前的实体相同,否则所有复制位置掩码为0,提前输出分割符,进而能够上述几种情况输出无法得分,从而使模型学会规避这种情况。[0150] 隐状态向量初始化为一个开始位置标识符(),之后逐单词生成实体时,基于之前生成的实体信息来更新注意力向量和隐状态向量。[0151] 将第二注意力分布向量输入前馈神经网络模型,输出多个包含实体的单词。[0152] 将第二向量与多个包含实体的单词输入Z‑gate模型,输出目标实体文本,目标实体文本为被分隔符分隔后的多个包含实体的单词。[0153] 输出模块402,还用于将问题模板文本和目标实体文本输入第二模型,输出目标问题文本。[0154] 在一种实施例中,第二模型可以包括:与第一BERT语言模型参数相同的第二BERT语言模型、第二Transformer模型、以及GPT‑2模型。[0155] 基于上述第二模型,输出模块402还可以具体用于:[0156] 将问题模板文本输入第二BERT语言模型进行编码,输出问题模板文本对应的文本向量。[0157] 将目标实体文本输入第二BERT语言模型,输出目标实体文本对应的多个单词向量。[0158] 将目标实体文本对应的多个单词向量和问题模板文本对应的文本向量输入第二Transformer模型的编码器进行拼接,输出拼接向量。[0159] 将拼接向量输入GPT‑2模型,输出目标问题文本。[0160] 在将拼接向量输入GPT‑2模型后,首先基于拼接向量初始化GPT‑2模型,然后以BeamSearch的形式处理拼接向量,生成目标问题文本。[0161] 生成模块404,用于根据目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成指标数据。[0162] 在一种实施例中,生成模块404可以具体用于:[0163] 根据目标实体文本及其对应的实体标签文本构建F1分数,将F1分数输出的结果作为第一指标数据。[0164] 根据目标问题文本及其对应的问题模板文本构建BLUE分数,将BLUE分数输出的结果作为第二指标数据。[0165] 调整模块406,用于当指标数据不满足预设阈值时,调整第一模型参数和第二模型参数。[0166] 模型需要多轮训练,经过N次训练得到实体文本提取模型。[0167] 调整模块406,可以具体用于:[0168] 对于前预设N1次训练,当第一指标数据和第二指标数据不满足其各自的预设阈值时,分别调整第一模型和第二模型各自的参数。[0169] 对于后预设N‑N1次训练,根据第一指标数据R1和第二指标数据R2以及第一指标数据和第二指标数据分别对应的预设权重计算出整合指标数据R,当整合指标数据不满足预设阈值时,调整第一模型和第二模型参数。[0170] 具体的,R=λR1+(1‑λ)R2,(其中λ∈[0,1]),λ为R1的预设权重;1‑λ为R2的预设权重。[0171] 训练模型时,初始N1/N可以设置为0~10%,随着轮数增加,逐渐提高N1所占比例。[0172] 其中,N和N1均为正整数,且N>N1。[0173] 在一个实施例中,本申请提供的方法还可以包括:[0174] 采用一个重放缓存,将训练过程每个批次生成的60%的中间生成样本(目标实体文本和目标问题文本)保存起来,且在之后的每个批次训练中,有30%的训练样本采样自该缓存,进而高效地使用数据。[0175] 第一模型在训练过程中已经学到了如何从原始文本映射到实体文本,而第二模型可以校核生成的实体是否正确,辅助第一模型的训练,整个训练过程可采用优势动作评论算法(AdvantageActorCritic,A2C)的策略梯度更新算法,保证模型高效地进行训练。[0176] 确定模块408,用于返回将原始文本输入第一模型,直至指标数据满足预设阈值,将第一模型确定为实体文本提取模型。[0177] 本申请实施例提供的实体文本提取模型的训练装置,将原始文本和问题模板文本结合作为训练样本进行模型的训练,实现了数据增强;基于指标数据进行第一模型和第二模型的调参,由于指标数据是基于目标实体文本及其对应的实体标签文本、目标问题文本及其对应的问题模板文本生成的,极大地减少了暴露偏置exposurebias对模型精度的影响,并使得第二模型能够起到校核第一模型提取的实体是否正确的作用,提升了第一模型的性能。[0178] 完成实体文本提取模型的训练后,即可应用该实体文本提取模型对目标文本进行提取。[0179] 基于此,本申请实施例提供一种应用实体文本提取模型提取实体文本的装置,图5示出了该应用实体文本提取模型提取实体文本的装置的结构示意图,该实体文本提取模型通过实体文本提取模型的训练装置而训练,图5所示装置中各模块具有实现图3中各个步骤的功能,并能达到其相应技术效果。如图5所示,该装置可以包括:[0180] 目标获取模块500,用于获取目标文本。[0181] 目标输出模块502,用于将目标文本输入实体文本提取模型,输出目标实体文本。[0182] 本申请实施例提供的应用实体文本提取模型提取实体文本的装置,基于训练后的第一模型进行实体文本抽取,确保了抽取精度,解决了现有的基于深度学习进行实体抽取的方法的性能较差的问题。[0183] 图6示出了本申请一个实施例提供的电子设备的结构示意图。如图6所示,该设备可以包括处理器601以及存储有计算机程序指令的存储器602。[0184] 具体地,上述处理器601可以包括中央处理器(CentralProcessingUnit,CPU),或者特定集成电路(ApplicationSpecificIntegratedCircuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。[0185] 存储器602可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(HardDiskDrive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(UniversalSerialBus,USB)驱动器或者两个或更多个以上这些的组合。在一个实例中,存储器602可以包括可移除或不可移除(或固定)的介质,或者存储器602是非易失性固态存储器。存储器602可在综合网关容灾设备的内部或外部。[0186] 在一个实例中,存储器602可以是只读存储器(ReadOnlyMemory,ROM)。在一个实例中,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。[0187] 处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现图1和图3所示实施例中的方法,并达到图1和图3所示实例执行其方法达到的相应技术效果,为简洁描述在此不再赘述。[0188] 在一个示例中,该电子设备还可包括通信接口603和总线610。其中,如图6所示,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。[0189] 通信接口603,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。[0190] 总线610包括硬件、软件或两者,将在线数据流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AcceleratedGraphicsPort,AGP)或其他图形总线、增强工业标准架构(ExtendedIndustryStandardArchitecture,EISA)总线、前端总线(FrontSideBus,FSB)、超传输(HyperTransport,HT)互连、工业标准架构(IndustryStandardArchitecture,ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI‑Express(PCI‑X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。[0191] 另外,结合上述实施例中的方法,本申请实施例可提供一种计算机可读存储介质来实现。该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种方法。[0192] 需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。[0193] 以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD‑ROM、光盘、硬盘、光纤介质、射频(RadioFrequency,RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。[0194] 还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。[0195] 上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。[0196] 以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

专利地区:四川

专利申请日期:2020-10-22

专利公开日期:2024-06-18

专利公告号:CN114385809B

电话咨询
读内容
搜本页
回顶部