CN116542315A - 一种基于张量分解的大规模神经网络参数压缩方法及系统 - Google Patents
一种基于张量分解的大规模神经网络参数压缩方法及系统 Download PDFInfo
- Publication number
- CN116542315A CN116542315A CN202310492396.5A CN202310492396A CN116542315A CN 116542315 A CN116542315 A CN 116542315A CN 202310492396 A CN202310492396 A CN 202310492396A CN 116542315 A CN116542315 A CN 116542315A
- Authority
- CN
- China
- Prior art keywords
- weight matrix
- column
- row
- compression
- rank
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000006835 compression Effects 0.000 title claims abstract description 111
- 238000007906 compression Methods 0.000 title claims abstract description 111
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 74
- 238000000354 decomposition reaction Methods 0.000 title claims abstract description 62
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims abstract description 235
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 230000006870 function Effects 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000012549 training Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 101100272279 Beauveria bassiana Beas gene Proteins 0.000 claims description 3
- 230000002068 genetic effect Effects 0.000 claims description 3
- 238000002922 simulated annealing Methods 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 abstract description 9
- 238000003062 neural network model Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 7
- 238000010845 search algorithm Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000007794 visualization technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种基于张量分解的大规模神经网络参数压缩方法及系统,涉及神经网络模型参数压缩的技术领域,包括获取已训练的大规模神经网络中的权重矩阵,设置权重矩阵的行秩和列秩;根据行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵,比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。本发明能够快速准确的分解和压缩参数,计算复杂度低,分解速度快,降低了压缩后的准确率丢失。
Description
技术领域
本发明涉及神经网络模型参数压缩的技术领域,更具体地,涉及一种基于张量分解的大规模神经网络参数压缩方法及系统。
背景技术
人工神经网络是当前广泛使用的一类机器学习模型,其大量的参数使神经网络成为具有强大拟合逼近能力的高度非线性模型。它能够优秀地解决许多科学研究与现实世界中的问题,例如计算机视觉、自然语言处理、求解高维微分方程等。近年来神经网络的趋势是向更深层、更多参数的方向发展。例如ResNet、Inception等常见的卷积神经网络有着千万级的参数量,而较新颖的用于自然语言处理的GPT-3(GenerativePre-trainedTransformer 3)模型,将参数量提高到了前所未有的千亿级。大量的参数不可避免地导致了巨额推理成本。具体来说,最常见的全连接层因其稠密连接,需要大量内存或显存才能运行,这就导致神经网络模型很难部署到性能受限的设备,因此神经网络的压缩方法受到广泛关注。
为了缓解上述问题,张量或矩阵分解方法被广泛用于压缩神经网络。对于一个训练好的大型神经网络,这类方法的常见流程是使用参数的低秩近似来压缩、替代原权重,之后再通过微调恢复准确率。神经网络中权重具有冗余性的假设已被实验广泛地验证,因此可以在损失少量或不损失准确率的情况下减少参数量,从而减少神经网络的推理成本。目前,成功应用于神经网络压缩的张量、矩阵分解方法主要包括SVD分解、CP分解、Tucker分解、TT分解等。此类方法往往可以通过超参数平衡压缩率与压缩后的准确率。然而,上述方法存在如下的局限性:现有方法使用的张量、矩阵分解方法分解速度缓慢,例如SVD分解的计算复杂度为O(min(m,n)mn),其中m,n分别为矩阵的行数和列数;CP-ALS分解的计算复杂度为O(2nrdn+nr3),其中n为张量的维数,r为设置的秩的大小,d为维度的平均长度。当前大型的神经网络中的权重矩阵不仅大且数量多,现有方法分解权重的计算复杂度过高,并且分解结果丢失了原张量、矩阵的基本特征(例如稀疏性),这使得分解后恢复准确率的难度更高,往往需要再训练多次才能达到与原来相当的准确率。同时还限制了可解释性分析和可视化方法在压缩后的神经网络中的应用。
现有技术公开了基于张量分解的压缩表示学习方法,该方法首先将通过一个微型神经网络预处理学习到的表示转化为一个待分解的张量,基于优化算法进行张量分解,求解其子空间并进行低秩重建,最后经过另一个微型神经网络加工张量分解抽取的低秩表示,融合到主干网络学习的表示中,起到正则的作用;并结合截断的单步梯度优化方法,用于改进具有多步沿时间轴迭代模型的优化算法。该方法虽然一定程度上降低了计算和参数量,但准确率丢失严重。
发明内容
本发明为克服上述现有技术对大规模神经网络进行参数压缩时,计算复杂度高,准确率丢失严重的缺陷,提供一种基于张量分解的大规模神经网络参数压缩方法及系统,能够快速准确的分解和压缩权重矩阵,计算复杂度低,分解速度快;保留了权重矩阵的稀疏性和数值特征,降低了压缩后的准确率丢失。
为解决上述技术问题,本发明的技术方案如下:
本发明提供了一种基于张量分解的大规模神经网络参数压缩方法,包括:
S1:获取已训练的大规模神经网络中的权重矩阵;
S2:分别在行维度和列维度,设置权重矩阵的行秩和列秩;
S3:根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
S4:基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
S5:设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
S6:比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
优选地,所述步骤S1中,已训练的大规模神经网络包含n个全连接层,第i个全连接层的前向传播表达式为:
fi(x)=Wix+bi
式中,fi(x)表示第i个全连接层的输出,Wi表示第i个全连接层的权重矩阵,x表示全连接层的输入向量,/>bi表示第i个全连接层的偏置权重,Mi表示权重矩阵的行数,Ni表示权重矩阵的列数。
优选地,所述步骤S3具体为:
根据所述行秩和列秩,利用现有的行列子集选择问题的算法在权重矩阵中选取一组行序号集合和列序号集合;所选取的行序号集合中的元素个数等于行秩,所选取的列序号集合中的元素个数等于列秩,即:
式中,Ii表示第i个全连接层的权重矩阵的行序号集合,p表示行序号,|·|表示集合中元素的个数,ki,1表示第i个全连接层的权重矩阵的行秩;Ji表示第i个全连接层的权重矩阵的列序号集合,ki,2表示第i个全连接层的权重矩阵的列秩,q表示列序号,表示整数。
所选取的行秩和列秩的数值越小,最终压缩后的参数占用的空间就越小,运行速度越快。
优选地,所述现有的行列子集选择问题的算法包括随机选择法、遍历搜索算法、局部搜索算法、遗传算法、模拟退火算法和启发式搜索算法。
优选地,所述步骤S4中,基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵具体方法为:
基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解:
Ci=Wi[:,Ji]
Ri=Wi[Ii,:]
式中,Wi[·,·]表示通过选取元素序号构成的子矩阵,:表示该维度上的所有元素序号,Wi[:,Ji]表示根据权重矩阵Wi的所有行和列序号集合Ji所对应的列构成的列子集矩阵,记为Wi[Ii,:]表示根据权重矩阵Wi的所有列和行序号集合Ii所对应的行构成的行子集矩阵,记为/>取列子集矩阵Ci和行子集矩阵Ri的交集,记为矩阵矩阵/>表示矩阵Ui的Moore-Penrose逆,则/>
将作为压缩权重矩阵,替换权重矩阵Wi;
利用压缩权重矩阵替换权重矩阵后的全连接层的前向传播表达式为:
式中,表示第i个全连接层替换权重矩阵后的输出。
利用压缩权重矩阵替换权重矩阵后的全连接层的前向传播表达式在计算时,需要先计算Rix,再计算最后计算/>
本发明的CUR分解过程的计算复杂度为O(S(r)+r3),其中r为设置的秩的大小,S(r)为选择行序号集合和列序号集合方法的复杂度。
优选地,所述步骤S5的具体方法为:
对于替换权重矩阵后的全连接层的前向传播表达式,设定损失函数L,则在第i个全连接层替换权重矩阵后的输出处的梯度为按照以下公式进行对压缩权重矩阵进行调整:
式中,(*)T表示求取转置矩阵操作。
优选地,所述步骤S6的具体方法为:
比较行秩和列秩的大小,若ki,1≤ki,2,则计算第一中间矩阵S′i:
将压缩权重矩阵简化为S′iRi,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
若ki,1>ki,2,则计算第二中间矩阵S″i:
将压缩权重矩阵简化为CiS″i,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
式中,表示利用简化权重矩阵替换压缩权重矩阵后,第i个全连接层的输出;
对大规模神经网络的所有全连接层均利用相应的简化权重矩阵替换权重矩阵,实现对大规模神经网络参数的压缩。
优选地,在计算资源充足的服务器中,利用训练数据对现有的大规模神经网络进行训练,获得所述已训练的大规模神经网络。
本发明还提供了一种基于张量分解的大规模神经网络参数压缩系统,用于实现上述的基于张量分解的大规模神经网络参数压缩方法,包括:
矩阵获取模块,用于获取已训练的大规模神经网络中的权重矩阵;
行列秩设置模块,用于分别在行维度和列维度,设置权重矩阵的行秩和列秩;
行列序号集合选取模块,用于根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
CUR分解重建模块,用于基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
矩阵调整模块,用于设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
矩阵简化模块,用于比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
本发明还提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述的基于张量分解的大规模神经网络参数压缩方法的步骤。
与现有技术相比,本发明技术方案的有益效果是:
本发明通过选取原权重矩阵中的行序号集合和列序号集合进行CUR分解重建,获得压缩权重矩阵;压缩权重矩阵中包含了权重矩阵的行子集和列子集,保留了权重矩阵的稀疏性和数值特征,压缩后损失的准确率更少,之后进行少数轮次的调整即可恢复准确率;保留的信息便于后续的可解释性和可视化分析;调整后对压缩权重矩阵进一步简化,再次减少了参数量和推理计算量。
附图说明
图1为实施例1所述的基于张量分解的大规模神经网络参数压缩方法的流程图。图2为实施例3所述的基于张量分解的大规模神经网络参数压缩系统的结构示意图。
图3为实施例4所述的计算机设备的结构示意图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;
为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;
对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
下面结合附图和实施例对本发明的技术方案做进一步的说明。
实施例1
本实施例提供了一种基于张量分解的大规模神经网络参数压缩方法,如图1所示,包括:
S1:获取已训练的大规模神经网络中的权重矩阵;
S2:分别在行维度和列维度,设置权重矩阵的行秩和列秩;
S3:根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
S4:基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
S5:设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
S6:比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
在具体实施过程中,本实施例通过选取原权重矩阵中的行序号集合和列序号集合进行CUR分解重建,获得压缩权重矩阵;压缩权重矩阵中包含了权重矩阵的行子集和列子集,保留了权重矩阵的稀疏性和数值特征,压缩后损失的准确率更少,之后进行少数轮次的调整即可恢复准确率;保留的信息便于后续的可解释性和可视化分析;调整后对压缩权重矩阵进一步简化,再次减少了参数量和推理计算量。
实施例2
本实施例提供了一种基于张量分解的大规模神经网络参数压缩方法,包括:
S1:获取已训练的大规模神经网络中的权重矩阵;
在计算资源充足的服务器中,利用训练数据对现有的大规模神经网络进行训练,获得所述已训练的大规模神经网络;已训练的大规模神经网络包含n个全连接层,第i个全连接层的前向传播表达式为:
fi(x)=Wix+bi
式中,fi(x)表示第i个全连接层的输出,Wi表示第i个全连接层的权重矩阵,x表示全连接层的输入向量,/>bi表示第i个全连接层的偏置权重,Mi表示权重矩阵的行数,Ni表示权重矩阵的列数;
S2:分别在行维度和列维度,设置权重矩阵的行秩和列秩;
所选取的行秩和列秩的数值越小,最终压缩后的参数占用的空间就越小,运行速度越快,但性能损失也越大;
S3:根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
根据所述行秩和列秩,利用现有的行列子集选择问题的算法在权重矩阵中选取一组行序号集合和列序号集合;所选取的行序号集合中的元素个数等于行秩,所选取的列序号集合中的元素个数等于列秩,即:
式中,Ii表示第i个全连接层的权重矩阵的行序号集合,p表示行序号,|·|表示集合中元素的个数,ki,1表示第i个全连接层的权重矩阵的行秩;Ji表示第i个全连接层的权重矩阵的列序号集合,ki,2表示第i个全连接层的权重矩阵的列秩,q表示列序号,表示整数;
所述现有的行列子集选择问题的算法包括随机选择法、遍历搜索算法、局部搜索算法、遗传算法、模拟退火算法和启发式搜索算法。
S4:基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;具体的:
基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解:
Ci=Wi[:,Ji]
Ri=Wi[Ii,:]
式中,Wi[·,·]表示通过选取元素序号构成的子矩阵,:表示该维度上的所有元素序号,Wi[:,Ji]表示根据权重矩阵Wi的所有行和列序号集合Ji所对应的列构成的列子集矩阵,记为Wi[Ii,:]表示根据权重矩阵Wi的所有列和行序号集合Ii所对应的行构成的行子集矩阵,记为/>取列子集矩阵Ci和行子集矩阵Ri的交集,记为矩阵矩阵/>表示矩阵Ui的Moore-Penrose逆,则/>
将作为压缩权重矩阵,替换权重矩阵Wi;
利用压缩权重矩阵替换权重矩阵后的全连接层的前向传播表达式为:
式中,表示第i个全连接层替换权重矩阵后的输出。
S5:设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;具体的:
对于替换权重矩阵后的全连接层的前向传播表达式,设定损失函数L,则在第i个全连接层替换权重矩阵后的输出处的梯度为按照以下公式进行对压缩权重矩阵进行调整:
式中,(*)T表示求取转置矩阵操作;
按照上述调整的重建权重矩阵,可将神经网络其他部分的权重固定,只微调分解了的全连接层及其后的层,且只需少数轮次即可。
利用所述重建权重矩阵替换权重矩阵后的全连接层的前向传播表达式在计算时,需要先计算Rix,再计算最后计算/>
S6:比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩;具体的:
比较行秩和列秩的大小,若ki,1≤ki,2,则计算第一中间矩阵S′i:
将压缩权重矩阵简化为S′iRi,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
若ki,1>ki,2,则计算第二中间矩阵S″i:
将压缩权重矩阵简化为CiS″i,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
式中,表示利用简化权重矩阵替换压缩权重矩阵后,第i个全连接层的输出;
对大规模神经网络的所有全连接层均利用相应的简化权重矩阵替换权重矩阵,实现对大规模神经网络参数的压缩。
在本实施例中,以现有的局部搜索算法选取行序号集合和列序号集合,具体的:
S3.1:设定迭代次数t和邻居采样数m;
S3.2:在权重矩阵中随机选取初始行序号集合I′i和初始列序号集合J′i;
S3.3:随机选取初始行序号集合I′i中的一个序号,将其替换为一个未选中的序号,获得一个行邻居解;
S3.4:重复m次步骤S3.3,获得m个行邻居解
S3.5:随机选取初始列序号集合J′i中的一个序号,将其替换为一个未选中的序号,获得一个列邻居解;
S3.6:重复m次步骤S3.5,获得m个列邻居解
S3.7:遍历行邻居解和列邻居解的笛卡尔积使用其中任意一组行列邻居解,对权重矩阵进行CUR分解,并计算重建误差/>
S3.8:选取重建误差最小的一组邻居解,替换初始行列序号集合;
S3.9:重复步骤S3.2-S3.8,直到达到迭代次数t,保存重建误差最小的行列序号集合。
行列序号集合的选取会直接影响到压缩后准确率的下降,本实施例的基于局部搜索的行列子集选取方法,通过控制其超参数在不同场景下灵活地权衡分解耗时与分解效果,易于使用且效果良好。
在具体实施过程中,利用本实施例的方法对神经网络VGG11进行参数压缩,比较压缩前后的复杂度和参数量,以说明本实施例的方法的有益效果。VGG11是一经典的卷积神经网络,其中包含两个较大的全连接层,它们的权重矩阵的尺寸分别为4096×25088与4096×4096。这两个全连接层的参数量占到整个网络的约92.8%。以FashionMNIST数据集作为算例,VGG11预训练后包含128812810个参数,上述两个全连接层占119545856个,测试准确率为87.79%。
如下表所示,为神经网络VGG11中的全连接层经本实施例的方法CUR分解加速前后的理论空间复杂度与前向传播计算复杂度对比结果。
其中,权重矩阵的大小为M×N,k1,k2分别为行秩和列秩。
如下表所示,为使用不同取值的行秩和列秩下,神经网络VGG11参数压缩前后的对比结果:
从表中可以看出,当第一个全连接层的行秩和列秩使用(k1,1,k1,2)=(8,49)、第二个全连接层的行秩和列秩使用(k2,1,k2,2)=(32,32)时,可将神经网络VGG11的总参数量降到原来的约7.7%,将全连接层参数量降到原来的约0.6%,将推理速度提高至原来的约10.3倍,权重文件大小压缩至原来的约7.6%,相比压缩前仅损失1.63%的准确率。
实施例3
本实施例提供了一种基于张量分解的大规模神经网络参数压缩系统,如图2所示,包括:
矩阵获取模块,用于获取已训练的大规模神经网络中的权重矩阵;
行列秩设置模块,用于分别在行维度和列维度,设置权重矩阵的行秩和列秩;
行列序号集合选取模块,用于根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
CUR分解重建模块,用于基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
矩阵调整模块,用于设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
矩阵简化模块,用于比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
实施例4
如图3所示,本实施例提供了一种计算机设备,至少一个处理器01,至少一个通信接口02,至少一个存储器03和至少一个通信总线04。
在本申请实施例中,处理器01、通信接口02、存储器03、通信总线04的数量为至少一个,且处理器01、通信接口02、存储器03通过通信总线04完成相互间的通信。
处理器01可以是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等。
存储器03可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory)等,例如至少一个磁盘存储器。
其中,存储器存储有程序,处理器可调用存储器存储的程序,程序用于执行实施例1或2所述的一种基于张量分解的大规模神经网络参数压缩方法的步骤。相同或相似的标号对应相同或相似的部件;
附图中描述位置关系的用语仅用于示例性说明,不能理解为对本专利的限制;
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (10)
1.一种基于张量分解的大规模神经网络参数压缩方法,其特征在于,包括:
S1:获取已训练的大规模神经网络中的权重矩阵;
S2:分别在行维度和列维度,设置权重矩阵的行秩和列秩;
S3:根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
S4:基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
S5:设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
S6:比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
2.根据权利要求1所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述步骤S1中,已训练的大规模神经网络包含n个全连接层,第i个全连接层的前向传播表达式为:
fi(x)=Wix+bi
式中,fi(x)表示第i个全连接层的输出,Wi表示第i个全连接层的权重矩阵,x表示全连接层的输入向量,/>bi表示第i个全连接层的偏置权重,Mi表示权重矩阵的行数,Ni表示权重矩阵的列数。
3.根据权利要求2所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述步骤S3具体为:
根据所述行秩和列秩,利用现有的行列子集选择问题的算法在权重矩阵中选取一组行序号集合和列序号集合;所选取的行序号集合中的元素个数等于行秩,所选取的列序号集合中的元素个数等于列秩,即:
式中,Ii表示第i个全连接层的权重矩阵的行序号集合,p表示行序号,|·|表示集合中元素的个数,ki,1表示第i个全连接层的权重矩阵的行秩;Ji表示第i个全连接层的权重矩阵的列序号集合,ki,2表示第i个全连接层的权重矩阵的列秩,q表示列序号,表示整数。
4.根据权利要求3所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述现有的行列子集选择问题的算法包括随机选择法、遍历搜索算法、局部搜索算法、遗传算法、模拟退火算法和启发式搜索算法。
5.根据权利要求3或4所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述步骤S4中,基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵具体方法为:
基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解:
Ci=i[:,i]
Ri=i[i,:]
式中,Wi[·,·]表示通过选取元素序号构成的子矩阵,:表示该维度上的所有元素序号,Wi[:,i]表示根据权重矩阵Wi的所有行和列序号集合Ji所对应的列构成的列子集矩阵,记为Wi[i,:]表示根据权重矩阵Wi的所有列和行序号集合Ii所对应的行构成的行子集矩阵,记为/>取列子集矩阵Ci和行子集矩阵Ri的交集,记为矩阵矩阵/>表示矩阵Ui的Moore-Penrose逆,则/>
将作为压缩权重矩阵,替换权重矩阵Wi;
利用压缩权重矩阵替换权重矩阵后的全连接层的前向传播表达式为:
式中,表示第i个全连接层替换权重矩阵后的输出。
6.根据权利要求5所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述步骤S5的具体方法为:
对于替换权重矩阵后的全连接层的前向传播表达式,设定损失函数L,则在第i个全连接层替换权重矩阵后的输出处的梯度为按照以下公式进行对压缩权重矩阵进行调整:
式中,(*)T表示求取转置矩阵操作。
7.根据权利要求6所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,所述步骤S6的具体方法为:
比较行秩和列秩的大小,若ki,1≤ki,2,则计算第一中间矩阵S′i:
将压缩权重矩阵简化为S′iRi,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
若ki,1>ki,2,则计算第二中间矩阵S″i:
将压缩权重矩阵简化为CiS″i,利用简化权重矩阵替换压缩权重矩阵后的全连接层的前向传播表达式为:
式中,表示利用简化权重矩阵替换压缩权重矩阵后,第i个全连接层的输出;
对大规模神经网络的所有全连接层均利用相应的简化权重矩阵替换权重矩阵,实现对大规模神经网络参数的压缩。
8.根据权利要求1所述的基于张量分解的大规模神经网络参数压缩方法,其特征在于,在计算资源充足的服务器中,利用训练数据对现有的大规模神经网络进行训练,获得所述已训练的大规模神经网络。
9.一种基于张量分解的大规模神经网络参数压缩系统,用于实现权利要求1-8任一项所述的方法,其特征在于,包括:
矩阵获取模块,用于获取已训练的大规模神经网络中的权重矩阵;
行列秩设置模块,用于分别在行维度和列维度,设置权重矩阵的行秩和列秩;
行列序号集合选取模块,用于根据所述行秩和列秩,在权重矩阵中选取一组行序号集合和列序号集合;
CUR分解重建模块,用于基于选取的行序号集合和列序号集合对权重矩阵进行CUR分解,获得压缩权重矩阵,并利用压缩权重矩阵替换权重矩阵;
矩阵调整模块,用于设定损失函数,对压缩权重矩阵调整,获得调整后的压缩权重矩阵;
矩阵简化模块,用于比较行秩和列秩的大小,根据比较结果对调整后的压缩权重矩阵进行简化,实现对大规模神经网络参数的压缩。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-8中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310492396.5A CN116542315A (zh) | 2023-04-28 | 2023-04-28 | 一种基于张量分解的大规模神经网络参数压缩方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310492396.5A CN116542315A (zh) | 2023-04-28 | 2023-04-28 | 一种基于张量分解的大规模神经网络参数压缩方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116542315A true CN116542315A (zh) | 2023-08-04 |
Family
ID=87455453
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310492396.5A Pending CN116542315A (zh) | 2023-04-28 | 2023-04-28 | 一种基于张量分解的大规模神经网络参数压缩方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116542315A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117350354A (zh) * | 2023-09-21 | 2024-01-05 | 摩尔线程智能科技(北京)有限责任公司 | 大模型的训练方法、装置、电子设备和存储介质 |
-
2023
- 2023-04-28 CN CN202310492396.5A patent/CN116542315A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117350354A (zh) * | 2023-09-21 | 2024-01-05 | 摩尔线程智能科技(北京)有限责任公司 | 大模型的训练方法、装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110852439B (zh) | 数据处理方法及装置、存储介质 | |
CN111275007B (zh) | 基于多尺度信息融合的轴承故障诊断方法及系统 | |
CN113435590B (zh) | 面向边缘计算的重参数神经网络架构搜索方法 | |
CN109977250B (zh) | 融合语义信息和多级相似性的深度哈希图像检索方法 | |
CN108319988B (zh) | 一种用于手写汉字识别的深度神经网络的加速方法 | |
US20220351043A1 (en) | Adaptive high-precision compression method and system based on convolutional neural network model | |
CN113157919B (zh) | 语句文本方面级情感分类方法及系统 | |
CN116542315A (zh) | 一种基于张量分解的大规模神经网络参数压缩方法及系统 | |
CN113298235A (zh) | 一种多分支深度自注意力变换网络的神经网络架构及实现方法 | |
CN111626296B (zh) | 基于深度神经网络的医学图像分割系统及方法、终端 | |
Du et al. | Efficient network construction through structural plasticity | |
CN109145107A (zh) | 基于卷积神经网络的主题提取方法、装置、介质和设备 | |
Gou et al. | A Novel Spiking Neural P System for Image Recognition. | |
Qi et al. | Learning low resource consumption cnn through pruning and quantization | |
Castells et al. | Automatic neural network pruning that efficiently preserves the model accuracy | |
CN116342420A (zh) | 一种对混合降质图像进行增强的方法与系统 | |
Wang et al. | Proportional hybrid mechanism for population based feature selection algorithm | |
CN113205182B (zh) | 一种基于稀疏剪枝方法的实时电力负荷预测系统 | |
CN111985641B (zh) | 一种基于低秩重构的神经网络训练方法 | |
Guo et al. | Dynamic neural network structure: A review for its theories and applications | |
Li et al. | Efficient Deep Spiking Multilayer Perceptrons With Multiplication-Free Inference | |
Zhao et al. | A novel image classification model jointing attention and ResNet for scratch | |
CN114492795A (zh) | 深度卷积神经网络压缩方法、计算机装置及存储介质 | |
CN114764618B (zh) | 一种针对线性系统的量子预处理方法及装置 | |
Situ et al. | Machine learning distributions of quantum ansatz with hierarchical structure |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |