CN110837733B - 自重建方式的语言模型训练方法、系统及电子设备 - Google Patents
自重建方式的语言模型训练方法、系统及电子设备 Download PDFInfo
- Publication number
- CN110837733B CN110837733B CN201911056884.1A CN201911056884A CN110837733B CN 110837733 B CN110837733 B CN 110837733B CN 201911056884 A CN201911056884 A CN 201911056884A CN 110837733 B CN110837733 B CN 110837733B
- Authority
- CN
- China
- Prior art keywords
- training
- text
- model
- self
- trained
- 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 169
- 238000000034 method Methods 0.000 title claims abstract description 83
- 238000013528 artificial neural network Methods 0.000 claims abstract description 40
- 230000006870 function Effects 0.000 claims abstract description 37
- 239000011159 matrix material Substances 0.000 claims abstract description 32
- 238000005457 optimization Methods 0.000 claims abstract description 16
- 230000007246 mechanism Effects 0.000 claims abstract description 11
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 230000009466 transformation Effects 0.000 claims abstract description 4
- 238000004590 computer program Methods 0.000 claims description 15
- 238000004378 air conditioning Methods 0.000 claims description 8
- 230000011218 segmentation Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 8
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 238000004364 calculation method Methods 0.000 description 7
- 239000013598 vector Substances 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 102100033814 Alanine aminotransferase 2 Human genes 0.000 description 1
- 101000779415 Homo sapiens Alanine aminotransferase 2 Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- 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/045—Combinations of networks
-
- 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/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及语言处理技术领域,尤其涉及一种自重建方式的语言模型训练方法,其包括如下步骤:步骤S1:从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单子序列经过位置编码映射成文本矩阵;步骤S2:结合transformer模型和自注意力机制建立神经网络结构;步骤S3:文本矩阵作为神经网络结构的输入样本,将transformer模型作为参数进行训练并优化后得到目标函数;步骤S4:通过重复步骤S1~S3更新目标函数,直至达到设定的优化条件从而获取预训练模型。本发明还提供一种系统及电子设备。
Description
【技术领域】
本发明涉及语言处理技术领域,尤其涉及一种自重建方式的语言模型训练方法、系统及电子设备。
【背景技术】
目前最先进的预训练语言模型分为两类,分别是自回归语言模型(Autoregressive Model)与自编码语言模型 (Autoencoding Model);GPT和GPT2是表现较好的自回归语言模型。自回归模型的训练目标是根据前文来正确推测下一个字。BERT是代表性的自编码语言模型。BERT的训练目标是根据上下文正确推测出被遮盖或替换的字。
上述两类预训练语言模型使用了Transformer (转换)模型。该模型结合Attention Encoder(注意力编码器)和Attention Decoder(注意力解码器)两种结构,并被使用于机器翻译的任务;两种结构都使用了Multi Head Attention(多头注意力机制),但是Encoder的Attention结构中没有对后文的遮盖,即序列中的每个词都可以注意到序列中任意一个词。而Decoder的Attention结构中含有对后文的遮盖,每个词都只能注意到自己和自己之前的词。所以,GPT模型利用了Attention Decoder含有对后文遮盖这一特点,在给定上文的情况下,利用它对预训练语句中字的条件概率建模。但是此结构只能看到对应位置之前的词。相比之下,尽管Attention Encoder可以同时使用上下文信息,但是不能直接通过相似的方式被用于建立语言模型。不能直接建模使用Attention Encoder的原因是在于实验过程会使得Attention Encoder 被直接训练为原值映射,使得模型无法学习到有效的词表达信息。 因此,在训练过程中,模型的输入必须要遮盖住要被模型预测的内容。
两种语言模型各有优点和缺点。自回归模型只能结合前文,而无法结合同时结合上下文内容完成特定任务。另一方面,自编码模型可以同时利用上下文信息,但是其中在预训练过程中,为了遮盖推测目标字,[mask]标记被加入训练语料用于替换原来的目标字。然而[mask]编码不会出现在针对特定任务的微调整过程中。
上述原因导致了语言模型在预训练与微调整的输入不匹配,进而影响模型整体的表现。最近,XLNet被提出用于同时解决上述两个问题,
XLNet使得语言模型在不引入标记的同时,能结合上下文完成任务。XLNet模型在设计时并未考虑到空间与时间成本,其提出的双流程注意力机制增加了额外的模型参数。而预训练语言模型本身参数量就很巨大,在此之上增加额外的参数使得模型更难优化和使用。与此同时,添加双流程注意力并不是解决上述两个问题的唯一方式。
【发明内容】
针对现有的语言模型预测准确性低以及成本高的缺陷,本发明提供一种自重建方式的语言模型训练方法、系统及电子设备。
本发明为了解决上述技术问题,本发明提供一种自重建方式的语言模型训练方法,其包括如下步骤:步骤S1:从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单字序列经过位置编码映射成文本矩阵;步骤S2:结合transformer模型和自注意力机制建立神经网络结构;步骤S21:配置神经网络结构的层数以及每层位置点数;步骤S22:设定神经网络结构的第一层的每一个位置点只关注与自身不相邻的位置点的信息;步骤S23:从第一层开始,设定每层的位置点均与上一层中自身位置以及相邻的至少两个位置点相互连接并关注;及步骤S24:配置神经网络结构的最后一层为Softmax层;步骤S3:文本矩阵作为神经网络结构的输入样本,将 transformer模型作为参数进行训练并优化后得到目标函数;步骤S4:通过重复步骤S1~S3更新目标函数,直至达到设定的优化条件从而获取预训练模型。
优选地,在上述步骤S1中,包括以下步骤:步骤S11:在预训练文本中添加标记以同时提取两句待训练语句;步骤S12:将两句待训练语句分割为单字序列并映射为预设的词编码;步骤S13:对词编号进行位置编码从而得到文本矩阵。
优选地,其中步骤S22~步骤S23可利用距离函数或者位置函数。
优选地,在上述步骤S11中,在抽取的两个训练语句中每个预训练语句的结尾分别添加[sep]、在第一个预训练语句的句首添加[cls]。
优选地,每次执行步骤S11时,从预训练文本中逐一抽取两个预训练语句作为训练语句,直至预训练文本中所有的预训练语句被抽取完毕,每次抽取的两个预训练语句是相邻的或者是不相邻的,抽取完毕时,相邻的两个预训练语句和不相邻的两个预训练语句所占的比例范围为40-70%,两者之和为100%。
优选地,方法进一步包括步骤S5:利用预训练模型对预训练文本进行任务微调。
优选地,步骤S5具体包括如下步骤:S51、从预设的任务语料库中提取任务文本;S52、对任务文本分割成单字序列;S53、将步骤S1中的文本矩阵中的单个词和步骤S52中所得的单个词进行匹配,并对文本矩阵能够匹配的字进行标记;S54、将单字序列和被标记的词同时输入至预训练模型中对预训练模型进行微调。
优选地,在上述步骤S54中,通过全连接层或者CRF网络优化目标函数实现对优化后的预训练模型的优化。
为了更好地解决上述问题,本发明还提供一技术方案如下,即一种自重建方式的语言模型训练系统,包括:输入模块:用于输入预训练文本;文字分割模块:用于从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单子序列经过位置编码映射成文本矩阵;文字重建模块:用于结合transformer模型和自注意力机制建立神经网络结构,文本矩阵作为神经网络结构的输入样本,将 transformer模型作为参数进行训练并优化后得到目标函数,通过更新目标函数,直至达到设定的优化条件从而获取预训练模型,从而将预训练文本进行重建;输出模块:用于输出重建后的预训练文本。
为了更好地解决上述问题,本发明还提供一技术方案如下,即一种电子设备,包括存储器、处理器和存储在存储器中的计算机程序,计算机程序运行时,控制存储器中需执行的计算机程序或者处理器执行上述自重建方式的语言模型训练方法。
与现有技术相比,本发明提供的自重建方式的语言模型训练方法及预训练模型具有如下有益效果:
1、首先本发明通过transformer层建立新的神经网络结构并采用新的连接方式,训练过程之中不用对原句中的词进行遮盖和替换,并且可以在不增加模型参数量的前提下可以同时注意到文字前后的内容,可以同时使用上下文信息对字的表征进行计算。其次预训练所需语料中没有被引入[mask]与随机替换的文字,这使得预训练过程与微调整过程的输入数据在概率分布上保持一致。第三,没有引入额外的结构,而引入额外的结构往往使得模型的参数稀疏。第四,本训练方式并不要求所用模型必须是transformer,也可以在更多传统结构的模型上尝试训练;
因此采用本发明提出的语言模型训练方法的模型在保持文本重建质量效果的同时,减少模型参数数量,减小模型尺寸,加快模型的训练速度;这使得模型可以在计算能力较小的端上设备中部署。
2、注意力机制是不会保留序列位置信息的,因此需要该结构去用其他方法吸收位置信息,通过在预训练文本中添加标记以同时提取两句待训练语句,并通过对单字序列进行编码,减少尺寸以避免参数空间过大从而加快计算速度,进一步对词编号进行位置编码从而得到文本矩阵。从而给予单字序列位置信息。
3、通过建立神经网络结构,使得词的位置在层与层之间建立关系,该结构使得该输入的预训练文本在经过最后的Softmax层之前,输入层中除了相对应位置的输入字,其他位置都参与到了输出的计算之中,这与上述建模目标相符合。
4、本发明所提供的自重建方式的语言模型训练方法通用性强,可以采用距离函数或者位置函数建立神经网络结构,依赖程度低。
5、在对预训练文本进行抽取预训练语句进行重建时,采用相邻和非相邻随机抽取,这样的方式更为合理,对比以往仅仅抽取相邻的语句,其重建后的真实性更高。
6、搭建一个神经网络结构完成一个特定的预训练文本任务后。需要随机初始化参数,然后开始训练神经网络结构,不断调整直到预训练模型的损失越来越小。在训练的过程中,一开始初始化的参数会不断变化变直至获取预训练模型,并将其保存下来。
此时,可以进一步通过获取任务文本直接使用之前保存下来的预训练模型的参数来作为这一任务的初始化参数,然后在训练的过程中,依据结果不断进行一些修改,进一步微调预训练模型从而优化。
7、transformer模型可用多层感应机网络、卷积网络进行替代,从而该自重建方式的语言模型训练方法具有通用性或者说可迁移性,适用范围较为广泛。
8、本发明所述的自重建方式的语言模型训练方法所训练的模型在中文分词,实体识别,词性分析,自然语言推理,句子分类,机器阅读理解,文章分类,情感分析等中文自然语言任务之上都有比基于单字的语言模型有更好的预期表现效果。
【附图说明】
图1是本发明第一实施例中自重建方式的语言模型训练方法的流程示意图;
图2是本发明中第一实施例中自重建方式的语言模型训练方法中步骤S1的具体流程图;
图3是本发明中第一实施例中自重建方式的语言模型训练方法演示步骤S11~步骤S13中的示意图;
图4是本发明中第一实施例中自重建方式的语言模型训练方法中步骤S2的具体流程图;
图5是本发明中第一实施例中自重建方式的语言模型训练方法演示步骤S21~步骤S24时的模块示意图;
图6是本发明中第一实施例中自重建方式的语言模型训练方法演示步骤S21~步骤S24时的具体语句关注并连接的列表图;
图7是本发明中第一实施例中自重建方式的语言模型训练方法中步骤S5的具体流程图;
图8是本发明第二实施例中提供的电子设备的模块示意图;
图9是适于用来实现本发明实施例的服务器的计算机系统的结构示意图;
图10是本发明第三实施例中自重建方式的语言模型训练系统的模块示意图。
附图标记说明:
11、嵌入层;12、字符级编码器;13、词级别编码器;14、注意力编码器;60、电子设备;601、存储器;602、处理器;800、计算机系统;801、中央处理单元(CPU);802、存储器(ROM);803、RAM;804、总线;805、I/O接口;806、输入部分;807、输出部分;808、存储部分;809、通信部分;810、驱动器;811、可拆卸介质;100、系统;10、输入模块;20、文字分割模块;30、文字重建模块;40、输出模块。
【具体实施方式】
为了使本发明的目的,技术方案及优点更加清楚明白,以下结合附图及实施实例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明第一实施例提供一种自重建方式的语言模型训练方法,其包括如下步骤:
步骤S1:从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单子序列经过位置编码映射成文本矩阵;
步骤S2:结合transformer模型和自注意力机制建立神经网络结构;
步骤S3:文本矩阵作为神经网络结构的输入样本,将 transformer模型作为参数进行训练并优化后得到目标函数;及
步骤S4:通过重复步骤S1~S3更新目标函数,直至达到设定的优化条件从而获取预训练模型。
在所述步骤S1中,所述预训练文本的获得从维基百科、新闻语料、医疗问答语料和财报数据等纯文本文件选取获得。
其中步骤S2中的transformer模型可用多层感应机网络、卷积网络进行替代。
请参阅图2以及图3,在所述步骤S1中,具体还包括以下步骤:
步骤S11:在预训练文本中添加标记以同时提取两句待训练语句;
步骤S12:将两句待训练语句分割为单字序列并映射为预设的词编码;及
步骤S13:对词编号进行位置编码从而得到文本矩阵。
其中在步骤S11中,可为以下操作:在抽取的两个训练语句中每个预训练语句的结尾分别添加[sep]、在所述第一个预训练语句的句首添加[cls]。
其中在步骤S12中,从所述预训练文本中抽取两个预训练语句作为训练语句同时将所述训练语句分割成单字序列。在本步骤中,将训练语句分割成单字序列也即将一个预训练语句分割成以单个字为最小单位的意思。可以通过split函数将待训练语句分割成单字序列。
进一步地,步骤S12 中“映射为预设的词编码”释义为:对每个词均预设有对应的编码,也可理解为将降维处理,通过该类手段是可减少计算量和内存量,避免后续运行计算时的计算量过大防止维度灾难,示例性的为:假定步骤S11所提取的语句为“我热爱中国”,“人民”,通过步骤S12分割为单个词的序列,即单字序列“我”,“热”,“爱”,“中”,“国”,“人”,“民”,对应单字序列对应编码为 “1”“2““3”“4”“5”“6”“7”,当然此处“我”和“1”占用字节即内存为一样的,此处的编码“1”仅仅作为本发明方便阐述的假定,具体可根据文本聚类算法进行编码。
步骤S13~步骤S14 中的释义为:由于步骤S12的单个字序列并未设置方向,如上述“我”,“热”,“爱”,“中”,“国”,“人”,“民”这一单字序列,此时其中的词可任意替换,即每个词的位置并未固定,因此也可为”我民热爱中国人”,显然是和真实语句不一致的,而本发明所提出的方法旨在找寻每个词其正确的位置,因此通过对单个词建立位置关系,从而获取对应位置以供后续计算,其中步骤S13采用positional encoding(embedding andpositional encoding:位置编码),其可为正弦位置编码、学习位置向量、相对位置表达三种技术:采用其中的一种方法可具体为:
步骤S131:建立词向量矩阵,通过词编码在词向量矩阵中获取对应词编码的单个词向量;
步骤S132:将词向量与对应的词进行向量连接,生成文本矩阵。
获取到文本矩阵后,后续应当找寻每个字应当对应的位置,预训练之中的训练目标是自重建,语言模型的输入和语言输出都是文本。
步骤S2还包括以下步骤:
步骤S21:配置神经网络结构的层数以及每层位置点数;
步骤S22:设定神经网络结构的第一层的每一个位置点只关注与自身不相邻的位置点的信息;
步骤S23:从第一层开始,设定每层的位置点均与上一层中自身位置以及相邻的至少两个位置点相互连接并关注;及
步骤S24:配置神经网络结构的最后一层为Softmax层。
其中步骤S2总体而言,利用神经网络结构,使用句中周围字的概率分布来推测句中的字,其数学表达为 p(xi|[xj],j≠i,θ),用Transformer模型对上述表达式进行参数化,其中θ代表transformer模型的参数,表示序列中的第i 项。
请参阅图5,为进一步阐述步骤S21~步骤S24,本发明假设本发明所想得到的模型处理的最长序列数是m,模型的层数是l。模型从第二层开始,每个位置点可以与上一层中左右两边各p个位置点连接,如图所示本发明神经网络结构在l=3, m=7, p=1的结构图,即步骤S21。
步骤S22~步骤S23可利用距离函数或者位置函数,可选地为距离函数,具体如下所述:
其中第0层的即为步骤S1所得到的文本矩阵,定义距离函数,这个函数的几何意义是将序列的词首尾相连形成圆圈后,计算从位置i到位置j的距离。
第一层的神经网路表达式为/>,其中F是一个神经网络结构。这个表达式的直接理解是,第一层的每一个位置都关注并且只关注距离自己远的点,即不相邻的点的信息,也即步骤S22。
第二层以后每层的表达式/>,也就是每个位置都关注并且只关注上一层之中左右两边各p个以内位置的内容, 即步骤S23。
可以理解的是,本发明所选模型的层数仅为对步骤S2在处理本发明假定的待训练语句加以阐述,如果待训练语句较长,模型的层数可以不限定于三层,仅需满足步骤S23即可,此时p不为1,也可为2、3。
请结合图5以及图6,为使得上述阐述更为清楚明了,通过示意图进行补充,同样假定第0层h0对应的文本矩阵为“我”,“热”,“爱”,“中”,“国”,“人”,“民”,此时通过上述神经网络结构和第一层h1的“我”,“热”,“爱”,“中”,“国”,“人”,“民”进行步骤S22所述的关注,以“我”为例,其对应关注的应为“中”以及“国”,其中图表内的数值代表其概率(数值已简化),该概率是词之间连接的关注度经过Softmax层得到,简单的说,如“我”和“中”“国”组成“我中”以及“我国”,假设通过维基百科、新闻语料、医疗问答语料和财报数据、纯文本文件中的统计,“我中”出现了1000次,“我国”出现了9000次,则认为“我”和“国”组成的词组更符合所需,或者说更接近现实常用的词组,则“我”和“国”的概率则为90%,即为图表中的0.9;自第一层h1后,每层的位置点均与上一层中自身位置以及相邻的至少两个位置点相互连接并关注,通过这种连接方式,自下而上每一层相对位置的表征会逐渐由远到近得获取周围位置的信息。例如,h1,1仅从h0,4和h0,5获取信息,h2,1从h0,3、h0,4、h0,5以及h0,6获取信息,h3,1则可以获取到从h0,2到h0,7的所有信息。
其中步骤S24中Softmax层也可替换成Linear层。
可以观察到,在经过最后的Softmax层之前,输入层中除了相对应位置的输入字,其他位置都参与到了输出的计算之中。这与上述建模目标相符合;经过Softmax层之后,模型的输出将和原本位置的标签进行交叉熵运算,并且得出目标函数,即步骤S3。
在执行完步骤S3之后,已经获取了目标函数,以下进一步执行步骤S4:重复上述步骤S1-S3直至目标函数达到设定的优化条件以获得优化后的预训练模型。在本步骤中,设定的优化条件对应为所述目标函数达到收敛状态即取得最小值,在训练过程中,本发明可选地使用优化器对transformer模型的参数θ进行优化并使得目标函数最小化。
每次执行步骤S1时,从预训练文本中逐一抽取两个预训练语句作为待训练语句,直至所述预训练文本中所有的预训练语句被抽取完毕,每次抽取的两个预训练语句是相邻的或者是不相邻的,抽取完毕时,相邻的两个预训练语句和不相邻的两个预训练语句所占的比例范围为40-70%,两者之和为100%。在本实施例中,两者各占的比例为50%。
该自重建方式的语言模型训练方法进一步包括步骤S5:获取任务文本对预训练模型进行任务微调。
其中步骤S5还包括以下步骤:
S51、从预设的任务语料库中提取任务文本;
S52、对所述任务文本分割成单字序列;
S53、将所述步骤S1中的文本矩阵中的单个词和所述步骤S52中所得的单个词进行匹配,并对文本矩阵能够匹配的字进行标记;及
S54、将所述单字序列和被标记的词同时输入至预训练模型中对预训练模型进行微调。
在步骤S51中,任务语料库也是从维基百科、新闻语料、医疗问答语料和财报数据等纯文本文件选取获得,但是任务文本不能和步骤S1中的预训练文本相同。
在上述步骤S53中,将所述步骤S1中的文本矩阵和所述单字序列中的字进行匹配,并对和所述单字序列中的词相匹配的词进行标记;其中,标记的方法可为利用字符串对应预训练模型的位置信息和/或距离信息对所述字符串进行标记。
在上述步骤S54中,可以通过全连接层或者CRF网络优化目标函数实现对所述优化后的预训练模型的优化。
请参阅图8,本发明的第二实施例提供一种电子设备60,包括存储器601和处理器602,所述存储器601中存储有计算机程序,所述计算机程序被设置为运行时执行如第一实施例所述的自重建方式的语言模型训练方法;
所述处理器602被设置为通过所述计算机程序执行如第一实施例所述的自重建方式的语言模型训练方法。
下面参考图9,其示出了适于用来实现本申请实施例的终端设备/服务器的计算机系统800的结构示意图。图8示出的终端设备/服务器仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图9所示,计算机系统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)域连接到管理端计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
请参阅图10,为了更好的解决上述问题,本发明第三实施例还提供一种技术方案,即一种自重建方式的语言模型训练系统100,其包括:
输入模块10:用于输入预训练文本;
文字分割模块20:用于从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单子序列经过位置编码映射成文本矩阵;
文字重建模块30:用于结合transformer模型和自注意力机制建立神经网络结构,文本矩阵作为神经网络结构的输入样本,将 transformer模型作为参数进行训练并优化后得到目标函数,通过更新目标函数,直至达到设定的优化条件从而获取预训练模型,从而将预训练文本进行重建。
输出模块40:用于输出重建后的预训练文本。
与现有技术相比,本发明提供的自重建方式的语言模型训练方法及预训练模型具有如下有益效果:
1、首先本发明通过transformer层建立新的神经网络结构并采用新的连接方式,训练过程之中不用对原句中的词进行遮盖和替换,并且可以在不增加模型参数量的前提下可以同时注意到文字前后的内容,可以同时使用上下文信息对字的表征进行计算。其次预训练所需语料中没有被引入[mask]与随机替换的文字,这使得预训练过程与微调整过程的输入数据在概率分布上保持一致。第三,没有引入额外的结构,而引入额外的结构往往使得模型的参数稀疏。第四,本训练方式并不要求所用模型必须是transformer,也可以在更多传统结构的模型上尝试训练;
因此采用本发明提出的语言模型训练方法的模型在保持文本重建质量效果的同时,减少模型参数数量,减小模型尺寸,加快模型的训练速度;这使得模型可以在计算能力较小的端上设备中部署。
2、注意力机制是不会保留序列位置信息的,因此需要该结构去用其他方法吸收位置信息,通过在预训练文本中添加标记以同时提取两句待训练语句,并通过对单字序列进行编码,减少尺寸以避免参数空间过大从而加快计算速度,进一步对词编号进行位置编码从而得到文本矩阵。从而给予单字序列位置信息。
3、通过建立神经网络结构,使得词的位置在层与层之间建立关系,该结构使得该输入的预训练文本在经过最后的Softmax层之前,输入层中除了相对应位置的输入字,其他位置都参与到了输出的计算之中,这与上述建模目标相符合。
4、本发明所提供的自重建方式的语言模型训练方法通用性强,可以采用距离函数或者位置函数建立神经网络结构,依赖程度低。
5、在对预训练文本进行抽取预训练语句进行重建时,采用相邻和非相邻随机抽取,这样的方式更为合理,对比以往仅仅抽取相邻的语句,其重建后的真实性更高。
6、搭建一个神经网络结构完成一个特定的预训练文本任务后。需要随机初始化参数,然后开始训练神经网络结构,不断调整直到预训练模型的损失越来越小。在训练的过程中,一开始初始化的参数会不断变化变直至获取预训练模型,并将其保存下来。
此时,可以进一步通过获取任务文本直接使用之前保存下来的预训练模型的参数来作为这一任务的初始化参数,然后在训练的过程中,依据结果不断进行一些修改,进一步微调预训练模型从而优化。
7、transformer模型可用多层感应机网络、卷积网络进行替代,从而该自重建方式的语言模型训练方法具有通用性或者说可迁移性,适用范围较为广泛。
8、本发明所述的自重建方式的语言模型训练方法所训练的模型在中文分词,实体识别,词性分析,自然语言推理,句子分类,机器阅读理解,文章分类,情感分析等中文自然语言任务之上都有比基于单字的语言模型有更好的预期表现效果。
以上所述仅为本发明较佳实施例而已,并不用以限制本发明,凡在本发明原则之内所作的任何修改,等同替换和改进等均应包含本发明的保护范围之内。
Claims (9)
1.一种自重建方式的语言模型训练方法,其特征在于:其包括如下步骤:
步骤S1:从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单字序列经过位置编码映射成文本矩阵;
步骤S2:结合transformer模型和自注意力机制建立神经网络结构;
步骤S21:配置神经网络结构的层数以及每层位置点数;
步骤S22:设定神经网络结构的第一层的每一个位置点只关注与自身不相邻的位置点的信息;
步骤S23:从第一层开始,设定每层的位置点均与上一层中自身位置以及相邻的至少两个位置点相互连接并关注;及
步骤S24:配置神经网络结构的最后一层为Softmax层;
步骤S3:文本矩阵作为神经网络结构的输入样本,将transformer模型作为参数进行训练并优化后得到目标函数;及
步骤S4:通过重复步骤S1~S3更新目标函数,直至达到设定的优化条件从而获取预训练模型。
2.如权利要求1所述的自重建方式的语言模型训练方法,其特征在于:在上述步骤S1中,包括以下步骤:
步骤S11:在预训练文本中添加标记以同时提取两句待训练语句;
步骤S12:将两句待训练语句分割为单字序列并映射为预设的词编码;及
步骤S13:对词编号进行位置编码从而得到文本矩阵。
3.如权利要求2所述的自重建方式的语言模型训练方法,其特征在于:在上述步骤S11中,在抽取的两个训练语句中每个预训练语句的结尾分别添加[sep]、在第一个预训练语句的句首添加[cls]。
4.如权利要求2所述的自重建方式的语言模型训练方法,其特征在于:每次执行步骤S11时,从预训练文本中逐一抽取两个预训练语句作为待训练语句,直至所述预训练文本中所有的预训练语句被抽取完毕,每次抽取的两个预训练语句是相邻的或者是不相邻的,抽取完毕时,相邻的两个预训练语句和不相邻的两个预训练语句所占的比例范围为40-70%,两者之和为100%。
5.如权利要求1所述的自重建方式的语言模型训练方法,其特征在于:所述方法进一步包括步骤S5:获取任务文本对预训练模型进行任务微调。
6.如权利要求5所述的自重建方式的语言模型训练方法,其特征在于,所述步骤S5具体包括如下步骤:
S51、从预设的任务语料库中提取任务文本;
S52、对所述任务文本分割成单字序列;
S53、将所述步骤S1中的文本矩阵中的单个词和所述步骤S52中所得的单个词进行匹配,并对文本矩阵能够匹配的字进行标记;及
S54、将所述单字序列和被标记的词同时输入至预训练模型中对预训练模型进行优化微调。
7.如权利要求6所述的自重建方式的语言模型训练方法,其特征在于:
在上述步骤S54中,通过全连接层或者CRF网络优化目标函数实现对所述优化后的预训练模型的优化。
8.一种自重建方式的语言模型训练系统,实现如权利要求1-7中任一项所述的自重建方式的语言模型训练方法,包括:
输入模块:用于输入预训练文本;
文字分割模块:用于从预训练文本中提取至少一句待训练语句并将其分割为单字序列,对应单子序列经过位置编码映射成文本矩阵;
文字重建模块:用于结合transformer模型和自注意力机制建立神经网络结构,文本矩阵作为神经网络结构的输入样本,将transformer模型作为参数进行训练并优化后得到目标函数,通过更新目标函数,直至达到设定的优化条件从而获取预训练模型,从而将预训练文本进行重建;
输出模块:用于输出重建后的预训练文本。
9.一种电子设备,包括存储器、处理器和存储在存储器中的计算机程序,所述计算机程序运行时,控制所述存储器中需执行的计算机程序或者处理器执行权利要求1至7中任一项的自重建方式的语言模型训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911056884.1A CN110837733B (zh) | 2019-10-31 | 2019-10-31 | 自重建方式的语言模型训练方法、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911056884.1A CN110837733B (zh) | 2019-10-31 | 2019-10-31 | 自重建方式的语言模型训练方法、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110837733A CN110837733A (zh) | 2020-02-25 |
CN110837733B true CN110837733B (zh) | 2023-12-29 |
Family
ID=69575794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911056884.1A Active CN110837733B (zh) | 2019-10-31 | 2019-10-31 | 自重建方式的语言模型训练方法、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110837733B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506702A (zh) * | 2020-03-25 | 2020-08-07 | 北京万里红科技股份有限公司 | 基于知识蒸馏的语言模型训练方法、文本分类方法及装置 |
CN111428054B (zh) * | 2020-04-14 | 2022-11-01 | 中国电子科技网络信息安全有限公司 | 一种网络空间安全领域知识图谱的构建与存储方法 |
CN111540470B (zh) * | 2020-04-20 | 2023-08-25 | 北京世相科技文化有限公司 | 一种基于bert迁移学习的社交网络抑郁倾向检测模型及其训练方法 |
CN111723548B (zh) * | 2020-06-10 | 2024-04-30 | 腾讯科技(深圳)有限公司 | 评论扩展方法及装置 |
CN111667248A (zh) * | 2020-06-10 | 2020-09-15 | 李文竹 | 基于大数据分析的个性化教育管理系统、方法、介质 |
CN112000805A (zh) * | 2020-08-24 | 2020-11-27 | 平安国际智慧城市科技股份有限公司 | 基于预训练模型的文本匹配方法、装置、终端及存储介质 |
CN112016300B (zh) * | 2020-09-09 | 2022-10-14 | 平安科技(深圳)有限公司 | 预训练模型处理、下游任务处理方法、装置及存储介质 |
CN112329392B (zh) * | 2020-11-05 | 2023-12-22 | 上海明略人工智能(集团)有限公司 | 双向编码的目标编码器构建方法及装置 |
CN113051897B (zh) * | 2021-05-25 | 2021-09-10 | 中国电子科技集团公司第三十研究所 | 一种基于Performer结构的GPT2文本自动生成方法 |
CN117763093B (zh) * | 2024-02-22 | 2024-05-03 | 数字苏州建设有限公司 | 一种基于预训练语言模型的信息记录数据分块方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109885673A (zh) * | 2019-02-13 | 2019-06-14 | 北京航空航天大学 | 一种基于预训练语言模型的自动文本摘要方法 |
CN110110323A (zh) * | 2019-04-10 | 2019-08-09 | 北京明略软件系统有限公司 | 一种文本情感分类方法和装置、计算机可读存储介质 |
CN110209822A (zh) * | 2019-06-11 | 2019-09-06 | 中译语通科技股份有限公司 | 基于深度学习的学术领域数据相关性预测方法、计算机 |
CN110377686A (zh) * | 2019-07-04 | 2019-10-25 | 浙江大学 | 一种基于深度神经网络模型的地址信息特征抽取方法 |
-
2019
- 2019-10-31 CN CN201911056884.1A patent/CN110837733B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109885673A (zh) * | 2019-02-13 | 2019-06-14 | 北京航空航天大学 | 一种基于预训练语言模型的自动文本摘要方法 |
CN110110323A (zh) * | 2019-04-10 | 2019-08-09 | 北京明略软件系统有限公司 | 一种文本情感分类方法和装置、计算机可读存储介质 |
CN110209822A (zh) * | 2019-06-11 | 2019-09-06 | 中译语通科技股份有限公司 | 基于深度学习的学术领域数据相关性预测方法、计算机 |
CN110377686A (zh) * | 2019-07-04 | 2019-10-25 | 浙江大学 | 一种基于深度神经网络模型的地址信息特征抽取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110837733A (zh) | 2020-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110837733B (zh) | 自重建方式的语言模型训练方法、系统及电子设备 | |
CN111444340B (zh) | 文本分类方法、装置、设备及存储介质 | |
CN107783960B (zh) | 用于抽取信息的方法、装置和设备 | |
CN107273503B (zh) | 用于生成同语言平行文本的方法和装置 | |
CN110326002B (zh) | 使用在线注意的序列处理 | |
CN111597830A (zh) | 基于多模态机器学习的翻译方法、装置、设备及存储介质 | |
WO2023160472A1 (zh) | 一种模型训练方法及相关设备 | |
CN112528637B (zh) | 文本处理模型训练方法、装置、计算机设备和存储介质 | |
CN112016604B (zh) | 一种运用视觉信息的零资源机器翻译方法 | |
CN112613273A (zh) | 多语言bert序列标注模型的压缩方法及系统 | |
CN111611805B (zh) | 一种基于图像的辅助写作方法、装置、介质及设备 | |
CN116246213B (zh) | 数据处理方法、装置、设备以及介质 | |
CN116050496A (zh) | 图片描述信息生成模型的确定方法及装置、介质、设备 | |
CN114445832A (zh) | 基于全局语义的文字图像识别方法、装置及计算机设备 | |
CN114529903A (zh) | 文本细化网络 | |
CN111145914B (zh) | 一种确定肺癌临床病种库文本实体的方法及装置 | |
CN116229482A (zh) | 网络舆情分析中视觉多模态文字检测识别及纠错方法 | |
CN113591874B (zh) | 长时记忆增强的段落级别图像描述生成方法 | |
CN112163434B (zh) | 基于人工智能的文本翻译方法、装置、介质及电子设备 | |
CN114020874A (zh) | 一种病历检索系统、方法、设备和计算机可读存储介质 | |
US20230281826A1 (en) | Panoptic segmentation with multi-database training using mixed embedding | |
CN117153246A (zh) | 一种基于肽语言模型的苦肽预测方法 | |
CN117056474A (zh) | 会话应答方法和装置、电子设备、存储介质 | |
CN117113937A (zh) | 一种基于大规模语言模型的电力领域阅读理解方法和系统 | |
CN113761946A (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 |