CN107832837A - 一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 - Google Patents
一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 Download PDFInfo
- Publication number
- CN107832837A CN107832837A CN201711215956.3A CN201711215956A CN107832837A CN 107832837 A CN107832837 A CN 107832837A CN 201711215956 A CN201711215956 A CN 201711215956A CN 107832837 A CN107832837 A CN 107832837A
- Authority
- CN
- China
- Prior art keywords
- matrix
- convolutional neural
- neural network
- compression
- result
- 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.)
- Granted
Links
- 238000007906 compression Methods 0.000 title claims abstract description 87
- 230000006835 compression Effects 0.000 title claims abstract description 82
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 82
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000006837 decompression Effects 0.000 title claims abstract description 9
- 238000013138 pruning Methods 0.000 claims abstract description 33
- 238000012549 training Methods 0.000 claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 3
- 239000011159 matrix material Substances 0.000 claims description 97
- 230000009467 reduction Effects 0.000 claims description 29
- 238000007781 pre-processing Methods 0.000 claims description 20
- 238000005070 sampling Methods 0.000 claims description 14
- 230000009466 transformation Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 10
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 6
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 238000003062 neural network model Methods 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 238000003672 processing method Methods 0.000 claims 1
- 238000002203 pretreatment Methods 0.000 abstract description 3
- 238000013139 quantization Methods 0.000 abstract description 3
- 230000008569 process Effects 0.000 description 15
- 238000005259 measurement Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 102000016904 Armadillo Domain Proteins Human genes 0.000 description 3
- 108010014223 Armadillo Domain Proteins Proteins 0.000 description 3
- 241000289632 Dasypodidae Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 244000141353 Prunus domestica Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000002059 diagnostic imaging Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 229910052731 fluorine Inorganic materials 0.000 description 1
- 125000001153 fluoro group Chemical group F* 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012800 visualization 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开了一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法,其中压缩方法包括:预处理步骤、将卷积神经网络中的每一层的权值预处理为一系列矩阵;压缩步骤、将预处理步骤得到的预处理结果进行压缩处理得出压缩后的权值;训练步骤、对压缩后的权值进行训练;编码步骤、对训练步骤训练后的已压缩权值进行编码;模型生成步骤、根据经编码步骤得到的编码结果生成压缩后的卷积神经网络模型文件。本发明基于压缩感知原理的卷积神经网络压缩方法,相比其他方法,会比现在较为流行的直接剪枝量化方法有更高的压缩率,而且可以通过在频域中保留低频信息来防止过多的信息损失。
Description
技术领域
本发明涉及一种卷积神经网络模型压缩的方法,属于深度学习技术领域。
背景技术
由于2012年Alexnet卷积神经网络获得ImageNet图像分类比赛的第一名,并且其准确率远超第二名,深度学习技术便迎来了热潮。至今5年来,深度学习技术可以说是已经进入各行各业,包括自动驾驶、推荐系统、医学成像、游戏AI等等技术领域都使用了深度学习技术,并且获得了较之前更好的性能。但是,由于深度神经网络的计算需要用到高性能GPU和大量内存,而现阶段的嵌入式设备又无法提供如此高性能的计算能力和内存容量,所以神经网络的压缩技术需求很迫切。
现有的卷积神经网络压缩技术,例如发表于ICLR2016的深度压缩(DeepCompression) 算法,它在剪枝过程中未考虑到将权值转换到稀疏域上再去剪枝,所以在剪枝以后往往会损失很多信息。而如果将其转换至稀疏域,比如将其转换至频率域,那么由于高频信息远没有低频信息有用,对高频信息做剪枝要比对低频信息做剪枝产生的信息丢失要小得多。
发明内容
本发明所要解决的技术问题是针对上述现有技术存在的不足,而提供压缩率高且对对卷积神经网络的精度影响小的基于压缩感知原理的卷积神经网络压缩方法。
为解决上述技术问题,本发明采用的技术方案是:
一种基于压缩感知原理的卷积神经网络压缩方法,其特征在于,包括:
预处理步骤、将卷积神经网络中的每一层的权值预处理为一系列矩阵(排列成一系列 K×K的矩阵);
压缩步骤、将预处理步骤得到的预处理结果送入压缩算法模块中,压缩算法模块得出压缩后的权值;
训练步骤、将压缩后的权值送入训练模块进行训练,以补偿压缩后产生的模型精度损失。
编码步骤、将训练步骤训练后的已压缩权值送入编码模块进行编码;
模型生成步骤、将经编码步骤得到的编码结果送入文件生成模块产生压缩后的卷积神经网络模型文件。
所述预处理步骤中预处理方法为:将神经网络每一层的权值按其在卷积核内的行优先顺序排列成一系列K×K的矩阵,若数据量不满K×K则用每一层权值的均值来补齐,K为大于3的正整数,若K取太小可能会导致比较多的缓存未命中(cache-miss)现象,取太大的话会使得后面的压缩步骤的计算量过大,实验发现K取15比较合适。
所述压缩步骤的压缩方法为:
使用DCT变换将输入的K×K的矩阵N从空间域转换到频率域得到输出矩阵M;
对使用DCT变换得到的输出矩阵M进行剪枝处理得到矩阵P;
将剪枝得到的矩阵P使用高斯随机矩阵进行降维采样得到压缩后的矩阵:
C=M·Φ-1 (1)
其中,矩阵C为得到的压缩矩阵,矩阵M为输入矩阵,矩阵Φ为高斯随机矩阵。
使用DCT变换得到的输出矩阵M为:
M=ANAT (2)
其中,A为DCT变换矩阵,i,j=0,1,2,…,K,当i= 0时,当i≠0时,
所述剪枝处理的方法为:对输出矩阵M中每个值,取绝对值并作为临时变量t,若t>ρ,则略过;若t≤ρ,则将输出矩阵M中的对应的值设为0,其中,ρ是一个设定的正实数。
所述训练模块进行压缩后的模型精度补偿方法为:
本压缩方法在压缩模块后对模型进行训练,以补偿压缩后的精度损失,完整的一轮训练迭代步骤如下:
i.使用训练集对卷积神经网络做一次常规的前向传播,前向传播时,要使用未压缩的卷积神经网络权值;
ii.使用前向传播的结果对比训练集的标注算出卷积神经网络的误差值,使用该误差值做一次反向传播,然后反向传播得到梯度值,使用这个梯度值来更新这些权值。设误差值为δ,则卷积神经网络的每个权值对应的梯度为权值矩阵N的更新迭代式就是:其中,μ是学习率。对应的压缩后的结果的梯度便是:
其中,得到的是使用高斯随机矩阵降维采样后的结果对应的梯度,fmeasure是降维采样函数,Maski,j是遮罩函数,当时,当时, fdct是DCT变换函数,C是降维采样后得到的压缩矩阵,ρ是剪枝时设定的正实数。对应的压缩后的结果的更新迭代式为:其中,μ是学习率。
所述编码模块进行编码的方法为:对训练模块得到的已压缩卷积神经网络权值使用 huffman编码方法进行编码。
所述文件生成步骤生成卷积神经网络模型文件的方法是:对编码模块得到的编码结果生成二进制序列并且存入二进制文件中,该二进制文件即为卷积神经网络模型文件。
一种基于压缩感知原理的卷积神经网络解压缩方法,其特征在于,包括:
模型文件读取步骤、读取二进制卷积神经网络模型文件;
解码步骤、使用霍夫曼编码,解码读取步骤中读取的二进制卷积神经网络模型文件,得到权值;
剪枝还原步骤、还原出频域上的剪枝过的结果,方法是:
xt+1=ηt(Q*zt+xt) (3)
其中,zt=y-Qxt,y为压缩算法模块的步骤iii得到的降维采样后的矩阵向量化的结果,Q为观测矩阵,在这里就是压缩算法模块的步骤iii的高斯随机矩阵,ηt为常量阈值矩阵,设初始值x0=0,然后开始迭代。最终,经过t+1轮的迭代得到的xt+1便是还原出来的结果;
空域还原步骤、将剪枝还原步骤得到的结果使用DCT变换矩阵的逆矩阵求出空域上的结果N:
N=A-1M(AT)-1 (4)
其中,M为剪枝还原步骤得到的结果,A为DCT变换矩阵。本发明通过基于压缩感知原理来对卷积神经网络的模型进行压缩,其中,压缩过程通过预处理模块对卷积神经网络的权值进行重组,通过压缩算法模块对重组的结果进行压缩,通过训练模块对压缩后的模型进行精度补偿,通过编码模块对已压缩的模型进行编码,通过文件生成模块来生成模型的文件;解压缩过程则通过二进制模型文件读取与解码模块把存储的模型文件解压缩并解码成压缩后的结果,通过近似消息传递还原模块来还原出卷积神经网络权值在频域上的数据,最后通过空域还原模块来还原出原始的卷积神经网络权值。另外,本发明还可以集成在卷积神经网络的训练中。
与现有技术相比,本发明的有益效果如下:
现有的卷积神经网络模型压缩方式,如通过使用剪枝量化实现的压缩方法等,虽然也能压缩模型的大小,但是会损失模型里面很多有用的信息,例如发表于ICLR2016的深度压缩(Deep Compression)算法,它在剪枝过程中未考虑到将权值转换到稀疏域上再去剪枝,所以在剪枝以后往往会损失很多信息。而如果将其转换至稀疏域,比如将其转换至频率域,那么由于高频信息远没有低频信息有用,对高频信息做剪枝要比对低频信息做剪枝产生的信息丢失要小得多。本发明基于压缩感知原理的卷积神经网络压缩方法,相比其他方法,它将压缩感知原理应用于压缩卷积神经网络,其在压缩过程中会将卷积神经网络权值转换至稀疏域并通过高斯随机矩阵进行下采样,会比现在较为流行的直接剪枝量化方法有更高的压缩率。而且,压缩感知领域已从数学上证明了在数据是稀疏的并且测量矩阵是正交阵时,能以高概率还原出原数据,这一定理保证了解压过程的可靠,所以这种压缩方式对卷积神经网络的精度影响是很小的,可以通过在频域中保留低频信息来防止过多的信息损失。另外,本发明在将权值矩阵降维采样得到压缩后的权值矩阵后会使用训练集进行训练来调整压缩后的权值矩阵,这一步可以进一步地降低压缩对卷积神经网络精度的影响。
附图说明
图1是基于压缩感知原理的卷积神经网络模型的压缩方法的压缩流程图;
图2是基于压缩感知原理的卷积神经网络模型的压缩方法的解压缩流程图;
图3展示了卷积神经网络权值使用了离散余弦变换后,从空间域转换至频率域,数据变得稀疏。其中,(a)是K×K的原数据,(b)是频率域上的数据,(c)是剪枝后的数据。
图4是图1表格中的SNR1、SNR2、PSNR1、PSNR2数据的折线图。
图5是图1表格中的mAP1、mAP2数据的折线图。
图6是经过基于压缩感知原理的卷积神经网络模型的压缩方法压缩过的YOLOv2卷积神经网络的物体检测结果。
具体实施方式
下面结合附图及具体实施例对本发明作进一步说明。
一种基于压缩感知原理的卷积神经网络压缩方法:该方法流程如图1所示,将卷积神经网络中的每一层的权值送入预处理模块得到预处理结果,然后将预处理结果送入压缩算法模块中,压缩算法模块得出压缩后的权值,将压缩后的权值送入训练模块进行训练,将训练后的权值送入编码模块进行编码,最后将编码模块得到的编码结果送入文件生成模块产生压缩后的卷积神经网络模型文件。
本发明预处理模块的工作过程为:将输入进该模块的神经网络权值重新排列成一系列 K×K的矩阵,若数据量不满K×K则用这些数据的均值来补齐。将每个K×K的矩阵输出至下一个模块。
本发明压缩算法模块的工作过程为:
i.使用DCT变换将输入的K×K的矩阵N从空间域转换到频率域,其中DCT变换的公式为:设输入的矩阵为N,变换出来的结果为M,则 M=ANAT,其中A为DCT变换矩阵,i,j= 0,1,2,…,14,当i=0时,当i≠0时,在此情况下, K=15。此操作得到了输入结果在频率域上的K×K的矩阵结果,经过结果可视化可以发现这个结果是稀疏的,见图3(b)。
ii.对i步骤得到的矩阵结果进行剪枝,具体的剪枝方法为:对结果中每个值,取绝对值并作为临时变量t,若t>ρ,则略过;若t≤ρ,则将原结果中的对应的值设为0。这里的值ρ是一个正实数,由用户自己设定,一般可以设为输入结果的中位数,剪枝后的结果将会主要集中在低频区域,见图3(C)。
iii.将ii得到的结果使用高斯随机矩阵进行降维采样得到压缩后的矩阵,具体的方法为:C=M·Φ-1,其中,矩阵M为输入矩阵,矩阵C为得到的压缩矩阵,矩阵Φ为高斯随机矩阵。
本发明训练模块的工作过程为:
i.使用训练集对卷积神经网络做一次常规的前向传播,前向传播时,卷积神经网络使用未压缩的卷积神经网络权值;
ii.使用前向传播的结果对比训练集的标注算出卷积神经网络的误差值,使用该误差值做一次反向传播,然后反向传播得到梯度值,使用这个梯度值来更新这些权值;设误差值为δ,权值矩阵为N则卷积神经网络的每个权值对应的梯度为权值矩阵N的更新迭代式就是:其中,μ是学习率。对应的压缩后的结果的梯度便是:
其中,得到的是使用高斯随机矩阵降维采样后的结果对应的梯度,fmeasure是降维采样函数,Maski,j是遮罩函数,当时, 当时,fdct是DCT变换函数,C是降维采样后得到的压缩矩阵,ρ是剪枝时设定的正实数。对应的压缩后的结果的更新迭代式为:其中,μ是学习率。
iii.重复进行i、ii步骤,直到模型的精度稳定为止。
本发明所述的编码模块的工作过程为:对训练模块得到的已压缩卷积神经网络权值使用huffman编码方法进行编码,具体的编码方式为:
i.将卷积神经网络所有的权值量化成n种权值,这个n可以改变,一般取256,这样卷积神经网络的每一个权值只能有n个取值可能。
ii.将这n个权值按出现次数占总权值数的比例从大到小排序,这个比例也称为这个权值的概率。
iii.从最小概率的两个符号开始,选上支路为0,下支路为1。再将已编码的两支路的概率合并,并重新排队。多次重复使用上述方法直至合并概率归一时为止
iv.由步骤iii得到了n个权值的编码,生成权值对应编码的字典。通过这个字典算出卷积神经网络的权值的编码结果。
本发明文件生成模块的工作过程为:对编码模块得到的编码结果生成二进制序列并且存入二进制文件中,该文件称为卷积神经网络模型文件。
本发明的解压缩过程如图2所示,包括二进制模型文件读取与解码模块、近似消息传递还原模块、空域还原模块。
其中,二进制模型文件读取与解码模块工作过程为:读取二进制卷积神经网络结果并使用huffman编码步骤iv中的字典解码得到权值,得到了压缩算法模块中的步骤iii得到的结果并将其送入近似消息传递还原模块。
近似消息传递还原模块的工作过程为:将二进制模型文件读取与解码模块得到的结果使用近似消息传递(approximate message-passing)算法还原出频域上的剪枝过的结果。其中,近似消息传递算法是一个迭代的算法,其迭代式为:xt+1=ηt(A*zt+xt),zt=y-Axt,其中,A为观测矩阵,在这里就是压缩算法模块的步骤iii的高斯随机矩阵,ηt为常量阈值矩阵,设初始值x0=0,然后开始迭代。最终,经过t+1轮的迭代得到的xt+1便是还原出来的结果。将此结果送至空域还原模块。
空域还原模块工作过程为:将近似消息传递还原模块得到的结果使用DCT变换矩阵的逆矩阵求出空域上的结果,设原始空域上的结果为N,近似消息传递还原模块得到的结果为M,则N=A-1M(AT)-1,其中,DCT变换矩阵A已经在上述压缩算法模块的步骤i中描述过,这里不再赘述。
本发明压缩算法使用C++实现。算法中,压缩算法模块使用armadillo库来实现。近似消息传递还原模块中的近似消息传递算法建议使用KL1p库来实现。
本发明预处理模块中,将卷积神经网络的权值转换成K×K的一系列矩阵这一过程可以用armadillo库的reshape函数来达成,每个K×K的矩阵可以用armadillo的Mat类型来存储。
本发明压缩算法模块中,DCT操作可以使用KL1p库中的kl1p::TDCT2Doperator来实现,这是一个二维的DCT操作算子。高斯随机矩阵可以使用KL1p库中的kl1p::TNormalRandomMatrixOperator来实现,这一步中的高斯随机矩阵也可以换成其他的测量矩阵,例如:二值随机矩阵、局部傅里叶矩阵、局部哈达玛测量矩阵托普利兹矩阵等,这里使用的测量矩阵要满足压缩感知理论中的RIP定理。
本发明近似消息传递还原模块中,近似消息传递还原算法可以使用KL1p库中的kl1p::TAMPSolver来实现。在将数据送入kl1p::TAMPSolver之前,要先将数据做正则化处理。
实施例1
本实施例使用的卷积神经网络是YOLOv2,训练数据是VOC2012。
具体压缩过程为:
i.YOLOv2卷积神经网络一共有22层卷积层,将每一层的卷积层权值经过本方法的预处理过程分割成一个个15×15的矩阵块。比如,第一层卷积层的权值有32×3 ×3=288个,可以分割成2个15×15的矩阵块,但是第二个矩阵块数据不满225 个,空余位置用前63个权值的均值来补齐。
ii.将预处理结果经过本方法的压缩过程,即依次经过DCT变换、剪枝、降维采样这几步。在剪枝时,可人为调整剪枝阈值ρ,可依次设置不同的ρ值观察模型的压缩后的性能。
iii.将压缩过程的结果经过本方法的编码过程,得到huffman编码结果的二进制序列,将这些二进制序列写入二进制文件,便是压缩完后的模型文件。
压缩完成后,使用VOC2012数据集来训练YOLOv2卷积神经网络,训练时,前向传播要使用未压缩的卷积神经网络权值,反向传播使用说明书中提供的公式(5)来计算权值的梯度,训练过程迭代40000次后停止。
表1是本发明基于压缩感知原理的卷积神经网络模型的压缩方法和现有哈希网络(HashedNet)压缩方法在YOLOv2上的对比实验。
表1
其中,SNR1、PSNR1和mAP1列是基于压缩感知原理的卷积神经网络模型的压缩方法的信噪比、峰值信噪比和平均正确率均值数据;SNR2、PSNR2和mAP2列是哈希网络(HashedNet) 压缩方法的信噪比、峰值信噪比和平均正确率均值数据;SNR3、PSNR3和mAP3列是基于压缩感知原理的卷积神经网络模型的压缩方法和哈希网络(HashedNet)压缩方法的信噪比、峰值信噪比和平均正确率均值数据的差值(改进),可以发现,本压缩方法SNR最高比对比方法提高了20.98dB,PSNR最高比对比方法提高了19.7dB,mAP最高比对比方法提高了 11.43%。图6为使用该压缩方法训练过的YOLOv2的检测结果例图。
Claims (9)
1.一种基于压缩感知原理的卷积神经网络压缩方法,其特征在于,包括:
预处理步骤、将卷积神经网络中的每一层的权值预处理为一系列矩阵;
压缩步骤、将预处理步骤得到的预处理结果进行压缩处理得出压缩后的权值;
训练步骤、对压缩后的权值进行训练;
编码步骤、对训练步骤训练后的已压缩权值进行编码;
模型生成步骤、根据经编码步骤得到的编码结果生成压缩后的卷积神经网络模型文件。
2.根据权利要求1所述的卷积神经网络压缩方法,其特征在于,所述预处理步骤中预处理方法为:将神经网络每一层的权值按其在卷积核内的行优先顺序排列成一系列K×K的矩阵,若数据量不满K×K则用每一层权值的均值来补齐,其中K≥3。
3.根据权利要求2所述的卷积神经网络压缩方法,其特征在于,所述压缩步骤的压缩方法为:
使用DCT变换将输入的K×K的矩阵N从空间域转换到频率域得到输出矩阵M;
对使用DCT变换得到的输出矩阵M进行剪枝处理得到矩阵P;
将矩阵M剪枝得到的矩阵P使用高斯随机矩阵进行降维采样得到压缩后的矩阵:
C=P·Φ-1
其中,矩阵C为得到的压缩矩阵,矩阵P为输入矩阵,矩阵Φ为高斯随机矩阵。
4.根据权利要求3所述的卷积神经网络压缩方法,其特征在于,所述训练步骤包括:
使用训练集对卷积神经网络做一次常规的前向传播,前向传播时,卷积神经网络使用未压缩的卷积神经网络权值;
使用前向传播的结果对比训练集的标注算出卷积神经网络的误差值,使用该误差值做一次反向传播,然后反向传播得到梯度值,使用得到的梯度值来更新卷积神经网络权值;
设误差值为δ,则卷积神经网络的每个权值对应的梯度为权值矩阵N的更新迭代式就是:其中,μ是学习率;
对应的压缩后的结果的梯度便是:
<mrow>
<mfrac>
<mrow>
<mo>&part;</mo>
<mi>&delta;</mi>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>C</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</mfrac>
<mo>=</mo>
<msub>
<mi>f</mi>
<mrow>
<mi>m</mi>
<mi>e</mi>
<mi>a</mi>
<mi>s</mi>
<mi>u</mi>
<mi>r</mi>
<mi>e</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<msub>
<mi>Mask</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
</mrow>
</msub>
<mo>(</mo>
<mrow>
<msub>
<mi>f</mi>
<mrow>
<mi>d</mi>
<mi>c</mi>
<mi>t</mi>
</mrow>
</msub>
<mrow>
<mo>(</mo>
<mfrac>
<mrow>
<mo>&part;</mo>
<mi>&delta;</mi>
</mrow>
<mrow>
<mo>&part;</mo>
<msub>
<mi>N</mi>
<mrow>
<mi>i</mi>
<mo>,</mo>
<mi>j</mi>
</mrow>
</msub>
</mrow>
</mfrac>
<mo>)</mo>
</mrow>
</mrow>
<mo>)</mo>
<mo>)</mo>
</mrow>
<mo>-</mo>
<mo>-</mo>
<mo>-</mo>
<mrow>
<mo>(</mo>
<mn>5</mn>
<mo>)</mo>
</mrow>
</mrow>
其中,得到的是使用高斯随机矩阵降维采样后的结果对应的梯度,fmeasure是降维采样函数,Maski,j是遮罩函数,当时,当时,fdct是DCT变换函数,Ci,j是降维采样后得到的压缩矩阵,ρ是剪枝时设定的正实数;
对压缩的结果矩阵Ci,j进行更新迭代训练:
5.根据权利要求4所述的卷积神经网络压缩方法,其特征在于,使用DCT变换得到的输出矩阵M为:
M=ANAT
其中,A为DCT变换矩阵,
当i=0时,当i≠0时,
6.根据权利要求5所述的卷积神经网络压缩方法,其特征在于,所述剪枝处理的方法为:对输出矩阵M中每个值,取绝对值并作为临时变量t,若t>ρ,则略过;若t<ρ,则将输出矩阵M中的对应的值设为0,其中,ρ是一个设定的正实数。
7.根据权利要求1所述的卷积神经网络压缩方法,其特征在于,所述编码模块进行编码的方法为:对压缩算法模块得到的卷积神经网络权值使用huffman编码方法进行编码。
8.根据权利要求1所述的卷积神经网络压缩方法,其特征在于,所述文件生成步骤生成卷积神经网络模型文件的方法是:对编码模块得到的编码结果生成二进制序列并且存入二进制文件中,该二进制文件即为卷积神经网络模型文件。
9.一种基于压缩感知原理的卷积神经网络解压缩方法,其特征在于,包括:
模型文件读取步骤、读取二进制卷积神经网络模型文件;
解码步骤、使用霍夫曼编码,解码读取步骤中读取的二进制卷积神经网络模型文件,得到权值;
剪枝还原步骤、还原出频域上的剪枝过的结果,方法是:
xt+1=ηt(Q*zt+xt)
其中,zt=y-Qxt,y为压缩算法模块的步骤iii得到的降维采样后的矩阵向量化的结果,Q为观测矩阵,在这里就是压缩算法模块的步骤iii的高斯随机矩阵,ηt为常量阈值矩阵,设初始值x0=0,然后开始迭代;最终,经过t+1轮的迭代得到的xt+1便是还原出来的结果;
空域还原步骤、将剪枝还原步骤得到的结果使用DCT变换矩阵的逆矩阵求出空域上的结果N:
N=A-1M(AT)-1
其中,M为剪枝还原步骤得到的结果,A为DCT变换矩阵。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711215956.3A CN107832837B (zh) | 2017-11-28 | 2017-11-28 | 一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711215956.3A CN107832837B (zh) | 2017-11-28 | 2017-11-28 | 一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107832837A true CN107832837A (zh) | 2018-03-23 |
CN107832837B CN107832837B (zh) | 2021-09-28 |
Family
ID=61645992
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711215956.3A Active CN107832837B (zh) | 2017-11-28 | 2017-11-28 | 一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107832837B (zh) |
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108615074A (zh) * | 2018-04-28 | 2018-10-02 | 中国科学院计算技术研究所 | 基于压缩感知的神经网络处理系统及方法 |
CN108629410A (zh) * | 2018-04-28 | 2018-10-09 | 中国科学院计算技术研究所 | 基于主成分分析降维和/或升维的神经网络处理方法 |
CN108665067A (zh) * | 2018-05-29 | 2018-10-16 | 北京大学 | 用于深度神经网络频繁传输的压缩方法及系统 |
CN108985448A (zh) * | 2018-06-06 | 2018-12-11 | 北京大学 | 神经网络表示标准框架结构 |
CN109034370A (zh) * | 2018-06-27 | 2018-12-18 | 中国人民解放军陆军工程大学 | 一种基于特征映射剪枝的卷积神经网络精简方法 |
CN109617847A (zh) * | 2018-11-26 | 2019-04-12 | 东南大学 | 一种基于模型驱动深度学习的无循环前缀ofdm接收方法 |
CN109643229A (zh) * | 2018-04-17 | 2019-04-16 | 深圳鲲云信息科技有限公司 | 网络模型的应用开发方法及相关产品 |
CN110048694A (zh) * | 2019-04-22 | 2019-07-23 | 哈尔滨理工大学 | 基于变元步长的随机傅里叶特征核最小均方算法 |
CN111247582A (zh) * | 2018-09-28 | 2020-06-05 | 搜诺思公司 | 使用神经网络模型进行选择性唤醒词检测的系统和方法 |
TWI700647B (zh) * | 2018-09-11 | 2020-08-01 | 國立清華大學 | 電子裝置及類神經網路的壓縮方法 |
CN111539224A (zh) * | 2020-06-25 | 2020-08-14 | 北京百度网讯科技有限公司 | 语义理解模型的剪枝方法、装置、电子设备和存储介质 |
CN112020724A (zh) * | 2019-04-01 | 2020-12-01 | 谷歌有限责任公司 | 学习可压缩的特征 |
WO2020242057A1 (en) * | 2019-05-24 | 2020-12-03 | Samsung Electronics Co., Ltd. | Decompression apparatus and control method thereof |
WO2020243922A1 (en) * | 2019-06-05 | 2020-12-10 | Intel Corporation | Automatic machine learning policy network for parametric binary neural networks |
CN112070211A (zh) * | 2020-08-21 | 2020-12-11 | 北京科技大学 | 基于计算卸载机制的图像识别方法 |
CN112906874A (zh) * | 2021-04-06 | 2021-06-04 | 南京大学 | 卷积神经网络特征图数据压缩方法及装置 |
CN113240111A (zh) * | 2021-05-31 | 2021-08-10 | 成都索贝视频云计算有限公司 | 基于离散余弦变换通道重要性得分的剪枝方法 |
WO2022001141A1 (zh) * | 2020-06-29 | 2022-01-06 | 苏州浪潮智能科技有限公司 | 一种gpu通信方法、设备以及介质 |
US11423312B2 (en) | 2018-05-14 | 2022-08-23 | Samsung Electronics Co., Ltd | Method and apparatus for universal pruning and compression of deep convolutional neural networks under joint sparsity constraints |
US11568254B2 (en) | 2019-01-21 | 2023-01-31 | Samsung Electronics Co., Ltd. | Electronic apparatus and control method thereof |
CN115797477A (zh) * | 2023-01-30 | 2023-03-14 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 用于轻量化部署的剪枝式图像压缩感知方法及系统 |
US11727933B2 (en) | 2016-10-19 | 2023-08-15 | Sonos, Inc. | Arbitration-based voice recognition |
US11778259B2 (en) | 2018-09-14 | 2023-10-03 | Sonos, Inc. | Networked devices, systems and methods for associating playback devices based on sound codes |
US11790937B2 (en) | 2018-09-21 | 2023-10-17 | Sonos, Inc. | Voice detection optimization using sound metadata |
US11792590B2 (en) | 2018-05-25 | 2023-10-17 | Sonos, Inc. | Determining and adapting to changes in microphone performance of playback devices |
US11797263B2 (en) | 2018-05-10 | 2023-10-24 | Sonos, Inc. | Systems and methods for voice-assisted media content selection |
US11798553B2 (en) | 2019-05-03 | 2023-10-24 | Sonos, Inc. | Voice assistant persistence across multiple network microphone devices |
US11817083B2 (en) | 2018-12-13 | 2023-11-14 | Sonos, Inc. | Networked microphone devices, systems, and methods of localized arbitration |
US11817076B2 (en) | 2017-09-28 | 2023-11-14 | Sonos, Inc. | Multi-channel acoustic echo cancellation |
US11816393B2 (en) | 2017-09-08 | 2023-11-14 | Sonos, Inc. | Dynamic computation of system response volume |
US11832068B2 (en) | 2016-02-22 | 2023-11-28 | Sonos, Inc. | Music service selection |
US11854547B2 (en) | 2019-06-12 | 2023-12-26 | Sonos, Inc. | Network microphone device with command keyword eventing |
US11862161B2 (en) | 2019-10-22 | 2024-01-02 | Sonos, Inc. | VAS toggle based on device orientation |
US11863593B2 (en) | 2016-02-22 | 2024-01-02 | Sonos, Inc. | Networked microphone device control |
US11869503B2 (en) | 2019-12-20 | 2024-01-09 | Sonos, Inc. | Offline voice control |
US11881222B2 (en) | 2020-05-20 | 2024-01-23 | Sonos, Inc | Command keywords with input detection windowing |
US11881223B2 (en) | 2018-12-07 | 2024-01-23 | Sonos, Inc. | Systems and methods of operating media playback systems having multiple voice assistant services |
US11887598B2 (en) | 2020-01-07 | 2024-01-30 | Sonos, Inc. | Voice verification for media playback |
US11893308B2 (en) | 2017-09-29 | 2024-02-06 | Sonos, Inc. | Media playback system with concurrent voice assistance |
US11899519B2 (en) | 2018-10-23 | 2024-02-13 | Sonos, Inc. | Multiple stage network microphone device with reduced power consumption and processing load |
US11900937B2 (en) | 2017-08-07 | 2024-02-13 | Sonos, Inc. | Wake-word detection suppression |
US11934742B2 (en) | 2016-08-05 | 2024-03-19 | Sonos, Inc. | Playback device supporting concurrent voice assistants |
US11947870B2 (en) | 2016-02-22 | 2024-04-02 | Sonos, Inc. | Audio response playback |
US11961519B2 (en) | 2020-02-07 | 2024-04-16 | Sonos, Inc. | Localized wakeword verification |
US11973893B2 (en) | 2018-08-28 | 2024-04-30 | Sonos, Inc. | Do not disturb feature for audio notifications |
US11979960B2 (en) | 2016-07-15 | 2024-05-07 | Sonos, Inc. | Contextualization of voice inputs |
US11983463B2 (en) | 2016-02-22 | 2024-05-14 | Sonos, Inc. | Metadata exchange involving a networked playback system and a networked microphone system |
US11984123B2 (en) | 2020-11-12 | 2024-05-14 | Sonos, Inc. | Network device interaction by range |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106203376B (zh) * | 2016-07-19 | 2020-04-10 | 北京旷视科技有限公司 | 人脸关键点定位方法及装置 |
CN106355248A (zh) * | 2016-08-26 | 2017-01-25 | 深圳先进技术研究院 | 一种深度卷积神经网络训练方法及装置 |
CN106557812A (zh) * | 2016-11-21 | 2017-04-05 | 北京大学 | 基于dct变换的深度卷积神经网络压缩与加速方案 |
-
2017
- 2017-11-28 CN CN201711215956.3A patent/CN107832837B/zh active Active
Cited By (60)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11832068B2 (en) | 2016-02-22 | 2023-11-28 | Sonos, Inc. | Music service selection |
US11947870B2 (en) | 2016-02-22 | 2024-04-02 | Sonos, Inc. | Audio response playback |
US11863593B2 (en) | 2016-02-22 | 2024-01-02 | Sonos, Inc. | Networked microphone device control |
US11983463B2 (en) | 2016-02-22 | 2024-05-14 | Sonos, Inc. | Metadata exchange involving a networked playback system and a networked microphone system |
US11979960B2 (en) | 2016-07-15 | 2024-05-07 | Sonos, Inc. | Contextualization of voice inputs |
US11934742B2 (en) | 2016-08-05 | 2024-03-19 | Sonos, Inc. | Playback device supporting concurrent voice assistants |
US11727933B2 (en) | 2016-10-19 | 2023-08-15 | Sonos, Inc. | Arbitration-based voice recognition |
US11900937B2 (en) | 2017-08-07 | 2024-02-13 | Sonos, Inc. | Wake-word detection suppression |
US11816393B2 (en) | 2017-09-08 | 2023-11-14 | Sonos, Inc. | Dynamic computation of system response volume |
US11817076B2 (en) | 2017-09-28 | 2023-11-14 | Sonos, Inc. | Multi-channel acoustic echo cancellation |
US11893308B2 (en) | 2017-09-29 | 2024-02-06 | Sonos, Inc. | Media playback system with concurrent voice assistance |
US11954576B2 (en) | 2018-04-17 | 2024-04-09 | Shenzhen Corerain Technologies Co., Ltd. | Method for implementing and developing network model and related product |
CN109643229A (zh) * | 2018-04-17 | 2019-04-16 | 深圳鲲云信息科技有限公司 | 网络模型的应用开发方法及相关产品 |
CN108629410B (zh) * | 2018-04-28 | 2021-01-22 | 中国科学院计算技术研究所 | 基于主成分分析降维和/或升维的神经网络处理方法 |
CN108629410A (zh) * | 2018-04-28 | 2018-10-09 | 中国科学院计算技术研究所 | 基于主成分分析降维和/或升维的神经网络处理方法 |
CN108615074A (zh) * | 2018-04-28 | 2018-10-02 | 中国科学院计算技术研究所 | 基于压缩感知的神经网络处理系统及方法 |
US11797263B2 (en) | 2018-05-10 | 2023-10-24 | Sonos, Inc. | Systems and methods for voice-assisted media content selection |
US11423312B2 (en) | 2018-05-14 | 2022-08-23 | Samsung Electronics Co., Ltd | Method and apparatus for universal pruning and compression of deep convolutional neural networks under joint sparsity constraints |
US11792590B2 (en) | 2018-05-25 | 2023-10-17 | Sonos, Inc. | Determining and adapting to changes in microphone performance of playback devices |
CN108665067A (zh) * | 2018-05-29 | 2018-10-16 | 北京大学 | 用于深度神经网络频繁传输的压缩方法及系统 |
CN108985448A (zh) * | 2018-06-06 | 2018-12-11 | 北京大学 | 神经网络表示标准框架结构 |
CN108985448B (zh) * | 2018-06-06 | 2020-11-17 | 北京大学 | 神经网络表示标准框架结构 |
CN109034370A (zh) * | 2018-06-27 | 2018-12-18 | 中国人民解放军陆军工程大学 | 一种基于特征映射剪枝的卷积神经网络精简方法 |
US11973893B2 (en) | 2018-08-28 | 2024-04-30 | Sonos, Inc. | Do not disturb feature for audio notifications |
TWI700647B (zh) * | 2018-09-11 | 2020-08-01 | 國立清華大學 | 電子裝置及類神經網路的壓縮方法 |
US11270207B2 (en) | 2018-09-11 | 2022-03-08 | National Tsing Hua University | Electronic apparatus and compression method for artificial neural network |
US11778259B2 (en) | 2018-09-14 | 2023-10-03 | Sonos, Inc. | Networked devices, systems and methods for associating playback devices based on sound codes |
US11790937B2 (en) | 2018-09-21 | 2023-10-17 | Sonos, Inc. | Voice detection optimization using sound metadata |
US11790911B2 (en) | 2018-09-28 | 2023-10-17 | Sonos, Inc. | Systems and methods for selective wake word detection using neural network models |
CN111247582A (zh) * | 2018-09-28 | 2020-06-05 | 搜诺思公司 | 使用神经网络模型进行选择性唤醒词检测的系统和方法 |
US11899519B2 (en) | 2018-10-23 | 2024-02-13 | Sonos, Inc. | Multiple stage network microphone device with reduced power consumption and processing load |
CN109617847A (zh) * | 2018-11-26 | 2019-04-12 | 东南大学 | 一种基于模型驱动深度学习的无循环前缀ofdm接收方法 |
CN109617847B (zh) * | 2018-11-26 | 2021-04-06 | 东南大学 | 一种基于模型驱动深度学习的无循环前缀ofdm接收方法 |
US11881223B2 (en) | 2018-12-07 | 2024-01-23 | Sonos, Inc. | Systems and methods of operating media playback systems having multiple voice assistant services |
US11817083B2 (en) | 2018-12-13 | 2023-11-14 | Sonos, Inc. | Networked microphone devices, systems, and methods of localized arbitration |
US11568254B2 (en) | 2019-01-21 | 2023-01-31 | Samsung Electronics Co., Ltd. | Electronic apparatus and control method thereof |
CN112020724A (zh) * | 2019-04-01 | 2020-12-01 | 谷歌有限责任公司 | 学习可压缩的特征 |
CN110048694A (zh) * | 2019-04-22 | 2019-07-23 | 哈尔滨理工大学 | 基于变元步长的随机傅里叶特征核最小均方算法 |
CN110048694B (zh) * | 2019-04-22 | 2022-09-23 | 哈尔滨理工大学 | 基于变元步长的随机傅里叶特征核最小均方算法 |
US11798553B2 (en) | 2019-05-03 | 2023-10-24 | Sonos, Inc. | Voice assistant persistence across multiple network microphone devices |
US10917121B2 (en) | 2019-05-24 | 2021-02-09 | Samsung Electronics Co., Ltd. | Decompression apparatus and control method thereof |
WO2020242057A1 (en) * | 2019-05-24 | 2020-12-03 | Samsung Electronics Co., Ltd. | Decompression apparatus and control method thereof |
US11595062B2 (en) | 2019-05-24 | 2023-02-28 | Samsung Electronics Co., Ltd. | Decompression apparatus for decompressing a compressed artificial intelligence model and control method thereof |
WO2020243922A1 (en) * | 2019-06-05 | 2020-12-10 | Intel Corporation | Automatic machine learning policy network for parametric binary neural networks |
US11854547B2 (en) | 2019-06-12 | 2023-12-26 | Sonos, Inc. | Network microphone device with command keyword eventing |
US11862161B2 (en) | 2019-10-22 | 2024-01-02 | Sonos, Inc. | VAS toggle based on device orientation |
US11869503B2 (en) | 2019-12-20 | 2024-01-09 | Sonos, Inc. | Offline voice control |
US11887598B2 (en) | 2020-01-07 | 2024-01-30 | Sonos, Inc. | Voice verification for media playback |
US11961519B2 (en) | 2020-02-07 | 2024-04-16 | Sonos, Inc. | Localized wakeword verification |
US11881222B2 (en) | 2020-05-20 | 2024-01-23 | Sonos, Inc | Command keywords with input detection windowing |
CN111539224B (zh) * | 2020-06-25 | 2023-08-25 | 北京百度网讯科技有限公司 | 语义理解模型的剪枝方法、装置、电子设备和存储介质 |
CN111539224A (zh) * | 2020-06-25 | 2020-08-14 | 北京百度网讯科技有限公司 | 语义理解模型的剪枝方法、装置、电子设备和存储介质 |
WO2022001141A1 (zh) * | 2020-06-29 | 2022-01-06 | 苏州浪潮智能科技有限公司 | 一种gpu通信方法、设备以及介质 |
CN112070211B (zh) * | 2020-08-21 | 2024-04-05 | 北京科技大学 | 基于计算卸载机制的图像识别方法 |
CN112070211A (zh) * | 2020-08-21 | 2020-12-11 | 北京科技大学 | 基于计算卸载机制的图像识别方法 |
US11984123B2 (en) | 2020-11-12 | 2024-05-14 | Sonos, Inc. | Network device interaction by range |
CN112906874A (zh) * | 2021-04-06 | 2021-06-04 | 南京大学 | 卷积神经网络特征图数据压缩方法及装置 |
CN113240111A (zh) * | 2021-05-31 | 2021-08-10 | 成都索贝视频云计算有限公司 | 基于离散余弦变换通道重要性得分的剪枝方法 |
CN113240111B (zh) * | 2021-05-31 | 2022-09-06 | 成都索贝视频云计算有限公司 | 基于离散余弦变换通道重要性得分的剪枝方法 |
CN115797477A (zh) * | 2023-01-30 | 2023-03-14 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 用于轻量化部署的剪枝式图像压缩感知方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN107832837B (zh) | 2021-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107832837B (zh) | 一种基于压缩感知原理的卷积神经网络压缩方法及解压缩方法 | |
US11153566B1 (en) | Variable bit rate generative compression method based on adversarial learning | |
CN111818346B (zh) | 图像编码方法和装置、图像解码方法和装置 | |
Yuan et al. | Image compression based on compressive sensing: End-to-end comparison with JPEG | |
Toderici et al. | Full resolution image compression with recurrent neural networks | |
CN105163121B (zh) | 基于深度自编码网络的大压缩比卫星遥感图像压缩方法 | |
US11403528B2 (en) | Self-tuning incremental model compression solution in deep neural network with guaranteed accuracy performance | |
JP2019140680A5 (zh) | ||
CN110892419B (zh) | 停止码容忍的图像压缩神经网络 | |
CN109859281B (zh) | 一种稀疏神经网络的压缩编码方法 | |
CN110248190B (zh) | 一种基于压缩感知的多层残差系数图像编码方法 | |
CN110752894B (zh) | 一种基于cnn的ldpc码盲信道译码方法及译码器 | |
Zhe et al. | Rate-distortion optimized coding for efficient cnn compression | |
CN101467459B (zh) | 信号的矢量量化字典生成方法、编解码器及编解码方法 | |
CN113873094A (zh) | 一种混沌压缩感知图像加密方法 | |
Al-Hashemi et al. | A new lossless image compression technique based on Bose, Chandhuri and Hocquengham (BCH) codes | |
Isik et al. | Successive pruning for model compression via rate distortion theory | |
Leon-Salas | Encoding compressive sensing measurements with golomb-rice codes | |
Wu et al. | A novel and comprehensive compressive sensing-based system for data compression | |
Yan et al. | Digital Image Compression | |
CN109246437B (zh) | 一种基于里德所罗门码的图像压缩感知方法 | |
JP2006333055A (ja) | 観測装置分散観測システムおよび観測装置分散観測方法 | |
CN109547961B (zh) | 一种无线传感网络中大数据量压缩感知编解码方法 | |
CN110708561A (zh) | 基于压缩感知与信道编码的水下信息采集与传输方法 | |
Amin et al. | Vector quantization based lossy image compression using wavelets–a review |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |