本发明属于人工智能领域,具体涉及一种基于kan网络的大模型压缩方法及系统。
背景技术:
1、近年来,深度学习技术在自然语言处理、计算机视觉、语音识别等领域取得了显著进展。以transformer为代表的大型语言模型,如bert、gpt-3、llama等,在机器翻译、文本生成、问答系统等任务上展现出了卓越的性能。然而,这些高性能的语言模型往往包含数以亿计的参数和极为复杂的网络结构,这给模型的存储、训练和推理带来了巨大的资源开销。以gpt-3为例,庞大的计算资源消耗严重阻碍了大型语言模型的广泛应用,尤其是在移动设备、iot等资源受限场景下。
2、为了缓解大型语言模型的冗余问题,学术界和工业界提出了许多模型压缩方法。主要可分为四大类:
3、剪枝(pruning):通过移除网络中不重要的连接或神经元来减小模型体积。典型的剪枝算法有magnitude pruning、lottery ticket hypothesis等。
4、量化(quantization):将模型权重从浮点数转化为低比特的定点数,以压缩存储空间。
5、知识蒸馏(knowledge distillation):使用大模型的软目标来指导小模型的训练,从而获得一个性能接近大模型的小模型。
6、矩阵分解(matrix decomposition):将大的权重矩阵分解为多个小矩阵的乘积,以减少参数量。典型的方法有低秩分解、张量分解等。
7、虽然上述方法在一定程度上缓解了大型语言模型的冗余问题,但它们仍存在一些共性的局限:
8、压缩泛化性差:不同的压缩方法适用的模型结构不同,很难找到一种通用的压缩方案适配所有的模型。
9、压缩效果不可控:很多压缩方法需要大量调参和反复试错,才能在高压缩率和低性能损失间找到平衡,缺乏一种理论指导。
10、压缩过程不可解释:压缩后模型的内部结构和行为发生了变化,但这种变化往往是不透明的,难以解释压缩前后模型之间的关系。
11、压缩模型的泛化能力降低:模型压缩本质上是一种信息损失的过程,容易使压缩模型过度依赖训练数据,泛化能力下降。
12、造成这些局限的根本原因,是现有的语言模型大都基于多层感知机(multilayerperceptron, mlp)架构。mlp作为一种"黑盒"模型,其内部结构和参数高度复杂,缺乏明确的物理意义,因而很难进行细粒度的分析和调控。尽管最近出现了一些利用决策树、自动机等可解释模型来逼近mlp的方法,但它们本质上是在训练后对mlp进行事后近似,而非从根本上改变mlp的不可解释性。事实上,这类方法在压缩率和精度的权衡上并不比传统压缩方法更有优势。
技术实现思路
1、本发明针对现有技术下的问题,提供了一种基于kan网络的大模型压缩方法及系统,本技术采用的技术方案为:
2、第一方面,本发明提供了一种基于kan网络的大模型压缩方法,包括:
3、步骤一:将语言模型中的多层感知机结构替换为三层kan网络,第一层由输入到隐藏单元的边组成,第二层由隐藏单元之间的边组成,第三层由隐藏单元到输出的边组成,每条边与一个可学习的一元函数相关联;
4、步骤二:使用b样条函数参数化kan网络中的一元函数;
5、步骤三:在模型训练时,在损失函数中引入l1正则化项,对b样条函数的控制点坐标进行约束,诱导kan网络的稀疏性;
6、步骤四:训练后,去除kan网络中权重小于阈值的边,得到稀疏网络结构;
7、步骤五:对稀疏化后kan网络中剩余边的b样条激活函数进行分段函数近似,得到压缩后的语言模型;
8、步骤六:使用压缩后的语言模型在下游任务上进行微调和测试。
9、进一步的,在步骤一中,kan网络的第一层包含n×m条边,第二层包含m×n条边,第三层包含n×k条边,其中n为输入维度,m为隐藏层宽度,k为输出维度。
10、进一步的,在步骤二中,b样条函数选用三次样条,控制点数量为10。
11、进一步的,l1正则化项为各层kan网络中b样条函数控制点坐标绝对值之和,与原始损失函数相加得到总的训练目标。
12、进一步的,在步骤四中,权重阈值通过在验证集上的搜索确定。
13、进一步的,在步骤五中,分段函数包括低次多项式、指数函数、对数函数和三角函数等,分段数为b样条控制点数的1/4至1/2。
14、第二方面,本发明提供了一种基于kan网络的大模型压缩系统,包括:
15、模型结构替换模块,被配置为:将语言模型中的多层感知机结构替换为三层kan网络,第一层由输入到隐藏单元的边组成,第二层由隐藏单元之间的边组成,第三层由隐藏单元到输出的边组成,每条边与一个可学习的一元函数相关联;
16、函数参数化模块,被配置为:使用b样条函数参数化kan网络中的一元函数;
17、稀疏化训练模块,被配置为:在模型训练时,在损失函数中引入l1正则化项,对b样条函数的控制点坐标进行约束,诱导kan网络的稀疏性;
18、模型裁剪模块,被配置为:训练后,去除kan网络中权重小于阈值的边,得到稀疏网络结构;
19、函数近似模块,被配置为:对稀疏化后kan网络中剩余边的b样条激活函数进行分段函数近似,得到压缩后的语言模型;
20、微调测试模块,被配置为:使用压缩后的语言模型在下游任务上进行微调和测试。
21、第三方面,本发明提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行第一方面的基于kan网络的大模型压缩方法。
22、第四方面,本发明提供了一种电子设备,包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被处理器执行时,触发电子设备执行第一方面的基于kan网络的大模型压缩方法。
23、与现有技术相比本发明的优点和积极效果在于:
24、本发明采用语言模型中的多层感知机(mlp)结构替换为三层的kan网络,其中第一层由输入到隐藏单元的边组成,第二层由隐藏单元之间的边组成,第三层由隐藏单元到输出的边组成。每条边都与一个可学习的一元函数相关联,这些函数使用b样条参数化。在模型训练时,通过在损失函数中引入l1正则化项来诱导kan网络的稀疏性,使得许多边的权重趋于零。训练后,去除权重小于阈值的边,并将b样条激活函数近似为分段函数,得到一个紧凑、高效的压缩模型。本发明能在保持模型性能的同时,显著减少参数量和推理计算量,可广泛应用于各类大型语言模型的压缩,如bert、gpt、llama等。与传统的mlp压缩方法相比,本发明利用了kan网络天然的稀疏性和可解释性,提供了一种更加灵活、高效、可控的语言模型压缩新范式,在保持mlp强大学习能力的同时,又能提供更高的模块化、可解释和可控性,从而便于实施模型压缩,非常适合作为mlp的替代者应用于大型语言模型的压缩。
1.一种基于kan网络的大模型压缩方法,其特征在于,包括:
2.根据权利要求1所述的一种基于kan网络的大模型压缩方法,其特征在于,在步骤一中,kan网络的第一层包含n×m条边,第二层包含m×n条边,第三层包含n×k条边,其中n为输入维度,m为隐藏层宽度,k为输出维度。
3.根据权利要求1所述的一种基于kan网络的大模型压缩方法,其特征在于,在步骤二中,b样条函数选用三次样条,控制点数量为10。
4.根据权利要求1所述的一种基于kan网络的大模型压缩方法,其特征在于,l1正则化项为各层kan网络中b样条函数控制点坐标绝对值之和,与原始损失函数相加得到总的训练目标。
5.根据权利要求1所述的一种基于kan网络的大模型压缩方法,其特征在于,在步骤四中,权重阈值通过在验证集上的搜索确定。
6.根据权利要求1所述的一种基于kan网络的大模型压缩方法,其特征在于,在步骤五中,分段函数包括低次多项式、指数函数、对数函数和三角函数,分段数为b样条控制点数的1/4至1/2。
7.一种基于kan网络的大模型压缩系统,其特征在于,包括:
8.一种计算机可读存储介质,其特征在于,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行权利要求1-6中任意一项所述的基于kan网络的大模型压缩方法。
9.一种电子设备,其特征在于,包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被处理器执行时,触发电子设备执行权利要求1-6中任意一项所述的基于kan网络的大模型压缩方法。