首页> 中国专利> 一种自然语言模型的生成方法和计算机设备

一种自然语言模型的生成方法和计算机设备

摘要

本申请涉及一种自然语言模型的生成方法和计算机设备,所述方法包括:将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签;根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。通过本方法得到的自然语言模型,其语义表征具有遮蔽语句对的全局信息以及局部语义信息,使得自然语言处理任务的精度得到提高。

著录项

  • 公开/公告号CN112307769A

    专利类型发明专利

  • 公开/公告日2021-02-02

    原文格式PDF

  • 申请/专利权人 武汉TCL集团工业研究院有限公司;

    申请/专利号CN201910689711.7

  • 发明设计人 刘坤;

    申请日2019-07-29

  • 分类号G06F40/30(20200101);G06F40/284(20200101);G06F40/205(20200101);G06K9/62(20060101);G06N3/04(20060101);

  • 代理机构44268 深圳市君胜知识产权代理事务所(普通合伙);

  • 代理人王永文

  • 地址 430000 湖北省武汉市东湖新技术开发区高新大道999号未来科技大厦8层

  • 入库时间 2023-06-19 09:44:49

说明书

技术领域

本申请涉及图像处理技术领域,特别是涉及一种自然语言模型的生成方法和计算机设备。

背景技术

自然语言处理(Nature Language Processing,NPL)是人工智能的一个子领域,通常分为四大类任务:序列标注,分类任务,关系判断,以及生成式任务,训练自然语言处理模型对提升自然语言处理的任务结果的精度有着重要作用,这是因为通过训练得到了合适的词向量,合适的词向量使自然语言处理的任务结果的精度得到改善。

NLP中一般采用自然语言处理中的某些任务来做训练,例如,Bengio提出的神经网络语言模型(Nature Network Language Model),Google提出的CBOW以及Skip-gram训练的主流方法,多是通过输入某个特征词的上下文相关词,可以学习该特征词的词义信息,这些主流训练方法没有学习与该特征词相邻的关联词语的词义信息以及全局语义信息,因此,通过现有的训练方法训练得到的语言处理模型,也无法学习到孤立词语前后的关联词义信息,以及全局的语义信息,语义表征能力较弱,导致处理结果的精度不高。

因此,现有技术有待改进。

发明内容

本发明要解决的技术问题是,提供一种自然语言模型的生成方法和计算机设备,使训练得到的自然语言模型的语义表征具有语句对的全局信息,还具有局部语义信息,并且提高自然语言处理任务的精度。

第一方面,本发明实施例提供了一种自然语言模型的生成方法,所述方法包括:

将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;

根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

作为进一步的改进技术方案,通过对所述语句对进行预处理,得到所述语句对对应的遮蔽语句对组的方式,包括:

在所述语句对中随机选取至少一个待遮蔽词语;

根据选取到的待遮蔽词语确定至少一个待遮蔽目标集,并根据所述至少一个待遮蔽目标集对所述语句对进行遮蔽,以得到所述语句对对应的遮蔽语句对组。

作为进一步的改进技术方案,所述根据选取到的待遮蔽词语确定至少一个待遮蔽目标集,包括:

针对每一个待遮蔽词语,分别确定待遮蔽词语对应的第一词语和第二词语,其中,所述第一词语为在该待遮蔽词语所属的语句对中,与该待遮蔽词语相邻且位于该待遮蔽词语之前的词语,所述第二词语为在该待遮蔽词语所属的语句对中,与该待遮蔽词语相邻且位于该待遮蔽词语之后的词语;

根据各待遮蔽词语生成第一待遮蔽目标集;

根据所述各待遮蔽词语和所述各待遮蔽词语各自分别对应的第一词语,生成第二待遮蔽目标集;

根据所述各待遮蔽词语和所述各待遮蔽词语各自分别对应的第二词语生成第三待遮蔽目标集;

根据所述各待遮蔽词语、所述各待遮蔽词语各自分别对应的第一词语和所述各待遮蔽词语各自分别对应的第二词语生成第四待遮蔽目标集。

作为进一步的改进技术方案,所述遮蔽语句对组包括第一遮蔽语句对、第二遮蔽语句对、第三遮蔽语句对和第四遮蔽语句对;

所述根据所述至少一个待遮蔽目标集对所述语句对进行遮蔽,以得到所述语句对对应的遮蔽语句对组,包括:

根据所述第一待遮蔽目标集对所述语句对进行遮蔽,得到所述第一遮蔽语句对;

根据所述第二待遮蔽目标集对所述语句对进行遮蔽,得到所述第二遮蔽语句对;

根据所述第三待遮蔽目标集对所述语句对进行遮蔽,得到所述第三遮蔽语句对;

根据所述第四待遮蔽目标集对所述语句对进行遮蔽,得到所述第四遮蔽语句对。

作为进一步的改进技术方案,所述根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型,包括:

根据所述语句对、所述真实标签、所述预测语句对和所述预测标签计算总损失值;

根据所述总损失值调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

作为进一步的改进技术方案,所述根据所述语句对、所述真实标签、所述预测语句对和所述预测标签计算总损失值,包括:

根据所述预测语句对组和与所述语句对,计算第一损失值;

根据所述预测标签和与所述语句对对应的真实标签,计算得到第二损失值;

根据所述第一损失值和所述第二损失值计算得到所述总损失值。

作为进一步的改进技术方案,所述预测语句对组包括第一预测语句对、第二预测语句对、第三预测语句对和第四预测语句对;所述根据所述预测语句对组和与遮蔽语句对组对应的语句对,计算第一损失值,包括:

根据所述语句对与所述第一预测语句对,得到第一差值;

根据所述语句对与所述第二预测语句对,得到第二差值;

根据所述语句对与所述第三预测语句对,得到第三差值;

根据所述语句对与所述第四预测语句对,得到第四差值;

根据所述第一差值、所述第二差值、所述第三差值和所述第四差值,计算所述第一损失值。

第二方面,本发明实施例提供了一种自然语言的处理方法,包括:

获取待处理语句对,其中,所述待处理语句对包括两个待处理语句;

在所述待处理语句对中随机选取部分词语,并对所述待处理语句对中的部分词语进行遮蔽,得到待处理遮蔽语句对;

将所述待处理遮蔽语句对输入已训练的自然语言模型,以得到待处理遮蔽语句对对应的第五预测语句对,以及目标标签,其中,所述目标标签表示所述待处理遮蔽语句对中两个语句的上下文关系,所述已训练的自然语言模型,为通过上述一种自然语言处理模型的生成方法得到的已训练的自然语言模型。

第三方面,本发明实施例提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取训练数据,所述训练数据包括语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;

对所述语句对进行预处理,得到所述语句对对应的遮蔽语句对组,其中,所述遮蔽语句对组包括至少一个遮蔽语句对;

将所述遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;

根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;

根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

与现有技术相比,本发明实施例具有以下优点:

根据本发明实施方式提供的一种自然语言模型的训练方法,首先将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。本发明提供的自然语言模型的训练方法,一方面,遮蔽语句对组包括多个遮蔽语句对,每个遮蔽语句对中的待遮蔽目标不仅仅是孤立的词语,通过预测遮蔽语句对组对应的预测语句对组,对初始神经网络进行训练,使得已训练的自然语言模型的语义表征具有待遮蔽词语的局部语义信息;另一方面,通过预测遮蔽语句对中两个语句的上下文关系,对初始神经网络进行训练,使已训练的自然语言模型的语义表征具有遮蔽语句对的全局信息,同通过上述两个上面的联合训练,使得已训练的自然语言处理模型处理的任务的精度得到提高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中一种自然语言模型的生成方法的流程示意图;

图2为本发明实施例中Transformer编码结构的示意图;

图3为本发明实施例中多头注意力模型的示意图;

图4为本发明实施例中得到词向量的V、K和Q的示意图;

图5为本发明实施例中计算总损失值的整体流程图;

图6为本发明实施例中一种自然语言的处理方法的流程示意图;

图7为本发明实施例中计算机设备的内部结构图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

发明人经过研究发现,现有的自然语言处理模型的训练方法,大多都只能学习孤立的词义信息,无法学习孤立词语前后的关联词义信息,以及全局的语义信息,使训练得到的自然语言处理模型的语义表征能力较弱。

为了解决上述问题,在本发明实施例中,通过遮蔽语句对组训练初始神经网络,使训练得到的自然语言模型的语义表征具有语句对的全局信息以及局部语义信息,其得到的自然语言处理任务的精度得到提高。

下面结合附图,详细说明本发明的各种非限制性实施方式。

请参阅图1,示出了本发明实施例中自然语言模型的生成方法,所述方法包括:

S1、将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系。

本发明实施例中,训练数据包括语句对和真实标签,所述语句对可以从任意文章中选取,文章题材不限,可以是体育、文学、财经等。本发明实施例中,对获取语句对的方式不做限定。所述语句对在原始文章中按照上下文顺序,可以是连续的两个语句,也可以是非连续的两个语句。若所述语句对中的两个句子在原始文章中按照上下文顺序,是连续的两个语句,其真实标签则表示所述语句对的该连续的两个语句间的上下文关系,例如该语句中后一个语句紧跟在前一个语句后,即后一个语句是前一个语句的下一句;若所述语句对中的两个句子在原始文章中按照上下文顺序,是非连续的两个语句,则其真实标签则表示语句对的非连续的两个语句的上下文关系,例如该语句对中后一个语句在原文中没有紧跟在前一个语句后,即后一个语句不是前一个语句的下一句。

举例说明,若所述语句对是:The man went to the store.In the store,hebought a gallon of milk.其对应的真实标签是:is next,表示语句:In the store,hebought a gallon of milk.在文章中紧跟在语句:The man went to the store.后。

步骤S1中,所述语句对包括两个语句,在所述语句对前加上分类特殊符:[CLS],所述分类特殊符用于被初始神经网络识别,以触发所述初始神经网络对其后的语句对进行自然语言处理任务;采用分割符:[SEP]分割两个语句,在一个语句对中,第一个分割符前为一个语句,分割符也作为一个语句结束的标志,两个分割符之间为一个语句。

例如,语句对:[CLS]The man went to the store[SEP]In the store,he boughta gallon of milk[SEP].

初始神经网络识别所述分类特殊符[CLS],则对其后的语句对:The man went tothe store[SEP]In the store,he bought a gallon of milk[SEP],进行自然语言处理任务,第一个分割符[SEP]前为一个语句,即"The man went to the store"为一个语句,两个分割符之间为一个语句,即"In the store,he bought a gallon of milk"为另一个语句。

在本发明实施例中,采用预测遮蔽词任务和下一句预测任务来训练初始神经网络。预测遮蔽词任务:给定一个语句对,随机遮蔽至少一个词语,自然语言处理模型根据剩余词语预测被遮蔽的至少一个词语,类似于英文测试中的完形填空题型。下一句预测任务:给定一篇文章中的两个语句,得到一个语句对,判断该语句对中后一个语句在该文章中是否紧跟在前一个语句之后。通过预测遮蔽词任务和下一句预测任务对初始神经网络进行训练,使训练后得到的自然语言处理模型尽可能全面、准确地刻画输入文本的整体信息,为自然语言处理任务提供更好的模型参数初始值,使得到的自然语言处理结果更精确。

本发明中实施例中,所述初始神经网络可以包括BERT模型、遮蔽词预测模型和下一句预测模型,在自然语言处理中,文本中的词语,通常用一维向量表示,称为词向量;所述BERT模型,用于处理遮蔽语句对,得到语句对中每个词语的词向量;所述遮蔽词预测模型,用于处理所述BERT模型输出的词向量,以得到预测出遮蔽词语的语句对;所述下一句预测模型,用于处理所述BERT模型输出的词向量,以预测语句对中两个语句对的上下文关系。

BERT模型可以利用大规模、无标注的语料训练获得文本中各词语的词向量,再将词向量输入到特定的任务模型中作微调,以得到自然语言处理结果,BERT模型采用Transformer编码结构来构建语言模型,参见图2,示出了Transformer编码结构的示意图,举例说明Transformer编码结构的处理流程,假设输入为语句对,将语句对中的各词语转换为对应的词向量,为各词向量加上位置编码,位置编码表示每个词语在句子中的位置以及不同词语之间的距离,将加上了位置编码的词向量输入到多头注意力模型,将经过多头注意力模型的词向量和未经过多头注意力模型的词向量进行相加,然后再进行归一化处理,得到中间词向量,再将中间词向量输入到前馈神经网络,将经过前馈神经网络处理后的中间词向量和未经过前馈神经网络处理的中间词向量相加,然后再进行归一化处理,得到输出的词向量。

Transformer编码结构的主要框架是多头注意力模型,参见图3,示出了多头注意力模型的框架示意图。注意力函数的本质可以被描述为一个查询(query,Q)到一系列键值对(key-value,K-V)的映射,所述键值对表示根据数据标识(key,K)获取数据(value,V),词向量乘以初始化矩阵可以得到该词向量的V(value)、K(key)和Q(query)。

参见图4,示出了得到词向量的V(value)、K(key)和Q(query)的过程,例如,词语Thinking的词向量是X,X乘以Q对应的初始化矩阵W

多头注意力模型首先将每个词向量的V、K、Q作为输入,先分别对每个词向量的V、K、Q进行线性变换,然后输入到放缩点击注意力模块,这个步骤执行h次,每执行一次算一个头,一共有h个头,即多头注意力,再将经过放缩点积注意力模块处理的词向量合并以及线性化处理。

本发明实施例中,通过对所述语句对进行预处理,得到所述语句对对应的遮蔽语句对组的方式,包括:

S11、在所述语句对中随机选取至少一个待遮蔽词语;

随机选取至少一个待遮蔽词语的方式是,随机选取所述语句对中所有词语中的预设百分比数量(例如15%)的词语作为待遮蔽词语。假设针对一个语句对,此语句对中有15个词语,则随机选取2个词语为待遮蔽词语。

举例说明:语句对:[CLS]The rain had only ceased with the gray streaksof morning at Blazing Star[SEP]and the settlement awoke to a moral sense ofcleanliness[SEP],假设随机选取待遮蔽词语为:only,morning和settlement。

S12、根据选取到的待遮蔽词语确定至少一个待遮蔽目标集,并根据所述至少一个待遮蔽目标集对所述语句对进行遮蔽,以得到所述语句对对应的遮蔽语句对组。

本发明实施例中,按照待遮蔽词语在语句对中的顺序,选取每一个待遮蔽词语邻近的前一个词语为第一词语,以及邻近的后一个词语为第二词语,分别根据每个待遮蔽词语、每个待遮蔽词语的第一词语和每个待遮蔽词语的第二词语,生成每个待遮蔽词语的至少一个待遮蔽目标集。对于每一个待遮蔽目标集,遮蔽所述语句对中的待遮蔽目标集,得到与所述待遮蔽目标集对应的遮蔽语句对;将每个待遮蔽目标集各自分别对应的遮蔽语句对共同组成一个遮蔽语句对组,可以理解的,所述遮蔽语句对组中遮蔽语句对的数量与每个待遮蔽词语的待遮蔽目标集的数量相同。

具体的,步骤S12中所述根据选取到的待遮蔽词语确定至少一个待遮蔽目标集,包括:

S121a、针对每一个待遮蔽词语,分别确定待遮蔽词语对应的第一词语和第二词语,其中,所述第一词语为在该待遮蔽词语所属的语句对中,与该待遮蔽词语相邻且位于该待遮蔽词语之前的词语,所述第二词语为在该待遮蔽词语所属的语句对中,与该待遮蔽词语相邻且位于该待遮蔽词语之后的词语。

举例说明,上例中,语句对:The rain had only ceased with the gray streaksof morning at Blazing Star[SEP]and the settlement awoke to a moral sense ofcleanliness[SEP],随机选取待遮蔽词语为only,morning和settlement,与待遮蔽词语only相邻且位于该待遮蔽词语之前的词语是:had,与待遮蔽词语only相邻且位于该待遮蔽词语之后的词语是:ceased,即待遮蔽词语only对应的第一词语是had,第二词语是ceased;同样的方法,可以得到待遮蔽词语morning对应的第一词语是of,第二词语是of,待遮蔽词语settlement的第一词语是:the,第二词语是:awoke。

S121b、根据各待遮蔽词语生成第一待遮蔽目标集。

本发明实施例中,各待遮蔽词语对应的第一待遮蔽目标集为所述各待遮蔽词语本身。

举例说明,在上例中,针对待遮蔽词语only,only的第一待遮蔽目标集是其本身:only;同样的,针对待遮蔽词语morning,morning的第一待遮蔽目标集是:morning;针对待遮蔽词语settlement,settlement的第一待遮蔽目标集是:settlement。

S121c、根据所述各待遮蔽词语和所述各待遮蔽词语各自分别对应的第一词语,生成第二待遮蔽目标集。

本发明实施例中,各待遮蔽词语对应的第二待遮蔽目标集,由所述各待遮蔽词语本身及其对应的第一词语组成。

举例说明,在上例中,针对待遮蔽词语only,only的第一词语是had,则待遮蔽词语only的第二待遮蔽目标集是:had only;针对待遮蔽词语morning,morning的第一词语是of,则待遮蔽词语morning的第二待遮蔽目标集是:of morning;针对待遮蔽词语settlement,settlement的第一词语是the,则待遮蔽词语settlement的第二待遮蔽目标集是:the settlement。

S121d、根据所述各待遮蔽词语和所述各待遮蔽词语各自分别对应的第二词语生成第三待遮蔽目标集。

本发明实施例中,各待遮蔽词语对应的第三待遮蔽目标集,由所述各待遮蔽词语本身及其对应的第二词语组成。

举例说明,在上例中,待遮蔽词语only的第二词语是ceased,则待遮蔽词语only的第三待遮蔽目标集是:only ceased;待遮蔽词语morning的第二词语是at,则待遮蔽词语morning的第三待遮蔽目标集是:morning at;待遮蔽词语settlement的第二词语是awoke,则待遮蔽词语settlement的第三待遮蔽目标集是:settlement awoke。

S121e、根据所述各待遮蔽词语、所述各待遮蔽词语各自分别对应的第一词语和所述各待遮蔽词语各自分别对应的第二词语生成第四待遮蔽目标集。

本发明实施例中,各待遮蔽词语对应的第四待遮蔽目标集,由所述各待遮蔽词语本身、其对应的第一词语以及其对应的第二词语组成。

举例说明,在上例中,针对待遮蔽词语only,only的第一词语是had,only的第二词语是ceased,则待遮蔽词语only的第四待遮蔽目标集是:had only ceased;针对待遮蔽词语morning,morning的第一词语是of,morning的第二词语是at,则待遮蔽词语morning的第四待遮蔽目标集是:of morning at;针对待遮蔽词语settlement,settlement的第一词语是the,settlement的第二词语是awoke,则待遮蔽词语settlement的第四待遮蔽目标集是:the settlement awoke。

具体的,步骤S12中,所述遮蔽语句对组包括第一遮蔽语句对、第二遮蔽语句对、第三遮蔽语句对和第四遮蔽语句对。

本发明实施例中,在步骤S121中已经得到了待遮蔽词语的四个待遮蔽目标集,根据所述语句对和所述第一待遮蔽目标集,得到第一遮蔽语句对;同样的,根据所述语句对和第二待遮蔽目标集可以得到第二遮蔽语句对;根据所述语句对和第三待遮蔽目标集可以得到第三遮蔽语句对;所述语句对和第四待遮蔽目标集可以得到第四遮蔽语句对;所述四个遮蔽语句对组成遮蔽语句对组。

具体的,所述根据所述至少一个待遮蔽目标集对所述语句对进行遮蔽,以得到所述语句对对应的遮蔽语句对组,包括:

S122a、根据所述第一待遮蔽目标集对所述语句对进行遮蔽,得到所述第一遮蔽语句对。

本发明实施例中,将所述语句对中的第一待遮蔽目标集对应的词语遮蔽,得到遮蔽后的语句对,即为第一遮蔽语句对。

举例说明,上例中,语句对为:[CLS]The rain had only ceased with the graystreaks of morning at Blazing Star[SEP]and the settlement awoke to a moralsense of cleanliness[SEP],三个待遮蔽词语only,morning,settlement的第一待遮蔽目标集分别为:only,morning,settlement,遮蔽语句对中的第一待遮蔽目标集,得到遮蔽后的语句对为第一遮蔽语句对,本例中,第一遮蔽语句对为:Unigram Masked:[CLS]The rainhad[MASK]ceased with the gray streaks of[MASK]at Blazing Star[SEP]and the[MASK]awoke to a moral sense of cleanliness[SEP]。

其中,对所述语句对进行遮蔽时,遮蔽操作的规则如下:

待遮蔽词语被真实遮蔽的概率为80%;待遮蔽词语被随机替换成其他词语的概率为10%;待遮蔽词语保留真实词语的概率为10%。

举例说明,在You are so nice.这个语句中选择对nice进行遮蔽:

80%的概率,nice被真实遮蔽,得到:You are so[MASK];

10%的概率,nice被随机替换成其他词语,得到:You are so milk。

10%的概率,nice不变,得到You are so nice。

所述待遮蔽词语保留真实词语的概率是10%,其目的是将表征偏向于实际观察到的单词;所述待遮蔽词语10%的概率被随机替换,由于只占语句对中的1.5%(待遮蔽词语是选取语句对所有词语中的15%,语句对所有词语中的15%有10%的概率被随机替换),所以并不会损害模型的理解能力。

S122b、根据所述第二待遮蔽目标集对所述语句对进行遮蔽,得到所述第二遮蔽语句对。

本发明实施例中,将所述语句对中第二待遮蔽目标集对应的词语遮蔽,得到遮蔽后的语句对,即为第二遮蔽语句对。

举例说明,上例中语句对为:[CLS]The rain had only ceased with the graystreaks of morning at Blazing Star[SEP]and the settlement awoke to a moralsense of cleanliness[SEP],三个待遮蔽词语only,morning,settlement的第二待遮蔽目标集分别为:had only,of morning,the settlement,遮蔽所述语句对中的第二待遮蔽目标集,得到遮蔽后的语句对即为第二遮蔽语句对,在本例中,第二遮蔽语句对为BigramMasked-1:[CLS]The rain[MASK][MASK]ceased with the gray streaks[MASK][MASK]atBlazing Star[SEP]and[MASK][MASK]awoke to a moral sense of cleanliness[SEP]。

S122c、根据所述第三待遮蔽目标集对所述语句对进行遮蔽,得到所述第三遮蔽语句对。

本发明实施例中,将所述语句对中第三待遮蔽目标集对应的词语遮蔽,得到遮蔽后的语句对,即为第三遮蔽语句对。

举例说明:语句对为:[CLS]The rain had only ceased with the gray streaksof morning at Blazing Star[SEP]and the settlement awoke to a moral sense ofcleanliness[SEP],三个待遮蔽词语only,morning,settlement的第三待遮蔽目标集分别为:only ceased,morning at,settlement awoke,遮蔽所述语句对中的第三待遮蔽目标集,得到遮蔽后的语句对即为第三遮蔽语句对,本例中,第三遮蔽语句对为Bigram Masked-2:[CLS]he rain had[MASK][MASK]with the gray streaks of[MASK][MASK]BlazingStar[SEP]and the[MASK][MASK]to a moral sense of cleanliness[SEP]。

S122d、根据所述第四待遮蔽目标集对所述语句对进行遮蔽,得到所述第四遮蔽语句对。

本发明实施例中,将所述语句对中第四待遮蔽目标集对应的词语遮蔽,得到遮蔽后的语句对,即为第四遮蔽语句对。

举例说明:语句对为:[CLS]The rain had only ceased with the gray streaksof morning at Blazing Star[SEP]and the settlement awoke to a moral sense ofcleanliness[SEP],三个待遮蔽词语only,morning,settlement的第四待遮蔽目标集分别为:had only ceased,of morning at,the settlement awoke,遮蔽所述语句对中的第四待遮蔽目标集,得到遮蔽后的语句对即为第四遮蔽语句对,本例中,第四遮蔽语句对为Trigram Masked:[CLS]The rain[MASK][MASK][MASK]with the gray streaks[MASK][MASK][MASK]Blazing Star[SEP]and[MASK][MASK][MASK]to a moral sense ofcleanliness[SEP]。

本发明实施例中,将遮蔽语句对组输入初始神经网络,初始神经网络的BERT模块会输出每个遮蔽语句对中每个词语的词向量,将每个遮蔽语句对中每个词语的词向量输入遮蔽词预测模型,遮蔽词预测模型会预测出每个遮蔽语句对中被遮蔽的词语,得到预测语句对组。将每个遮蔽语句对中每个词语的词向量输入下一句预测模型,下一句预测模型会输出预测标签,该预测标签表示下一句预测模型预测出的每个遮蔽语句对中两个语句的上下文关系,例如,对于第一遮蔽语句对,下一句预测模型会输出其预测的第一遮蔽语句对中两个语句的上下文关系。

举例说明,对于第一遮蔽语句对Unigram Masked:[CLS]The rain had[MASK]ceased with the gray streaks of[MASK]at Blazing Star[SEP]and the[MASK]awoketo a moral sense of cleanliness[SEP],遮蔽词预测模型会输出其预测的遮蔽前的第一待遮蔽目标集,假设输出的第一预测语句对为:[CLS]The rain had[to]ceased with thegray streaks of[morning]at Blazing Star[SEP]and the[settlement]awoke to amoral sense of cleanliness[SEP],每一个遮蔽语句对都有对应的预测语句对。

举例说明,下一句预测模型根据第一遮蔽语句对Unigram Masked:[CLS]The rainhad[MASK]ceased with the gray streaks of[MASK]at Blazing Star[SEP]and the[MASK]awoke to a moral sense of cleanliness[SEP],可以输出预测标签:预测Label-1,预测标签表示预测的第一遮蔽语句对中两个句子的上下文关系,即,在所述语句对中的后一个语句在原文章中是否紧跟在前一个语句之后,假设,预测Label-1=is next,表示初始神经网络预测第一遮蔽语句对中的两个句子是上下文连续的,每一个遮蔽语句对都对应的预测标签。

S2、根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

本发明实施例中,所述根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,将所述语句对和所述预测语句对组进行比较得到第一损失值,以及将所述真实标签与所述预测标签进行比较得到第二损失值,并根据第一损失值和第二损失值得到初始神经网络的损失值,并通过所述初始神经网络的损失值调整所述初始神经网络的参数。

进一步的,在本实施例的一个实现方式中,所述步骤S2包括:

S21、根据所述语句对、所述真实标签、所述预测语句对和所述预测标签计算总损失值。

本发明实施例中,根据所述语句对和所述语句对对应的所述预测语句对,可以得到第一损失值,根据所述真实标签和所述预测标签可以得到第二损失值,根据所述第一损失值和第二损失值可以得到总损失值。

具体的,步骤S21包括:

S211、根据所述预测语句对组和与所述语句对,计算第一损失值;

本发明实施例中,所述预测语句对组中包括四个预测语句对,所述四个预测语句对与所述遮蔽语句对组中的四个遮蔽语句对对应,所述遮蔽语句对组是所述语句对经遮蔽得到的,所述语句对相当于遮蔽词预测任务的标准答案,将通过初始神经网络得到所述预测语句对组中的每个预测语句对分别于所述语句对进行比较,可以得到第一损失值。

具体的,步骤S211包括:

S211a、根据所述语句对与所述第一预测语句对,得到第一差值;

S211b、根据所述语句对与所述第二预测语句对,得到第二差值;

S211c、根据所述语句对与所述第三预测语句对,得到第三差值;

S211d、根据所述语句对与所述第四预测语句对,得到第四差值。

在本发明实施例中,所述第一差值为计算得到的所述语句对中各词语的词向量和所述第一预测语句对中各词语的词向量的差值,可记为Loss(Unigram);所述第二差值为计算所述语句对中各词语的词向量和所述第二预测语句对中各词语的词向量的差值,可记为Loss(Bigram1);所述第三差值为计算得到的所述语句对中各词语的词向量和所述第三预测语句对中各词语的词向量的差值,可记为Loss(Bigram2);所述第四差值为计算得到的所述语句对中各词语的词向量和所述第四预测语句对中各词语的词向量的差值,可记为Loss(Trigram)。

S211e、根据所述第一差值、所述第二差值、所述第三差值和所述第四差值,计算所述第一损失值。

将上述计算得到的第一差值、第二差值、第三差值和第四差值,按照任务权重进行求和计算,得到遮蔽词预测任务的损失值,即所述第一损失值Loss1,如公式(1)所示:

Loss1=αLoss(Unigram)+βLoss(Bigram1)+γLoss(Bigram2)+

δLoss(Trigram) (1)

其中,α、β、γ和δ是初始神经网络的参数,Loss(Unigram)为第一差值,Loss(Bigram1)为第二差值,Loss(Bigram2)为第三差值,Loss(Trigram)表示第四差值,Loss1表示第一损失值。

S212、根据所述预测标签和与所述语句对对应的真实标签,计算得到第二损失值。

本发明实施例中,通过对所述语句对进行遮蔽操作得到所述遮蔽语句对组,所述语句对有真实标签,表示所述语句对中两个语句的上下文关系,所述初始神经网络中的下一句预测模型,预测了所述遮蔽语句对组中每个遮蔽语句对的预测标签,通过将每个遮蔽语句对对应的预测标签分别与所述真实标签进行比较,可以得到第二损失值。

举例说明,所述语句对为The rain had only ceased with the gray streaksof morning at Blazing Star[SEP]and the settlement awoke to a moral sense ofcleanliness[SEP].其对应的真实标签是:real label=is next,针对第一遮蔽语句对,第一遮蔽语句对经过初始神经网络预测得到的预测标签label-1,比较真实标签real label和预测标签label-1,同样的,针对第二遮蔽语句对,有第二遮蔽语句对对应的Loss(label-2),第三遮蔽语句对有对应的Loss(label-3),第四遮蔽语句对有对应的Loss(label-4)。根据真实标签和各遮蔽语句对对应的预测标签,采用交叉熵损失函数,可以计算下一句预测任务的损失值,即所述第二损失值,如公式(2)所示:

其中,y表示真实标签:真实real label,

S213、根据所述第一损失值和所述第二损失值计算得到所述总损失值。

在本实施例中,可以根据第一损失值和第二损失值确定总损失值,例如将第一损失值和第二损失值之和作为总损失值,具体的,通过公式(3)可以得到总损失值:

TotalLoss=Loss1+Loss2 (3)

其中,TotalLoss为总损失值,Loss1为第一损失值,Loss2为第二损失值。

S22、根据所述总损失值调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

总损失值包含了遮蔽词预测任务的损失值和下一句预测任务的损失值,根据总损失值修改初始神经网络的参数,直至满足预设训练条件,以得到已训练的自然语言模型。

本发明实施例中,所述预设训练条件可以是训练次数达到预设次数,可选的,预设次数可以是100,000次;所述预设训练条件也可以是直至模型收敛;由于可能出现训练次数还未达到预设次数,但初始神经网络已经收敛,可能导致重复不必要的工作,或者模型始终无法收敛,可能导致死循环,无法结束训练的过程,基于上述两种情况,预设训练条件还可以是达到预设次数或模型收敛。

请参阅图5,图5为本发明实施例中计算总损失值的整体流程图。

以语句对:The man went to the store.In the store,he bought a gallon ofmilk.为例。

a.获取语句对,及其真实标签;

b.在语句对中随机选取待遮蔽词语:man,of;

c.为待遮蔽词语:man,of选取待遮蔽目标集;

d.对语句对进行遮蔽,得到遮蔽语句对组。

针对此语句对,遮蔽语句对组为:

第一遮蔽语句对,Unigram Masked:[CLS]The[MASK]went to the store[SEP]Inthe store,he bought a gallon[MASK]milk[SEP].

第二遮蔽语句对,Bigram Masked-1:[CLS][MASK][MASK]went to the store[SEP]In the store,he bought a[MASK][MASK]milk[SEP].

第三遮蔽语句对,Bigram Masked-2:[CLS]The[MASK][MASK]to the store[SEP]In the store,he bought a gallon[MASK][MASK][SEP].

第四遮蔽语句对,Trigram Masked:[CLS][MASK][MASK][MASK]to the store[SEP]In the store,he bought a[MASK][MASK][MASK][SEP].

f.将遮蔽语句对组输入到初始神经网络,通过初始神经网络中的遮蔽词预测模型得到预测语句对组,通过初始神经网络中的下一句预测模型得到至少一个预测标签:预测Label。

g.根据预测语句对组和语句对,计算第一损失值,根据预测标签和真实标签,计算第二损失值;

h.根据第一损失值和第二损失值计算得到总损失值。

本发明实施例中自然语言模型的生成方法在训练过程中,设置各个词语的待遮蔽目标集,预测待遮蔽目标集相对于预测单个遮蔽词语,使得学习到的自然语言处理模型的语义表征具有待遮蔽词语的局部语义信息,而不仅是孤立的语义信息;在训练过程中,还预测了语句对中两个句子的上下文关系,使得学习到的自然语言处理模型的语义表征具有语句对的全局信息;通过遮蔽词预测任务和下一句预测任务联合训练得到的自然语言处理模型,使得遮蔽词预测任务和下一句预测任务的表现更好,结果更准确。

参阅图6,本发明实施例还提供了一种自然语言的处理方法,包括:

K1、获取待处理语句对,其中,所述待处理语句对包括两个待处理语句;

本发明实施例中,可以从任意文章中选取两个待处理语句,由选取的两个待处理语句组成所述待处理语句对。

举例说明,获取的待处理语句对为[CLS]The rain had only ceased with thegray streaks of morning at Blazing Star[SEP]and the settlement awoke to amoral sense of cleanliness[SEP]。

K2、在所述待处理语句对中随机选取部分词语,并对所述待处理语句对中的部分词语进行遮蔽,得到待处理遮蔽语句对。

本发明实施例中,随机选取部分词语的方式是,随机选取所述待处理语句对中所有词语中的预设百分比数量,例如所述预设百分比数量可以是15%,选取部分词语后,对所述待处理语句对中的部分词语进行遮蔽。

举例说明,在待处理语句对为[CLS]The rain had only ceased with the graystreaks of morning at Blazing Star[SEP]and the settlement awoke to a moralsense of cleanliness[SEP]随机选取部分词语进行遮蔽,假设选取了with,streaks和sense,遮蔽后得到的待处理遮蔽语句对为:[CLS]The rain had only ceased[MASK]thegray[MASK]of morning at Blazing Star[SEP]and the settlement awoke to a moral[MASK]of cleanliness[SEP]。

K3、将所述待处理遮蔽语句对输入已训练的自然语言模型,以得到待处理遮蔽语句对对应的第五预测语句对,以及目标标签,其中,所述目标标签表示所述待处理遮蔽语句对中两个语句的上下文关系,所述已训练的自然语言模型,为通过上述一种自然语言处理模型的生成方法得到的已训练的自然语言模型。

在本发明实施例中,将待处理遮蔽语句对输入已训练的自然语言模型,所述自然语言模型包括BERT模型、遮蔽词预测模型和下一句预测模型,所述待处理遮蔽语句对通过所述BERT模型,可以得到所述待处理遮蔽语句对中每个词语对应的词向量。将所述待处理遮蔽语句对中每个词语对应的词向量输入遮蔽词预测模型,可以得到第五预测语句对,所述第五预测语句对中包括所述遮蔽词预测模型所输出的预测词语,其中,所述预测词语为所述遮蔽词预测模型针对被遮蔽词语,所预测出的与所述被遮蔽词语对应的预测词语。将所述待处理遮蔽语句对中每个词语对应的词向量输入下一句预测模型,可以得到目标标签,所述目标标签表示在原文中,所述待处理遮蔽语句对中两个语句的后一个语句是否紧跟在前一个语句之后。

举例说明,将待处理遮蔽语句对:[CLS]The rain had only ceased[MASK]thegray[MASK]of morning at Blazing Star[SEP]and the settlement awoke to a moral[MASK]of cleanliness[SEP]输入自然语言模型,得到遮蔽词预测任务结果:第五预测语句对,以及下一句预测任务结果:目标标签。

在上述一种自然语言模型的生成方法中,本发明通过遮蔽词预测任务和下一句预测任务联合训练得到的自然语言处理模型,使得遮蔽词预测任务和下一句预测任务的结果更准确,表现更好。

在一个实施例中,本发明提供了一种计算机设备,该设备可以是终端,内部结构如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种自然语言模型的生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图7所示的仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

本发明实施例提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:

将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;

根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现以下步骤:

将遮蔽语句对组输入初始神经网络,以得到预测语句对组和预测标签,其中,所述遮蔽语句对组包括至少一个遮蔽语句对,所述预测标签表示所述至少一个遮蔽语句对中两个语句的上下文关系;所述遮蔽语句对组是通过对训练数据中的语句对进行预处理所得到的,所述训练数据包括所述语句对和真实标签,其中,所述语句对包括两个语句,所述真实标签表示所述语句对中两个语句的上下文关系;

根据所述语句对、所述真实标签、所述预测语句对组和所述预测标签调整所述初始神经网络的参数,并继续执行所述将所述遮蔽语句对组输入初始神经网络的步骤,直至满足预设训练条件,以得到已训练的自然语言模型。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号