本发明涉及自然语言处理,具体为一种大语言模型参数的微调训练方法、系统及介质。
背景技术:
1、大语言模型参数的微调是指调整大型语言模型(llm)的模型参数,使得大语言模型适应特定任务的过程;它与预训练阶段使用大量非结构化文本数据不同,微调是一个监督学习过程;这意味着使用标记好的示例数据集来更新llm的权重,使得模型能更好地完成特定任务。
2、现有的用于大语言模型参数的微调的改进,通常是注重训练集数据的选取,使得微调后的模型对于特定任务输出结果更加准确,比如在发明公开号为cn117494786a的中国专利中,公开了一种基于微调的大语言模型热搜生成方法及装置,该方案就是通过收集热搜数据,进行热点事件抽取,构建训练集和验证集,再进行训练得到微调后的大语言模型,而现有的改进方法通常都是全微调,与部分微调相比全微调需要足够的内存和计算预算来存储和处理训练过程中的所有梯度、优化器和其他更新组件,这会导致全微调的方法适用性较低,鉴于此,有必要对现有的大语言模型参数的微调方法进行改进。
技术实现思路
1、本发明旨在至少在一定程度上解决现有技术中的技术问题之一,通过对大语言模型参数的微调方法进行改进,用于解决现有技术中因缺少对模型架构分析,导致无法准确进行部分参数的微调,进而在全微调时需要提供足够的内存和计算预算,使得微调的效率以及适用性较低的问题。
2、为实现上述目的,第一方面,本发明提供一种大语言模型参数的微调训练方法,包括:
3、设置第一数量的调整数据,对调整数据进行划分,输出训练数据以及验证数据;所述验证数据包括数据集以及与数据集关联的预测输出信息;
4、利用初始语言模型对验证数据进行处理,输出实际输出信息;基于预测输出信息以及实际输出信息计算模型的准确率,输出初始准确率;
5、对初始语言模型进行部分参数冻结,使用训练数据进行初始语言模型的训练,输出微调语言模型;
6、利用微调语言模型对验证数据进行处理,输出调整输出信息;基于预测输出信息以及调整输出信息计算模型的准确率,输出调整准确率;
7、对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理或输出调整完成信息。
8、进一步地,设置第一数量的调整数据,对调整数据进行划分,输出训练数据以及验证数据包括:
9、基于大语言模型需要应用的特殊领域设置与领域相关的第一数量的调整数据;
10、将第一数量的调整数据进行均分,将均分后的两组数据分别标记为训练数据以及验证数据。
11、进一步地,利用大语言模型对验证数据进行处理,输出实际输出信息;基于预测输出信息以及实际输出信息计算模型的准确率,输出初始准确率包括:
12、加载预训练参数,得到初始语言模型;所述初始语言模型包括嵌入层、隐藏层以及输出层;所述隐藏层包括多个transformer层,初始语言模型能够接收训练数据并进行微调,以及接收验证数据并输出实际输出信息;
13、设置初始值为0的第一计算值;
14、执行第一准确计算循环,所述第一准确计算循环包括:
15、将单个验证数据的数据集输入初始语言模型,获取初始语言模型输出的实际输出信息,将输入的验证数据标记为已验数据;
16、利用自然语言处理技术对实际输出信息以及预测输出信息进行分析,当实际输出信息与预测输出信息相似时,将第一计算值进行加一处理;当实际输出信息与预测输出信息不相似时,不做处理;
17、重复执行第一准确计算循环,当所有的验证数据均被标记为已验数据时,结束第一准确计算循环;将所有的已验数据标记回验证数据;
18、利用第一计算公式对第一计算值进行计算,输出初始准确率;
19、所述第一计算公式配置为:;其中zq1为初始准确率,nq为第一计算值,dy为第一数量。
20、进一步地,对初始语言模型进行部分参数冻结,使用训练数据进行初始语言模型的训练,输出微调语言模型包括:
21、获取初始语言模型的模型架构,将模型架构中距离输出层最近的transformer层编号为1;将模型架构中距离输出层第二近的transformer层编号为2,以此类推,直到将距离输出层最远的transformer层编号为n,其中n为transformer层的数量;
22、定义初始值为0的循环次数i以及调整次数m;
23、定义初始值为1的更新层数d;
24、执行微调步骤,所述微调步骤包括:
25、将d更新为d+i+m;
26、将编号为1至编号为n-d的transformer层以及嵌入层的模型参数进行参数冻结;
27、基于调整数据定义损失函数;
28、将训练数据输入初始语言模型进行训练,利用反向传播算法对模型参数进行更新,将模型参数进行更新后的初始语言模型标记为微调语言模型;
29、将i更新为i+1。
30、进一步地,利用微调语言模型对验证数据进行处理,输出调整输出信息;基于预测输出信息以及调整输出信息计算模型的准确率,输出调整准确率包括:
31、执行调整准确率计算步骤,所述调整准确率计算步骤包括:
32、设置初始值为0的第二计算值;
33、执行第二准确计算循环,所述第二准确计算循环包括:
34、将单个验证数据的数据集输入微调语言模型,获取微调语言模型输出的调整输出信息,将输入的验证数据标记为已验数据;
35、利用自然语言处理技术对调整输出信息以及预测输出信息进行分析,当调整输出信息与预测输出信息相似时,将第二计算值进行加一处理;当实际输出信息与预测输出信息不相似时,不做处理;
36、重复执行第二准确计算循环,当所有的验证数据均被标记为已验数据时,结束第二准确计算循环;将所有的已验数据标记回验证数据;
37、利用第二计算公式对第二计算值进行计算,输出调整准确率;
38、所述第二计算公式配置为:;其中zq2为调整准确率,mq为第二计算值。
39、进一步地,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理或输出调整完成信息包括:
40、执行准确率判断步骤,所述准确率判断步骤包括:
41、计算zq2与zq1的差值,标记为上升准确率;
42、将上升准确率与第一上升阈值以及第二上升阈值进行比较,当上升准确率大于或等于第二上升阈值时,输出调整完成信息;
43、当上升准确率小于第二上升阈值且大于或等于第一上升阈值时,输出第一再训练信息;
44、当上升准确率小于第一上升阈值时,输出第二再训练信息。
45、进一步地,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理还包括:
46、当接收到第一再训练信息时,将所有层的参数进行解冻,将调整语言模型标记回初始语言模型,再次执行微调步骤、准确率计算步骤以及准确率判断步骤。
47、进一步地,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理还包括:
48、当接收到第二再训练信息时,将m更新为m+k,其中k为常数;将所有层的参数进行解冻,将调整语言模型标记回初始语言模型,再次执行微调步骤、准确率计算步骤以及准确率判断步骤。
49、第二方面,本发明还提供一种大语言模型参数的微调训练系统,包括性能计算模块、模型训练模块以及性能判断模块;
50、所述性能计算模块用于设置第一数量的调整数据,对调整数据进行划分,输出训练数据以及验证数据;所述验证数据包括数据集以及与数据集关联的预测输出信息;
51、所述性能计算模块还用于利用初始语言模型对验证数据进行处理,输出实际输出信息;基于预测输出信息以及实际输出信息计算模型的准确率,输出初始准确率;
52、所述性能计算模块还用于利用微调语言模型对验证数据进行处理,输出调整输出信息;基于预测输出信息以及调整输出信息计算模型的准确率,输出调整准确率;
53、所述模型训练模块用于对初始语言模型进行部分参数冻结,使用训练数据进行初始语言模型的训练,输出微调语言模型;
54、所述性能判断模块用于对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理或输出调整完成信息。
55、第三方面,本技术提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,运行如上方法中的步骤。
56、本发明的有益效果:本发明通过先利用初始语言模型对验证数据进行处理,计算初始准确率;再计算调整语言模型的调整准确率,通过计算分析初始准确率以及调整准确率能够判断微调是否完成;这样的好处在于,通过计算分析微调前后的准确率,能够判断逐层解冻的效率,根据计算得到不同的上升准确率来执行不同后续的步骤,能够提高参数微调的智能性以及微调得到的模型的准确性;
57、本发明还通过基于模型架构进行参数冻结,并根据计算得到的上升准确率进行逐层解冻或多层解冻,并在解冻后,能够在原有模型上继续进行再训练处理;这样的好处在于,从初步的冻结层级开始,逐步解冻更多的层,并进行微调;通过逐步解冻和微调,可以观察模型在验证集上的性能变化,以确定最佳的冻结层级和微调策略。
58、本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术了解。本技术的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
1.一种大语言模型参数的微调训练方法,其特征在于,包括:
2.根据权利要求1所述的一种大语言模型参数的微调训练方法,其特征在于,设置第一数量的调整数据,对调整数据进行划分,输出训练数据以及验证数据包括:
3.根据权利要求2所述的一种大语言模型参数的微调训练方法,其特征在于,利用初始语言模型对验证数据进行处理,输出实际输出信息;基于预测输出信息以及实际输出信息计算模型的准确率,输出初始准确率包括:
4.根据权利要求3所述的一种大语言模型参数的微调训练方法,其特征在于,对初始语言模型进行部分参数冻结,使用训练数据进行初始语言模型的训练,输出微调语言模型包括:
5.根据权利要求4所述的一种大语言模型参数的微调训练方法,其特征在于,利用微调语言模型对验证数据进行处理,输出调整输出信息;基于预测输出信息以及调整输出信息计算模型的准确率,输出调整准确率包括:
6.根据权利要求5所述的一种大语言模型参数的微调训练方法,其特征在于,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理或输出调整完成信息包括:
7.根据权利要求6所述的一种大语言模型参数的微调训练方法,其特征在于,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理还包括:
8.根据权利要求7所述的一种大语言模型参数的微调训练方法,其特征在于,对调整准确率以及初始准确率进行分析,基于分析结果进行再训练处理还包括:
9.一种大语言模型参数的微调训练系统,基于权利要求1-8任意一项所述的一种大语言模型参数的微调训练方法实现,其特征在于,包括性能计算模块、模型训练模块以及性能判断模块;
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,运行如权利要求1-8任一项所述方法中的步骤。