CN110941945B - 语言模型预训练方法和装置 - Google Patents
语言模型预训练方法和装置 Download PDFInfo
- Publication number
- CN110941945B CN110941945B CN201911214094.1A CN201911214094A CN110941945B CN 110941945 B CN110941945 B CN 110941945B CN 201911214094 A CN201911214094 A CN 201911214094A CN 110941945 B CN110941945 B CN 110941945B
- Authority
- CN
- China
- Prior art keywords
- language model
- initial
- model
- training
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Machine Translation (AREA)
Abstract
本申请公开了语言模型预训练方法和装置。该方法的一具体实施方式包括:获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型。该实施方式可以显示捕获文本的音韵信息,有效提升了语言模型输出文本的语义表示效果。
Description
技术领域
本申请涉及计算机技术领域,具体涉及自然语言处理技术领域,尤其涉及一种语言模型预训练方法和装置。
背景技术
现有技术中,NLP(Natural Language Processing,自然语言处理)领域中目前最先进的语言表征模型是BERT(Bidirectional Encoder Representations fromTransformers,源于Transformers的双向编码器),其是一个多层Transformer Encoder模型,该模型通过在大量自然文本上优化两个自监督任务:1)字符级去噪自编码任务(将输入端随机掩码的字符,还原为原始输入字符),2)句子连贯性预测任务(预测两句是否是连贯)学习自然文本的语言表征。
发明内容
本申请实施例提出了语言模型预训练方法和装置。
第一方面,本申请提供了一种语言模型预训练方法,该方法包括:获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型;其中,训练样本的样本数据包括遮蔽后的原始文本和原始文本音韵信息,训练样本的第一标注信息为所述原始文本中的遮蔽字或词,训练样本的第二标注信息为原始文本音韵信息。
在一些实施例中,样本数据通过以下方式得到:获取原始文本和原始文本音韵信息;随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本;连接遮蔽后的原始文本和原始文本音韵信息,得到样本数据。
在一些实施例中,初始语言模型包括:字符编码器和基于BERT机制构建的语言模型,其中,字符编码器用于将输入数据中的每个字转换成对应的字向量,并将字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到基于BERT机制构建的语言模型的输入向量。
在一些实施例中,音韵信息包括音韵停顿信息、音子信息和音调信息。
在一些实施例中,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型,包括如下的交替训练步骤:将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练;响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练;响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行所述交替训练步骤。
第二方面,本申请提供了一种语言模型预训练装置,该装置包括:确定模块,配置用于获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取模块,配置用于获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;训练模块,配置用于将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与所述初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型;其中,训练样本的样本数据包括遮蔽后的原始文本和原始文本音韵信息,训练样本的第一标注信息为所述原始文本中的遮蔽字或词,训练样本的第二标注信息为原始文本音韵信息。
在一些实施例中,样本数据通过以下方式得到:获取原始文本和原始文本音韵信息;随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本;连接遮蔽后的原始文本和原始文本音韵信息,得到样本数据。
在一些实施例中,初始语言模型包括:字符编码器和基于BERT机制构建的语言模型,其中,字符编码器用于将输入数据中的每个字转换成对应的字向量,并将字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到基于BERT机制构建的语言模型的输入向量。
在一些实施例中,音韵信息包括音韵停顿信息、音子信息和音调信息。
在一些实施例中,训练模块进一步包括如下的交替训练步骤:将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练;响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练;响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行所述交替训练步骤。
第三方面,本申请提供了一种电子设备,该电子设备包括一个或多个处理器;存储装置,其上存储有一个或多个程序,当一个或多个程序被该一个或多个处理器执行,使得一个或多个处理器实现语言模型预训练方法。
第四方面,本申请提供了一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现语言模型预训练方法。
本申请提供的语言模型预训练方法和装置,通过获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型;其中,训练样本的样本数据包括遮蔽后的原始文本和原始文本音韵信息,训练样本的第一标注信息为所述原始文本中的遮蔽字或词,训练样本的第二标注信息为原始文本音韵信息,使得训练后的语言模型可以显示捕获文本的音韵信息,有效提升了语言模型输出文本的语义表示效果。
附图说明
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的语言模型预训练方法的一个实施例的流程图;
图3是根据本申请的语言模型预训练方法的一个应用场景的示意图;
图4是根据本申请的语言模型预训练方法的又一个实施例的流程图;
图5是根据本申请的语言模型预训练装置的一个实施例的示意图;
图6是适于用来实现本申请实施例的服务器的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的语言模型预训练方法的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101,网络102和服务器103。其中,服务器103可以是用来提供模型训练支持的后台服务器。网络102用以在终端设备101和服务器103之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
终端设备101用于获取训练样本集并将训练样本集发送至服务器103进行模型训练,或者直接将训练样本集送入初始语言模型进行模型训练。
服务器103可以是提供各种服务的服务器,例如用来提供模型训练后台支持的后台服务器。服务器105可以用于获取初始语言模型和训练初始语言模型的训练数据集,并将样本数据送入初始语言模型,对初始去噪自编码模型、序列到序列模型和初始语言模型进行训练,得到训练后的语言模型。
服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的语言模型预训练方法一般由服务器103执行,或者终端设备101执行。相应地,语言模型预训练的装置也一般设置于服务器103中。
应该理解,图1中的终端设备101,网络102和服务器103的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
图2示出了可以应用于本申请的语言模型预训练方法的实施例的流程示意图200。语言模型预训练方法包括以下步骤:
步骤201,获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系。
在本实施例中,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字与字之间的关联关系。该初始语言模型可以通过预先设定的算法构建,例如,该初始语言模型可以是根据神经网络算法构建的神经网络语言模型。
在一些可选的方式中,初始语言模型包括:字符编码器和基于BERT机制构建的语言模型。
在本实现方式中,字符编码器用于将输入到初始语言模型的文本数据中的每个字转换成对应的字向量,并将字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到基于BERT机制构建的语言模型的输入向量。
基于BERT机制构建的初始语言模型,采用了Transformer的编码器,即Transformer Encoder,作为主体模型结构。
Transformer Encoder用于将输入向量经过多头自注意力层,得到向量矩阵;将向量矩阵乘上系数矩阵之后进行压缩,以得到第一特征矩阵,将特征矩阵和输入向量依次进行残差连接和归一化,得到第二特征矩阵,将第二特征矩阵输入到一个全连接的前馈神经网络,然后再依次进行残差连接和归一化,以得到预训练好的语义向量。
其中,上述将输入向量经过多头自注意力层,得到向量矩阵,具体可以包括:将所述输入向量经过多头自注意力层,每个注意力层里对输入向量均进行线性变化,以得到查询向量、键向量以及值向量,这里,线性变化包括将输入向量乘以第一权值矩阵以得到查询向量、将所述输入向量乘以第二权值矩阵以得到键向量,以及将输入向量乘以第三权值矩阵以得到值向量。
通过待编码字的查询向量和其它字的键向量得到其它字对待编码字的注意力的权重,将注意力权重和每个值向量相乘后的值进行累加得到每个字的self-attention输出,将所有注意力层里的self-attention输出进行拼接得到多头注意力层的向量矩阵。
步骤202,获取训练初始语言模型的训练样本集,所述训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息。
在本实施例中,执行主体获取训练初始语言模型的训练样本集,其中,训练样本可以是经人工标注的样本数据,也可以是经相关编码器进行转换后得到的样本数据。
其中,训练样本的样本数据包括遮蔽后的原始文本和原始文本音韵信息。训练样本的第一标注信息为原始文本中的遮蔽字或词,训练样本的第二标注信息为所述原始文本音韵信息。
这里,遮蔽后的原始文本为对原始文本中的某个字或词进行遮蔽后得到的文本,具体的遮蔽方式可以为替换、掩码、删除等。
原始文本音韵信息可以为原始文本的音子信息,也可以为原始文本的音子和音调信息,本申请对此不作限定。
具体地,原始文本为“我喜欢语文课”,对原始文本进行遮蔽,如将“语文”一词替换为“数学”,则遮蔽后的原始文本为“我喜欢数学课”。原始文本音韵信息为原始文本的音子信息,则原始文本音韵信息为“woxihuanyuwenke”。相应地,样本数据为“我喜欢数学课woxihuanyuwenke”,第一标注信息为“语文”,第二标注信息为“woxihuanyuwenke”。
在一些可选的方式中,音韵信息包括音韵停顿信息、音子信息和音调信息。
在本实现方式中,原始文本音韵信息包括了原始文本的音韵停顿信息、音子信息和音调信息。
具体地,原始文本是“语音合成系统已被广泛运用于日常生活中”,则原始文本音韵信息为“yu3yin1he2cheng2|xi4tong3$yi3bei4|guang3fan4|yun4yong4yu2#ri4chang2|sheng1huo2|zhong1”。其中,字母表示源文本序列中每个字对应的音子信息,数字1、2、3、4表示源文本序列中每个字对应音调信息,“|#$”分别表示停顿间隔由短到长的音韵词、音韵短语、语调短语。
本实现方式中,音韵信息包括音韵停顿信息、音子信息和音调信息,音韵信息更加丰富,可有助于进一步提升语言模型输出文本的语义表示效果。
在一些可选的方式中,样本数据通过以下方式得到:
(1)执行主体获取原始文本和原始文本音韵信息。例如,“我喜欢上课woxihuanshangke”,其中,原始文本为“我喜欢上课”,原始文本音韵信息为“woxihuanshangke”。
(2)执行主体随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本。具体地,执行主体可以随机遮住原始文本中15%的字或词,其中,80%的字或词用[MASK]代替,例如,我的头发很长→我的头发很[MASK],10%的字或词被随机替换成任意词汇,例如,我的头发很长→我的头发很短,10%的词不做任何处理,例如,我的头发很长→我的头发很长。
通过上述随机遮蔽原始文本字/词的操作,可缓解后续训练后的语言模型缺乏词边界的问题,同时后续在对去噪自编码模型训练中,去噪自编码模型并不知道输入对应位置的词汇是否为正确词汇(10%概率),这就迫使去噪自编码模型更多地依赖上下文信息去预测词汇,并且赋予了去噪自编码模型一定的纠错能力。
(3)执行主体连接遮蔽后的原始文本和原始文本音韵信息,即将遮蔽后的原始文本和原始文本音韵信息拼接成一个句子,得到训练样本。同时,执行主体还可以在句子开头、句子结尾以及原始文本和原始文本音韵信息连接处设置标签以进行区分。
具体地,执行主体可以在句子开头开始设置[CLS]标签,在遮蔽后的原始文本和原始文本音韵信息连接处和句子结束处设置[SEP]标签。
例如,原始文本为“语音合成系统已被广泛运用于日常生活中”,遮蔽后的原始文本为“语音合成系统已被广泛运用于日#生活中”,被遮蔽的字为“常”。原始文本音韵信息为“yu3yin1he2cheng2|xi4tong3$yi3bei4|guang3fan4|yun4yong4yu2#ri4chang2|sheng1huo2|zhong1”。将遮蔽后的原始文本和原始文本音韵信息进行连接的语句为“[CLS]语音合成系统已被广泛运用于日#生活中[SEP]yu3yin1he2cheng2|xi4tong3$yi3bei4|guang3fan4|yun4yong4yu2#ri4chang2|sheng1[SEP]”。其中,[CLS]为用于表示遮蔽后的原始文本开始的标签,[SEP]为表示遮蔽后的原始文本结束和原始文本音韵信息结束的标签。
步骤203,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型。
在本实施例中,执行主体将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,通过对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行训练,直到初始去噪自编码模型和初始序列到序列模型满足预设的条件,如损失值满足预设条件或者达到最大迭代次数,得到训练后的语言模型。
其中,对初始语言模型和初始去噪自编码模型的训练以及对初始语言模型和初始序列到序列语言模型的训练可以同时进行,例如,执行主体可以分别计算初始去噪自编码模型和初始序列到序列模型的损失值,并对两个模型的损失值加权求平均,若两个模型的损失值加权求平均后的值满足预设的收敛条件,则得到训练后的语言模型。
这里,去噪自编码模型,主要用于正确预测出输入文本数据中进行了随机修改的字或词,例如,替换、掩码或者删除的字或词。
具体地,输入到去噪自编码模型的遮蔽后的文本数据是“你是个#人”,其中,“#”表示原始文本中被遮蔽的字或词,此处被遮蔽的词为“好”。去噪自编码模型的任务是正确预测“#”所替代的词。
序列到序列语言模型任务用于根据输入的文本数据,预测包含输入文本数据信息的输出文本数据。
对序列到序列模型的训练可以采用Teacher Forcing方式进行训练,即将要预测的序列作为输入进行训练,以帮助模型加速收敛。
例如,输入到序列到序列模型的文本数据是“你是个#人nishigehaoren”,输出文本数据为“nishigehaoren”,输出文本数据包括输入文本数据的音子信息。
继续参见图3,图3是根据本实施例的语言模型预训练方法的应用场景的一个示意图。
在图3的应用场景中,执行主体301获取初始语言模型302和训练初始语言模型的训练数据集,其中训练数据集包括样本数据303,例如,“我喜欢上##课woxihuanshangshuxueke”,其对应的原始文本为“我喜欢上数学课”,故被遮蔽的词为“数学”,相应地,第一标注信息304为“数学”,第二标注信息305即原始文本音韵信息为“woxihuanshangshuxueke”。执行主体301将样本数据303作为输入,将第一标注信息304,例如“数学”,作为与初始语言模型302的第一输出端连接的初始去噪自编码模型306的期望输出,将第二标注信息,例如“woxihuanshangshuxueke”,作为与初始语言模型302的第二输出端连接的初始序列到序列模型307的期望输出。执行主体301通过初始语言模型302、初始去噪自编码模型306和初始序列到序列模型307进行训练,若去噪自编码模型306和序列到序列模型307满足预设的收敛条件,则得到训练后的语言模型。
本公开的实施例提供的语言模型预训练方法,通过获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型。该实施方式可以显示捕获文本的音韵信息,有效提升了语言模型输出文本的语义表示效果。
进一步参考图4,其示出了语言模型预训练方法的又一个实施例的流程400。本实施例的语言模型预训练方法的流程400,可包括以下步骤:
步骤401,获取初始语言模型。
在本实施例中,步骤401的实现细节和技术效果,可以参考对步骤201的描述,在此不再赘述。
步骤402,获取训练初始语言模型的训练样本集。
在本实施例中,步骤402的实现细节和技术效果,可以参考对步骤202的描述,在此不再赘述。
步骤403,将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练。
在本实施例中,执行主体交替执行对初始语言模型和初始去噪自编码模型以及对初始语言模型和初始序列到序列模型的训练,即执行主体可以先将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练,以更新当前语言模型和当前去噪自编码模型的系数。
其中,执行主体在对当前去噪自编码模型和当前语言模型进行训练时,若当前语言模型包括字符编码器和基于BERT机制构建的语言模型,则Transformer Encoder中各层Attention矩阵的掩码矩阵仅基于遮蔽后的原始文本中的噪声位置进行计算,即将掩码矩阵中源文本序列中的噪声位置设为0,其他位置设为1。
步骤404,响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练。
在本实施例中,执行主体响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,如损失值满足预设条件或者达到预设的迭代次数,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练,以更新当前语言模型和当前序列到序列模型的系数。
执行主体在对当前语言模型和当前序列到序列模型进行训练时,若当前语言模型包括字符编码器和基于BERT机制构建的语言模型,在训练当前序列到序列模型时,Transformer Encoder中各层Attention矩阵的掩码矩阵中对应目标文本序列的掩码矩阵设置为下三角矩阵,即仅实现对目标文本序列的预测,使序列到序列模型的输出端各时刻不会看到未来的信息。
步骤405,响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行所述交替训练步骤。
在本实施例中,执行主体响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,如损失值满足预设条件或者达到预设的迭代次数,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行上述交替训练步骤,若满足则得到训练后的语言模型。
本实施例与实施例2的主要区别在于交替进行对初始语言模型和初始去噪自编码模型,以及初始语言模型和初始序列到序列模型的训练。即执行主体依次执行将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练;响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练;响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行上述交替训练步骤,若满足,则得到训练后的语言模型。该实现方式可有效减少模型训练中的运算量,较快达到预设的收敛效果。
由于上述训练后的语言模型是根据样本训练样本对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练得到的,其中训练样本包括遮蔽后的原始文本和原始文本音韵信息、原始文本中的遮蔽字或词和原始原始文本音韵信息,因此将原始文本输入到训练后的语言模型,可以输出包含输入原始文本的字与字之间关联关系和音韵信息的语义表示信息。
进一步地,训练后的语言模型还可以经过简单的精细调整(Fine-tune)以应用于学术特定领域内的下游任务,例如情感分析,可以将训练后的语言模型输出的第一个字符的语义表示输送给softmax层以得到分类结果输出。由于训练后的语言模型的输出包含了输入的原始文本的字与字之间的关联关系和音韵信息,因而将训练后的语言模型经过精细调整应用于学术特定领域,可以有效提升输出文本的语义表示效果。
这里,训练后的语言模型可以基于上述任一实施例得到。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了一种语言模型预训练装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的语言模型预训练装置500包括:确定模块501、获取模块502、训练模块503。其中,确定模块501,配置用于获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取模块502,配置用于获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;训练模块503,配置用于将样本数据作为输入,将第一标注信息作为与初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型。
在本实施例中,语言模型预训练装置500中的确定模块501可以通过预先设定的算法构建,例如,该初始语言模型可以是根据神经网络算法构建的神经网络语言模型。
在本实施例的一些可选的实现方式中,初始语言模型包括:字符编码器和基于BERT机制构建的语言模型。
在本实现方式中,字符编码器用于将输入到初始语言模型的文本数据中的每个字转换成对应的字向量,并将字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到基于BERT机制构建的语言模型的输入向量。
基于BERT机制构建的初始语言模型,采用了Transformer的编码器,即Transformer Encoder,作为主体模型结构。
在本实施例中,上述获取模块502获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息。
在本实施例的一些可选的实现方式中,音韵信息包括音韵停顿信息、音子信息和音调信息
在本实施例的一些可选的实现方式中,训练样本中的样本数据通过以下方式得到:(1)执行主体获取原始文本和原始文本音韵信息;(2)执行主体随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本;(3)执行主体连接遮蔽后的原始文本和原始文本音韵信息,即将遮蔽后的原始文本和原始文本音韵信息拼接成一个句子,得到训练样本。
在本实施例中,上述训练模块503对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型。
下面参考图6,其示出了适于用来实现本申请实施例的客户端设备或服务器的计算机系统600的结构示意图。
如图6所示,计算机系统600包括处理器(例如,中央处理单元CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括确定模块、获取模块、训练模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,确定模块还可以被描述为“获取初始语言模型,所述初始语言模型用于确定输入到所述初始语言模型的文本数据中包含的字之间的关联关系”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中的装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入客户端端设备中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当该一个或者多个程序被一个设备执行时,使得该设备:获取初始语言模型,初始语言模型用于确定输入到初始语言模型的文本数据中包含的字之间的关联关系;获取训练初始语言模型的训练样本集,训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;将样本数据作为输入,将第一标注信息作为与所述初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对初始语言模型、初始去噪自编码模型和初始序列到序列模型进行预训练,得到训练后的语言模型,其中,训练样本的样本数据包括遮蔽后的原始文本和所述原始文本音韵信息,所述训练样本的第一标注信息为所述原始文本中的遮蔽字或词,训练样本的第二标注信息为原始文本音韵信息。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (12)
1.一种语言模型预训练方法,所述方法包括:
获取初始语言模型,所述初始语言模型用于确定输入到所述初始语言模型的文本数据中包含的字之间的关联关系;
获取训练初始语言模型的训练样本集,所述训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;
将所述样本数据作为输入,将第一标注信息作为与所述初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与所述初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对所述初始语言模型、所述初始去噪自编码模型和所述初始序列到序列模型进行预训练,得到训练后的语言模型;
其中,所述训练样本的样本数据包括遮蔽后的原始文本和所述原始文本音韵信息,所述训练样本的第一标注信息为所述原始文本中的遮蔽字或词,所述训练样本的第二标注信息为所述原始文本音韵信息。
2.根据权利要求1所述的方法,所述样本数据通过以下方式得到:
获取原始文本和原始文本音韵信息;
随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本;
连接所述遮蔽后的原始文本和原始文本音韵信息,得到样本数据。
3.根据权利要求1所述的方法,所述初始语言模型包括:字符编码器和基于BERT机制构建的语言模型,其中,所述字符编码器用于将输入数据中的每个字转换成对应的字向量,并将所述字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到所述基于BERT机制构建的语言模型的输入向量。
4.根据权利要求1-3任一所述的方法,所述音韵信息包括音韵停顿信息、音子信息和音调信息。
5.根据权利要求1-3任一所述的方法,所述对所述初始语言模型、所述初始去噪自编码模型和所述初始序列到序列模型进行预训练,得到训练后的语言模型,包括如下的交替训练步骤:
将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练;
响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练;
响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行所述交替训练步骤。
6.一种语言模型预训练装置,所述装置包括:
确定模块,配置用于获取初始语言模型,所述初始语言模型用于确定输入到所述初始语言模型的文本数据中包含的字之间的关联关系;
获取模块,配置用于获取训练初始语言模型的训练样本集,所述训练样本集中的训练样本包括样本数据、第一标注信息和第二标注信息;
训练模块,配置用于将所述样本数据作为输入,将第一标注信息作为与所述初始语言模型的第一输出端连接的初始去噪自编码模型的期望输出,并将第二标注信息作为与所述初始语言模型的第二输出端连接的初始序列到序列模型的期望输出,对所述初始语言模型、所述初始去噪自编码模型和所述初始序列到序列模型进行预训练,得到训练后的语言模型;
其中,所述训练样本的样本数据包括遮蔽后的原始文本和所述原始文本音韵信息,所述训练样本的第一标注信息为所述原始文本中的遮蔽字或词,所述训练样本的第二标注信息为所述原始文本音韵信息。
7.根据权利要求6所述的装置,所述样本数据通过以下方式得到:
获取原始文本和原始文本音韵信息;
随机遮蔽原始文本中的字或词,得到遮蔽后的原始文本;
连接所述遮蔽后的原始文本和原始文本音韵信息,得到样本数据。
8.根据权利要求6所述的装置,所述初始语言模型包括:字符编码器和基于BERT机制构建的语言模型,其中,所述字符编码器用于将输入数据中的每个字转换成对应的字向量,并将所述字向量、每个字所在的句子向量以及每个字的位置向量进行相加,得到所述基于BERT机制构建的语言模型的输入向量。
9.根据权利要求6-8任意一项所述的装置,所述音韵信息包括音韵停顿信息、音子信息和音调信息。
10.根据权利要求6-8任意一项所述的装置,所述训练模块进一步包括如下的交替训练步骤:
将样本数据作为输入,将该样本数据的第一标注信息作为当前去噪自编码模型的期望输出,对当前去噪自编码模型和当前语言模型进行训练;
响应于当前去噪自编码模型和当前语言模型满足预先设置的第一收敛条件,将样本数据作为输入,将该样本数据的第二标注信息作为当前序列到序列模型的期望输出,对当前序列到序列模型和当前语言模型进行训练;
响应于当前序列到序列模型和当前语言模型满足预先设置的第二收敛条件,判断当前去噪自编码模型和当前语言模型是否满足预先设置的第一收敛条件,若不满足,则重新执行所述交替训练步骤。
11.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-5中任一所述的方法。
12.一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如权利要求1-5中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911214094.1A CN110941945B (zh) | 2019-12-02 | 2019-12-02 | 语言模型预训练方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911214094.1A CN110941945B (zh) | 2019-12-02 | 2019-12-02 | 语言模型预训练方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110941945A CN110941945A (zh) | 2020-03-31 |
CN110941945B true CN110941945B (zh) | 2021-03-23 |
Family
ID=69908842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911214094.1A Active CN110941945B (zh) | 2019-12-02 | 2019-12-02 | 语言模型预训练方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110941945B (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522944B (zh) * | 2020-04-10 | 2023-11-14 | 北京百度网讯科技有限公司 | 用于输出信息的方法、装置、设备以及存储介质 |
CN111832292B (zh) * | 2020-06-03 | 2024-02-02 | 北京百度网讯科技有限公司 | 文本识别处理方法、装置、电子设备和存储介质 |
CN113806471A (zh) * | 2020-06-17 | 2021-12-17 | 广东博智林机器人有限公司 | 文本匹配方法、装置、电子设备及存储介质 |
CN114386395A (zh) * | 2020-10-16 | 2022-04-22 | 阿里巴巴集团控股有限公司 | 多语言文本的序列标注方法、装置及电子设备 |
CN112329391B (zh) * | 2020-11-02 | 2024-08-06 | 上海明略人工智能(集团)有限公司 | 目标编码器生成方法、装置、电子设备和计算机可读介质 |
CN112329392B (zh) * | 2020-11-05 | 2023-12-22 | 上海明略人工智能(集团)有限公司 | 双向编码的目标编码器构建方法及装置 |
CN112435656B (zh) * | 2020-12-11 | 2024-03-01 | 平安科技(深圳)有限公司 | 模型训练方法、语音识别方法、装置、设备及存储介质 |
CN112598039B (zh) * | 2020-12-15 | 2024-01-16 | 禾量科技(上海)有限公司 | 获取nlp分类领域阳性样本方法及相关设备 |
CN112699643B (zh) * | 2020-12-23 | 2024-04-19 | 车智互联(北京)科技有限公司 | 一种生成语言模型的方法和文章自动生成方法 |
CN112966712B (zh) * | 2021-02-01 | 2023-01-20 | 北京三快在线科技有限公司 | 语言模型训练方法、装置、电子设备和计算机可读介质 |
CN113011126B (zh) * | 2021-03-11 | 2023-06-30 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、电子设备及计算机可读存储介质 |
CN113011136B (zh) * | 2021-04-02 | 2022-09-16 | 中国人民解放军国防科技大学 | 基于相关性判断的sql解析方法、装置和计算机设备 |
CN113095040B (zh) * | 2021-04-16 | 2024-07-16 | 支付宝(杭州)信息技术有限公司 | 一种编码网络的训练方法、文本编码方法和系统 |
CN113627530B (zh) * | 2021-08-11 | 2023-09-15 | 中国平安人寿保险股份有限公司 | 相似问题文本生成方法、装置、设备及介质 |
CN114049632A (zh) * | 2021-11-25 | 2022-02-15 | 北京有竹居网络技术有限公司 | 图像字符识别模型训练方法、图像字符识别方法及装置 |
CN114330512B (zh) * | 2021-12-13 | 2024-04-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
CN115114433B (zh) * | 2022-05-19 | 2024-04-02 | 腾讯科技(深圳)有限公司 | 语言模型的训练方法、装置、设备及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201804807D0 (en) * | 2018-03-26 | 2018-05-09 | Orbital Media And Advertising Ltd | Interaactive systems and methods |
CN109685116B (zh) * | 2018-11-30 | 2022-12-30 | 腾讯科技(深圳)有限公司 | 图像描述信息生成方法和装置及电子装置 |
CN110136709A (zh) * | 2019-04-26 | 2019-08-16 | 国网浙江省电力有限公司信息通信分公司 | 语音识别方法及基于语音识别的视频会议系统 |
KR20190080834A (ko) * | 2019-06-18 | 2019-07-08 | 엘지전자 주식회사 | 사투리 음소 적응 학습 시스템 및 방법 |
CN110222188B (zh) * | 2019-06-18 | 2023-04-18 | 深圳司南数据服务有限公司 | 一种多任务学习的公司公告处理方法及服务端 |
CN110232439B (zh) * | 2019-08-07 | 2019-12-24 | 南京硅基智能科技有限公司 | 一种基于深度学习网络的意图识别方法 |
-
2019
- 2019-12-02 CN CN201911214094.1A patent/CN110941945B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110941945A (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110941945B (zh) | 语言模型预训练方法和装置 | |
US20210295858A1 (en) | Synthesizing speech from text using neural networks | |
CN110287283B (zh) | 意图模型训练方法、意图识别方法、装置、设备及介质 | |
CN107783960B (zh) | 用于抽取信息的方法、装置和设备 | |
WO2021139108A1 (zh) | 情绪智能识别方法、装置、电子设备及存储介质 | |
CN110489555A (zh) | 一种结合类词信息的语言模型预训练方法 | |
CN111930914B (zh) | 问题生成方法和装置、电子设备以及计算机可读存储介质 | |
CN109933662A (zh) | 模型训练方法、信息生成方法、装置、电子设备和计算机可读介质 | |
CN112331177B (zh) | 基于韵律的语音合成方法、模型训练方法及相关设备 | |
CN107437417B (zh) | 基于循环神经网络语音识别中语音数据增强方法及装置 | |
US20210264111A1 (en) | Predicting joint intent-slot structure | |
US20230023789A1 (en) | Method for identifying noise samples, electronic device, and storage medium | |
CN111625634A (zh) | 词槽识别方法及装置、计算机可读存储介质、电子设备 | |
US20200160843A1 (en) | Cross-modal sequence distillation | |
CN111414745A (zh) | 文本标点确定方法与装置、存储介质、电子设备 | |
CN115292470B (zh) | 一种用于小额贷款智能客服的语义匹配方法及系统 | |
US20240104352A1 (en) | Contrastive Learning and Masked Modeling for End-To-End Self-Supervised Pre-Training | |
CN110930975A (zh) | 用于输出信息的方法和装置 | |
Li et al. | Knowledge-Based Linguistic Encoding for End-to-End Mandarin Text-to-Speech Synthesis. | |
CN115952854B (zh) | 文本脱敏模型的训练方法、文本脱敏方法及应用 | |
CN112036122A (zh) | 文本识别方法、电子设备及计算机可读介质 | |
US20240104346A1 (en) | Method and device for compressing generative pre-trained language models via quantization | |
CN116502649A (zh) | 文本生成模型的训练方法、装置、电子设备及存储介质 | |
CN115641860A (zh) | 模型的训练方法、语音转换方法和装置、设备及存储介质 | |
CN114297349A (zh) | 模型训练方法、对话摘要生成方法、系统、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |