基于自适应掩码策略的文本预测方法、系统及电子设备
未命名
07-22
阅读:145
评论:0
1.本发明涉及计算机文本预测技术领域,尤其是指一种基于自适应掩码策略的文本预测方法、系统及电子设备。
背景技术:
2.近年来,随着深度学习领域的快速发展,以不同神经网络作为主要结构的模型吸引了越来越多人的关注。其中基于“变压器”(transformer)的深度学习模型已被证明对各种序列到序列生成任务有效,如机器翻译、文本摘要、对话系统、代码生成等。尽管基于变压器的模型具有良好的性能,但它们通常采用自回归(ar)的解码范式,即将目标序列的解码过程以从左到右的顺序分解为多步预测,下一步预测以先前生成的部分作为条件,逐字生成结果。该解码范式使得推理时间的成本随目标序列的长度线性增加,显然这对于长序列来说是耗时的。为了缓解这一问题,最近的许多研究探索了非自回归(nar)方法来并行预测目标序列,该类方法解码时仅需要一步便可生成整个序列,这可以显著提高解码速度。然而在该特性下,下一步预测没有先前生成的部分作为条件,nar模型丢弃了目标序列的内部依赖性,而完全根据源/输入序列来执行解码过程。结果不可避免的是,相比较同规模的ar方法,nar方法尽管在解码速度上有很大提升,但是缺乏目标序列的内部依赖性的特性导致了生成质量的落后。
3.为了实现解码加速和生成质量之间更好的权衡,条件掩码语言模型(cmlm)被提出,并且已经成为最具竞争力和最广泛使用的nar框架之一,cmlm利用迭代掩码预测的解码策略。在训练阶段,cmlm利用掩码语言模型学习目标,首先将目标序列分为掩码部分和未掩码部分,根据目标序列中的源输入和未掩码部分,并行生成目标序列的掩码部分。在推理过程中,cmlm首先并行生成整个目标序列(第一轮迭代),然后在后续迭代过程中反复进行掩码操作和预测低置信度的令牌。基于cmlm,许多改进策略也被提出,从不同层面提升了模型性能,例如:改进推理策略、受益于ar模型、利用更好的训练准则、引入自修正机制和使用预训练方法等。
4.以非自回归技术为基础的模型近年来因其高效的解码效率而受到越来越多的关注。首先由gu等人在2018年提出,速度提升很大,但是效果不佳,之后许多改进的方法被提出。此类模型也被分为了完全非自回归模型和迭代非自回归模型,前者在解码过程中严格采用单次解码,仅过一次模型就并行生成整个目标序列。但是在这种情况下,解码速度的提高是以牺牲生成质量为代价的。因此,研究者提出了基于迭代的非自回归模型,以实现解码加速和生成质量之间更好的权衡。li和zhao等人首次提出了迭代非自回归模型,旨在使用额外的解码器实现细化噪声目标序列。随后插入和删除操作也被研究者应用到迭代过程中,旨在每一轮迭代过程中,对已生成序列进行插入和删除,实现进一步的优化生成。除此以外,还有许多其他方法被提出用来迭代生成目标序列,在这些迭代非自回归模型方法中,条件掩码语言模型(cmlm)引起了许多研究者的兴趣,使用掩码预测策略的良好性能而被广泛应用。具体来说,在训练中采用掩码语言模型的目标,学会预测掩码部分的能力。在解码
时从全部掩盖的序列出发,反复预测和掩码,在每一轮迭代中,先掩盖置信度低的部分再进行预测,整个目标序列的质量在迭代过程中被反复优化,最终生成高质量的目标序列。最近的许多迭代模型也在cmlm的基础上实现了性能改进。
5.提及掩码语言模型(mlm),掩码训练目标首次被bert模型所引入,如今已经成为各种预训练方法的重要组成部分。它的标准范式是通过不同的掩码策略选择目标序列中的一部分标识,并将它们替换成一个掩码标识[mask],然后训练模型来预测这部分标识。其中掩码策略对这些模型至关重要,因此有许多不同的掩码策略被提出。由于bert单纯由单一的变压器编码器组成,且仅仅被应用到了单语场景,因此在各种应用场景下都存在局限性,如机器翻译。为了进一步扩展掩码语言模型的应用场景,上述提到的条件掩码语言模型(cmlm)被广泛使用。基于cmlm的非自回归模型也可以通过在训练中引入统一的掩码策略和在推理过程中引入掩码预测解码策略而获益。然而,只有少数关于掩码策略的改进被探索,例如guo等人提出的联合掩码语言模型,qian等人提出的glat模型等。
[0006]
现有技术的缺点:
[0007]
综上所述,目前基于条件掩码语言模型(cmlm)的改进中,大多都需要改变其原本提出的解码策略,或者增加额外的训练目标。并且在迭代过程中,无法保证每一轮迭代提升的稳定性,导致无效的解码时间开销。所以这些方法虽然在一定程度上可以提升模型的性能,但是往往存在操作困难,增加解码开销的问题,同时该类方法应用场景有限,仅仅可应用到cmlm模型,无法推广到其他掩码语言模型。与此同时,很少存在基于掩码策略的改进方案。
技术实现要素:
[0008]
为此,本发明所要解决的技术问题在于克服现有技术中关于语言预测模型训练任务中文本掩码效率较低、并且导致模型预测准确率较低的问题。
[0009]
为解决上述技术问题,本发明提供了一种基于自适应掩码策略的文本预测方法,包括:
[0010]
步骤s1:对文本对中的目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对待训练的模型进行当前训练;
[0011]
步骤s2:将待训练的模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算待训练的模型当前训练的预测结果的正确率β;
[0012]
步骤s3:根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例和源序列x的再次掩码比例对待训练的模型再次进行训练;
[0013]
步骤s4:将待训练的模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至步骤s2直至对比结果一致为止;
[0014]
步骤s5:根据训练好的模型对待预测的文本进行预测。
[0015]
在本发明的一个实施例中,所述步骤s1中根据所述目标序列y的掩码比例计算所
述文本对中的源序列x的初始掩码比例,方法为:
[0016]
将所述目标序列y划分为未被掩码部分y
obs
和掩码部分y
mask
,并根据所述未被掩码部分y
obs
和掩码部分y
mask
计算目标序列y的掩码比例;
[0017]
根据所述目标序列y的掩码比例计算源序列x的初始掩码比例。
[0018]
在本发明的一个实施例中,所述根据所述未被掩码部分y
obs
和掩码部分y
mask
计算目标序列y的掩码比例,公式为:其中,α
dec
表示目标序列y的掩码比例,n
obs
表示目标序列y中未掩码部分y
obs
的标识数量,n
mask
表示目标序列y中掩码部分y
mask
的标识数量。
[0019]
在本发明的一个实施例中,所述根据所述目标序列y的掩码比例计算源序列x的初始掩码比例,公式为:α
enc
=(b
1-a1)α
dec
+a1,其中,α
enc
表示源序列x的初始掩码比例,b1表示用于控制掩码比例上限的第一超参数,a1表示用于控制掩码比例下限的第一超参数,α
dec
表示表示目标序列y的掩码比例。
[0020]
在本发明的一个实施例中,所述步骤s2中计算待训练的模型当前训练的预测结果的正确率β,公式为:其中,y
mask
表示目标序列y中掩码部分,表示模型当前训练的预测结果,表示y
mask
与中相同标识的数量,n
mask
为被掩码部分y
mask
的标识数量。
[0021]
在本发明的一个实施例中,所述步骤s4中根据所述正确率β对新的目标序列y'进行掩码,方法为:根据所述正确率β对新的目标序列y'中模型当前训练的预测结果以及目标序列y中未被掩码部分分别进行掩码。
[0022]
在本发明的一个实施例中,所述根据所述正确率β对新的目标序列y'中模型当前训练的预测结果以及目标序列y中未被掩码部分分别进行掩码,具体为:
[0023]
将模型当前训练的预测结果中每一个标识的掩码概率设置为1-ψ(β),同时将目标序列y中未被掩码部分y
obs
中每一个标识的掩码概率设置为ψ(β),其中,ψ(β)的公式为:ψ(β)=(b
2-a2)*β+a2,b2表示用于控制掩码比例上限的第二超参数,a2表示用于控制掩码比例下限的第二超参数。
[0024]
为解决上述技术问题,本发明提供了一种基于自适应掩码策略的文本预测系统,其特征在于:包括:
[0025]
当前训练模块:用于对文本对中的目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对待训练的模型进行当前训练;
[0026]
计算模块:用于将待训练的模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算待训练的模型当前训练的预测结果的正确率β;
[0027]
再次训练模块:用于根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例
和源序列x的再次掩码比例对待训练的模型再次进行训练;
[0028]
对比模块:用于将待训练的模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至计算模块直至对比结果一致为止;
[0029]
预测模块:用于根据训练好的模型对待预测的文本进行预测。
[0030]
为解决上述技术问题,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述基于自适应掩码策略的文本预测方法的步骤。
[0031]
为解决上述技术问题,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上述基于自适应掩码策略的文本预测方法的步骤。
[0032]
本发明的上述技术方案相比现有技术具有以下优点:
[0033]
本发明通过两种掩码策略能够有效实现对模型的训练,该两种掩码策略具体为:基于源序列的自适应掩码策略(即根据目标序列掩码比例决定源序列掩码比例)、基于目标序列的自适应掩码策略(即根据当前模型训练的预测结果正确率决定新目标序列的掩码比例),通过两种两种掩码策略能让模型拥有较好的预测性能;
[0034]
本发明通过对模型进行至少两次以上的训练,来捕捉推理过程中多轮迭代下的掩码比例变化,从而使用模型在面临不同掩码比例的情况下,可以稳定并有效地对待预测文本进行有效预测;本发明专注于迭代非自回归模型每轮迭代的提升,而不是仅仅增强第一次迭代,从而实现模型性能的最大提升;
[0035]
本发明在自然机器翻译、摘要和代码生成任务上进行了实验,实验结果表明本发明的表现效果较佳。
附图说明
[0036]
为了使本发明的内容更容易被清楚的理解,下面根据本发明的具体实施例并结合附图,对本发明作进一步详细的说明。
[0037]
图1是本发明的方法流程图;
[0038]
图2是本发明实施例基于自适应掩码策略的模型训练结构示意图;
[0039]
图3是本发明实施例中在4个wmt数据集上机器翻译任务实验结果对比图;
[0040]
图4是本发明实施例中在8个iwslt数据集上进行机器翻译任务的实验结果对比图;
[0041]
图5是本发明实施例中关于摘要任务的实验结果对比图;
[0042]
图6是本发明实施例中使用bleu和es指标评测代码生成任务的结果对比图;
[0043]
图7是本发明实施例中基于源序列的自适应掩码策略中采用不同类别映射函数的效果对比图;
[0044]
图8是本发明实施例中基于目标序列的自适应掩码策略中采用不同类别映射函数的效果对比图。
具体实施方式
[0045]
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
[0046]
实施例一
[0047]
参照图1所示,本发明的实施例提供一种基于自适应掩码策略的文本预测方法,包括:
[0048]
前置步骤:获取数据集,所述数据集包括数量众多的文本对,其中,所述文本对包括源序列x和目标序列y,源序列x即预测前的文本(例如翻译前的文本),目标序列y即预测后的文本(例如翻译后的文本);
[0049]
步骤s1:对文本对中的目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对待训练的模型进行当前训练;
[0050]
步骤s2:将待训练的模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算待训练的模型当前训练的预测结果的正确率β;
[0051]
步骤s3:根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例和源序列x的再次掩码比例对待训练的模型再次进行训练;
[0052]
步骤s4:将待训练的模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至步骤s2直至对比结果一致为止;
[0053]
步骤s5:根据训练好的模型对待预测的文本进行预测。
[0054]
本实施例在步骤s1对待训练的模型进行首次训练(采用基于源序列的自适应掩码策略),步骤s2至步骤s3对待训练的模型进行再次训练(将基于源序列的自适应掩码策略和基于目标序列的自适应掩码策略相结合),通过对模型进行至少两次以上的训练,来捕捉推理过程中多轮迭代下的掩码比例变化,从而使用模型在面临不同掩码比例的情况下,可以稳定并有效地对待预测文本进行有效预测;本实施例专注于迭代非自回归模型每轮迭代的提升,而不是仅仅增强第一次迭代,从而实现模型性能的最大提升。
[0055]
需要注意的是,本实施例在对待训练的模型进行训练时,通过多次训练使得预测结果正确率达到100%,但考虑到实际中的时间开销等问题,在实际中本实施例中将模型训练的总次数设置为两次,这是由于文本对是海量的,能够保证训练好的模型拥有较好的泛化能力。下面以两次训练为例对本实施例进行详细介绍:
[0056]
(一)基于源序列的自适应掩码策略:给定一个训练对(x,y),其中x代表源序列,y代表目标序列,目标序列y可以分为y
obs
和y
mask
,即未被掩码部分和掩码部分,则目标序列y的掩码比例α
dec
的计算公式如下:
[0057][0058]
其中,n
obs
和n
mask
分别代表y
obs
和y
mask
中的标识数量。得到掩码比例α
dec
之后,本实施例提出了第一映射函数来基于目标序列y的掩码比例决定源序列x的掩码比例,若源序
列x的长度为l
x
,则本实施例将在源序列x中随机选择长度作为掩码部分,第一映射函数可以是多种多样的,本实施例以线性映射函数为例,公式可以表示为:
[0059][0060]
其中,b1和a1为预先定义的控制掩码比例第一上限和第一下限的超参数,在实际应用中本实施例将b1和a1分别设置为0.3和0.1。
[0061]
请参阅图2,以机器翻译任务为例,在训练期间针对某个具体翻译对之间的学习时,源序列x为德语的wir das akzeptieren vollkonmen(我们完全接受这一点),目标序列y为英语的we totally accept it(我们完全接受这个)。传统cmlm在训练时,仅存在图2左半侧cmlm解码器部分的uniform masking部分,即将y可以分为y
obs
和y
mask
,即只有单次掩码操作,并且传统cmlm在训练时直接将源序列x输入transformer编码器,并未对其进行掩码。在本实施例中,模型选择将目标序列we totally accept it中的totally和accept掩盖掉,即y
mask
={totally,accept},y
obs
={we,it}。模型利用对应损失函数l
cmlm
训练去预测y
mask
中的标识。应用本实施例基于源序列的自适应掩码策略之后,首先计算出y
mask
中的标识占整个目标序列y的比例随后使用映射函数计算源序列x的掩码比例:然后随机选择源序列wir das akzeptieren vollkonmen中的标识,结果das被掩盖。
[0062]
(二)基于目标序列的自适应掩码策略:给定一个训练对(x,y),其中x代表源序列,y代表目标序列,目标序列y可以分为y
obs
和y
mask
,即未被掩码部分和掩码部分,基于源序列x和未被掩码部分y
obs
,模型预测y
mask
部分的标识,为了方便区分,将模型预测的结果表示为则模型当前预测结果的正确率β的计算公式如下:
[0063][0064]
其中,y
mask
表示目标序列y中掩码部分,表示模型当前训练的预测结果,表示y
mask
与中相同标识的数量,n
mask
为被掩码部分y
mask
的标识数量。
[0065]
与基于源序列的自适应掩码策略类似,本实施例提出第二映射函数ψ(
·
)来决定第二轮掩码训练过程中和y
obs
标识的被掩码概率,本实施例给中的每一个标识1-ψ(β)的掩码概率,y
obs
中的每一个标识ψ(β)的掩码概率,在第二轮掩码之后,y重新分为y'
mask
和y'
obs
,模型随后训练预测y'
mask
的能力。映射函数具体为:
[0066]
ψ(β)=(b
2-a2)*β+a2[0067]
其中,b2和a2为预先定义的控制掩码比例第二上限和第二下限的超参数,在实际应用中本实施例将b2和a2分别采用0.8和0.2。
[0068]
请参阅图2,源序列x为德语的wir das akzeptieren vollkonmen(我们完全接受这一点),目标序列y为英语的we totally accept it(我们完全接受这个)。应用本实施例基于目标序列的自适应掩码策略之后,模型将会在训练期间进行第二次掩码。在第一次训练时,模型将目标序列we totally accept it中的totally和accept掩盖掉,即y
mask
=
{totally,accept},y
obs
={we,it}。模型利用对应损失函数l
cmlm
训练去预测y
mask
中的标识,图中模型预测结果为将其与真实标识y
mask
={totally,accept}对比之后发现模型第一次预测的正确率β为0.5,即accept预测正确,但是totally预测错误。则在第二轮训练时,即应用基于目标序列的自适应掩码策略时,计算出ψ(β)=(b
2-a2)*β+a2=(0.8-0.2)*0.5+0.2=0.5,中的每一个标识有1-ψ(β)=1-0.5=0.5的概率被掩码,而y
obs
={we,it}中的每一个标识有ψ(β)=0.5的概率被掩码,结果如图2所示,在和y
obs
={we,it}组成的新的目标序列y'中,标识we和accept被掩码,模型进行第二轮预测,并利用对应损失函数l
aday
进行训练。
[0069]
通过上述基于源序列的自适应掩码策略和基于目标序列的自适应掩码策略能够得到训练好的模型,该训练好的模型能够用于各种语言预测推理。
[0070]
(三)模型训练和推理:模型训练过程中,给定一个训练对(x,y),首先应用基于源序列的自适应掩码策略,进行第一轮预测,随后基于模型预测的结果,应用两种自适应掩码策略,进行第二轮预测,模型旨在训练预测掩码部分的标识,最终完成模型训练。本实施例的模型推理过程与传统cmlm方法一致,此处不再赘述。
[0071]
实验结果分析如下:
[0072]
为了评估本实施例的自适应掩码策略(amom),即基于条件掩码语言模型(cmlm)的自适应掩码策略(amom),并展示其在各种序列生成任务中的统一作用,本实施例在自然机器翻译、摘要和代码生成任务上进行了实验,并在相应的一共15个数据集验证了amom的效果。值得一提的是,运用本实施例的自适应掩码策略之后,和传统的cmlm相比,模型均有一致的提升,且和其他基于cmlm提出的改进方法相比,本实施例的amom在3个数据集上达到了最佳效果,且在其他数据集都表现出可比较的结果。以下本实施例给出相应结果的对比表格,详见图3。
[0073]
图3中的表格为4个wmt数据集上进行机器翻译任务的实验结果,其中amom即是本实施例的方法,从中可以发现amom在wmt16 en
‑‑
ro数据集中超过了所有的基线方法,包括目前流行的完全非自回归模型和同样在cmlm为基础模型做出的改进方法,在wmt14 en
‑‑
de数据集上,同样表现出了可比较的效果。同时和传统的自回归模型“变压器”相比,可以保证2.3倍的速度提升。
[0074]
图4同样给出在8个iwslt数据集上进行机器翻译任务的实验结果,主要对比了传统的自回归模型“变压器(transformer)”、传统cmlm、以及本实施例方法(amom)的效果。不难发现本实施例的amom在5个数据集上可以超过传统的自回归模型“变压器(transformer)”,均超过了传统cmlm,并且在平均效果的表现上超过传统cmlm模型0.7的bleu分数,和传统的自回归模型“变压器(transformer)”相比,仅有0.04bleu分数的差距,且保证了2.2倍的速度提升。
[0075]
本实施例同样在摘要任务上做了验证,详见图5,其为摘要任务的实验结果,将本实施例的amom与原始cmlm和几个nar基线模型进行了比较。结果表明,amom在没有预训练的情况下优于所有其他nar模型。由于预训练普遍能使这项任务提升较大,因此具有预训练的模型可以显著提高性能。然而,amom也可以应用于预训练和微调阶段,本实施例后期将会把amom应用到预训练语言模型上验证其效果,相信其也能表现出不错的潜力。
[0076]
图6是本实施例给出代码生成任务上的结果,图6显示了使用bleu和es指标评测代码生成任务的结果,它们测量了目标代码和生成代码之间的字符级编辑相似度和n元字符匹配精度。结果表明,本实施例的amom在不同的迭代中优于普通cmlm,并在细化过程中获得更好的改进。
[0077]
除此以外,本实施例还进行了许多消融实验,来验证amom策略上两个重要组成成分基于源序列的自适应掩码策略和基于目标序列的自适应掩码策略的效果,以及和相关工作对比的结果。
[0078]
图7为基于源序列的自适应掩码策略中不同类别映射函数的效果比较。本实施例首先分析了各种映射函数对基于源序列的自适应掩码策略的影响,与其他映射函数相比,线性映射函数简单且有效,最终的效果超越了其他映射函数。
[0079]
本实施例同样对比了基于目标序列的自适应掩码策略中不同类别映射函数的效果已,从图8中不难发现:通过分析各种映射函数对基于目标序列的自适应掩码策略的影响,与其他函数相比,线性映射函数仍然是一个简单但有效的选择。
[0080]
除此以外,本实施例也对比了不同长度的序列在不同迭代次数下的效果表现,来验证amom和cmlm相比下的迭代能力。本实施例在两个数据集上比较了不同源序列长度和不同的解码迭代轮数的影响。本实施例根据句子长度将每个数据集分成五个部分,并根据不同的步骤进行三次推理,最终结果表明,amom比传统cmlm在不同解码迭代论述的增加时表现出显著的增益。由于长序列需要更多的解码迭代轮数,这使得amom的性能会更好。
[0081]
实施例二
[0082]
本实施例提供一种基于自适应掩码策略的文本预测系统,包括:
[0083]
获取模块:用于获取待训练的模型和文本对,其中,所述文本对包括源序列x和目标序列y;
[0084]
当前训练模块:用于对所述目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对模型进行当前训练;
[0085]
计算模块:用于将模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算模型当前训练的预测结果的正确率β;
[0086]
再次训练模块:用于根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例和源序列x的再次掩码比例对模型再次进行训练;
[0087]
对比模块:用于将模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至计算模块和再次训练模块的过程;
[0088]
预测模块:用于根据训练好的模型对待预测的文本进行预测。
[0089]
实施例三
[0090]
本实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现实施例一所述基于自适应掩码策略的文本预测方法的步骤。
[0091]
实施例四
[0092]
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现实施例一所述基于自适应掩码策略的文本预测方法的步骤。
[0093]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本技术实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言java和直译式脚本语言javascript等。
[0094]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0095]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0096]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0097]
尽管已描述了本技术的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术范围的所有变更和修改。
[0098]
显然,上述实施例仅仅是为清楚地说明所作的举例,并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引申出的显而易见的变化或变动仍处于本发明创造的保护范围之中。
技术特征:
1.一种基于自适应掩码策略的文本预测方法,其特征在于:包括:步骤s1:对文本对中的目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对待训练的模型进行当前训练;步骤s2:将待训练的模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算待训练的模型当前训练的预测结果的正确率β;步骤s3:根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例和源序列x的再次掩码比例对待训练的模型再次进行训练;步骤s4:将待训练的模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至步骤s2直至对比结果一致为止;步骤s5:根据训练好的模型对待预测的文本进行预测。2.根据权利要求1所述的基于自适应掩码策略的文本预测方法,其特征在于:所述步骤s1中根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,方法为:将所述目标序列y划分为未被掩码部分y
obs
和掩码部分y
mask
,并根据所述未被掩码部分y
obs
和掩码部分y
mask
计算目标序列y的掩码比例;根据所述目标序列y的掩码比例计算源序列x的初始掩码比例。3.根据权利要求2所述的基于自适应掩码策略的文本预测方法,其特征在于:所述根据所述未被掩码部分y
obs
和掩码部分y
mask
计算目标序列y的掩码比例,公式为:其中,α
dec
表示目标序列y的掩码比例,n
obs
表示目标序列y中未掩码部分y
obs
的标识数量,n
mask
表示目标序列y中掩码部分y
mask
的标识数量。4.根据权利要求2所述的基于自适应掩码策略的文本预测方法,其特征在于:所述根据所述目标序列y的掩码比例计算源序列x的初始掩码比例,公式为:α
enc
=(b
1-a1)α
dec
+a1,其中,α
enc
表示源序列x的初始掩码比例,b1表示用于控制掩码比例上限的第一超参数,a1表示用于控制掩码比例下限的第一超参数,α
dec
表示表示目标序列y的掩码比例。5.根据权利要求1所述的基于自适应掩码策略的文本预测方法,其特征在于:所述步骤s2中计算待训练的模型当前训练的预测结果的正确率β,公式为:其中,y
mask
表示目标序列y中掩码部分,表示模型当前训练的预测结果,表示y
mask
与中相同标识的数量,n
mask
为被掩码部分y
mask
的标识数量。6.根据权利要求1所述的基于自适应掩码策略的文本预测方法,其特征在于:所述步骤s4中根据所述正确率β对新的目标序列y'进行掩码,方法为:根据所述正确率β对新的目标序列y'中模型当前训练的预测结果以及目标序列y中未被掩码部分分别进行掩码。7.根据权利要求6所述的基于自适应掩码策略的文本预测方法,其特征在于:所述根据
所述正确率β对新的目标序列y'中模型当前训练的预测结果以及目标序列y中未被掩码部分分别进行掩码,具体为:将模型当前训练的预测结果中每一个标识的掩码概率设置为1-ψ(β),同时将目标序列y中未被掩码部分y
obs
中每一个标识的掩码概率设置为ψ(β),其中,ψ(β)的公式为:ψ(β)=(b
2-a2)*β+a2,b2表示用于控制掩码比例上限的第二超参数,a2表示用于控制掩码比例下限的第二超参数。8.一种基于自适应掩码策略的文本预测系统,其特征在于:包括:当前训练模块:用于对文本对中的目标序列y进行随机掩码,根据所述目标序列y的掩码比例计算所述文本对中的源序列x的初始掩码比例,再根据所述目标序列y的掩码比例和源序列x的初始掩码比例对待训练的模型进行当前训练;计算模块:用于将待训练的模型当前训练的预测结果和目标序列y中未被掩码部分组成新的目标序列y',并计算待训练的模型当前训练的预测结果的正确率β;再次训练模块:用于根据所述正确率β对新的目标序列y'进行掩码,根据新的目标序列y'的掩码比例计算所述源序列x的再次掩码比例,再根据新的目标序列y'的掩码比例和源序列x的再次掩码比例对待训练的模型再次进行训练;对比模块:用于将待训练的模型再次训练的预测结果与所述目标序列y进行对比,若对比结果一致,则得到训练好的模型;若对比结果不一致,则返回至计算模块直至对比结果一致为止;预测模块:用于根据训练好的模型对待预测的文本进行预测。9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述基于自适应掩码策略的文本预测方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述基于自适应掩码策略的文本预测方法的步骤。
技术总结
本发明涉及一种基于自适应掩码策略的文本预测方法、系统及电子设备,方法包括:对文本对中的目标序列进行掩码,根据目标序列的掩码比例计算文本对中的源序列的初始掩码比例,再对待训练的模型进行当前训练;将待训练的模型当前训练的预测结果和目标序列中未被掩码部分组成新的目标序列,并计算待训练的模型当前训练的预测结果的正确率;根据正确率对新的目标序列进行掩码,根据新的目标序列的掩码比例计算源序列的再次掩码比例,再对待训练的模型再次进行训练;将待训练的模型再次训练的预测结果与所述目标序列进行对比判断是否需要再次进行训练;根据训练好的模型对待预测的文本进行预测。本发明能够对用于文本预测的模型进行有效训练。行有效训练。行有效训练。
技术研发人员:肖义胜 李俊涛 张民
受保护的技术使用者:苏州大学
技术研发日:2023.03.16
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:音量控制方法、车载信息娱乐设备及存储介质与流程 下一篇:一种自动花苗扦插机器人
