CN111768001A - 语言模型的训练方法、装置和计算机设备 - Google Patents
语言模型的训练方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN111768001A CN111768001A CN202010621788.3A CN202010621788A CN111768001A CN 111768001 A CN111768001 A CN 111768001A CN 202010621788 A CN202010621788 A CN 202010621788A CN 111768001 A CN111768001 A CN 111768001A
- Authority
- CN
- China
- Prior art keywords
- model
- bert model
- training
- task
- modified
- 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.)
- Granted
Links
- 238000012549 training Methods 0.000 title claims abstract description 168
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000006870 function Effects 0.000 claims description 61
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004913 activation Effects 0.000 claims description 11
- 230000009193 crawling Effects 0.000 claims description 8
- 238000004140 cleaning Methods 0.000 claims description 7
- 238000005070 sampling Methods 0.000 claims description 3
- 230000000694 effects Effects 0.000 abstract description 19
- 238000013473 artificial intelligence Methods 0.000 abstract description 2
- 238000010276 construction Methods 0.000 abstract 1
- 239000010410 layer Substances 0.000 description 129
- 238000007726 management method Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 13
- 230000006835 compression Effects 0.000 description 12
- 238000007906 compression Methods 0.000 description 12
- 238000012544 monitoring process Methods 0.000 description 8
- 230000006978 adaptation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 6
- 238000012550 audit Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000001364 causal effect Effects 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000013140 knowledge distillation Methods 0.000 description 4
- 238000012423 maintenance Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 239000002356 single layer Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003862 health status Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012821 model calculation Methods 0.000 description 2
- 238000012954 risk control Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
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/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Machine Translation (AREA)
Abstract
本申请涉及人工智能领域,揭示了语言模型的训练方法,包括:将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到第一Bert模型对应的第一模型参量;将第一模型参量适用于第二Bert模型中,并通过修改后MLM任务和修改后NSP任务训练第二Bert模型;判断第二Bert模型的输出结果是否达到预设条件;若是,则判定第二Bert模型已达到使用标准。通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景。本申请还适用于智慧政务领域,从而推动智慧城市的建设。
Description
技术领域
本申请涉及到人工智能领域,特别是涉及到语言模型的训练方法、装置和计算机设备。
背景技术
在通用的数据上训练的模型,包含了很多通用的语言信息,例如词法,句法信息,但缺乏具体领域的数据包含的特定语义信息,因此在使用时通常需要在下游数据上做fine-tuning进行优化训练,上述fine-tuning表示微调,否则效果会很差,而且在做fine-tuning的时候还需要保证一定的数据量,否则也很难从通用领域迁移到垂直领域。在政务领域存在大量的AI应用,但任务数据标注比较难,难以保证根据实时请求的具体应用场景,得到匹配对较高的训练模型。
发明内容
本申请的主要目的为提供语言模型的训练方法,旨在解决保证根据实时请求的具体应用场景,得到匹配对较高的训练模型的技术问题。
本申请提出一种语言模型的训练方法,包括:
将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
判断所述第二Bert模型的输出结果是否达到预设条件;
若是,则判定所述第二Bert模型已达到使用标准。
优选地,所述第一模型参量包括所述第一Bert模型的attention层参数,所述将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型的步骤,包括:
将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;
根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;
判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;
若是,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;
通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
优选地,所述根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的步骤之前,包括:
获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;
若否,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;
生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
优选地,所述判断所述第二Bert模型的输出结果是否达到预设条件的步骤,包括:
获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;
通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;
判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;
若是,则判定所述第二Bert模型的输出结果达到预设条件。
优选地,将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:
从预处理后的数据中,获取包含指定数量范围的字节的实体词;
根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;
基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
优选地,所述将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:
将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;
通过所述正样本集合和所述负样本集合,训练得到的NSP任务,即为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
优选地,所述从预处理后的数据中,获取包含指定数量范围的字节的实体词的步骤之前,包括:
从互联网数据库爬取指定数据量的政务领域的文件数据;
对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
本申请还提供了一种语言模型的训练装置,包括:
输入模块,用于将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
第一训练模块,用于将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
判断模块,用于判断所述第二Bert模型的输出结果是否达到预设条件;
判定模块,用于若达到预设条件,则判定所述第二Bert模型已达到使用标准。
本申请还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
本申请通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景,得到匹配对较高的训练模型。
附图说明
图1本申请一实施例的语言模型的训练方法流程示意图;
图2本申请一实施例的语言模型的训练装置结构示意图;
图3本申请一实施例的计算机设备内部结构示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本实施例一种语言模型的训练方法,包括:
S1:将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
S2:将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
S3:判断所述第二Bert模型的输出结果是否达到预设条件;
S4;若是,则判定所述第二Bert模型已达到使用标准。
本实施例为了扩大预训练语言模型的应用场景,例如在硬件上或终端上均可应用,以及对实时反馈要求高的服务端上使用,对预训练语言模型进一步进行模型压缩。上述模型压缩是指在不显著降低模型性能的情况下,减少模型的参数数量,以提升模型推断预测的反馈速度。但从Bert模型的模型结构和参数上来看,原Bert模型即上述第一Bert模型属于宽模型、大模型,因为Multii-attention层和FFN(Feed-Forward Network,前馈神经网络)的参数数量太大,模型参数过多导致推断预测的反馈速度过慢,但是宽模型更容易训练,模型的预测效果不佳。为了提升模型的预测效果,本申请设计了一个小模型即第二Bert模型,将原Bert模型中的FFN层的参数减少,并且将单个layer中的FFN层的层数扩充,比如由1层提升到3层,来弥补参数数量减少导致的非线性拟合能力降低的缺陷。因为FFN层的层数扩充,使第二Bert模型向深度变化,不利于模型训练,本申请采用知识蒸馏的方法来训练第二Bert模型,即将同等任务训练的第一Bert模型的模型参数,移用到第二Bert模型上,使第二Bert模型在训练中更快地接近真实值。通过对Bert模型的FFN层进行模型压缩改进,将原Bert模型中的FFN层的参数减少,并且将单个layer中的FFN层的层数扩充,提升模型推断预测的反馈速度;且通过当前优化的MLM(Masked Language Model,隐藏语言模型)任务和NLP(Natural LangungeProcessing,自然语言处理)任务下进行训练模型压缩后的第二Bert模型,使训练模型更能适用于政务领域,识别效果更佳。第二Bert模型和第一Bert模型的具体结构对比图如下:第一Bert模型包括依次连接的Multi-head,768→Add&Norm,768→FFN,3072→Add&Norm,768;第二Bert模型包括依次连接的Multi-head,768→Add&Norm,768→FFN,768→FFN,384→FFN,768→Add&Norm,768。本申请通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景,得到匹配对较高的训练模型,上述具体应用场景本实施例以政务领域为例。
进一步地,所述第一模型参量包括所述第一Bert模型的attention层参数,所述将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型的步骤S2,包括:
S21:将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;
S22:根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;
S23:判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;
S24:若是,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;
S25:通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
本实施例采用知识蒸馏来训练小模型第二Bert模型,知识蒸馏属于teacher-student模式,大模型是teacher网络,小模型是student网络,即使用大模型的输出来监督小模型学习,使得大模型和小模型的Multiattention层的参数大小是一样的,而且由于attention层是Bert模型中非常重要的组成部分,希望student网络能很好的学习到teacher网络中attention层的参数值。本实施例通过对teacher网络和student网络的attention层的权重系数引入了约束关系进行约束训练,使得student网络能很好的学习到teacher网络中attention层的参数值。然后再通过修改后MLM任务和修改后NSP任务,训练与第一Bert模型的attention层参数相同的第二Bert模型,以解决了第二Bert模型深度增加带来的训练难的问题。
进一步地,根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的步骤S22之前,包括:
S221:获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;
S222:若否,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;
S223:生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
本申请为进一步提高第二Bert模型的计算速率,提高反馈速率,更换了第二Bert模型的激活函数。模型计算中比较耗时的在于激活函数GELU(),通过用RELU()替换了GELU(),替换之后计算消耗能进一步下降,因为RELU()计算明显比GELU()要复杂。上述GELU(x)=xP(X<=x)函数的意思表示为,X是标准正态分布采样的值,x是函数输入值,函数输入值也符合标准正态分布。P(X<=x)表示的是当X<=x时,P为1,否则P为0。GELU()和RELU()是两个不同的激活函数,如RELU()的函数具体表达式为max(0,x)。
进一步地,所述判断所述第二Bert模型的输出结果是否达到预设条件的步骤S3,包括:
S31:获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;
S32:通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;
S33:判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;
S34:若是,则判定所述第二Bert模型的输出结果达到预设条件。
本申请在对原第一Bert模型进行模型压缩后,为确保压缩后得到的第二Bert模型具有更高的预测精准度,不仅对中间参量进行了约束,同时对输出结果也进行了约束,上述中间参量比如包括Bert模型的attention层参数。当上述损失函数最小时,预测结果最佳,提高了第二Bert模型的预测精准度。压缩后的小模型的参数数量只有大模型的1/2,而推断预测的反馈速度是大模型的2倍,且在政务领域的文件数据中任务执行效果更佳,比如政务领域的文件主题分类、句子分类等任务的测试结果,小模型的准确率较大模型只下降了1%。α属于(0,1)范围内的常数,可根据模型效果进行自定义选择及调整,比如可以选择0.1,或0.5等。
进一步地,所述将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤S1之前,包括:
S11:从预处理后的数据中,获取包含指定数量范围的字节的实体词;
S12:根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;
S13:基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
本实施例中,原MLM任务通过mask单个字,使该被mask的单个字实现隐藏,然后模型训练的过程中通过上下文的词信息来预测该词。例如,对于句子“夏天真的好热,开电扇都不管用”。mask字符“热”,然后通过“夏天真的好mask,开电扇都不管用”来预测mask的占位词是字符“热”。但在政务领域的文件数据中常常存在大量的实体词,比如“深圳市”,“中国平安集团”等。实体词的长度一般为2-10个字符组成,通过mask单个字无法达到效果,因此修改后的MLM任务采用n-gram的mask模式实现,其中,其中,n为2-10的正整数,表示实体词为2-10个字符,并对2-10个字符的实体词,在随机mask时设置了不同的权重。例如2-grammask的频率高点,而10-grammask的频率低点,因为10个字符的实体词的数量一般是少于2个字符的实体词,即2-gram的实体词在整个文本中出现的频率是要高于10-gram的实体词。对于3到9个字符的实体词也是一样,出现的频率都有所不同,因此针对不同的出现频率设置不同的权重,可更好的切合政务领域的实际场景,因为实际场景中2-gram的实体字要多于10-gram,通过给予更高的权重,则训练的过程中能有更多的2-gram实体词被mask。本实施例通过设置不同的权重训练基于n-gram的MLM任务,得到的修改后的MLM任务,其对实体词的预测准确率要高于均匀权重的MLM任务的预测准确度。
进一步地,所述将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤S1之前,还包括:
S101:将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;
S102:通过所述正样本集合和所述负样本集合,训练得到的NSP任务,为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
本实施例通过NSP任务改进,使原本通过识别关键字判断句子是否来源于同一主题文件的作用,通过赋予句子之间的语义承接关联关系,比如因果关系等,使修改后的NSP任务可识别两个句子是否为连续的上下句,可预测两个句子排布的顺序。修改后的NSP任务修改成预测两个句子的顺序是否为正顺序,其中正样本从一个文件中采样,且具有现有语法规则中的句子顺序的正顺序,而负样本只是将正样本中的句子顺序颠倒。例如“因为小明读书很认真,所以他考上了清华”,将这个句子对作为正样本;而负样本就是“所以他考上了清华,因为小明读书很认真”。修改后的NSP任务需要挖掘句子之间的因果关系等语义承接关联关系,可使Bert模型在训练时能抽取更多的语义信息,而非单单识别关键字,提高预测结果接近真实值的程度。
进一步地,所述从预处理后的数据中,获取包含指定数量范围的字节的实体词的步骤之前,或将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合的步骤之前,包括:
S1001:从互联网数据库爬取指定数据量的政务领域的文件数据;
S1002:对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
本实施例通过从互联网数据库爬取各种和政策相关的文件,以得到政务领域的文件数据,上述指定数据量大概500M左右,然后对上述获取的文件数据进行清洗预处理,以去除比如html标签等无意义的字符,以免影响语言模型的训练。
本申请的语言模型训练完成后存储于区块链,以扩大语言模型的应用范围。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图2,本申请一实施例的语言模型的训练装置,包括:
输入模块1,用于将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
第一训练模块2,用于将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
判断模块3,用于判断所述第二Bert模型的输出结果是否达到预设条件;
判定模块4,用于若达到预设条件,则判定所述第二Bert模型已达到使用标准。
本实施例为了扩大预训练语言模型的应用场景,例如在硬件上或终端上均可应用,以及对实时反馈要求高的服务端上使用,对预训练语言模型进一步进行模型压缩。上述模型压缩是指在不显著降低模型性能的情况下,减少模型的参数数量,以提升模型推断预测的反馈速度。但从Bert模型的模型结构和参数上来看,原Bert模型即上述第一Bert模型属于宽模型、大模型,因为Multii-attention层和FFN(Feed-Forward Network,前馈神经网络)的参数数量太大,模型参数过多导致推断预测的反馈速度过慢,但是宽模型更容易训练,模型的预测效果不佳。为了提升模型的预测效果,本申请设计了一个小模型即第二Bert模型,将原Bert模型中的FFN层的参数减少,并且将单个layer中的FFN层的层数扩充,比如由1层提升到3层,来弥补参数数量减少导致的非线性拟合能力降低的缺陷。因为FFN层的层数扩充,使第二Bert模型向深度变化,不利于模型训练,本申请采用知识蒸馏的方法来训练第二Bert模型,即将同等任务训练的第一Bert模型的模型参数,移用到第二Bert模型上,使第二Bert模型在训练中更快地接近真实值。通过对Bert模型的FFN层进行模型压缩改进,将原Bert模型中的FFN层的参数减少,并且将单个layer中的FFN层的层数扩充,提升模型推断预测的反馈速度;且通过当前优化的MLM(Masked Language Model,隐藏语言模型)任务和NLP(Natural LangungeProcessing,自然语言处理)任务下进行训练模型压缩后的第二Bert模型,使训练模型更能适用于政务领域,识别效果更佳。第二Bert模型和第一Bert模型的具体结构对比图如下:第一Bert模型包括依次连接的Multi-head,768→Add&Norm,768→FFN,3072→Add&Nrm,768;第二Bert模型包括依次连接的Multi-head,768→Add&Norm,768→FFN,768→FFN,384→FFN,768→Add&Norm,768。本申请通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景,得到匹配对较高的训练模型,上述具体应用场景本实施例以政务领域为例。
进一步地,所述第一模型参量包括所述第一Bert模型的attention层参数,第一训练模块2,包括:
作为单元,用于将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;
第一训练单元,用于根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;
第一判断单元,用于判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;
第一判定单元,用于若权重系数一致,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;
第二训练单元,用于通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
本实施例采用知识蒸馏来训练小模型第二Bert模型,知识蒸馏属于teacher-student模式,大模型是teacher网络,小模型是student网络,即使用大模型的输出来监督小模型学习,使得大模型和小模型的Multiattention层的参数大小是一样的,而且由于attention层是Bert模型中非常重要的组成部分,希望student网络能很好的学习到teacher网络中attention层的参数值。本实施例通过对teacher网络和student网络的attention层的权重系数引入了约束关系进行约束训练,使得student网络能很好的学习到teacher网络中attention层的参数值。然后再通过修改后MLM任务和修改后NSP任务,训练与第一Bert模型的attention层参数相同的第二Bert模型,以解决了第二Bert模型深度增加带来的训练难的问题。
进一步地,第一训练模块2,包括:
第一获取单元,用于获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;
替换单元,用于若未达到预期,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;
生成单元,用于生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
本申请为进一步提高第二Bert模型的计算速率,提高反馈速率,更换了第二Bert模型的激活函数。模型计算中比较耗时的在于激活函数GELU(),通过用RELU()替换了GELU(),替换之后计算消耗能进一步下降,因为RELU()计算明显比GELU()要复杂。上述GELU(x)=xP(X<=x)函数的意思表示为,X是标准正态分布采样的值,x是函数输入值,函数输入值也符合标准正态分布。P(X<=x)表示的是当X<=x时,P为1,否则P为0。GELU()和RELU()是两个不同的激活函数,如RELU()的函数具体表达式为max(0,x)。
进一步地,判断模块3,包括:
第二获取单元,用于获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;
约束单元,用于通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;
第二判断单元,用于判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;
第二判定单元,用于若达到最小,则判定所述第二Bert模型的输出结果达到预设条件。
本申请在对原第一Bert模型进行模型压缩后,为确保压缩后得到的第二Bert模型具有更高的预测精准度,不仅对中间参量进行了约束,同时对输出结果也进行了约束,上述中间参量比如包括Bert模型的attention层参数。当上述损失函数最小时,预测结果最佳,提高了第二Bert模型的预测精准度。压缩后的小模型的参数数量只有大模型的1/2,而推断预测的反馈速度是大模型的2倍,且在政务领域的文件数据中任务执行效果更佳,比如政务领域的文件主题分类、句子分类等任务的测试结果,小模型的准确率较大模型只下降了1%。α属于(0,1)范围内的常数,可根据模型效果进行自定义选择及调整,比如可以选择0.1,或0.5等。
进一步地,语言模型的训练装置,包括:
获取模块,用于从预处理后的数据中,获取包含指定数量范围的字节的实体词;
设置模块,用于根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;
第二训练模块,用于基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
本实施例中,原MLM任务通过mask单个字,使该被mask的单个字实现隐藏,然后模型训练的过程中通过上下文的词信息来预测该词。例如,对于句子“夏天真的好热,开电扇都不管用”。mask字符“热”,然后通过“夏天真的好mask,开电扇都不管用”来预测mask的占位词是字符“热”。但在政务领域的文件数据中常常存在大量的实体词,比如“深圳市”,“中国平安集团”等。实体词的长度一般为2-10个字符组成,通过mask单个字无法达到效果,因此修改后的MLM任务采用n-gram的mask模式实现,其中,n为2-10的正整数,表示实体词为2-10个字符,并对2-10个字符的实体词,在随机mask时设置了不同的权重。例如2-gram mask的频率高点,而10-grammask的频率低点,因为10个字符的实体词的数量一般是少于2个字符的实体词,即2-gram的实体词在整个文本中出现的频率是要高于10-gram的实体词。对于3到9个字符的实体词也是一样,出现的频率都有所不同,因此针对不同的出现频率设置不同的权重,可更好的切合政务领域的实际场景,因为实际场景中2-gram的实体字要多于10-gram,通过给予更高的权重,则训练的过程中能有更多的2-gram实体词被mask。本实施例通过设置不同的权重训练基于n-gram的MLM任务,得到的修改后的MLM任务,其对实体词的预测准确率要高于均匀权重的MLM任务的预测准确度。
进一步地,语言模型的训练装置,还包括:
纳入模块,用于将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;
第三训练模块,用于通过所述正样本集合和所述负样本集合,训练得到的NSP任务,为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
本实施例通过NSP任务改进,使原本通过识别关键字判断句子是否来源于同一主题文件的作用,通过赋予句子之间的语义承接关联关系,比如因果关系等,使修改后的NSP任务可识别两个句子是否为连续的上下句,可预测两个句子排布的顺序。修改后的NSP任务修改成预测两个句子的顺序是否为正顺序,其中正样本从一个文件中采样,且具有现有语法规则中的句子顺序的正顺序,而负样本只是将正样本中的句子顺序颠倒。例如“因为小明读书很认真,所以他考上了清华”,将这个句子对作为正样本;而负样本就是“所以他考上了清华,因为小明读书很认真”。修改后的NSP任务需要挖掘句子之间的因果关系等语义承接关联关系,可使Bert模型在训练时能抽取更多的语义信息,而非单单识别关键字,提高预测结果接近真实值的程度。
进一步地,语言模型的训练装置,包括:
爬取模块,用于从互联网数据库爬取指定数据量的政务领域的文件数据;
数据清洗模块,用于对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
本实施例通过从互联网数据库爬取各种和政策相关的文件,以得到政务领域的文件数据,上述指定数据量大概500M左右,然后对上述获取的文件数据进行清洗预处理,以去除比如html标签等无意义的字符,以免影响语言模型的训练。
本申请的语言模型训练完成后存储于区块链,以扩大语言模型的应用范围。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储语言模型的训练过程需要的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现语言模型的训练方法。
上述处理器执行上述语言模型的训练方法,包括:将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;判断所述第二Bert模型的输出结果是否达到预设条件;若是,则判定所述第二Bert模型已达到使用标准。
上述计算机设备,通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景,得到匹配对较高的训练模型。
在一个实施例中,所述第一模型参量包括所述第一Bert模型的attention层参数,上述处理器将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型的步骤,包括:将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;若是,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
在一个实施例中,上述处理器根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的步骤之前,包括:获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;若否,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
在一个实施例中,上述处理器判断所述第二Bert模型的输出结果是否达到预设条件的步骤,包括:获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;若是,则判定所述第二Bert模型的输出结果达到预设条件。
在一个实施例中,上述处理器将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:从预处理后的数据中,获取包含指定数量范围的字节的实体词;根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
在一个实施例中,上述处理器将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;通过所述正样本集合和所述负样本集合,训练得到的NSP任务,为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
在一个实施例中,上述处理器从预处理后的数据中,获取包含指定数量范围的字节的实体词的步骤之前,或将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合的步骤之前,包括:从互联网数据库爬取指定数据量的政务领域的文件数据;对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现语言模型的训练方法,包括:将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;判断所述第二Bert模型的输出结果是否达到预设条件;若是,则判定所述第二Bert模型已达到使用标准。
上述计算机可读存储介质,通过改进Bert模型的结构以及训练方法,扩大预训练语言模型的迁移到具体应用场景的适用范围以及精准度,并在当前优化的任务数据下训练改进的Bert模型,使训练模型更能适用于具体应用场景或领域,识别效果更佳,保证了根据实时请求的具体应用场景,得到匹配对较高的训练模型。
在一个实施例中,所述第一模型参量包括所述第一Bert模型的attention层参数,上述处理器将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型的步骤,包括:将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;若是,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
在一个实施例中,上述处理器根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的步骤之前,包括:获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;若否,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
在一个实施例中,上述处理器判断所述第二Bert模型的输出结果是否达到预设条件的步骤,包括:获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;若是,则判定所述第二Bert模型的输出结果达到预设条件。
在一个实施例中,上述处理器将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:从预处理后的数据中,获取包含指定数量范围的字节的实体词;根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
在一个实施例中,上述处理器将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;通过所述正样本集合和所述负样本集合,训练得到的NSP任务,为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
在一个实施例中,上述处理器从预处理后的数据中,获取包含指定数量范围的字节的实体词的步骤之前,或将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合的步骤之前,包括:从互联网数据库爬取指定数据量的政务领域的文件数据;对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种语言模型的训练方法,其特征在于,包括:
将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
判断所述第二Bert模型的输出结果是否达到预设条件;
若是,则判定所述第二Bert模型已达到使用标准。
2.根据权利要求1所述的语言模型的训练方法,其特征在于,所述第一模型参量包括所述第一Bert模型的attention层参数,所述将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型的步骤,包括:
将所述第一Bert模型作为teacher-student模式中的teacher网络,将所述第二Bert模型作为teacher-student模式中的student网络;
根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练,其中,DKL表示KL散度函数,Ateacher表示所述第一Bert模型的attention层权重系数,Astudent表示所述第二Bert模型的attention层权重系数,Lattention表示attention层参数的约束关系;
判断所述student网络的attention层权重系数是否与所述teacher网络的attention层权重系数一致;
若是,则判定得到与所述第一Bert模型的attention层参数相同的第二Bert模型;
通过所述修改后MLM任务和修改后NSP任务,训练与所述第一Bert模型的attention层参数相同的第二Bert模型。
3.根据权利要求2所述的语言模型的训练方法,其特征在于,所述根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的步骤之前,包括:
获取当前所述第二Bert模型的通过计算反馈预测结果的反馈速率,并判断所述反馈速率是否达到预期;
若否,则将所述第二Bert模型的激活函数GELU(x)=xP(X<=x),替换为RELU(x)=max(0,x),其中,X表示标准正态分布采样的值,x表示函数输入值;
生成根据Lattention=DKL(Ateacher,Astudent),对所述第一Bert模型的attention层权重系数和所述第二Bert模型的attention层权重系数进行约束训练的信息指令。
4.根据权利要求1所述的语言模型的训练方法,其特征在于,所述判断所述第二Bert模型的输出结果是否达到预设条件的步骤,包括:
获取所述第一Bert模型对所述修改后MLM任务和修改后NSP任务输出的第一训练结果;
通过损失函数L=αLmlm+(1-α)Lsop约束所述第二Bert模型,对所述修改后MLM任务和修改后NSP任务输出第二训练结果,其中,Lmlm表示第二bert模型中的所述修改后MLM任务的损失函数,Lsop表示第二bert模型中的SOP任务的损失函数,α属于(0,1)范围内的常数;
判断所述损失函数L=αLmlm+(1-α)Lsop是否达到最小;
若是,则判定所述第二Bert模型的输出结果达到预设条件。
5.根据权利要求1所述的语言模型的训练方法,其特征在于,所述将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:
从预处理后的数据中,获取包含指定数量范围的字节的实体词;
根据各所述实体词的字节数量,通过n-gram的mask模式设置各所述实体词分别对应的出现频率的权重;
基于所述n-gram的mask模式设置各所述实体词分别对应的出现频率的权重,训练得到基于n-gram的MLM任务,得到所述修改后MLM任务。
6.根据权利要求5所述的语言模型的训练方法,其特征在于,所述从预处理后的数据中,获取包含指定数量范围的字节的实体词的步骤之前,包括:
从互联网数据库爬取指定数据量的政务领域的文件数据;
对所述文件数据进行数据清洗,以去除无意义的字符,得到所述预处理后的数据。
7.根据权利要求1所述的语言模型的训练方法,其特征在于,所述将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量的步骤之前,包括:
将预处理后的数据中,具有语义承接关联关系的两个句子纳入正样本集合,将不具有语义承接关联关系的两个句子纳入负样本集合;
通过所述正样本集合和所述负样本集合,训练得到的NSP任务,为所述修改后NSP任务,以预测两个句子是否为连续的上下句关系。
8.一种语言模型的训练装置,其特征在于,包括:
输入模块,用于将修改后MLM任务和修改后NSP任务,输入至第一Bert模型中进行训练,得到所述第一Bert模型对应的第一模型参量;
第一训练模块,用于将所述第一模型参量适用于第二Bert模型中,并通过所述修改后MLM任务和修改后NSP任务训练所述第二Bert模型,其中,所述第二Bert模型相比于所述第一Bert模型,压缩了FFN层的参数数量,扩充了所述FFN层的结构层数量;
判断模块,用于判断所述第二Bert模型的输出结果是否达到预设条件;
判定模块,用于若达到预设条件,则判定所述第二Bert模型已达到使用标准。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621788.3A CN111768001B (zh) | 2020-06-30 | 2020-06-30 | 语言模型的训练方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010621788.3A CN111768001B (zh) | 2020-06-30 | 2020-06-30 | 语言模型的训练方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111768001A true CN111768001A (zh) | 2020-10-13 |
CN111768001B CN111768001B (zh) | 2024-01-23 |
Family
ID=72723277
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010621788.3A Active CN111768001B (zh) | 2020-06-30 | 2020-06-30 | 语言模型的训练方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111768001B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112417884A (zh) * | 2020-11-05 | 2021-02-26 | 广州平云信息科技有限公司 | 一种基于知识增强和知识迁移的句子语义相关度判断方法 |
CN112433761A (zh) * | 2020-12-01 | 2021-03-02 | 上海携旅信息技术有限公司 | 高斯误差线性单元的优化方法、系统、设备及介质 |
CN112527127A (zh) * | 2020-12-23 | 2021-03-19 | 北京百度网讯科技有限公司 | 输入法长句预测模型的训练方法、装置、电子设备及介质 |
CN113627153A (zh) * | 2021-07-30 | 2021-11-09 | 平安普惠企业管理有限公司 | 处理数据的方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222188A (zh) * | 2019-06-18 | 2019-09-10 | 深圳司南数据服务有限公司 | 一种多任务学习的公司公告处理方法及服务端 |
CN110543639A (zh) * | 2019-09-12 | 2019-12-06 | 扬州大学 | 一种基于预训练Transformer语言模型的英文句子简化算法 |
US10607598B1 (en) * | 2019-04-05 | 2020-03-31 | Capital One Services, Llc | Determining input data for speech processing |
CN111062489A (zh) * | 2019-12-11 | 2020-04-24 | 北京知道智慧信息技术有限公司 | 一种基于知识蒸馏的多语言模型压缩方法、装置 |
CN111104482A (zh) * | 2019-12-18 | 2020-05-05 | 北京百度网讯科技有限公司 | 数据处理方法和装置 |
CN111178094A (zh) * | 2019-12-20 | 2020-05-19 | 沈阳雅译网络技术有限公司 | 一种基于预训练的稀缺资源神经机器翻译训练方法 |
CN111259154A (zh) * | 2020-02-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备及存储介质 |
CN111339302A (zh) * | 2020-03-06 | 2020-06-26 | 支付宝(杭州)信息技术有限公司 | 训练要素分类模型的方法和装置 |
-
2020
- 2020-06-30 CN CN202010621788.3A patent/CN111768001B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10607598B1 (en) * | 2019-04-05 | 2020-03-31 | Capital One Services, Llc | Determining input data for speech processing |
CN110222188A (zh) * | 2019-06-18 | 2019-09-10 | 深圳司南数据服务有限公司 | 一种多任务学习的公司公告处理方法及服务端 |
CN110543639A (zh) * | 2019-09-12 | 2019-12-06 | 扬州大学 | 一种基于预训练Transformer语言模型的英文句子简化算法 |
CN111062489A (zh) * | 2019-12-11 | 2020-04-24 | 北京知道智慧信息技术有限公司 | 一种基于知识蒸馏的多语言模型压缩方法、装置 |
CN111104482A (zh) * | 2019-12-18 | 2020-05-05 | 北京百度网讯科技有限公司 | 数据处理方法和装置 |
CN111178094A (zh) * | 2019-12-20 | 2020-05-19 | 沈阳雅译网络技术有限公司 | 一种基于预训练的稀缺资源神经机器翻译训练方法 |
CN111259154A (zh) * | 2020-02-07 | 2020-06-09 | 腾讯科技(深圳)有限公司 | 一种数据处理方法、装置、计算机设备及存储介质 |
CN111339302A (zh) * | 2020-03-06 | 2020-06-26 | 支付宝(杭州)信息技术有限公司 | 训练要素分类模型的方法和装置 |
Non-Patent Citations (1)
Title |
---|
曹小鹏;邵一萌;: "ESM:一种增强语义匹配的语句评分模型", 计算机工程与科学, no. 06 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112417884A (zh) * | 2020-11-05 | 2021-02-26 | 广州平云信息科技有限公司 | 一种基于知识增强和知识迁移的句子语义相关度判断方法 |
CN112433761A (zh) * | 2020-12-01 | 2021-03-02 | 上海携旅信息技术有限公司 | 高斯误差线性单元的优化方法、系统、设备及介质 |
CN112433761B (zh) * | 2020-12-01 | 2022-06-10 | 上海携旅信息技术有限公司 | 高斯误差线性单元的优化方法、系统、设备及介质 |
CN112527127A (zh) * | 2020-12-23 | 2021-03-19 | 北京百度网讯科技有限公司 | 输入法长句预测模型的训练方法、装置、电子设备及介质 |
CN112527127B (zh) * | 2020-12-23 | 2022-01-28 | 北京百度网讯科技有限公司 | 输入法长句预测模型的训练方法、装置、电子设备及介质 |
CN113627153A (zh) * | 2021-07-30 | 2021-11-09 | 平安普惠企业管理有限公司 | 处理数据的方法、装置、设备及存储介质 |
CN113627153B (zh) * | 2021-07-30 | 2023-10-27 | 湖南提奥医疗科技有限公司 | 处理数据的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111768001B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111768001A (zh) | 语言模型的训练方法、装置和计算机设备 | |
CN113094200B (zh) | 一种应用程序的故障预测方法和装置 | |
CN112612894B (zh) | 意图识别模型的训练方法、装置、计算机设备和存储介质 | |
CN110598070B (zh) | 应用类型识别方法及装置、服务器及存储介质 | |
CN111061847A (zh) | 对话生成及语料扩充方法、装置、计算机设备和存储介质 | |
WO2021169364A1 (zh) | 分析语义情感的方法、装置、设备及存储介质 | |
CN112800234B (zh) | 信息处理方法、装置、电子设备和存储介质 | |
CN110866119B (zh) | 一种文章质量的确定方法、装置、电子设备及存储介质 | |
CN113688221A (zh) | 基于模型的话术推荐方法、装置、计算机设备和存储介质 | |
CN115277587B (zh) | 网络流量识别方法、装置、设备及介质 | |
CN113362852A (zh) | 一种用户属性识别方法和装置 | |
Cui et al. | Modelling customer online behaviours with neural networks: applications to conversion prediction and advertising retargeting | |
CN117370562A (zh) | 基于情感分析的用户评价数据处理方法及装置 | |
CN111008329A (zh) | 基于内容分类的页面内容推荐方法及装置 | |
CN116738974B (zh) | 一种基于泛化因果网络的语言模型生成方法、设备及介质 | |
CN116776857A (zh) | 客户通话关键信息提取方法、装置、计算机设备及介质 | |
CN116911757A (zh) | 一种业务实现方法、装置和存储介质 | |
Guo | Geometric Average Weakening Buffer GM (1, 1) and its Application in Prediction of Employment Rate of College Graduates | |
CN113849662A (zh) | 基于模型的信息生成方法、装置、计算机设备和存储介质 | |
CN113849634A (zh) | 用于提升深度模型推荐方案可解释性的方法 | |
Jeong et al. | Dual-Spiral methodology for knowledgebase constructions | |
Eom et al. | Time-Weighted Cumulative LSTM Method Using Log Data for Predicting Credit Card Customer Turnover | |
Aichernig et al. | Predicting and testing latencies with deep learning: An iot case study | |
CN113407225B (zh) | 代码清单的生成方法、装置、计算机设备和存储介质 | |
Yin | Personalized advertisement push method based on semantic similarity and data mining |
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 |