一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语言模型微调方法、文本分类方法、装置及设备与流程

2022-09-07 14:39:58 来源:中国专利 TAG:


1.本技术实施例涉及计算机技术领域,尤其涉及一种语言模型微调方法、文本分类方法、装置及设备。


背景技术:

2.语言模型预训练并微调是一种广泛流行的下游任务实现方式,具体地:通过在已有的预训练模型上添加特定任务层,再微调整个模型的参数来实现特定的下游任务,如情感分析、实体识别、句子相似度计算,等文本分类任务。
3.通常情况下,语言模型预训练阶段的训练任务,与微调阶段的任务会存在一定差异。具体地,预训练阶段与微调阶段的任务可能并不相同,或者,很多语言模型在预训练阶段会涉及多个训练任务,从而能够学习到文本中的包含的多种信息,而在模型微调阶段,则仅涉及单个训练任务。
4.上述微调方式会造成语言模型预训练阶段学习到的先验知识的遗忘,也就是说,上述微调方式会使得微调阶段无法很好地利用语言模型在预训练阶段从训练样本中学习到的先验知识,因此,微调完成的语言模型的性能较差。


技术实现要素:

5.有鉴于此,本技术实施例提供一种语言模型微调方法、文本分类方法、装置及设备,以至少部分解决上述问题。
6.根据本技术实施例的第一方面,提供了一种语言模型微调方法,包括:
7.获取输入词向量,所述输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,所述训练样本、所述第一模板词及所述掩码构成第一文本句子,所述第二模板词和所述单个标签词构成第二文本句子;
8.将所述输入词向量输入预训练语言模型,得到所述掩码的词预测结果和针对所述第一文本句子和所述第二文本句子的相邻句子判断结果;
9.基于所述词预测结果和真实标签词得到第一损失值;基于所述相邻句子判断结果和真实判断结果得到第二损失值;
10.根据所述第一损失值和所述第二损失值训练所述预训练语言模型,得到训练完成的语言模型。
11.根据本技术实施例的第二方面,提供了一种语言模型微调方法,应用于服务端设备,包括:
12.接收客户端设备发送的训练样本;
13.基于所述训练样本生成输入词向量,所述输入词向量包括:所述训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,所述训练样本、所述第一模板词及所述掩码构成第一文本句
子,所述第二模板词和所述单个标签词构成第二文本句子;
14.将所述输入词向量输入预训练语言模型,得到所述掩码的词预测结果和针对所述第一文本句子和所述第二文本句子的相邻句子判断结果;
15.基于所述词预测结果和真实标签词得到第一损失值;基于所述相邻句子判断结果和真实判断结果得到第二损失值;
16.根据所述第一损失值和所述第二损失值训练所述预训练语言模型,得到训练完成的语言模型,并将所述训练完成的语言模型返回至所述客户端设备。
17.根据本技术实施例的第三方面,提供了一种文本分类方法,包括:
18.获取待分类的目标文本;
19.针对每个标签词,获取该标签词对应的提示文本向量,并将所述提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;所述提示文本向量包括:所述目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
20.基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,所述置信度信息表征该标签词为所述目标文本真实标签词的可能性;
21.基于各标签词的置信度信息,确定所述目标文本的类别标签;
22.其中,所述预先训练完成的语言模型通过上述第一方面或者第二方面所述的方法得到。
23.根据本技术实施例的第四方面,提供了一种文本分类方法,应用于服务端设备,包括:
24.接收客户端设备发送的待分类的目标文本;
25.针对每个标签词,获取该标签词对应的提示文本向量,并将所述提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;所述提示文本向量包括:所述目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
26.基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,所述置信度信息表征该标签词为所述目标文本真实标签词的可能性;
27.基于各标签词的置信度信息,确定所述目标文本的类别标签,并将所述类别标签返回至所述客户端设备;
28.其中,所述预先训练完成的语言模型通过上述第一方面或者第二方面所述的方法得到。
29.根据本技术实施例的第五方面,提供了一种语言模型微调装置,包括:
30.第一获取模块,用于获取输入词向量,所述输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,所述训练样本、所述第一模板词及所述掩码构成第一文本句子,所述第二模板词和所述单个标签词构成第二文本句子;
31.第一预测模块,用于将所述输入词向量输入预训练语言模型,得到所述掩码的词预测结果和针对所述第一文本句子和所述第二文本句子的相邻句子判断结果;
32.损失值得到模块,用于基于所述词预测结果和真实标签词得到第一损失值;基于
所述相邻句子判断结果和真实判断结果得到第二损失值;
33.第一训练模块,用于根据所述第一损失值和所述第二损失值训练所述预训练语言模型,得到训练完成的语言模型。
34.根据本技术实施例的第六方面,提供了一种语言模型微调装置,应用于服务端设备,包括:
35.训练样本接收模块,用于接收客户端设备发送的训练样本;
36.生成模块,用于基于所述训练样本生成输入词向量,所述输入词向量包括:所述训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,所述训练样本、所述第一模板词及所述掩码构成第一文本句子,所述第二模板词和所述单个标签词构成第二文本句子;
37.第二预测模块,用于将所述输入词向量输入预训练语言模型,得到所述掩码的词预测结果和针对所述第一文本句子和所述第二文本句子的相邻句子判断结果;
38.损失值计算模块,用于基于所述词预测结果和真实标签词得到第一损失值;基于所述相邻句子判断结果和真实判断结果得到第二损失值;
39.第二训练模块,用于根据所述第一损失值和所述第二损失值训练所述预训练语言模型,得到训练完成的语言模型;
40.模型返回模块,用于将所述训练完成的语言模型返回至所述客户端设备。
41.根据本技术实施例的第七方面,一种文本分类装置,包括:
42.第二获取模块,用于获取待分类的目标文本;
43.第三预测模块,用于针对每个标签词,获取该标签词对应的提示文本向量,并将所述提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;所述提示文本向量包括:所述目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
44.第一置信度信息得到模块,用于基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,所述置信度信息表征该标签词为所述目标文本真实标签词的可能性;
45.第一类别标签确定模块,用于基于各标签词的置信度信息,确定所述目标文本的类别标签;
46.其中,所述预先训练完成的语言模型通过上述第一方面或者第二方面所述的方法得到。
47.根据本技术实施例的第八方面,一种文本分类装置,应用于服务端设备,包括:
48.目标文本接收模块,用于接收客户端设备发送的待分类的目标文本;
49.第四预测模块,用于针对每个标签词,获取该标签词对应的提示文本向量,并将所述提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;所述提示文本向量包括:所述目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
50.第二置信度信息得到模块,用于基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,所述置信度信息表征该标签词为所述目标文本真实标签词的可能性;
51.第二类别标签确定模块,用于基于各标签词的置信度信息,确定所述目标文本的类别标签;
52.类别标签返回模块,用于将所述类别标签返回至所述客户端设备;
53.其中,所述预先训练完成的语言模型通过上述第一方面或者第二方面所述的方法得到。
54.根据本技术实施例的第九方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面或第二方面所述的语言模型微调方法对应的操作,或者,如第三方面或第四方面所述的文本分类方法对应的操作。
55.根据本技术实施例的第十方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面或第二方面所述的语言模型微调方法,或者,如第三方面或第四方面所述的文本分类方法。
56.本技术实施例提供的语言模型微调方法、文本分类方法、装置及设备,通过对训练样本添加提示模板词,将训练样本构造为包含待预测的掩码,以及两个文本句子的文本数据,进而,将上述文本数据输入预训练语言模型,使得预训练语言模型同时执行掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务,并根据上述两种任务的执行结果进行语言模型再次训练(微调)。也就是说,本技术实施例中,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。
附图说明
57.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
58.图1为根据本技术实施例一的一种语言模型微调方法的步骤流程图;
59.图2为图1所示实施例中的一种场景示例的示意图;
60.图3为根据本技术实施例二的一种语言模型微调方法的步骤流程图;
61.图4为根据本技术实施例三的一种语言模型微调方法的步骤流程图;
62.图5为根据本技术实施例四的一种文本分类方法的步骤流程图;
63.图6为根据本技术实施例五的一种文本分类方法的步骤流程图;
64.图7为根据本技术实施例六的一种语言模型微调装置的结构框图;
65.图8为根据本技术实施例七的一种语言模型微调装置的结构框图;
66.图9为根据本技术实施例八的一种文本分类装置的结构框图;
67.图10为根据本技术实施例九的一种文本分类装置的结构框图;
68.图11为根据本技术实施例十的一种电子设备的结构示意图。
具体实施方式
69.为了使本领域的人员更好地理解本技术实施例中的技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术实施例一部分实施例,而不是全部的实施例。基于本技术实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本技术实施例保护的范围。
70.下面结合本技术实施例附图进一步说明本技术实施例具体实现。
71.实施例一
72.参照图1,图1为根据本技术实施例一的一种语言模型微调方法的步骤流程图。具体地,本实施例提供的语言模型微调方法包括以下步骤:
73.步骤102,获取输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子。
74.本技术实施例中的第一模板词、第二模板词均可以为预先设定的词元,此处对于第一模板词、第二模板词的具体设定方式不做限定。进一步地,可以选取具有明确语义的离散型的词元作为第一模板词或第二模板词;也可以选择不具有明确语义的连续性的词元作为第一模板词或第二模板词,本技术实施例对此也不做限定。
75.第一模板词可以为相同的词元,也可以为不同的词元,例如:第一模板词和第二模板词可以为语义相近的词元,等等。
76.本技术实施例中的标签词为根据具体的下游文本分类任务预先设定的标签,例如:对于情感分类这一二分类的任务,标签词可以为:“积极的”和“消极的”,或者,“正面的”和“负面的”,等等。本技术实施例中,对于标签词的设定方式也不做限定,可以根据经验或者相关习惯设定。
77.输入词向量是对上述第一文本句子和第二文本句子构成的句子对进行词嵌入操作得到的。
78.对于分类任务而言,标签词的数量必然为多个,本步骤中,在训练样本固定的情况下,针对具体的某个标签词,均可以改造出一个对应的句子对,该句子对中包括:由训练样本、第一模板词及掩码构成的第一文本句子,以及,由第二模板词和该具体的标签词构成第的二文本句子。因此,对于n分类任务,基于一个训练样本,可以构造出n个句子对,用于进行后续预训练模型的微调训练。
79.另外,本技术实施例中,训练样本、第一模板词、第二模板词以及标签词可以为中文词元,也可以为其他的外文词元,如:英文词元等等,此处,对于文本以及词元所采用的具体语言形式不做限定。
80.步骤104,将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果。
81.本技术实施例中对于预训练语言模型的具体结构不做限定,例如:可以为基于transformer的语言模型,如:bert、roberta,等等。
82.将输入词向量输入预训练语言模型后,可以通过预训练语言模型执行mlm(masked language model,掩码语言建模)任务,以及,nsp(next sentence predict,相邻句子判断)
任务。其中,mlm任务用于对掩码位置的词元进行预测,得到掩码的词预测结果,也即:掩码位置为预训练模型词汇表中各词元的概率;nsp任务用于判断上述第一文本句子和第二文本句子是否具有上下文关系(也即:第二文本句子是否为第一文本句子的下一句,或者,第一文本句子是否为第二文本句子的上一句,后者说,第一文本句子和第二文本句子是否为相邻句子),得到相邻句子判断结果,也即:两个文本句子具有上下文关系的概率,或,两个文本句子不具有上下文关系的概率,或,两个文本句子为相邻句子的概率。
83.步骤106,基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值。
84.本步骤中,对于得到第一损失值或第二损失值时,所采用的具体损失函数不做限定,可以根据实际情况选择任意合适的分类损失函数,例如:负对数似然损失函数、交叉熵损失函数、指数损失函数、平方损失函数,等等。
85.步骤108,根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型。
86.具体地,可以对第一损失值和第二损失值进行融合,得到融合损失值,再基于融合损失值训练预训练语言模型,得到训练完成的语言模型。
87.本技术实施例中,对于第一损失值和第二损失值的具体融合策略,不做限定。例如:可以分别设定第一损失值对应的第一权重值,以及,第二损失值对应的第二权重值,然后,基于上述第一权重值和第二权重值对第一损失值和第二损失值进行加权融合,得到融合损失值,等等。
88.参见图2,图2为本技术实施例一对应的场景示意图,以下,将参考图2所示的示意图,以一个具体场景示例,对本技术实施例进行说明:
89.参见图2,该场景对应的下游任务为情感分类任务,设定的标签映射为“good对应于positive;bad对应于nagative”,获取的训练样本为“no reason to watch.”;对该训练样本添加第一模板词:“itwas_”、第二模板词:“itwas_”以及单个标签词“bad”(该标签词可以为预设标签词“bad”、“good”中的任意一个,此处仅以“bad”为例,并不构成对本技术实施例的限定),得到句子对:“no reason to watch.it was[mask].it was bad.”,其中,“no reason to watch.it was[mask]”为第一文本句子,“itwas bad”为第二文本句子;对上述句子对进行词嵌入操作,得到输入词向量:“[cls]e(no)e(reason)e(to)e(watch)e(.)e(it)e(was)e([mask])[sep]e(it)e(was)e(bad)[sep]”,其中,“[cls]”为表征整个句子对的语义信息的特殊符号,“[mask]”为掩码符号;“[sep]”为文本句子分割符号;“e(no)”为词元“no”对应的词向量、“e(no)e(reason)e(to)e(watch)e(.)”为训练文本“no reason to watch.”对应的训练文本词向量、“e(it)e(was)”既为第一模板词对应的第一模板词向量,还为第二模板词对应的第二模板词向量;将上述输入词向量输入预训练语言模型,通过预训练语言模型中用于执行mlm任务的“mlm head”模块,对“[mask]”进行词元预测,得到词预测结果;通过预训练语言模型中用于执行nsp任务的“nsp head”模块,基于“[cls]”得到相邻句子判断结果;基于词预测结果和训练样本的真实标签词(本例子中为“nagative”)得到第一损失值,基于相邻句子判断结果和真实判断结果(本例子中为“yes”)得到第二损失值;进而,基于第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型。
[0090]
根据本技术实施例提供的语言模型微调方法,通过对训练样本添加提示模板词,
将训练样本构造为包含待预测的掩码,以及两个文本句子的文本数据,进而,将上述文本数据输入预训练语言模型,使得预训练语言模型同时执行掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务,并根据上述两种任务的执行结果进行语言模型再次训练(微调)。也就是说,本技术实施例中,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。
[0091]
本实施例的语言模型微调方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、pc机等。
[0092]
实施例二
[0093]
参照图3,图3为根据本技术实施例二的一种语言模型微调方法的步骤流程图。具体地,本实施例提供的语言模型微调方法包括以下步骤:
[0094]
步骤302,获取训练样本、预设的第一模板词、预设的第二模板词以及多个预设的标签词。
[0095]
本技术实施例中的第一模板词、第二模板词均可以为预先设定的词元,此处对于第一模板词、第二模板词的具体设定方式不做限定。进一步地,可以选取具有明确语义的离散型的词元作为第一模板词或第二模板词;也可以选择不具有明确语义的连续性的词元作为第一模板词或第二模板词,本技术实施例对此也不做限定。第一模板词可以为相同的词元,也可以为不同的词元,例如:第一模板词和第二模板词可以为语义相近的词元,等等。
[0096]
本技术实施例中的标签词为根据具体的下游文本分类任务预先设定的标签,例如:对于情感分类这一二分类的任务,标签词可以为:“积极的”和“消极的”,或者,“正面的”和“负面的”,等等。本技术实施例中,对于标签词的设定方式也不做限定,可以根据经验或者相关习惯设定。
[0097]
另外,本技术实施例中,训练样本、第一模板词、第二模板词以及标签词可以为中文词元,也可以为其他的外文词元,如:英文词元等等,此处,对于文本以及词元所采用的具体语言形式不做限定。
[0098]
步骤304,从多个预设的标签词中选择训练样本的真实标签词,以及,训练样本的预设数量个非真实标签词,作为目标标签词。
[0099]
具体地,对于分类任务而言,标签词的数量必然为多个,其中,包含真实标签词和非真实标签词。本步骤中,无论是对于二分类任务还是其他的多分类任务,针对每个训练样本而言,仅选择全部真实标签词和预设数量个非真实标签词作为目标标签词。
[0100]
上述预设数量可以为小于非真实标签总数量的任意自然数,例如:可以取真实标签词的总数量为上述预设数量。
[0101]
本步骤中,对于从多个非真实标签词中选择预设数量个非真实标签词的具体方式不做限定,例如:可以为随机选择,也可以为按照某种预设规则选择,等等。
[0102]
步骤306,基于训练样本、第一模板词、第二模板词及单个的目标标签词进行词元组合,得到组合样本。
[0103]
针对固定的训练样本,由于步骤304得到的目标标签词中非真实标签词的数量有
所减少,因此,本步骤中,得到的组合样本中组合负样本的数量也会随之减少。
[0104]
本技术实施例中,通过步骤304和步骤306,可以使得针对每个训练样本,均只构造出全部组合正样本和预设数量(较少数量)个组合负样本,这样,在后续的语言模型微调过程中,可以保持正样本和负样本数量比例的平衡,避免因负样本过多导致的类别不平衡问题,有助于提升最终得到的语言模型的预测性能。
[0105]
步骤308,对组合样本进行词嵌入操作,得到输入词向量。
[0106]
其中,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个目标标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个目标标签词构成第二文本句子。
[0107]
步骤310,将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果。
[0108]
步骤312,基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值。
[0109]
步骤314,根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型。
[0110]
步骤310-步骤314的具体实现方式,可参见步骤104-步骤108中的对应内容,此处不再赘述。
[0111]
本技术实施例,通过对训练样本添加提示模板词,将训练样本构造为包含待预测的掩码,以及两个文本句子的文本数据,进而,将上述文本数据输入预训练语言模型,使得预训练语言模型同时执行掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务,并根据上述两种任务的执行结果进行语言模型再次训练(微调)。也就是说,本技术实施例中,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。
[0112]
另外,本技术实施例中,通过从多个标签词中选择真实标签词和预设数量个非真实标签词,作为目标标签词,可以使得针对每个训练样本,均只构造出全部组合正样本和较少数量个组合负样本,这样,在后续的语言模型微调过程中,可以保持正样本和负样本数量比例的平衡,避免因负样本过多导致的类别不平衡问题,有助于提升最终得到的语言模型的预测性能。
[0113]
本实施例的语言模型微调方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、pc机等。
[0114]
实施例三
[0115]
参照图4,图4为根据本技术实施例三的一种语言模型微调方法的步骤流程图。该实施例的应用场景可以是:用户提供源于自身具体下游任务的训练样本,由对应的服务端设备基于用户提供的训练样本进行预训练语言模型的微调,从而向用户返回训练完成的适用于用户需求的语言模型。
[0116]
具体地,本实施例提供的语言模型微调方法包括以下步骤:
[0117]
步骤402,接收客户端设备发送的训练样本。
[0118]
步骤404,基于训练样本生成输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子。
[0119]
步骤406,将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果。
[0120]
步骤408,基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值。
[0121]
步骤410,根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型,并将训练完成的语言模型返回至客户端设备。
[0122]
本技术实施例,通过对训练样本添加提示模板词,将训练样本构造为包含待预测的掩码,以及两个文本句子的文本数据,进而,将上述文本数据输入预训练语言模型,使得预训练语言模型同时执行掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务,并根据上述两种任务的执行结果进行语言模型再次训练(微调)。也就是说,本技术实施例中,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。
[0123]
本实施例的语言模型微调方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、pc机等。
[0124]
实施例四
[0125]
参照图5,图5为根据本技术实施例四的一种文本分类方法的步骤流程图。具体地,本实施例提供的文本分类方法包括以下步骤:
[0126]
步骤502,获取待分类的目标文本。
[0127]
步骤504,针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果。
[0128]
其中,提示文本向量包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量。
[0129]
预先训练完成的语言模型为通过上述实施例一至实施例三中任一语言模型微调方法得到的。
[0130]
步骤506,基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息。
[0131]
其中,置信度信息表征该标签词为目标文本真实标签词的可能性。
[0132]
可选地,在其中一些实施例中,可以通过如下具体方式得到该标签词的置信度信息:
[0133]
根据该标签词对应的词预测结果,确定所述掩码的预测词为该标签词的第一概
率;
[0134]
根据该标签词对应的相邻句子判断结果,确定第三文本句子和第四文本句子为相邻句子的第二概率;其中,所述第三文本句子包括:所述目标文本、所述第一模板词向量对应的第一模板词以及所述掩码;所述第四文本句子包括:所述第二模板词向量对应的第二模板词和该标签词;
[0135]
融合所述第一概率和所述第二概率,得到该标签词的置信度信息。
[0136]
具体地,该标签词对应的词预测结果可以包括:对掩码位置进行词元预测之后,得到的掩码位置分别为各标签词的概率值,也就是说,该词预测结果中包含有多个概率值,每个概率值对应一个标签词,并用于表示掩码位置为该标签词的概率。该标签词对应的相邻句子判断结果可以包括:上述第三文本句子和第四文本句子具有上下文关系(为相邻句子)的概率值,或者,上述第三文本句子和第四文本句子不具有上下文关系(不为相邻句子)的概率值。
[0137]
本步骤中,可以从该标签词对应的词预测结果中,确定出掩码位置为该标签词的概率值,作为第一概率;从该标签词对应的相邻句子判断结果中,确定出第三文本句子和第四文本句子为相邻句子的概率值,作为第二概率,进而对第一概率和第二概率进行融合,得到该标签词的置信度信息。
[0138]
本技术实施例中,对于第一概率和第二概率的具体融合方式不做限定。例如:可以分别设定第一概率对应的第一概率权重值和第二概率对应的第二概率权重值,然后基于第一概率权重值和第二概率权重值,对第一概率和第二概率进行加权融合,将融合结果作为该标签词的置信度信息。
[0139]
步骤508,基于各标签词的置信度信息,确定目标文本的类别标签。
[0140]
本技术实施例中,对于基于各标签词的置信度信息,确定目标文本的类别标签的具体方式不做限定,可以根据实际需要选择合适的确定方式。例如:可以预先设定置信度阈值,然后将各标签词的置信度信息中,大于上述置信度阈值的标签词,确定为目标文本的类别标签,其中,当大于上述置信度阈值的标签词为多个时,则可以从中选择最大置信度信息对应的标签词,作为目标文本的类别标签,等等。
[0141]
本技术实施例中的语言模型,是通过掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务同时训练得到的。也就是说,在语言模型微调阶段,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。因此,基于上述训练完成的语言模型对目标文本进行分类处理,可以提升目标文本分类的准确性。
[0142]
本实施例的文本分类方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、pc机等。
[0143]
实施例五
[0144]
参照图6,图6为根据本技术实施例五的一种文本分类方法的步骤流程图。该实施例的应用场景可以是:用户提供自身分类任务场景下待分类的目标文本,由对应的服务端
设备基于微调完成(训练完成)的语言模型对上述目标文本进行分类,得到目标文本的分类标签并返回至用户。
[0145]
具体地,本实施例提供的文本分类方法包括以下步骤:
[0146]
步骤602,接收客户端设备发送的待分类的目标文本。
[0147]
步骤604,针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果。
[0148]
其中,预先训练完成的语言模型为通过上述实施例一至实施例三中任一语言模型微调方法得到的。
[0149]
提示文本向量包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量。
[0150]
步骤606,基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息。
[0151]
置信度信息表征该标签词为目标文本真实标签词的可能性。
[0152]
步骤608,基于各标签词的置信度信息,确定目标文本的类别标签,并将类别标签返回至客户端设备。
[0153]
本技术实施例中的语言模型,是通过掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务同时训练得到的。也就是说,在语言模型微调阶段,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。因此,基于上述训练完成的语言模型对目标文本进行分类处理,可以提升目标文本分类的准确性。
[0154]
本实施例的文本分类方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、pc机等。
[0155]
实施例六
[0156]
参照图7,图7为根据本技术实施例六的一种语言模型微调装置的结构框图。本技术实施例提供的语言模型微调装置包括:
[0157]
第一获取模块702,用于获取输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子;
[0158]
第一预测模块704,用于将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果;
[0159]
损失值得到模块706,用于基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值;
[0160]
第一训练模块708,用于根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型。
[0161]
可选地,在其中一些实施例中,第一获取模块702,具体用于:
[0162]
获取训练样本、预设的第一模板词、预设的第二模板词以及多个预设的标签词;
[0163]
基于训练样本、第一模板词、第二模板词及单个的标签词进行词元组合,得到组合样本;
[0164]
对组合样本进行词嵌入操作,得到输入词向量。
[0165]
可选地,在其中一些实施例中,第一获取模块702在执行基于训练样本、第一模板词、第二模板词及单个的标签词进行词元组合,得到组合样本的步骤时,具体用于:
[0166]
从多个预设的标签词中选择训练样本的真实标签词,以及,训练样本的预设数量个非真实标签词,作为目标标签词;
[0167]
基于训练样本、第一模板词、第二模板词及单个的目标标签词进行词元组合,得到组合样本。
[0168]
本技术实施例的语言模型微调装置用于实现前述方法实施例一或实施例二中相应的语言模型微调方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本技术实施例的语言模型微调装置中的各个模块的功能实现均可参照前述方法实施例一或实施例二中的相应部分的描述,在此亦不再赘述。
[0169]
实施例七
[0170]
参见图8,图8为根据本技术实施例七的一种语言模型微调装置的结构框图。本技术实施例提供的语言模型微调装置,应用于服务端设备,包括:
[0171]
训练样本接收模块802,用于接收客户端设备发送的训练样本;
[0172]
生成模块804,用于基于训练样本生成输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子;
[0173]
第二预测模块806,用于将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果;
[0174]
损失值计算模块808,用于基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值;
[0175]
第二训练模块810,用于根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型;
[0176]
模型返回模块812,用于将训练完成的语言模型返回至客户端设备。
[0177]
本技术实施例的语言模型微调装置用于实现前述方法实施例三中相应的语言模型微调方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本技术实施例的语言模型微调装置中的各个模块的功能实现均可参照前述方法实施例三中的相应部分的描述,在此亦不再赘述。
[0178]
实施例八
[0179]
参照图9,图9为根据本技术实施例八的一种文本分类装置的结构框图。本技术实施例提供的文本分类装置包括:
[0180]
第二获取模块902,用于获取待分类的目标文本;
[0181]
第三预测模块904,用于针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句
子判断结果;提示文本向量包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
[0182]
第一置信度信息得到模块906,用于基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,置信度信息表征该标签词为目标文本真实标签词的可能性;
[0183]
第一类别标签确定模块908,用于基于各标签词的置信度信息,确定目标文本的类别标签;
[0184]
其中,预先训练完成的语言模型通过前述方法实施例一至实施例三中的任一语言模型微调方法得到。
[0185]
可选地,在其中一些实施例中,第一置信度信息得到模块906,具体用于:
[0186]
根据该标签词对应的词预测结果,确定掩码的预测词为该标签词的第一概率;
[0187]
根据该标签词对应的相邻句子判断结果,确定第三文本句子和第四文本句子为相邻句子的第二概率;其中,第三文本句子包括:目标文本、第一模板词向量对应的第一模板词以及掩码;第四文本句子包括:第二模板词向量对应的第二模板词和该标签词;
[0188]
融合第一概率和第二概率,得到该标签词的置信度信息。
[0189]
本技术实施例的文本分类装置用于实现前述方法实施例四中相应的文本分类方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本技术实施例的文本分类装置中的各个模块的功能实现均可参照前述方法实施例四中的相应部分的描述,在此亦不再赘述。
[0190]
实施例九
[0191]
参见图10,图10为根据本技术实施例九的一种文本分类装置的结构框图。本技术实施例提供的文本分类装置,应用于服务端设备,包括:
[0192]
目标文本接收模块1002,用于接收客户端设备发送的待分类的目标文本;
[0193]
第四预测模块1004,用于针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;提示文本向量包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;
[0194]
第二置信度信息得到模块1006,用于基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,置信度信息表征该标签词为目标文本真实标签词的可能性;
[0195]
第二类别标签确定模块1008,用于基于各标签词的置信度信息,确定目标文本的类别标签;
[0196]
类别标签返回模块1010,用于将类别标签返回至客户端设备;
[0197]
其中,预先训练完成的语言模型通过前述方法实施例一至实施例三中的任一语言模型微调方法得到。
[0198]
本技术实施例的文本分类装置用于实现前述方法实施例五中相应的文本分类方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本技术实施例的文本分类装置中的各个模块的功能实现均可参照前述方法实施例五中的相应部分的描述,在此亦不再赘述。
[0199]
实施例十
[0200]
参照图11,示出了根据本技术实施例十的一种电子设备的结构示意图,本技术具体实施例并不对电子设备的具体实现做限定。
[0201]
如图11所示,该电子设备可以包括:处理器(processor)1102、通信接口(communications interface)1104、存储器(memory)1106、以及通信总线1108。
[0202]
其中:
[0203]
处理器1102、通信接口1104、以及存储器1106通过通信总线1108完成相互间的通信。
[0204]
通信接口1104,用于与其它电子设备或服务器进行通信。
[0205]
处理器1102,用于执行程序1110,具体可以执行上述语言模型微调方法,或者,文本分类方法实施例中的相关步骤。
[0206]
具体地,程序1110可以包括程序代码,该程序代码包括计算机操作指令。
[0207]
处理器1102可能是cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本技术实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
[0208]
存储器1106,用于存放程序1110。存储器1106可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0209]
程序1110具体可以用于使得处理器1102执行以下操作:获取输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子;将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果;基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值;根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型。
[0210]
或者,程序1110具体可以用于使得处理器1102执行以下操作:接收客户端设备发送的训练样本;
[0211]
基于训练样本生成输入词向量,输入词向量包括:训练样本的训练样本词向量、第一模板词的第一模板词向量、掩码、第二模板词的第二模板词向量及单个标签词对应的标签词向量;其中,训练样本、第一模板词及掩码构成第一文本句子,第二模板词和单个标签词构成第二文本句子;将输入词向量输入预训练语言模型,得到掩码的词预测结果和针对第一文本句子和第二文本句子的相邻句子判断结果;基于词预测结果和真实标签词得到第一损失值;基于相邻句子判断结果和真实判断结果得到第二损失值;根据第一损失值和第二损失值训练预训练语言模型,得到训练完成的语言模型,并将训练完成的语言模型返回至客户端设备。
[0212]
或者,程序1110具体可以用于使得处理器1102执行以下操作:获取待分类的目标文本;针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;提示文本向量
包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,置信度信息表征该标签词为目标文本真实标签词的可能性;基于各标签词的置信度信息,确定目标文本的类别标签;其中,预先训练完成的语言模型通过前述方法实施例一至实施例三中的任一语言模型微调方法得到。
[0213]
或者,程序1110具体可以用于使得处理器1102执行以下操作:接收客户端设备发送的待分类的目标文本;针对每个标签词,获取该标签词对应的提示文本向量,并将提示文本向量输入预先训练完成的语言模型,得到该标签词对应的词预测结果及相邻句子判断结果;提示文本向量包括:目标文本的目标文本词向量、掩码、第一模板词向量、第二模板词向量以及该标签词的标签词向量;基于该标签词对应的词预测结果及相邻句子判断结果,得到该标签词的置信度信息,置信度信息表征该标签词为目标文本真实标签词的可能性;基于各标签词的置信度信息,确定目标文本的类别标签,并将类别标签返回至客户端设备;其中,预先训练完成的语言模型通过前述方法实施例一至实施例三中的任一语言模型微调方法得到。
[0214]
程序1110中各步骤的具体实现可以参见上述语言模型微调方法实施例,或者,文本分类方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
[0215]
通过本实施例的电子设备,通过对训练样本添加提示模板词,将训练样本构造为包含待预测的掩码,以及两个文本句子的文本数据,进而,将上述文本数据输入预训练语言模型,使得预训练语言模型同时执行掩码对应的词预测(掩码语言建模)任务和相邻句子判断任务,并根据上述两种任务的执行结果进行语言模型再次训练(微调)。也就是说,本技术实施例中,通过对训练样本进行改造,使得语言模型微调阶段的训练任务与预训练阶段的训练任务保持一致,均包含:倾向于文本句子内部词元间语义理解的掩码语言建模任务,以及,倾向于相邻文本句子间语义理解的相邻句子判断任务,这样,可以充分利用语言模型在预训练阶段学习到的词元间语义理解能力以及相邻文本句子间语义理解能力,有效提升最终训练完成的语言模型的性能。
[0216]
本技术实施例还提供了一种计算机程序产品,包括计算机指令,该计算机指令指示计算设备执行上述多个方法实施例中的任一语言模型微调方法对应的操作,或者,文本分类方法对应的操作。
[0217]
需要指出,根据实施的需要,可将本技术实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本技术实施例的目的。
[0218]
上述根据本技术实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cd rom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,
ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的语言模型微调方法,或者,文本分类方法。此外,当通用计算机访问用于实现在此示出的语言模型微调方法,或者,文本分类方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的语言模型微调方法,或者,文本分类方法的专用计算机。
[0219]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术实施例的范围。
[0220]
以上实施方式仅用于说明本技术实施例,而并非对本技术实施例的限制,有关技术领域的普通技术人员,在不脱离本技术实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本技术实施例的范畴,本技术实施例的专利保护范围应由权利要求限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献