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

文档序号:36832619发布日期:2024-01-26 16:47阅读:13来源:国知局
一种语言模型微调方法、文本分类方法、装置及设备与流程

本发明涉及深度学习,具体为一种语言模型微调方法、文本分类方法、装置及设备。


背景技术:

1、虽然深度学习模型许多nlp任务上达到了最好的效果,但这些模型无一不是从头开始训练的,需要大型数据集和漫长的数据收集时间。目前自然语言处理中用到迁移学习的,主要是微调预训练的词嵌入,这是一种简单的迁移技术,它只针对模型的第一层,但在对实际效应有着巨大的影响,并运用于各种最好的模型中。最新的方法将来自其他任务的嵌入与不同层次的输入相结合,但仍然从头开始训练主要任务模型,并将预训练嵌入视为固定参数,限制了其有用性。

2、但语言模型会过拟合于小型数据集并在微调一个分类器的时候遭受灾难性的遗忘。相对于cv而言,nlp模型通常更加浅,因此需要不同的微调方法,因此亟需一种语言模型微调方法、文本分类方法、装置及设备来解决上述问题。


技术实现思路

1、为了克服上述的技术问题,本发明的目的在于提供一种语言模型微调方法、文本分类方法、装置及设备,以解决上述背景技术中提出的语言模型会过拟合于小型数据集并在微调一个分类器的时候遭受灾难性的遗忘的问题。

2、为实现上述目的,本发明提供如下技术方案:一种语言模型微调方法、文本分类方法、装置及设备,包括语言模型微调方法,所述语言模型微调方法包括通用领域的模型预训练、目标任务的模型微调、目标任务分类器的微调;所述通用领域的模型预训练包括在语料库上学习一般特征;所述目标任务的模型微调包括差异特调和斜三角学习率;所述目标任务分类器的微调包括级联池化、逐步解冻、用于文本分类的bptt和双向语言模型。

3、优选的,所述在语料库上学习一般特征是指在通用的语料库上进行训练以捕获不同层上的一般特征,类似imagenet的语言语料库应该很大并且可以捕获语言的一般属性。预测wikitext-103上的语言模型,该模型包含28,595个预处理的维基百科文章和1.03亿个单词。预训练对于具有小数据集的任务最有利,并且即使使用100个标记示例也能够进行泛化。

4、优选的,所述差异特调是指由于不同的层捕获不同类型的信息,它们应该在不同程度上进行微调。为此,提出了一种新颖的微调方法,即差异微调。不是对模型的所有层使用相同的学习速率,而是区分性微调允许以不同的学习速率调整每个层。每一层设置一个学习率,第一层的特征具有通用性,所以设置相对较小的学习率,高层的特征与具体任务相关,因此设置相对较大的学习率。

5、优选的,所述斜三角学习率是指为了使其参数适应任务特定的特征,希望模型在训练开始时快速收敛到参数空间的合适区域,然后细化其参数。在整个训练过程中使用相同的学习率(lr)或退火学习率并不是实现此行为的最佳方法。相反,提出斜三角学习率(stlr),学习率先逐渐增加后逐渐下降,由于具体任务的变化,先用较小的学习率,得到一个好的优化方向,再使用较大的学习率,进行优化,在训练后期再使用较小的学习率进行更细致的优化。

6、优选的,所述级联池化是指文本分类任务中的信号通常包含在几个单词中,这些单词可能出现在文档中的任何位置。由于输入文档可能包含数百个单词,如果我们只考虑模型的最后隐藏状态,信息可能会丢失。出于这个原因,我们将文档的最后一个步骤ht的隐藏状态与各时间步长的隐藏状态的max-pooled和mean-pooled表示拼接。

7、优选的,所述逐步解冻是指从最后一层开始逐渐解冻模型,而不是一次微调所有层,这会导致灾难性的遗忘,因为这包含最少的一般知识:我们首先解冻最后一层,在一个时期内微调所有未冻结的层。然后我们解冻下一个较低的冻结层并重复,直到我们微调所有层,直到最后一次迭代收敛。这类似于'链解冻',不过我们一次向一组'解冻'层添加一层,而不是一次只训练一层。

8、优选的,所述用于文本分类的bptt是指通过时间反向传播(bptt)训练语言模型,以实现大输入序列的梯度传播。为了使大型文档的分类器微调可行,提出了bptt for textclassification(bpt3c):将文档划分为大小为b的固定长度批次。在每个批次的开头,模型初始化为前一批次的最终状态;跟踪平均值和最大池的隐藏状态;梯度反向传播到批次,其隐藏状态有助于最终预测。在实践中,使用可变长度反向传播序列。

9、优选的,所述双向语言模型是指与现有工作类似,不仅限于微调单向语言模型。预先训练前向和后向lm。使用bpt3c独立微调每个lm的分类器并平均分类器预测。

10、与现有技术相比,本发明的有益效果是:

11、1、该一种语言模型微调方法、文本分类方法、装置及设备设置有目标任务的模型微调和目标任务分类器的微调,通过差异特调、斜三角学习率和逐步解冻等新的技术来保持过往知识和避免微调中的灾难性遗忘。

12、2、该一种语言模型微调方法、文本分类方法、装置及设备设置有语言模型微调方法,通过语言模型微调方法可以在任何自然语言处理任务上实现类似cv的转移学习的方法。



技术特征:

1.一种语言模型微调方法、文本分类方法、装置及设备,包括语言模型微调方法,其特征在于:所述语言模型微调方法包括通用领域的模型预训练、目标任务的模型微调、目标任务分类器的微调;所述通用领域的模型预训练包括在语料库上学习一般特征;所述目标任务的模型微调包括差异特调和斜三角学习率;所述目标任务分类器的微调包括级联池化、逐步解冻、用于文本分类的bptt和双向语言模型。

2.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述在语料库上学习一般特征是指在通用的语料库上进行训练以捕获不同层上的一般特征,类似imagenet的语言语料库应该很大并且可以捕获语言的一般属性。预测wikitext-103上的语言模型,该模型包含28,595个预处理的维基百科文章和1.03亿个单词。预训练对于具有小数据集的任务最有利,并且即使使用100个标记示例也能够进行泛化。

3.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述差异特调是指由于不同的层捕获不同类型的信息,它们应该在不同程度上进行微调。为此,提出了一种新颖的微调方法,即差异微调。不是对模型的所有层使用相同的学习速率,而是区分性微调允许以不同的学习速率调整每个层。每一层设置一个学习率,第一层的特征具有通用性,所以设置相对较小的学习率,高层的特征与具体任务相关,因此设置相对较大的学习率。

4.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述斜三角学习率是指为了使其参数适应任务特定的特征,希望模型在训练开始时快速收敛到参数空间的合适区域,然后细化其参数。在整个训练过程中使用相同的学习率(lr)或退火学习率并不是实现此行为的最佳方法。相反,提出斜三角学习率(stlr),学习率先逐渐增加后逐渐下降,由于具体任务的变化,先用较小的学习率,得到一个好的优化方向,再使用较大的学习率,进行优化,在训练后期再使用较小的学习率进行更细致的优化。

5.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述级联池化是指文本分类任务中的信号通常包含在几个单词中,这些单词可能出现在文档中的任何位置。由于输入文档可能包含数百个单词,如果我们只考虑模型的最后隐藏状态,信息可能会丢失。出于这个原因,我们将文档的最后一个步骤ht的隐藏状态与各时间步长的隐藏状态的max-pooled和mean-pooled表示拼接。

6.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述逐步解冻是指从最后一层开始逐渐解冻模型,而不是一次微调所有层,这会导致灾难性的遗忘,因为这包含最少的一般知识:我们首先解冻最后一层,在一个时期内微调所有未冻结的层。然后我们解冻下一个较低的冻结层并重复,直到我们微调所有层,直到最后一次迭代收敛。这类似于'链解冻',不过我们一次向一组'解冻'层添加一层,而不是一次只训练一层。

7.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述用于文本分类的bptt是指通过时间反向传播(bptt)训练语言模型,以实现大输入序列的梯度传播。为了使大型文档的分类器微调可行,提出了bptt for textclassification(bpt3c):将文档划分为大小为b的固定长度批次。在每个批次的开头,模型初始化为前一批次的最终状态;跟踪平均值和最大池的隐藏状态;梯度反向传播到批次,其隐藏状态有助于最终预测。在实践中,使用可变长度反向传播序列。

8.根据权利要求1所述的一种语言模型微调方法、文本分类方法、装置及设备,其特征在于:所述双向语言模型是指与现有工作类似,不仅限于微调单向语言模型。预先训练前向和后向lm。使用bpt3c独立微调每个lm的分类器并平均分类器预测。


技术总结
本发明涉及深度学习技术领域,具体为一种语言模型微调方法、文本分类方法、装置及设备,包括语言模型微调方法,所述语言模型微调方法包括通用领域的模型预训练、目标任务的模型微调、目标任务分类器的微调;所述通用领域的模型预训练包括在语料库上学习一般特征;所述目标任务的模型微调包括差异特调和斜三角学习率;所述目标任务分类器的微调包括级联池化、逐步解冻、用于文本分类的BPTT和双向语言模型;本发明目标任务的模型微调和目标任务分类器的微调,通过差异特调、斜三角学习率和逐步解冻等新的技术来保持过往知识和避免微调中的灾难性遗忘。

技术研发人员:符甜
受保护的技术使用者:深圳火星语盟科技股份有限公司
技术研发日:
技术公布日:2024/1/25
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1