CN110826325B - 一种基于对抗训练的语言模型预训练方法、系统及电子设备 - Google Patents
一种基于对抗训练的语言模型预训练方法、系统及电子设备 Download PDFInfo
- Publication number
- CN110826325B CN110826325B CN201911068053.6A CN201911068053A CN110826325B CN 110826325 B CN110826325 B CN 110826325B CN 201911068053 A CN201911068053 A CN 201911068053A CN 110826325 B CN110826325 B CN 110826325B
- Authority
- CN
- China
- Prior art keywords
- vector
- network
- sentence
- word
- authentication
- 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
- 238000012549 training Methods 0.000 title claims abstract description 101
- 238000000034 method Methods 0.000 title claims abstract description 39
- 239000013598 vector Substances 0.000 claims abstract description 353
- 238000000605 extraction Methods 0.000 claims abstract description 77
- 238000006243 chemical reaction Methods 0.000 claims description 21
- 230000011218 segmentation Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 17
- 230000006870 function Effects 0.000 claims description 15
- 230000004048 modification Effects 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 6
- 230000000873 masking effect Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000002715 modification method Methods 0.000 claims description 2
- 238000004422 calculation algorithm Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 239000000284 extract Substances 0.000 description 8
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005457 optimization Methods 0.000 description 4
- 238000010801 machine learning Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000013604 expression vector Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及一种基于对抗训练的语言模型预训练方法包括:步骤S1,提供一个语义提取网络、鉴别网络及原始文本;步骤S2,将原始文本中的词转换为第一初始词向量,并输入至语义提取网络,通过语义提取网络提取原始文本的第一向量;步骤S3,对原始文本进行修改,将修改文本中的词转换为第二初始词向量,并输入至语义提取网络,通过语义提取网络提取修改文本的第二向量;步骤S4,将第一向量和第二向量输入鉴别网络,以获得鉴别网络的鉴别结果;步骤S5,根据鉴别网络的鉴别结果以对语义提取网络及鉴别网络进行优化;步骤S6,重复上述步骤S2‑S5,直至第一向量与第二向量可通过鉴别网络的鉴别,以获得优化后的语义提取网络与鉴别网络。
Description
【技术领域】
本发明涉及到自然语言处理领域,特别涉及一种基于对抗训练的语言模型预训练方法、系统及电子设备。
【背景技术】
语言模型的预训练是自然语言处理中的重要先行步骤,其目的是从大规模未经标注的语料中,学习字或词在带有上下文基础上的表达方式——高维空间的一个向量。预训练模型的意义在于为后续的特定任务的训练提供初始化的字词表达向量,进而降低后续任务的训练时间,提升后续任务的效果。因此,一个好的预训练方法,对自然处理处理的大量任务,有至关重要的作用。
现有的语言预训练模型中有的仅考虑了前文的信息,而忽略了后文的信息,有的仅提取上下文信息中对预测某一个位置词有帮助的信息,而忽略了文本的整体信息、非预测词之间的相关信息,因此他们对于上下文关系、文本整体信息的提取不够充分,从而影响了语言预训练模型在后续任务中的表现。此外,现有的预训练方法往往会在训练中对训练文本添加<MASK>干扰,这带来了两个问题:一是<MASK>干扰本身不会在后续任务的输入文本中出现,也就是说,训练文本和后续任务输入文本并不一致,这影响了预训练模型在后续任务中的表现;二是<MASK>干扰过于单一,以此训练使得预训练模型仅注重文本的一部分信息,信息提取不完善。
如何克服现有语言预训练模型的不足,成了继续解决的问题。
【发明内容】
为克服现有技术中存在的问题,本发明提供了一种基于对抗训练的语言模型预训练方法、系统及电子设备。
本发明解决技术问题的方案是提供一种基于对抗训练的语言模型预训练方法,其特征在于:所述语言预训练模型包括语义提取网络与鉴别网络,其包括以下步骤:步骤S1,提供一个语义提取网络、鉴别网络及原始文本;步骤S2,将原始文本中的词转换为第一初始词向量,并输入至语义提取网络,通过语义提取网络提取原始文本的第一向量,所述第一向量包括第一词向量和第一句向量;步骤S3,对原始文本进行修改,将修改文本中的词转换为第二初始词向量,并输入至语义提取网络,通过语义提取网络提取修改文本的第二向量;其中,对原始文本的修改方式包括对部分词语掩膜、打乱原始顺序,所述第二向量包括第二词向量和第二句向量;步骤S4,将第一向量和第二向量输入鉴别网络,以通过鉴别网络分别对第一词向量与第二词向量、第一句向量与第二句向量进行匹配度计算,以完成对抗任务,以获得鉴别网络对于第一向量与第二向量的鉴别结果;步骤S5,根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化;步骤S6,重复上述步骤S2-S5,直至第一向量与第二向量可通过鉴别网络的鉴别,以获得优化后的语义提取网络与鉴别网络。
优选地,所述语义提取网络包括词级语义提取网络与句级语义提取网络;步骤S2进一步包括:步骤S21,将所述原始文本中的每个句子进行分词;步骤S22,将分词之后的每个句子中的每个词转化为第一初始词向量;步骤S23,在所述每个句子的句首添加识别字符并将所述识别字符转化为第一字符向量;步骤S24,将所述步骤S22中的第一初始词向量与所述步骤S23中的第一字符向量输入至词级语义提取网络、句级语义提取网络以获得与每个句子对应的第一向量,所述第一向量包括第一词向量与第一句向量;步骤S3进一步包括以下步骤:步骤S31,对原始文本进行修改,将所述修改文本中的每个句子进行分词;步骤S32,将分词之后的每个句子中的每个词转化为第二初始词向量;步骤S33,在所述每个句子的句首添加识别字符并将所述识别字符转化为第二字符向量;步骤S34,将所述步骤S32中的第二初始词向量与所述步骤S33中的第二字符向量分别输入至词级语义提取网络与句级语义提取网络以获得与每个句子对应的第二向量,所述第二向量包括第二词向量与第二句向量。
优选地,所述鉴别网络包括词向量鉴别网络;步骤S4进一步包括:步骤S411,将第一词向量与第二词向量输入至词向量鉴别网络;步骤S412,词向量鉴别网络将第一词向量与第二词向量相互配对并计算;步骤S413,获得词向量鉴别网络的词向量鉴别结果。
优选地,所述词向量鉴别网络包括第一全连接层;步骤S412进一步包括:步骤S4121,词向量鉴别网络对第一词向量与第二词向量进行配对;步骤S4122,词向量鉴别网络通过第一全连接层对第一词向量与第二词向量进行计算并输出结果;其中,词向量鉴别结果由第一全连接层输出。
优选地,所述鉴别网络包括句向量鉴别网络;步骤S4进一步包括:步骤S421,将第一句向量和第二句向量输入句向量鉴别网络;步骤S422,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置,并进行计算;步骤S423,获得句向量鉴别网络的句向量鉴别结果。
优选地,所述句向量鉴别网络包括第二全连接层;步骤S422进一步包括:步骤S4221,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置;步骤S4222,句向量鉴别网络通过第二全连接层对第一位置、第二位置进行计算,并输出结果;句向量鉴别结果由第二全连接层输出。
优选地,步骤S5进一步包括以下步骤:步骤S51,建立关于所述语义提取网络与鉴别网络的目标函数;步骤S52,根据鉴别网络的鉴别结果计算所述目标函数;步骤S53,对所述目标函数求导,并更新所述语义提取网络与鉴别网络的参数。
优选地,包括:输入模块;用于输入原始文本;词转换模块;用于将原始文本中的词转换为第一初始词向量,并用于将原始文本进行修改后的修改文本中的词转换为第二初始词向量;其中,原始文本的修改方式包括对部分词语掩膜、打乱原始顺序;语义提取网络;用于通过第一初始词向量提取原始文本的第一向量;并用于通过第二初始词向量提取修改文本的第二向量;所述第一向量包括第一词向量和第一句向量;所述第二向量包括第二词向量和第二句向量;鉴别网络;用于鉴别第一向量与第二向量的匹配度以获得鉴别结果;优化模块,用于将第一向量和第二向量输入鉴别网络,以通过鉴别网络分别对第一词向量与第二词向量、第一句向量与第二句向量进行匹配度计算,以完成对抗任务,根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化。
优选地,所述存储器中存储有计算机程序,所述计算机程序被设置为运行时执行如上任一项中所述的基于对抗训练的语言模型预训练方法;所述处理器被设置为通过所述计算机程序执行如上任一项中所述的基于对抗训练的语言模型预训练方法。
与现有技术相比,本发明的基于对抗训练的语言模型预训练方法具有以下优点:
1.将原始文本与修改文本同时送入预训练模型中,通过对抗任务的训练,使得预训练模型能对受干扰的文本和原文本都准确提取信息,从而避免了进行后续任务时的输入文本与训练时的输入文本不一致的情况,保证了本基于对抗训练的自然语言预训练模型在预训练阶段与后续任务阶段能够保持同样的语义提取能力。
2.通过采用词干扰与顺序干扰并存的方式来进行自然语言模型的预训练任务,使得预训练语言模型能够更全面、更准确的提取到句子中各词的语义信息以及整个句子的语义信息。
3.通过对词、句两种层次的文本同时进行对抗训练,可使得本基于对抗训练的自然语言预训练模型充分提取文本中不同层次的语义信息,使得本基于对抗训练的自然语言预训练模型可在不同的层次理解文本信息,以便于后续任务的完成。
【附图说明】
图1是本发明第一实施例一种基于对抗训练的语言模型预训练方法的流程示意图。
图2是本发明第一实施例中步骤S2的细节流程示意图。
图3是本发明第一实施例通过Transformer网络框架提取第一向量的框架示意图。
图4是本发明第一实施例中步骤S4的词向量鉴别的细节流程示意图。
图5是本发明第一实施例中步骤S412的细节流程示意图。
图6是本发明第一实施例中步骤S4的句向量鉴别的细节流程示意图。
图7是本发明第一实施例中步骤S422的细节流程示意图。
图8是本发明第一实施例中步骤S5的细节流程示意图。
图9是本发明第一实施例中语义提取网络为词级别时的网络框架示意图。
图10是本发明第一实施例中语义提取网络为句级别时的网络框架示意图。
图11是本发明第一实施例中提供的电子设备的模块示意图。
图12是适于用来实现本发明实施例的服务器的计算机系统的结构示意图。
图13是本发明第一实施例中一种基于对抗训练的语言模型预训练系统的框架示意图。
附图标识说明:
10、Transformer网络框架;101、输入层;102、转化层;103、输出层;20、Transformer网络框架;201、输入层;202、转化层;203、输出层;30、Pointer Network网络框架;60、电子设备;601、存储器;602、处理器;800、计算机系统;801、中央处理单元(CPU);802、存储器(ROM);803、RAM;804、总线;805、I/O接口;806、输入部分;807、输出部分;808、存储部分;809、通信部分;810、驱动器;811、可拆卸介质;9、一种基于对抗训练的语言模型预训练系统;90、输入模块;91、词转换模块;92、语义提取网络;93、鉴别网络;94、优化模块。
【具体实施方式】
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图及实施实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明第一实施例所提供的一种基于对抗训练的语言模型预训练方法,该方法包括以下步骤:
步骤S1,提供一个语义提取网络、鉴别网络及原始文本;
步骤S2,将原始文本中的词转换为第一初始词向量,并输入至语义提取网络,通过语义提取网络提取原始文本的第一向量;
步骤S3,对原始文本进行修改,将修改文本中的词转换为第二初始词向量,并输入至语义提取网络,通过语义提取网络提取修改文本的第二向量;
步骤S4,将第一向量和第二向量输入鉴别网络,以获得鉴别网络对于第一向量与第二向量的鉴别结果;
步骤S5,根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化;
步骤S6,重复上述步骤S2-S5,直至第一向量与第二向量可通过鉴别网络的鉴别,以获得优化后的语义提取网络与鉴别网络。
在上述步骤S1中,原始文本可从维基百科、新闻语料、医疗问答语料和财报数据等纯文本文件中选取获得。
请参阅图2,在上述步骤S2中,语义提取网络通过Transformer网络框架将原始文本中的每个句子提取句意以获得与每个句子对应的第一向量。其中,Transformer网络框架是Google团队中Ashish Vaswani,Shazeer N等人发表的论文《Attention is All YouNeed》中提出的结构。具体包括如下步骤:
步骤S21,将所述原始文本中的每个句子进行分词;
步骤S22,将分词之后的每个句子中的每个词转化为第一初始词向量;
步骤S23,在所述每个句子的句首添加识别字符并将所述识别字符转化为第一字符向量;
步骤S24,将所述步骤S22中的第一初始词向量与所述步骤S23中的第一字符向量输入至语义提取网络以获得与每个句子对应的第一向量;
在上述步骤S21中,需要将原始文本中每个句子划分为词,通常通过现有的分词算法对每个句子实现分词。现有的分词算法有基于词典的分词算法、基于理解的分词算法和基于统计的机器学习算法等。其中基于统计的机器学习算法包括HMM、CRF、SVM深度学习等算法。比如,stanford、Hanlp分词工具是基于CRF算法实现的。本实施例中,采用stanford分词工具对每个句子进行分词。比如,本实施例中的原始文本的其中一个句子为:“我爱吃苹果”,对其进行分词之后对应为:“我”、“爱”、“吃”、“苹果”。
可以理解,作为一种变形,步骤S21可省略,也即,可直接通过随机化的方式或者函数映射的方法将每个句子中的词转化为第一初始词向量。
在上述步骤S22中,通过随机化的方式或者函数映射的方法将所述S21步骤中的各词转化为第一初始词向量。可以理解,通过随机化的方式,也即将所述原始文本中的每个词随机赋予一个初始值,该值是可以通过人为设定的。当然,也可以通过函数映射的方式将原始文本中的每个词转化为第一初始词向量。可选地,通过Google在2013年由Mikolov T,Chen K,Corrado G等人发布的《Efficient estimation of word representations invector space》论文中提出的word2vec模型将原始文本中的每个词转化为第一初始词向量。
在上述步骤S23中,将所述识别字符转化为第一字符向量和将原始文本中的每个词转化为第一初始词向量的方式相同。
可以理解,所述识别字符可为<CLS>字符。
请参阅图3,所述Transformer网络框架10包括:输入层101、转化层102和输出层103,其中,
所述输入层101供所述步骤S22中的第一初始词向量和所述步骤S23中的第一字符向量输入。如图3中所示,所述原始文本中的其中一个句子为“我爱吃苹果”,对其进行分词之后对应为:“我”、“爱”、“吃”、“苹果”。因此,输入层101中输入的为“我”、“爱”、“吃”、“苹果”对应的第一初始词向量。
所述转化层102用于将输入的第一初始词向量或第一字符向量转化为第一输出向量;所述转化层102的层数为多个,如图3中所示的Layer 1转化层102至Layer N转化层102。其中,每一层转化层102包括一个Multi-head Self attention(多头自注意力机制)和一个Feed forward(前馈神经网络)。其中的每个词的第一初始词向量通过Multi-head Selfattention(多头自注意力机制)以及Feed forward(前馈神经网络)与句子中的其他词产生联系,从而最终被表达成一个含有上下文信息的第一输出向量。
所述输出层103用于将第一输出向量输出,其中与识别字符的第一字符向量对应的第一输出向量即为原始文本中该句的第一向量。
可以理解,所述第一输出向量包括第一输出词向量与第一输出句向量,所述第一向量包括第一词向量与第一句向量。
在上述步骤S3中,语义提取网络通过Transformer网络框架将修改文本中的每个句子提取句意以获得与每个句子对应的第二向量。具体包括以下步骤:
步骤S31,对原始文本进行修改,将所述修改文本中的每个句子进行分词;
步骤S32,将分词之后的每个句子中的每个词转化为第二初始词向量;
步骤S33,在所述每个句子的句首添加识别字符并将所述识别字符转化为第二字符向量;
步骤S34,将所述步骤S32中的第二初始词向量与所述步骤S33中的第二字符向量输入至语义提取网络以获得与每个句子对应的第二向量。
在上述步骤S31中,对原始文本的修改方式包括对部分词语掩膜、打乱原始文本顺序等。在本实施例中,通过BERT算法对原始文本中每一句的部分词进行掩膜处理,也即通过<MASK>字符替代原始文本中每一句的部分词,再通过上述步骤S2中的分词算法,对每个句子进行分词,并随机将其打乱顺序以获得修改文本。后续处理步骤与上述步骤S2中相同,最后得到由语义提取网络输出的第二向量。
可以理解,第二向量包括第二词向量与第二句向量。其中,BERT(BidirectionalEncoder Representations from Transformer)算法是代表性的自编码语言模型,其中在预训练过程中,将<MASK>标记加入训练语料用于替换原来的目标字。
作为一种变形,上述步骤S31中,可先对原始文本中的每个句子进行分词,之后再对分词之后的每个句子进行修改以获得修改文本。
在上述步骤S32与步骤S22中,对于修改文本与原始文本中的同一个词而言,其第二初始词向量和第一初始词向量是相同的。
在上述步骤S4中,通过鉴别网络对第一词向量与第二词向量、第一句向量与第二句向量进行匹配度计算,并输出鉴别结果。
可以理解,鉴别网络包括词向量鉴别网络与句向量鉴别网络。
其中,词向量鉴别网络包括第一全连接层;句向量鉴别网络包括第二全连接层。
可以理解,全连接层对于本领域的相关工作人员而言是显而易见的。
请参阅图4,在上述步骤S4中,词向量鉴别网络通过第一全连接层对第一词向量与第二词向量进行鉴别。所述步骤S4包括如下步骤:
步骤S411,将第一词向量与第二词向量输入至词向量鉴别网络;
步骤S412,词向量鉴别网络将第一词向量与第二词向量相互配对并计算;
步骤S413,获得词向量鉴别网络的词向量鉴别结果。
在所述步骤S413中的词向量鉴别网络输出的词向量鉴别结果为“0”时,代表第一词向量与第二词向量不匹配;输出结果为“1”时,代表第一词向量与第二词向量匹配。
请参阅图5,上述步骤S412包括如下步骤:
步骤S4121,词向量鉴别网络对第一词向量与第二词向量进行配对;
步骤S4122,词向量鉴别网络通过第一全连接层对第一词向量与第二词向量进行计算,并输出结果;
在上述步骤S4122中,第一全连接层主要计算第一词向量与第二词向量的匹配度,将计算出的匹配度与设定值对比,当匹配度大于等于设定值时,则输出“1”,匹配度小于设定值时,则输出“0”。
作为一种变形,所述词向量鉴别网络包括Pointer Network框架,通过PointerNetwork框架直接对第一词向量与第二词向量进行匹配与输出结果,无需输入至第一全连接层进行计算。
可以理解,Pointer Network是发表在机器学习顶级会议NIPS2015上的一篇文章《Pointer Networks》,其作者为分别来自Google Brain和UC Berkeley的Vinyals O,Fortunato M,Jaitly N。
请参阅图6,在上述步骤S4中,句向量鉴别网络通过第二全连接层对第一句向量与第二句向量进行鉴别。具体包括如下步骤:
步骤S421,将第一句向量和第二句向量输入句向量鉴别网络;
步骤S422,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置,并进行计算;
步骤S423,获得句向量鉴别网络的句向量鉴别结果。
在所述步骤S423中的句向量鉴别网络输出的句向量鉴别结果为“0”时,表示第一位置与第二位置不匹配,且第一位置为第二句向量;输出结果为“1”时,表示第一位置与第二位置匹配。
请参阅图7,上述步骤S422包括如下步骤:
步骤S4221,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置;
步骤S4222,句向量鉴别网络通过第二全连接层对第一位置、第二位置进行计算,并输出结果;
在上述步骤S4222中,第二全连接层主要计算第一句向量与第二句向量的匹配度,将计算出的匹配度与设定值对比,当匹配度大于等于设定值时,则输出“1”,匹配度小于设定值时,则输出“0”。
可以理解,上述词向量鉴别网络与句向量鉴别网络仅限于解释本实施例,而不用于限定本实施例,第一词向量、第二词向量与第一句向量、第二句向量的鉴别方式包括但不限于上文中所叙述的方式。
在上述步骤S5中,根据第一词向量与第二词向量的对比、第一句向量与第二句向量的对比从而对语义提取网络与鉴别网络进行优化。
请参阅图8,步骤S5包括如下步骤:
步骤S51,建立关于所述语义提取网络与鉴别网络的目标函数;
步骤S52,根据鉴别网络的鉴别结果计算所述目标函数;
步骤S53,对所述目标函数求导,并更新所述语义提取网络与鉴别网络的参数。
在上述步骤S6中,重复上述步骤S2-S5直至语义提取网络与鉴别网络达到设定的优化条件以获得优化后的语义提取网络与鉴别网络。在本步骤中,设定的优化条件对应为目标函数收敛时的状态。
请参阅图9,在上述步骤中,所述语义提取网络为基于现有的自编码语言模型进行改进获得的,现有的自编码语言模型其包括但不限于BERT(BidirectionalEncoderRepresentations from Transformer)语言模型。所述语义提取网络包括词级别语义提取网络与句级别语义提取网络,其均包括Transformer网络框架20。其中,Transformer网络框架20和步骤S2和步骤S3中用到的Transformer网络框架10相同,均是由Google团队中Ashish Vaswani,Shazeer N等人发表的论文《Attention is All You Need》中提出的结构。
所述Transformer网络框架20用于执行所述步骤S24和所述步骤S34;
请继续参阅图9,所述Transformer网络框架20包括输入层201、转化层202和输出层203;其中,图9示出的是词级别语义提取网络的网络框架结构。
所述输入层201供第一初始词向量输入;
所述转化层202用于将输入的第一初始词向量转化为第一输出向量;所述转化层202为多层结构组成。如图10中所示的Layer 1转化层202至Layer N转化层202。其中,每一层转化层202包括一个Multi-head Self attention(多头自注意力机制)和一个Feedforward(前馈神经网络)。其中的每个词的第一初始词向量通过Multi-head Selfattention(多头自注意力机制)以及Feed forward(前馈神经网络)与句子中的其他词产生联系,从而最终被表达成一个含有上下文信息的第一输出词向量。
所述输出层203用于将第一输出词向量输出;其中与第一初始词向量对应的第一输出词向量即为原始文本中的第一词向量(Word embedding)。
请参阅图10,示出的是句级别语义提取网络的网络框架结构。
所述输入层201供第一初始词向量输入;
所述转化层202用于将第一初始词向量转化为第一输出词向量;所述转化层202为多层结构组成。如图10中所示的Layer 1至Layer N层。其中,每一层转化层202包括一个Multi-head Self attention(多头自注意力机制)和一个Feed forward(前馈神经网络)。其中的每个词的第一初始词向量通过Multi-head Self attention(多头自注意力机制)以及Feed forward(前馈神经网络)与段落中的其他句子产生联系,从而最终被表达成一个含有上下文信息的第一输出句向量。
所述输出层203用于将第一输出句向量输出;其中与第一字符向量对应的第一输出句向量即为句级训练文本中的第一句向量(Sentence embedding)。
请参阅图11,本发明的第一实施例提供一种电子设备60,包括存储器601和处理器602,所述存储器601中存储有计算机程序,所述计算机程序被设置为运行时执行如第一实施例所述的结合类词信息的语言模型预训练方法;
所述处理器602被设置为通过所述计算机程序执行如第一实施例所述的结合类词信息的语言模型预训练方法。
下面参考图12,其示出了适于用来实现本申请实施例的终端设备/服务器的计算机系统800的结构示意图。图8示出的终端设备/服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图12所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“如“语言或类似的程序设计语言。程序代码可以完全地在管理端计算机上执行、部分地在管理端计算机上执行、作为一个独立的软件包执行、部分在管理端计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)域连接到管理端计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
请参阅图13,本发明的第一实施例提供一种基于对抗训练的语言模型预训练系统9,其包括输入模块90;用于输入原始文本。
词转换模块91;用于将原始文本中的词转换为第一初始词向量,并用于将原始文本进行修改后的修改文本中的词转换为第二初始词向量。
语义提取网络92;用于通过第一初始词向量提取原始文本的第一向量;并用于通过第二初始词向量提取修改文本的第二向量。
鉴别网络93;用于鉴别第一向量与第二向量的匹配度以获得鉴别结果。
优化模块94,用于根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化。
可以理解,上述系统中的任一模块可用于运行本发明第一实施例中的任一步骤,上述系统也可以进一步包括一个或多个模块,其用于执行本发明第一实施例中的一个或多个任意的步骤。
与现有技术相比,本发明的基于对抗训练的语言模型预训练方法具有以下优点:
1.将原始文本与修改文本同时送入预训练模型中,通过对抗任务的训练,使得预训练模型能对受干扰的文本和原文本都准确提取信息,从而避免了进行后续任务时的输入文本与训练时的输入文本不一致的情况,保证了本基于对抗训练的自然语言预训练模型在预训练阶段与后续任务阶段能够保持同样的语义提取能力。
2.通过采用词干扰与顺序干扰并存的方式来进行自然语言模型的预训练任务,使得预训练语言模型能够更全面、更准确的提取到句子中各词的语义信息以及整个句子的语义信息。
3.通过对词、句两种层次的文本同时进行对抗训练,可使得本基于对抗训练的自然语言预训练模型充分提取文本中不同层次的语义信息,使得本基于对抗训练的自然语言预训练模型可在不同的层次理解文本信息,以便于后续任务的完成。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的原则之内所作的任何修改,等同替换和改进等均应包含本发明的保护范围之内。
Claims (9)
1.一种基于对抗训练的语言模型预训练方法,其特征在于:所述语言预训练模型包括语义提取网络与鉴别网络,其包括以下步骤:
步骤S1,提供一个语义提取网络、鉴别网络及原始文本;
步骤S2,将原始文本中的词转换为第一初始词向量,并输入至语义提取网络,通过语义提取网络提取原始文本的第一向量;所述第一向量包括第一词向量和第一句向量;
步骤S 3,对原始文本进行修改,将修改文本中的词转换为第二初始词向量,并输入至语义提取网络,通过语义提取网络提取修改文本的第二向量;其中,对原始文本的修改方式包括对部分词语掩膜、打乱原始顺序,所述第二向量包括第二词向量和第二句向量;
步骤S 4,将第一向量和第二向量输入鉴别网络,以通过鉴别网络分别对第一词向量与第二词向量、第一句向量与第二句向量进行匹配度计算,以完成对抗任务,以获得鉴别网络对于第一向量与第二向量的鉴别结果;
步骤S 5,根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化;
步骤S 6,重复上述步骤S2-S 5,直至第一向量与第二向量可通过鉴别网络的鉴别,以获得优化后的语义提取网络与鉴别网络。
2.如权利要求1所述的基于对抗训练的语言模型预训练方法,其特征在于:所述语义提取网络包括词级语义提取网络与句级语义提取网络;
步骤S2进一步包括:
步骤S21,将所述原始文本中的每个句子进行分词;
步骤S22,将分词之后的每个句子中的每个词转化为第一初始词向量;
步骤S23,在所述每个句子的句首添加识别字符并将所述识别字符转化为第一字符向量;
步骤S24,将所述步骤S22中的第一初始词向量与所述步骤S23中的第一字符向量输入至词级语义提取网络、句级语义提取网络以获得与每个句子对应的第一向量,所述第一向量包括第一词向量与第一句向量;
步骤S 3进一步包括以下步骤:
步骤S 31,对原始文本进行修改,将所述修改文本中的每个句子进行分词;
步骤S 32,将分词之后的每个句子中的每个词转化为第二初始词向量;
步骤S 33,在所述每个句子的句首添加识别字符并将所述识别字符转化为第二字符向量;
步骤S 34,将所述步骤S 32中的第二初始词向量与所述步骤S 33中的第二字符向量分别输入至词级语义提取网络与句级语义提取网络以获得与每个句子对应的第二向量,所述第二向量包括第二词向量与第二句向量。
3.如权利要求2所述的基于对抗训练的语言模型预训练方法,其特征在于:所述鉴别网络包括词向量鉴别网络;
步骤S 4进一步包括:
步骤S 411,将第一词向量与第二词向量输入至词向量鉴别网络;
步骤S 412,词向量鉴别网络将第一词向量与第二词向量相互配对并计算;
步骤S 413,获得词向量鉴别网络的词向量鉴别结果。
4.如权利要求3所述的基于对抗训练的语言模型预训练方法,其特征在于:所述词向量鉴别网络包括第一全连接层;
步骤S 412进一步包括:
步骤S 4121,词向量鉴别网络对第一词向量与第二词向量进行配对;
步骤S 4122,词向量鉴别网络通过第一全连接层对第一词向量与第二词向量进行计算并输出结果;
其中,词向量鉴别结果由第一全连接层输出。
5.如权利要求2所述的基于对抗训练的语言模型预训练方法,其特征在于:所述鉴别网络包括句向量鉴别网络;步骤S 4进一步包括:
步骤S 421,将第一句向量和第二句向量输入句向量鉴别网络;
步骤S 422,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置,并进行计算;
步骤S 423,获得句向量鉴别网络的句向量鉴别结果。
6.如权利要求5所述的基于对抗训练的语言模型预训练方法,其特征在于:所述句向量鉴别网络包括第二全连接层;
步骤S 422进一步包括:
步骤S 4221,句向量鉴别网络将第一句向量、第二句向量随机放入第一位置、第二位置;
步骤S 4222,句向量鉴别网络通过第二全连接层对第一位置、第二位置进行计算,并输出结果;
句向量鉴别结果由第二全连接层输出。
7.如权利要求1所述的基于对抗训练的语言模型预训练方法,其特征在于:步骤S 5进一步包括以下步骤:
步骤S 51,建立关于所述语义提取网络与鉴别网络的目标函数;
步骤S 52,根据鉴别网络的鉴别结果计算所述目标函数;
步骤S 53,对所述目标函数求导,并更新所述语义提取网络与鉴别网络的参数。
8.一种基于对抗训练的语言模型预训练系统,其特征在于:包括:
输入模块;用于输入原始文本;
词转换模块;用于将原始文本中的词转换为第一初始词向量,并用于将原始文本进行修改后的修改文本中的词转换为第二初始词向量;其中,原始文本的修改方式包括对部分词语掩膜、打乱原始顺序;
语义提取网络;用于通过第一初始词向量提取原始文本的第一向量;并用于通过第二初始词向量提取修改文本的第二向量;所述第一向量包括第一词向量和第一句向量;所述第二向量包括第二词向量和第二句向量;
鉴别网络;用于将第一向量和第二向量输入鉴别网络,以通过鉴别网络分别对第一词向量与第二词向量、第一句向量与第二句向量进行匹配度计算,以完成对抗任务,鉴别第一向量与第二向量的匹配度以获得鉴别结果;
优化模块,用于根据鉴别网络对于第一向量与第二向量的鉴别结果以对语义提取网络及鉴别网络进行优化。
9.一种电子设备,包括存储器和处理器,其特征在于:所述存储器中存储有计算机程序,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的基于对抗训练的语言模型预训练方法;
所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的基于对抗训练的语言模型预训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911068053.6A CN110826325B (zh) | 2019-11-04 | 2019-11-04 | 一种基于对抗训练的语言模型预训练方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911068053.6A CN110826325B (zh) | 2019-11-04 | 2019-11-04 | 一种基于对抗训练的语言模型预训练方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110826325A CN110826325A (zh) | 2020-02-21 |
CN110826325B true CN110826325B (zh) | 2023-12-26 |
Family
ID=69552777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911068053.6A Active CN110826325B (zh) | 2019-11-04 | 2019-11-04 | 一种基于对抗训练的语言模型预训练方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110826325B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113204965A (zh) * | 2021-05-31 | 2021-08-03 | 平安科技(深圳)有限公司 | 关键词提取方法、装置、计算机设备及可读存储介质 |
CN113343683B (zh) * | 2021-06-18 | 2022-06-07 | 山东大学 | 一种融合自编码器和对抗训练的中文新词发现方法及装置 |
CN115862036B (zh) * | 2022-12-14 | 2024-02-23 | 北京瑞莱智慧科技有限公司 | 信息干扰模型训练方法、信息干扰方法、相关装置及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797985A (zh) * | 2017-09-27 | 2018-03-13 | 百度在线网络技术(北京)有限公司 | 建立同义鉴别模型以及鉴别同义文本的方法、装置 |
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
CN110298037A (zh) * | 2019-06-13 | 2019-10-01 | 同济大学 | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 |
CN110377714A (zh) * | 2019-07-18 | 2019-10-25 | 泰康保险集团股份有限公司 | 基于迁移学习的文本匹配方法、装置、介质及设备 |
-
2019
- 2019-11-04 CN CN201911068053.6A patent/CN110826325B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797985A (zh) * | 2017-09-27 | 2018-03-13 | 百度在线网络技术(北京)有限公司 | 建立同义鉴别模型以及鉴别同义文本的方法、装置 |
CN109992648A (zh) * | 2019-04-10 | 2019-07-09 | 北京神州泰岳软件股份有限公司 | 基于词迁徙学习的深度文本匹配方法及装置 |
CN110298037A (zh) * | 2019-06-13 | 2019-10-01 | 同济大学 | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 |
CN110377714A (zh) * | 2019-07-18 | 2019-10-25 | 泰康保险集团股份有限公司 | 基于迁移学习的文本匹配方法、装置、介质及设备 |
Non-Patent Citations (1)
Title |
---|
Raphael Tang等.Distilling task-specific knowledge from bert into simple neural networks.《arXiv:1903.12136v1》.2019,第1~8页. * |
Also Published As
Publication number | Publication date |
---|---|
CN110826325A (zh) | 2020-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107273503B (zh) | 用于生成同语言平行文本的方法和装置 | |
US20190103091A1 (en) | Method and apparatus for training text normalization model, method and apparatus for text normalization | |
CN110826325B (zh) | 一种基于对抗训练的语言模型预训练方法、系统及电子设备 | |
JP7143456B2 (ja) | 医学的事実の検証方法及び検証装置、電子機器、コンピュータ可読記憶媒体並びにコンピュータプログラム | |
US20180365209A1 (en) | Artificial intelligence based method and apparatus for segmenting sentence | |
EP4109324A2 (en) | Method and apparatus for identifying noise samples, electronic device, and storage medium | |
CN116579339B (zh) | 任务执行方法和优化任务执行方法 | |
CN111653274B (zh) | 唤醒词识别的方法、装置及存储介质 | |
CN112487786A (zh) | 一种基于乱序重排的自然语言模型预训练方法及电子设备 | |
WO2020052069A1 (zh) | 用于分词的方法和装置 | |
CN113836866B (zh) | 文本编码方法、装置、计算机可读介质及电子设备 | |
CN113450759A (zh) | 语音生成方法、装置、电子设备以及存储介质 | |
CN111177341B (zh) | 一种基于端到端的id+sf模型的用户对话需求提取方法及系统 | |
CN113743101B (zh) | 文本纠错方法、装置、电子设备和计算机存储介质 | |
CN118043885A (zh) | 用于半监督语音识别的对比孪生网络 | |
JP2022173453A (ja) | ディープラーニングモデルのトレーニング方法、自然言語処理方法及び装置、電子機器、記憶媒体及びコンピュータプログラム | |
US11036996B2 (en) | Method and apparatus for determining (raw) video materials for news | |
CN111597816A (zh) | 一种自注意力命名实体识别方法、装置、设备及存储介质 | |
CN114168743A (zh) | 基于知识图谱的网络防御意图识别解析方法、设备及介质 | |
CN113160820A (zh) | 语音识别的方法、语音识别模型的训练方法、装置及设备 | |
CN113705207A (zh) | 语法错误识别方法及装置 | |
CN112541557B (zh) | 生成式对抗网络的训练方法、装置及电子设备 | |
CN114330375A (zh) | 一种基于固定范式的术语翻译方法及系统 | |
KR20220042103A (ko) | 하이브리드 지능형 고객 상담장치 및 방법 | |
CN113159107A (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 |