本申请涉及人工智能,尤其涉及一种模型微调训练方法、装置、设备及介质。
背景技术:
1、随着人工智能技术的发展,越来越多的模型应用到各行各业,尤其是近年来以聊天生成式预训练转换器(chat generative pre-trained transformer,chatgpt)模型为代表的生成式自然语言模型,更是引发了人们广泛的关注。chatgpt模型等技术背后的核心原理是大规模语言模型,大规模语言模型通常以转换器模型(transformer)为基本结构,涉及到了上百亿到上千亿规模的参数,而训练如此大规模参数的模型,需要极大的计算资源,如1000余颗显卡,训练时间高到1-2个月。
2、为了降低模型开发成本,本领域的技术人员探索各种各样高效的模型参数微调方案,即在已有的大模型基础上,通过调节模型的部分参数,对模型进行微调训练,使大模型适用到特定的下游任务。
3、相关技术中,通常使用重参数化技术对已训练完成的模型的部分参数进行微调训练。在大规模语言模型中,通常需要调整的参数为矩阵,重参数化技术即对待调整矩阵增加增量矩阵,在对模型进行微调训练时,不对该待调整矩阵进行调整,而是只调整所增加的增量矩阵,进而达到高效微调的目的。
4、相关技术中,通常基于低秩适应(low-rank adaptation,lora)确定为待调整矩阵所增加的增量矩阵,但是,在实践中发现,由于基于lora确定的增量矩阵与待调整矩阵之间完全独立,即在确定增量矩阵时没有考虑待调整矩阵所蕴含的知识,导致微调训练时间长、效果差。
5、因此,如何提高模型的微调训练的效率和效果成为亟待解决的问题。
技术实现思路
1、本申请实施例提供了一种模型微调训练方法、装置、设备及介质,用以解决现有技术中模型的微调训练时间长、效果差的问题。
2、本申请提供了一种模型微调训练方法,所述方法包括:
3、获取微调模型中的待调整矩阵;
4、基于奇异值分解算法对所述待调整矩阵进行分解,得到多个分解矩阵;基于所述多个分解矩阵,确定目标数量;
5、基于所述目标数量和所述多个分解矩阵构建增量矩阵;将所述增量矩阵添加到所述微调模型中得到目标模型,对所述目标模型进行微调训练。
6、进一步地,所述基于所述多个分解矩阵,确定目标数量包括:
7、基于所述多个分解矩阵,确定奇异值,将奇异值按照大小顺序排序,确定最大奇异值与其相邻的其他奇异值的第一和值大于预设阈值时的最小和值,包含的目标奇异值的目标数量。
8、进一步地,所述确定最大奇异值与其相邻的其他奇异值的第一和值大于预设阈值时的最小和值,包含的目标奇异值的目标数量包括:
9、确定所述奇异值矩阵中包括的奇异值的目标和值;
10、在排序后的奇异值中,逐一确定最大奇异值与其相邻的至少一个其他奇异值的第二和值;并依次判断所述第二和值与所述目标和值的比值是否大于所述预设阈值;
11、当识别到与所述目标和值的比值大于所述预设阈值的第二和值时,将该第二和值作为目标和值,确定得到所述目标和值的奇异值,将确定的奇异值作为目标奇异值,将所述目标奇异值的数量确定为目标数量。
12、进一步地,所述预设阈值为大于0小于1的任意数值。
13、进一步地,所述基于所述目标数量和所述多个分解矩阵构建增量矩阵包括:
14、使用所述目标数量的奇异值构造对角矩阵;
15、在所述多个分解矩阵中的第一目标矩阵中,选取所述目标数量的行和/或列数据,得到第二目标矩阵;
16、使用所述对角矩阵和所述第二目标矩阵构建增量矩阵。
17、进一步地,所述在所述多个分解矩阵中的第一目标矩阵中,选取所述目标数量的行和/或列数据,得到第二目标矩阵包括:
18、获取所述多个分解矩阵中的第一目标矩阵,其中,所述第一目标矩阵包括左奇异值向量矩阵和右奇异值向量矩阵;
19、在所述左奇异值向量矩阵中选取前所述目标数量的列数据,作为第一矩阵;并在所述右奇异值向量矩阵中选取前所述目标数量的行数据,作为第二矩阵;将所述第一矩阵和所述第二矩阵确定为所述第二目标矩阵。
20、进一步地,所述使用所述对角矩阵和所述第二目标矩阵构建增量矩阵包括:
21、将所述第一矩阵、所述对角矩阵和所述第二矩阵相乘得到的矩阵确定为所述增量矩阵。
22、本申请实施例还提供了一种模型微调训练装置,所述装置包括:
23、获取模块,用于获取微调模型中的待调整矩阵;
24、分解确定模块,用于基于奇异值分解算法对所述待调整矩阵进行分解,得到多个分解矩阵;基于所述多个分解矩阵,确定目标数量;
25、构造模块,用于基于所述目标数量和所述多个分解矩阵构建增量矩阵;
26、训练模块,用于将所述增量矩阵添加到所述微调模型中得到目标模型,对所述目标模型进行微调训练。
27、本申请实施例还提供了一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述任一项所述模型微调训练方法的步骤。
28、本申请实施例还提供了一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述模型微调训练方法的步骤。
29、由于在本申请实施例中,在对模型进行微调训练时,基于奇异值分解算法对微调模型中的待调整矩阵进行分解,得到了多个分解矩阵,基于该多个分解矩阵确定目标数量,并基于所确定的目标数量和该多个分解矩阵构建增量矩阵,该增量矩阵是基于待调整矩阵中所蕴含的知识构建的,而不是与待调整矩阵完全独立的,将该增量矩阵添加到微调模型中得到目标模型,对目标模型进行微调训练,避免了模型的微调训练时间长、效果差的问题。
1.一种模型微调训练方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述多个分解矩阵,确定目标数量包括:
3.根据权利要求2所述的方法,其特征在于,所述确定最大奇异值与其相邻的其他奇异值的第一和值大于预设阈值时的最小和值,包含的目标奇异值的目标数量包括:
4.根据权利要求3所述的方法,其特征在于,所述预设阈值为大于0小于1的任意数值。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标数量和所述多个分解矩阵构建增量矩阵包括:
6.根据权利要求5所述的方法,其特征在于,所述在所述多个分解矩阵中的第一目标矩阵中,选取所述目标数量的行和/或列数据,得到第二目标矩阵包括:
7.根据权利要求6所述的方法,其特征在于,所述使用所述对角矩阵和所述第二目标矩阵构建增量矩阵包括:
8.一种模型微调训练装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现如上述权利要求1-7任一项所述的模型微调训练方法的步骤。
10.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述计算机程序被处理器执行时实现如上述权利要求1-7任一项所述的模型微调训练方法的步骤。