CN117217277A - 语言模型的预训练方法、装置、设备、存储介质及产品 - Google Patents
语言模型的预训练方法、装置、设备、存储介质及产品 Download PDFInfo
- Publication number
- CN117217277A CN117217277A CN202310405242.8A CN202310405242A CN117217277A CN 117217277 A CN117217277 A CN 117217277A CN 202310405242 A CN202310405242 A CN 202310405242A CN 117217277 A CN117217277 A CN 117217277A
- Authority
- CN
- China
- Prior art keywords
- word
- character
- sample
- characters
- vector
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 116
- 238000012549 training Methods 0.000 title claims abstract description 108
- 238000003860 storage Methods 0.000 title claims abstract description 37
- 239000013598 vector Substances 0.000 claims abstract description 359
- 238000012545 processing Methods 0.000 claims abstract description 59
- 230000004927 fusion Effects 0.000 claims abstract description 48
- 230000002776 aggregation Effects 0.000 claims abstract description 30
- 238000004220 aggregation Methods 0.000 claims abstract description 30
- 230000000873 masking effect Effects 0.000 claims abstract description 16
- 230000011218 segmentation Effects 0.000 claims description 20
- 238000011176 pooling Methods 0.000 claims description 18
- 239000011159 matrix material Substances 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 14
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 4
- 238000000605 extraction Methods 0.000 claims description 3
- 230000001131 transforming effect Effects 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 13
- 238000013473 artificial intelligence Methods 0.000 abstract description 10
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 45
- 238000005516 engineering process Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 6
- 238000003058 natural language processing Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000009966 trimming Methods 0.000 description 1
Landscapes
- Machine Translation (AREA)
Abstract
本申请公开了一种语言模型的预训练方法、装置、设备、存储介质及产品,涉及人工智能领域。包括:获取样本文本以及样本词向量;对样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;基于各个字符对应的编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与预测字符间的差异,确定字符预测损失;对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的聚合词向量与样本词向量间的差异,确定词语融合损失;基于字符预测损失与词语融合损失,预训练语言模型。本申请实施例提供的方法,有助于提高语言模型的预训练效果。
Description
技术领域
本申请实施例涉及人工智能领域,特别涉及一种语言模型的预训练方法、装置、设备、存储介质及产品。
背景技术
在预训练语言模型的过程中,基于大量语料对语言模型进行预训练,得到通用的语言表征模型。在之后处理下游任务的过程中,再使用少量语料对预训练得到的语言模型进行训练,以得到处理具体任务的语言模型。
相关技术中,对于中文的语言模型,在预训练过程中,通常以字为单位作为输入,进行自然语言的学习。
然而,字级别的输入使得预训练得到的语言模型所学习的语义信息存在欠缺,语言模型预训练效果较差。
发明内容
本申请实施例提供了一种语言模型的预训练方法、装置、设备、存储介质及产品,可提高语言模型的预训练效果。所述技术方案如下:
一方面,本申请实施例提供了一种语言模型的预训练方法,所述方法包括:
获取样本文本以及样本词向量,所述样本词向量是所述样本文本中包含的词语对应的词向量;
对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;
基于各个字符对应的所述编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失;
对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失;
基于所述字符预测损失与所述词语融合损失,预训练所述语言模型。
另一方面,本申请实施例提供了一种语言模型的预训练装置,所述装置包括:
样本获取模块,用于获取样本文本以及样本词向量,所述样本词向量是所述样本文本中包含的词语对应的词向量;
掩码处理模块,用于对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;
字符预测模块,用于基于各个字符对应的所述编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失;
词语聚合模块,用于对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失;
预训练模块,用于基于所述字符预测损失与所述词语融合损失,预训练所述语言模型。
另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的语言模型的预训练方法。
另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的语言模型的预训练方法。
另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的语言模型的预训练方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
本申请实施例中,当编码得到字符的字符向量之后,融合属于相同词语的字符向量,得到预测的词语表示,之后,可基于预测的词语表示与样本词向量间的差异确定词语融合损失,再结合字符预测损失,预训练语言模型。在此过程中,通过与样本词向量间的对比学习,可实现词向量信息的融合,使得预训练的语言模型可捕捉到字与词之间的语义交互,学习到文本中词语的整体语义信息,有助于提高语言模型的预训练效果,在将预训练得到的语言模型应用于下游任务中时,可提高对自然语言解析的准确性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一个示例性实施例提供的语言模型的预训练方法的原理示意图;
图2示出了本申请一个示例性实施例提供的语言模型的预训练方法的流程图;
图3示出了本申请另一个示例性实施例提供的语言模型的预训练方法的流程图;
图4示出了本申请一个示例性实施例提供的预训练过程的结构示意图;
图5示出了本申请另一个示例性实施例提供的语言模型的预训练方法的流程图;
图6示出了本申请另一个示例性实施例提供的预训练过程的结构示意图;
图7示出了本申请一个示例性实施例提供的微调过程的结构示意图;
图8是本申请一个示例性实施例提供的语言模型的预训练装置的结构框图;
图9示出了本申请一个示例性实施例提供的计算机设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
预训练语言模型在很多自然语言处理的下游任务中取得了显著的效果提升。相关技术中,提出很多语言模型的预训练方式,学习自然语言的表示。一些预训练方法中,以字符为级别作为输入,使模型学习字符的表示。而一些自然语言中语义以词为基础,如中文,对于中文类的语言模型,以汉字作为输入预训练模型时,对于词的语义学习存在一些欠缺。相关技术中,为学习词的语义信息,将字与词同时输入模型对模型进行预训练,然而,该种方式下,当自然语言应用于下游任务时,也需同时输入字与词,会造成下游任务的不匹配,无法适用于各种下游任务中。
因此,本申请实施例中,提出一种语言模型的预训练方法,在预训练的过程中,可融入词向量信息,使模型能够学习词语的整体语义信息,且无需输入词,仅需输入字符即可,应用于下游任务时,也仅需输入字符即可,无需改变下游任务的训练结构。
如图1所示,其示出了本申请实施例提供的语言模型的预训练方法的原理示意图。首先,对样本文本101进行掩码处理,再输入语言模型102中进行字符编码,得到各个字符对应的编码向量。在得到各个字符对应编码向量后,一方面可用于字符预测,得到预测字符103,从而基于预测字符103与样本文本101中的原始字符确定字符预测损失104;另一方面,可根据各个字符对应的编码向量确定预测得到的词向量表示,即将属于相同词语的字符对应的编码向量进行聚合,得到聚合词向量105,再基于聚合词向量105与样本词向量106确定词语融合损失107,从而基于字词两方面的预测损失训练语言模型102,提高语言模型102的训练效果。
本申请实施例提供的方法可应用于对语言模型的预训练过程中,且预训练后的语言模型可应用于后续的下游任务中,比如,可应用于搜索相关性、商品分类以及商品命名实体识别等,本实施例对此不做限定。
本申请实施例提供的方法可应用于计算机设备中,计算机设备可以为智能手机、平板电脑、笔记本电脑、投影式电脑、台式计算机等终端,也可为独立的服务器,本实施例对此不做限定。
请参考图2,其示出了本申请一个示例性实施例提供的语言模型的预训练方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。
步骤201,获取样本文本以及样本词向量,样本词向量是样本文本中包含的词语对应的词向量。
其中,样本文本由多个字符组成,且其中部分字符可组成词语,即在样本文本中包含至少一个词语。在一种可能的实施方式中,计算机设备可从语料库中获取样本文本,在得到样本文本后,可确定文本中包含的词语,从而获取词语对应的样本词向量。
样本词向量是预先训练得到的词向量,具有词语的语义以及字符上下文搭配信息,在语言模型的预训练的过程中,可以样本词向量为指导,融入词向量信息。
步骤202,对样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量。
可选的,本申请实施例中的语言模型是自编码语言模型,通过在输入文本中随机掩码(Mask)一些字符,之后,根据上下文信息预测被Mask的字符。示意性的,语言模型可为BERT模型、RoBERTa模型等。
在一种可能的实施方式中,在对语言模型进行预训练时,获取样本文本后,首先将样本文本进行预处理,得到样本文本所包含的字符,以字符为级别输入语言模型。示意性的,对样本文本进行预处理后,得到待输入的文本字符:[w1,w2,…,wi,…,wj,…,wn],其中,wk是文本中的字符,1≤k≤n,n为文本的长度。
在得到待输入的文本字符后,可进行掩码处理,掩码处理过程中,可以一定比例随机mask字或词,即将wk替换为“[MASK]”字符串。示意性的,当样本文本为“雅诗兰黛小棕瓶”时,经过掩码处理后,输入字符串为“雅诗兰黛小[MASK]瓶”。
在掩码处理后,将得到的输入字符串输入语言模型的编码器中进行字符编码,得到各个字符对应的编码向量。结合上述示例,可依次得到“雅诗兰黛小[MASK]瓶”中各个字符对应的编码向量。
步骤203,基于各个字符对应的编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与预测字符间的差异,确定字符预测损失。
在语言模型中包含有分类器,用于进行字符预测。当得到各个字符对应的编码向量后,可将其输入分类器中,分类器可结合上下文信息预测被掩码的字符,得到预测字符,即分类器可根据未被掩码字符对应的编码向量,预测被掩码的字符。
在得到预测字符后,可根据同一字符位置上预测字符与其对应的原始字符间的差异,确定字符预测损失,字符位置即指在样本文本中字符所处位置。
结合上述示例,当输入字符串“雅诗兰黛小[MASK]瓶”后,基于预测字符与原始字符“棕”间的差异,确定字符预测损失。
步骤204,对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的聚合词向量与样本词向量间的差异,确定词语融合损失。
本申请实施例中,为使模型学习字与词之间的语义交互关系,引入词向量的学习。在得到各个字符对应的编码向量后,计算机设备可将其中属于相同词语的字符的编码向量进行融合,得到聚合词向量即得到模型预测得到词语表示,再将其与对应的样本词向量进行对比学习,得到词语融合损失。
在一种可能的实施方式中,可分别确定样本文本中各个词语对应的聚合词向量与样本词向量间的融合损失,再综合得到词语融合损失。
在另一种可能的实施方式中,对于每一个样本文本,可选取其中部分词语,基于部分词语对应的聚合词向量与样本词向量间的差异,得到词语融合损失,有助于提高模型训练效率。
示意性的,当得到“雅诗兰黛小[MASK]瓶”中各个字符对应的编码向量后,可将“雅诗兰黛”的编码向量进行聚合,得到聚合词向量,再与“雅诗兰黛”对应的样本词向量进行对比,得到词语融合损失。
步骤205,基于字符预测损失与词语融合损失,预训练语言模型。
计算机设备可将字符预测损失与词语融合损失相加,得到总损失,利用总损失预训练语言模型。
即本申请实施例中,损失函数由两部分组成,一部分为语言模型的预测损失(即字符预测损失);另一部分为融入词向量信息的对比学习损失(即词语融合损失),使预训练得到的语言模型具有字词间语义交互的学习能力,可学习整词的语义信息,有助于提高语言模型的预训练效果。
综上所述,本申请实施例中,当编码得到字符的字符向量之后,融合属于相同词语的字符向量,得到预测的词语表示,之后,可基于预测的词语表示与样本词向量间的差异确定词语融合损失,再结合字符预测损失,预训练语言模型。在此过程中,通过与样本词向量间的对比学习,可实现词向量信息的融合,使得预训练的语言模型可捕捉到字与词之间的语义交互,学习到文本中词语的整体语义信息,有助于提高语言模型的预训练效果,在将预训练得到的语言模型应用于下游任务中时,可提高对自然语言解析的准确性。
可选的,计算机设备中存储有预先训练得到的样本词向量表,在得到样本文本后,可基于样本词向量表得到词语对应的样本词向量,用于对比学习。且为提高模型训练效率,对于每一个样本文本,仅选取其中一个词语进行对比学习。下面将以示例性实施例进行说明。
请参考图3,其示出了本申请另一个示例性实施例提供的语言模型的预训练方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。
步骤301,获取样本文本。
步骤302,将样本文本输入分词器进行文本分词,得到样本文本中包含的词语。
在获取样本文本后,计算机设备可利用分词器对样本文本进行分词,得到样本文本中包含的词语。可选的,分词器可为Tokenizer。
步骤303,基于词语的词语标识,在样本词向量表中查询得到词语对应的样本词向量,样本词向量表中的词向量预先训练得到。
在一种可能的实施方式中,可预先训练得到大量词语对应的词向量,并将词语标识与对应的词向量间的对应关系存储在样本词向量表中。可选的,可基于word2vec模型训练词向量,或者,也可基于fastText模型训练词向量,本实施例对此不做限定。
在分词器输出分词结果后,计算机设备可确定词语对应的词语标识,并通过词语标识在样本词向量表中查询得到样本文本中词语对应的样本词向量。可选的,计算机设备可对词语进行哈希计算,得到词语标识,用于标识唯一词语。或者,还可通过其他方式确定词语标识,本实施例对此不做限定。
示意性的,如图4所示,将样本文本401([w1,w2,...,wi,...,wj,...,wn])输入分词器进行分词,可得到分词结果402,其中,[wi,...,wj]是分词得到的词语。
步骤304,对样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量。
对样本文本进行掩码处理后,可将掩码处理后的样本文本输入编码器中进行字符编码。且在输入语言模型前,还需在输入文本的首尾分别添加特殊字符“[CLS]”和“[SEP]”。如图4所示,最终输入语言模型的输入文本403为“[CLS],w1,w2,...,wi,...,wj,...,MASK,...,[SEP]”。
以模型为BERT模型为例,编码器中包含Embedding层与Encoder层,基于Embedding层与Encoder层进行字符编码,得到各个字符对应的编码向量。具体编码过程在下文实施例中详细说明,请参考下文实施例。
步骤305,基于各个字符对应的编码向量进行字符预测,得到预测字符。
如图4所示,在语言模型输出各个字符对应的编码向量后输入分类器404(MLMClassifier)进行字符预测,得到预测字符。
步骤306,基于第i字符位置上原始字符与预测字符间的差异,确定第i预测损失,i为正整数,且第i字符位置为被掩码的字符所在位置。
在一种可能的实施方式中,计算机设备基于被掩码的原始字符与预测得到被掩码位置上的预测字符间的差异,计算字符预测损失。被掩码的字符可能包含多个字符,因此,针对每一个被掩码的字符,可分别计算得到其对应的预测损失。
在编码器输出编码向量后,将其输入分类器中可得到各个字符位置上的原始token,对于样本文本中对应字符序列的第i字符位置上的原始token的预测过程如下所示:
Pi=Softmax(Wix0+bi)
其中,x0即指第i字符位置对应的编码向量,Wi与bi为模型参数。
再基于第i字符位置对应的原始token与真实token可确定第i预测损失,计算方式如下所示:
lMLM=CE(Yi,Pi)
其中,CE为交叉熵(Cross Entropy),Yi是第i字符位置上真实token,将其与预测token进行对比。
步骤307,基于n个预测损失,确定字符预测损失,其中,n为正整数,且i≤n。
其中,n是被掩码的字符的数量。根据各个被掩码的字符对应的原始字符,确定第i字符进行的预测损失。计算机设备将各个被掩码的字符所对应的预测损失进行融合,得到字符预测损失。即在此过程中,计算机设备仅针对被掩码的字符计算字符预测损失。
步骤308,在样本文本包含的词语中进行随机单词抽取,得到第一词语。
由于在一条样本文本中,可能包含多个词语,而若利用多个词语进行对比学习,会造成模型训练较慢的问题,影响模型预训练的效率。因此,在一种可能的实施方式中,在分词器输出样本文本中包含的词语中抽取一个单独的词语,用于本样本中的对比学习。
计算机设备可在分词结果中随机抽取一个词语,得到样本文本中包含的第一词语,后续利用第一词语进行对比学习。
步骤309,对第一词语中包含的第一字符添加第一标记。
为准确聚合词语对应字符的编码向量,在一种可能的实施方式中,计算机设备得到分词结果,且随机抽选一个词语后,将得到的第一词语中包含的第一字符添加第一标识。可选的,第一标识用于指示该字符属于第一词语。
示意性的,第一标记可为0。
步骤310,对第二字符添加第二标记,第二字符是样本文本中除第一字符以外的其他字符。
而第二字符是不属于第一词语的字符,可将其添加第二标记,以便于进行字符的区分。可选的,第二标记可为1。
示意性的,当抽取的第一词语为[wi,...,wj]时,可对[wi,...,wj]中的各个字符添加第一标记0,对剩余字符添加第二标记1。
步骤311,对添加有第一标记的字符所对应的编码向量进行聚合处理,得到第一聚合词向量。
当得到各个字符对应的编码向量之后,计算机设备可对根据字符的标记,选取第一词语对应字符的编码向量进行聚合处理,即对添加有第一标记的字符所对应的编码向量进行聚合处理,得到第一词语对应的词语预测表示(第一聚合词向量)。
步骤312,基于第一聚合词向量与第一词向量间的差异,确定词语融合损失,第一词向量是第一词语对应的样本词向量。
其中,第一词向量是在样本词向量表中查询得到的第一词语对应的样本词向量。在一种可能的实施方式中,在进行文本分词后即可进行随机单词抽取,并根据抽取到的第一词语所对应的词语标识,在样本词向量表中查询得到第一词语对应的第一词向量,而无需查询样本文本中其他词语对应的样本词向量,可减少工作量,提高效率。
计算机设备可将第一聚合词向量与第一词向量进行向量对比,从而融合词向量信息。如图4所示,语言模型输出字符向量后,可输入词向量对比模块(Phrase EmbeddingContrastive)405中进行词向量对比,以融入词向量信息。在一种可能的实施方式中,可直接基于第一聚合词向量与第一词向量间的向量相似性,确定词语融合损失。在另一种可能的实施方式中,还可通过对比学习的方式确定词语融合损失,有助于提高模型训练效果。该方式可包含步骤312a-312c(图中未示出):
步骤312a,基于第一聚合词向量与第一词向量间的差异,确定正样本对比值。
在一种可能的实施方式中,计算机设备利用负采样softmax的方式确定词语融合损失。在此过程中,需分别基于与正样本与负样本间的相似性计算对比损失(即词语融合损失)。
其中,第一词向量即为预测表示对应的正样本,根据第一聚合词向量与第一词向量间的差异,确定正样本对比值,正样本对比值用于表征第一聚合词向量与第一词向量间的向量相似性。可选的,可采用sim函数计算第一聚合词向量与第一词向量间的正样本对比值。
步骤312b,基于第一聚合词向量与第二词向量间的差异,确定负样本对比值,第二词向量在样本词向量表中进行负采样得到。
其中,负样本可在样本词向量表中采集得到。计算机设备可在样本词向量表中随机采样除第一词语外的第二词语对应的样本词向量(第二词向量)作为负样本。可选的,可采集s个第二词向量,得到
计算机设备可采样到至少一个第二词语对应的第二词向量,在计算负样本对比值的过程中,可分别计算得到各个第二词向量与第一聚合词向量间的负样本对比值,再基于总和确定最终的负样本对比值。可选的,可采用sim函数分别计算第一聚合词向量与不同第二词向量间的负样本对比值。
步骤312c,基于正样本对比值以及负样本对比值,确定词语融合损失。
正样本对比值即用于表征预测向量与正样本向量间的向量相似性,负样本对比值用于表征预测向量与负样本向量间的向量相似性。当与正样本向量间的向量相似性越高,而与负样本向量间的向量相似性越低时,词向量信息融合效果更好。在一种可能的实施方式中,计算词语融合损失的方式如下:
其中,x词语表示第一词语对应的第一聚合词向量,ep表示第一词语对应的第一词向量,eh表示第二词向量。
步骤313,基于字符预测损失与词语融合损失,预训练语言模型。
计算机设备根据字符预测损失与词语融合损失,确定总损失,即:
l=lMLM+λlphrase
其中,λ为系数权重。
语言模型最终的学习目标即为l,可基于总损失l对语言模型进行更新训练,在损失函数达到收敛条件的情况下,结束预训练过程,得到预训练语言模型。
本实施例中,在融入词向量的过程中,在样本文本中随机抽取一个词语,用于词向量对比过程,有助于提高训练效率。且在词向量对比过程中,通过与正样本间的对比损失以及与负样本间的对比损失,确定词语融合损失,可提高词向量融入效果,提高模型学习词语语义的能力,从而提高模型的预训练效果。
在将属于相同词语的编码向量进行聚合的过程中,需将聚合得到的词向量与样本词向量的维度保持相同,从而用于词向量对比学习过程中。下面将以示例性实施例进行说明。
请参考图5,其示出了本申请另一个示例性实施例提供的语言模型的预训练方法的流程图。本实施例以该方法用于计算机设备为例进行说明,该方法包括如下步骤。
步骤501,获取样本文本以及样本词向量。
其中,步骤501的实施方式可参考上述实施例中步骤301至303,本实施例不再赘述。
步骤502,对样本文本进行掩码处理,得到具有掩码的字符序列,字符序列中包含掩码字符以及未被掩码的字符。
在一种可能的实施方式中,计算机设备可对样本文本中一定比例的字符进行掩码处理,将其中一定比例的字符替换为MASK字符,得到具有掩码的字符序列,即得到包含掩码字符(MASK)以及未被掩码的字符的字符序列。
且在对样本文本进行掩码处理,得到具有掩码的字符序列后,还需在文本首尾分别添加特殊字符“[CLS]”和“[SEP]”,即输入编码器的字符序列为:“[CLS],w1,w2,…,wi,…,wj,…,MASK,…,[SEP]”。
即Xinput=[CLS,w1,w2,…,wi,…,wj,…,MASK,…,SEP]
步骤503,将字符序列输入语言模型的嵌入层进行字符向量转化,得到字符序列中各个字符对应的字符向量。
可选的,编码器可为BERT模型,其中包含Embedding层以及Encoder层,其中,Embedding层用于将字符序列转化为向量,即得到各个字符对应的字符向量。其中,字符向量转化的过程可包含步骤503a-503b(图中未示出):
步骤503a,将字符序列中各个字符进行字符映射,得到各个字符对应的字符标识,字符标识用于指示字符在字符向量表中的位置。
在对字符向量转化的过程中,可基于字符向量表进行转化,字符向量表中存储有不同字符对应的字符向量,且字符向量表将字符对应的字符标识与字符向量进行关联存储。在一种可能的实施方式中,字符映射的过程即对字符进行哈希运算的过程,可通过字符映射得到各个字符对应的字符标识,之后,基于字符标识查询得到各个字符对应的向量表示。
示意性的,对于输入字符序列“[CLS],w1,w2,…,wi,…,wj,…,MASK,…,[SEP]”进行字符映射后,可得到字符标识,即token ids:[t0,t1,t2,…,ti,…,tj,…tn,tn+1]。其中,t1至tn是包含掩码的样本文本的字符对应的字符标识,t0为[CLS]对应的字符标识,tn+1为[SEP]对应的字符标识。
步骤503b,基于字符标识,在字符向量表中查询得到各个字符对应的向量表示,以及将各个字符对应的向量表示输入嵌入层进行嵌入处理,得到各个字符对应的字符向量。
计算机设备可根据各个字符标识,在字符向量表中查询得到对应的向量表示,Embedding层会根据各个字符对应的向量表示进行嵌入处理,得到各个字符对应的字符向量。
步骤504,将字符向量输入语言模型的编码层中进行字符编码,得到各个字符对应的编码向量。
在一种可能的实施方式中,可将字符向量输入Encoder层中进行字符编码。可选的,Encoder层中包含12层Transformer层,每个Transformer层由一个自注意力层(selfattention)和一个前馈神经网络层(Feed Forward Networks,FFN)组成。自注意力层用于计算文本中两两token之间的注意力权重,FFN层包含两个全连接层,用于进行升维与降维处理。每个Transformer层之间都有残差连接和层标准化操作(Layer Normalize)。
通过多个Transformer层进行字符编码,得到各个字符对应的编码向量。
结合上述示例,经过BERT Embedding层和Encoder层后,可以获得每个token对应的编码向量:[x0,x1,x2,…,xi,…,xj,…xn,xn+1]。
即BERT(Xinput)=[x0,x1,x2,…,xi,…,xj,…xn,xn+1]。
步骤505,基于各个字符对应的编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与预测字符间的差异,确定字符预测损失。
其中,步骤505的实施方式可参考上述实施例,本实施例不再赘述。
步骤506,对属于相同词语的字符对应的编码向量进行池化处理,得到词语初向量。
在得到各个字符对应的编码向量后,可对属于相同的词语的字符对应的编码向量进行聚合处理,以得到聚合词向量。在一种可能的实施方式中,通过池化处理的方式进行聚合,池化处理的方式可采用平均池化方式(average pooling)、最大池化方式(maxpooling)以及注意力池化方式(attention pooling)等,本实施例对此不做限定。
在一种可能的实施方式中,当随机抽取第一词语后,即对第一词语中第一字符对应的编码向量进行池化处理,得到第一词语初向量。结合上述示例,即对第一词语中第一字符[wi,…,wj]对应的编码向量[xi,…,xj]进行池化处理。
示意性的,对编码向量[xi,…,xj]进行平均池化方式如下所示:
步骤507,基于转换矩阵对词语初向量进行矩阵变换,得到聚合词向量,转换矩阵用于将词语初向量的空间维度转换至样本词向量对应的空间维度。
由于池化处理后的词语初向量可能与样本词向量表中词向量的维度不同,因此,为基于二者进行对比学习,需对词语初向量进行矩阵变换,得到用于对比学习的聚合词向量。
可选的,可根据池化处理后得到词语初向量的向量维度与样本词向量表中词向量的维度,确定转换矩阵,以通过转换矩阵进行向量的转换。
在一种可能的实施方式中,可通过转换矩阵对第一词语初向量进行矩阵变换,得到第一聚合词向量。其中,方式如下:
其中,WT为转换矩阵。
步骤508,基于同一词语对应的聚合词向量与样本词向量间的差异,确定词语融合损失。
步骤509,基于字符预测损失与词语融合损失,预训练语言模型。
其中,步骤508至509的实施方式可参考上述实施例,本实施例不再赘述。
在一种可能的实施方式中,预训练语言模型的结构图如图6所示,其中,将掩码处理以及添加特殊字符后的字符序列601“[CLS],w1,w2,...,wi,...,wj,....,MASK,...,[SEP]”输入BERT模型中进行字符编码,得到各个字符对应的编码向量602“[x0,x1,x2,…,xi,…,xj,…xn,xn+1]”,之后,将各个字符对应的编码向量602输入分类器603(MLMClassifier)中,可得到预测字符,再基于预测字符与被掩码的原始字符间的差异,确定字符预测损失604。
且在样本文本中抽取到第一词语[wi,...,wj],之后,可将第一词语对应的编码向量[xi,...,xj]输入池化层(Pooling)605中进行聚合处理,得到第一聚合词向量,且输入词向量对比层(Phrase Embedding Contrastive)606中与第一词向量进行对比,得到词语融合损失607,最终,基于字符预测损失604与词语融合损失607对语言模型进行更新训练,得到预训练语言模型,使预训练语言模型具有学习词语语义的能力,提高语言模型的预训练效果。
步骤510,获取训练样本,训练样本是与目标任务相关的样本。
预训练得到的语言模型为通用的语言表征模型,在应用于具体任务处理过程中时,还需结合具体任务对应的语料对模型进行微调,从而得到用于处理具体任务的语言模型。
微调过程中,可将与目标任务相关的语料作为训练样本,对预训练语言模型进行微调。
示意性的,当目标任务为商品分类时,训练样本可采用与商品分类相关的语料;当目标人物为商品命名实体识别时,训练样本可采用与商品命名实体相关的语料。
步骤511,将训练样本以字符为级别输入预训练语言模型,对预训练语言模型进行微调,得到目标语言模型,目标语言模型用于处理目标任务。
由于在预训练过程中,已经通过词向量的对比学习融入样本词向量信息,因此,在微调过程中,无需再引入词向量对比层,提高微调效率。
且在微调过程中,仍可以字符为级别输入预训练语言模型,而无需输入整词,通过于目标任务相关的训练文本,对预训练语言模型进行微调,可得到用于处理目标任务的目标语言模型。
示意性的,如图7所示,当目标任务为分类任务时,可获取训练文本701,其以字符为界别输入预训练语言模型,预训练语言模型可得到各个字符对应的编码向量702,再基于编码向量进行分类,在此过程中,无需再引入词向量对比模型。
如表1所示,其示出了本申请实施例提供的预训练语言模型与相关技术中提供的预训练语言模型应用于下游任务时,得到的不同测试指标。
表1
模型 | 搜索相关性 | 商品分类 | 文章分类 |
BERT | 84.6 | 77.7 | 82.1 |
RoBERTa | 84.9 | 77.7 | 81.9 |
微调后的BERT | 86.0 | 77.8 | 82.8 |
预训练语言模型 | 86.1 | 80.4 | 83.0 |
其中,BERT与RoBERTa栏均指未经过微调的模型直接用于下游任务中时对应的指标。预训练语言模型指通过本申请实施例提供的方式预训练得到的语言模型。可见,本申请实施例提供的语言模型应用于下游任务时,相较于相关技术中其他未微调的模型指标存在提升,且相较于微调后的其他模型也存在提升,有利于提高下游任务中的自然语言理解的准确性。
图8是本申请一个示例性实施例提供的语言模型的预训练装置的结构框图,如图8所示,该装置包括:
样本获取模块801,用于获取样本文本以及样本词向量,所述样本词向量是所述样本文本中包含的词语对应的词向量;
掩码处理模块802,用于对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;
字符预测模块803,用于基于各个字符对应的所述编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失;
词语聚合模块804,用于对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失;
预训练模块805,用于基于所述字符预测损失与所述词语融合损失,预训练语言模型。
可选的,所述样本获取模块801,还用于:
获取所述样本文本;
将所述样本文本输入分词器进行文本分词,得到所述样本文本中包含的词语;
基于所述词语的词语标识,在样本词向量表中查询得到词语对应的所述样本词向量,所述样本词向量表中的词向量预先训练得到。
可选的,所述装置还包括:
抽取模块,用于在所述样本文本包含的词语中进行随机单词抽取,得到第一词语;
可选的,所述词语聚合模块804,还用于:
将第一字符对应的编码向量进行聚合处理,得到第一聚合词向量,所述第一字符是所述第一词语中包含的字符。
可选的,所述装置还包括:
标记添加模块,用于对所述第一词语中包含的所述第一字符添加第一标记;
所述标记添加模块,还用于对第二字符添加第二标记,所述第二字符是所述样本文本中除所述第一字符以外的其他字符;
所述词语聚合模块804,还用于:
对添加有所述第一标记的字符所对应的编码向量进行聚合处理,得到所述第一聚合词向量。
可选的,所述字符预测模块803,还用于:
基于第i字符位置上所述原始字符与所述预测字符间的差异,确定第i预测损失,i为正整数,且所述第i字符位置为被掩码的字符所在位置;
基于n个预测损失,确定所述字符预测损失,其中,n为正整数,且i≤n;
所述词语聚合模块804,还用于:
基于所述第一聚合词向量与第一词向量间的差异,确定所述词语融合损失,所述第一词向量是所述第一词语对应的样本词向量。
可选的,所述词语聚合模块804,还用于:
基于所述第一聚合词向量与所述第一词向量间的差异,确定正样本对比值;
基于所述第一聚合词向量与第二词向量间的差异,确定负样本对比值,所述第二词向量在所述样本词向量表中进行负采样得到;
基于所述正样本对比值以及所述负样本对比值,确定所述词语融合损失。
可选的,所述词语聚合模块804,还用于:
对属于相同词语的字符对应的编码向量进行池化处理,得到词语初向量;
基于转换矩阵对所述词语初向量进行矩阵变换,得到所述聚合词向量,所述转换矩阵用于将所述词语初向量的空间维度转换至所述样本词向量对应的空间维度。
可选的,所述掩码处理模块802,还用于:
对所述样本文本进行掩码处理,得到具有掩码的字符序列,所述字符序列中包含掩码字符以及未被掩码的字符;
将所述字符序列属于语言模型的嵌入层进行字符向量转化,得到所述字符序列中各个字符对应的字符向量;
将所述字符向量输入所述语言模型的编码层中进行字符编码,得到各个字符对应的所述编码向量。
可选的,所述掩码处理模块802,还用于:
将所述字符序列中各个字符进行字符映射,得到各个字符对应的字符标识,所述字符标识用于指示字符在字符向量表中的位置;
基于所述字符标识,在所述字符向量表中查询得到各个字符对应的向量表示,以及对各个字符对应的向量表示进行嵌入处理,得到各个字符对应的字符向量。
所述样本获取模块,还用于获取训练样本,所述训练样本是与目标任务相关的样本。
可选的,所述装置还包括:
微调模块,用于将所述训练样本以字符为级别输入所述预训练语言模型,对所述预训练语言模型进行微调,得到目标语言模型,所述目标语言模型用于处理所述目标任务。
综上所述,本申请实施例中,当编码得到字符的字符向量之后,融合属于相同词语的字符向量,得到预测的词语表示,之后,可基于预测的词语表示与样本词向量间的差异确定词语融合损失,再结合字符预测损失,预训练语言模型。在此过程中,通过与样本词向量间的对比学习,可实现词向量信息的融合,使得预训练的语言模型可捕捉到字与词之间的语义交互,学习到文本中词语的整体语义信息,有助于提高语言模型的预训练效果,在将预训练得到的语言模型应用于下游任务中时,可提高对自然语言解析的准确性。
需要说明的是:上述实施例提供的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其实现过程详见方法实施例,这里不再赘述。
请参考图9,其示出了本申请一个示例性实施例提供的计算机设备的结构示意图,计算机设备可实现为上述实施例中的终端或服务器。具体来讲:所述计算机设备900包括中央处理单元(Central Processing Unit,CPU)901、包括随机存取存储器902和只读存储器903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述计算机设备900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(Input/Output,I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
在一些实施例中,所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标、键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读介质为计算机设备900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括随机存取记忆体(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、闪存或其他固态存储其技术,只读光盘(Compact Disc Read-Only Memory,CD-ROM)、数字通用光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
存储器存储有一个或多个程序,一个或多个程序被配置成由一个或多个中央处理单元901执行,一个或多个程序包含用于实现上述方法的指令,中央处理单元901执行该一个或多个程序实现上述各个方法实施例提供的方法。
根据本申请的各种实施例,所述计算机设备900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备900可以通过连接在所述系统总线905上的网络接口单元911接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程计算机系统(未示出)。
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中由计算机设备所执行的步骤。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述任一实施例所述的语言模型的预训练方法。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面提供的语言模型的预训练方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述任一方法实施例所述的语言模型的预训练方法。
可选地,该计算机可读存储介质可以包括:ROM、RAM、固态硬盘(Solid StateDrives,SSD)或光盘等。其中,RAM可以包括电阻式随机存取记忆体(Resistance RandomAccess Memory,ReRAM)和动态随机存取存储器(Dynamic Random Access Memory,DRAM)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
需要说明的是,本申请所涉及的信息(包括但不限于用户设备信息、用户个人信息等)、数据(包括但不限于用于分析的数据、存储的数据、展示的数据等)以及信号,均为经用户授权或者经过各方充分授权的,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。且本文中提及的“第一”、“第二”等用于区别类似对象,而并不用于限定特定的顺序或先后次序。另外,本文中描述的步骤编号,仅示例性示出了步骤间的一种可能的执行先后顺序,在一些其它实施例中,上述步骤也可以不按照编号顺序来执行,如两个不同编号的步骤同时执行,或者两个不同编号的步骤按照与图示相反的顺序执行,本申请实施例对此不作限定。
以上所述仅为本申请的可选的实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (14)
1.一种语言模型的预训练方法,其特征在于,所述方法包括:
获取样本文本以及样本词向量,所述样本词向量是所述样本文本中包含的词语对应的词向量;
对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;
基于各个字符对应的所述编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失;
对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失;
基于所述字符预测损失与所述词语融合损失,预训练所述语言模型。
2.根据权利要求1所述的方法,其特征在于,所述获取样本文本以及样本词向量,包括:
获取所述样本文本;
将所述样本文本输入分词器进行文本分词,得到所述样本文本中包含的词语;
基于所述词语的词语标识,在样本词向量表中查询得到词语对应的所述样本词向量,所述样本词向量表中的词向量预先训练得到。
3.根据权利要求2所述的方法,其特征在于,所述将所述样本文本输入分词器进行文本分词,得到所述样本文本中包含的词语之后,所述方法还包括:
在所述样本文本包含的词语中进行随机单词抽取,得到第一词语;
所述对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,包括:
将第一字符对应的编码向量进行聚合处理,得到第一聚合词向量,所述第一字符是所述第一词语中包含的字符。
4.根据权利要求3所述的方法,其特征在于,所述在所述样本文本包含的词语中进行随机单词抽取,得到第一词语之后,所述方法还包括:
对所述第一词语中包含的所述第一字符添加第一标记;
对第二字符添加第二标记,所述第二字符是所述样本文本中除所述第一字符以外的其他字符;
所述对第一字符对应的编码向量进行聚合处理,得到第一聚合词向量,包括:
对添加有所述第一标记的字符所对应的编码向量进行聚合处理,得到所述第一聚合词向量。
5.根据权利要求3所述的方法,其特征在于,所述基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失,包括:
基于第i字符位置上所述原始字符与所述预测字符间的差异,确定第i预测损失,i为正整数,且所述第i字符位置为被掩码的字符所在位置;
基于n个预测损失,确定所述字符预测损失,其中,n为正整数,且i≤n;
所述基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失,包括:
基于所述第一聚合词向量与第一词向量间的差异,确定所述词语融合损失,所述第一词向量是所述第一词语对应的样本词向量。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第一聚合词向量与所述第一词向量间的差异,确定词语融合损失,包括:
基于所述第一聚合词向量与所述第一词向量间的差异,确定正样本对比值;
基于所述第一聚合词向量与第二词向量间的差异,确定负样本对比值,所述第二词向量在所述样本词向量表中进行负采样得到;
基于所述正样本对比值以及所述负样本对比值,确定所述词语融合损失。
7.根据权利要求1至6任一所述的方法,其特征在于,所述对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,包括:
对属于相同词语的字符对应的编码向量进行池化处理,得到词语初向量;
基于转换矩阵对所述词语初向量进行矩阵变换,得到所述聚合词向量,所述转换矩阵用于将所述词语初向量的空间维度转换至所述样本词向量对应的空间维度。
8.根据权利要求1至6任一所述的方法,其特征在于,所述对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量,包括:
对所述样本文本进行掩码处理,得到具有掩码的字符序列,所述字符序列中包含掩码字符以及未被掩码的字符;
将所述字符序列输入所述语言模型的嵌入层进行字符向量转化,得到所述字符序列中各个字符对应的字符向量;
将所述字符向量输入所述语言模型的编码层中进行字符编码,得到各个字符对应的所述编码向量。
9.根据权利要求8所述的方法,其特征在于,所述将所述字符序列输入所述语言模型的嵌入层进行字符向量转化,得到所述字符序列中各个字符对应的字符向量,包括:
将所述字符序列中各个字符进行字符映射,得到各个字符对应的字符标识,所述字符标识用于指示字符在字符向量表中的位置;
基于所述字符标识,在所述字符向量表中查询得到各个字符对应的向量表示,以及将各个字符对应的向量表示输入所述嵌入层进行嵌入处理,得到各个字符对应的字符向量。
10.根据权利要求1至6任一所述的方法,其特征在于,所述基于所述字符预测损失与所述词语融合损失,预训练所述语言模型之后,所述方法还包括:
获取训练样本,所述训练样本是与目标任务相关的样本;
将所述训练样本以字符为级别输入所述预训练语言模型,对所述预训练语言模型进行微调,得到目标语言模型,所述目标语言模型用于处理所述目标任务。
11.一种语言模型的预训练装置,其特征在于,所述装置包括:
样本获取模块,用于获取样本文本以及样本词向量,所述样本词向量是所述样本文本中包含的词语对应的词向量;
掩码处理模块,用于对所述样本文本进行掩码处理,以及将掩码处理后的样本文本输入语言模型进行字符编码,得到各个字符对应的编码向量;
字符预测模块,用于基于各个字符对应的所述编码向量进行字符预测,得到预测字符,以及基于同一字符位置上对应的原始字符与所述预测字符间的差异,确定字符预测损失;
词语聚合模块,用于对属于相同词语的字符对应的编码向量进行聚合处理,得到聚合词向量,以及基于同一词语对应的所述聚合词向量与所述样本词向量间的差异,确定词语融合损失;
预训练模块,用于基于所述字符预测损失与所述词语融合损失,预训练所述语言模型。
12.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一段程序,所述至少一段程序由所述处理器加载并执行以实现如权利要求1至10任一所述的语言模型的预训练方法。
13.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一段程序,所述至少一段程序由处理器加载并执行以实现如权利要求1至10任一所述的语言模型的预训练方法。
14.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,所述计算机指令存储在计算机可读存储介质中,计算机设备的处理器从所述计算机可读存储介质读取所述计算机指令,所述处理器执行所述计算机指令以实现如权利要求1至10任一所述的语言模型的预训练方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310405242.8A CN117217277A (zh) | 2023-04-07 | 2023-04-07 | 语言模型的预训练方法、装置、设备、存储介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310405242.8A CN117217277A (zh) | 2023-04-07 | 2023-04-07 | 语言模型的预训练方法、装置、设备、存储介质及产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117217277A true CN117217277A (zh) | 2023-12-12 |
Family
ID=89049777
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310405242.8A Pending CN117217277A (zh) | 2023-04-07 | 2023-04-07 | 语言模型的预训练方法、装置、设备、存储介质及产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117217277A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117875266A (zh) * | 2024-03-11 | 2024-04-12 | 腾讯科技(深圳)有限公司 | 文本编码模型的训练方法、装置、电子设备及存储介质 |
CN117973378A (zh) * | 2024-01-05 | 2024-05-03 | 北京语言大学 | 一种基于bert模型的词语搭配提取方法及装置 |
-
2023
- 2023-04-07 CN CN202310405242.8A patent/CN117217277A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117973378A (zh) * | 2024-01-05 | 2024-05-03 | 北京语言大学 | 一种基于bert模型的词语搭配提取方法及装置 |
CN117973378B (zh) * | 2024-01-05 | 2024-07-09 | 北京语言大学 | 一种基于bert模型的词语搭配提取方法及装置 |
CN117875266A (zh) * | 2024-03-11 | 2024-04-12 | 腾讯科技(深圳)有限公司 | 文本编码模型的训练方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110580292A (zh) | 一种文本标签生成方法、装置和计算机可读存储介质 | |
CN110619051B (zh) | 问题语句分类方法、装置、电子设备及存储介质 | |
CN111159485B (zh) | 尾实体链接方法、装置、服务器及存储介质 | |
CN113987187B (zh) | 基于多标签嵌入的舆情文本分类方法、系统、终端及介质 | |
CN113297360B (zh) | 基于弱监督学习和联合学习机制的法律问答方法及设备 | |
CN112052684A (zh) | 电力计量的命名实体识别方法、装置、设备和存储介质 | |
CN117217277A (zh) | 语言模型的预训练方法、装置、设备、存储介质及产品 | |
CN111985228A (zh) | 文本关键词提取方法、装置、计算机设备和存储介质 | |
CN113836896A (zh) | 一种基于深度学习的专利文本摘要生成方法和装置 | |
CN114691864A (zh) | 文本分类模型训练方法及装置、文本分类方法及装置 | |
CN118113855B (zh) | 一种舰船试验训练场景问答方法、系统、设备和介质 | |
CN114528835A (zh) | 基于区间判别的半监督专业术语抽取方法、介质及设备 | |
CN115408525A (zh) | 基于多层级标签的信访文本分类方法、装置、设备及介质 | |
CN117494051A (zh) | 一种分类处理的方法、模型训练的方法以及相关装置 | |
CN111783464A (zh) | 一种面向电力的领域实体识别方法、系统及存储介质 | |
CN113836934B (zh) | 基于标签信息增强的文本分类方法和系统 | |
CN118260439A (zh) | 密集架系统的信息管理系统及方法 | |
CN117009516A (zh) | 换流站故障策略模型训练方法、推送方法及装置 | |
CN114707483B (zh) | 基于对比学习和数据增强的零样本事件抽取系统及方法 | |
CN117216617A (zh) | 文本分类模型训练方法、装置、计算机设备和存储介质 | |
CN115544248A (zh) | 一种文本聚类模型的训练方法、训练装置及分类方法 | |
CN115017260A (zh) | 一种基于子主题建模的关键词生成方法 | |
CN114610882A (zh) | 一种基于电力短文本分类的异常设备编码检测方法和系统 | |
CN118228035B (zh) | 内容标签的确定方法以及相关设备 | |
CN118228718B (zh) | 编码器处理方法、文本处理方法及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |