[发明专利]一种用于深度卷积神经网络模型压缩的方法在审
申请号: | 201710038007.6 | 申请日: | 2017-01-18 |
公开(公告)号: | CN108322221A | 公开(公告)日: | 2018-07-24 |
发明(设计)人: | 肖学锋;金连文;杨亚锋;常天海;刘汝杰;孙俊 | 申请(专利权)人: | 华南理工大学;富士通株式会社 |
主分类号: | H03M7/40 | 分类号: | H03M7/40;H03M7/30;G06N3/08;G06K9/62 |
代理公司: | 广东广信君达律师事务所 44329 | 代理人: | 杨晓松 |
地址: | 510640 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 卷积神经网络 去除 模型压缩 网络层 微调 哈夫曼编码 比特位数 编码过程 聚类结果 网络连接 压缩文件 压缩率 保存 冗余 准确率 减小 聚类 索引 网络 压缩 改进 恢复 | ||
1.一种用于深度卷积神经网络模型压缩的方法,其特征在于,包括步骤
S1:对于已经训练完成的深度卷积神经网络模型进行再训练,去除其中冗余的网络连接;
S2:对卷积神经网络的各网络层的剩余连接的权值进行编码;
S3:对卷积神经网络的各网络层的剩余连接的权值进行k-means聚类;
S4:对聚类结果进行微调;
S5:保存微调后的结果,并对保存的文件进行哈夫曼编码。
2.如权利要求1所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S1包括步骤
S11:对训练完成的深度卷积神经网络模型进行继续训练;
S12:对任一网络层进行训练时,每次迭代都去除该层中一些权值小于某一动态阈值的连接;
S13:当任一网络层中去除的连接数占该层原始连接数的比例达到预设的值时,固定此时的该网络层的动态阈值,对深度卷积神经网络进行继续训练;
S14:当训练次数达到最大训练次数时,停止训练。
3.如权利要求1所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S2包括步骤
S21:将各网络层连接的权值矩阵按行优先分别排列为一个行向量;
S22:对各个行向量进行改进的CSR编码。
4.如权利要求3所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S21中所述改进的CSR编码是指在存储非零值的位置时,用相对前一个非零值的位移来代替相对行首的位移,并当相对位移超过2k时,在该位置补0,并视此位置为非零值的位置,其他与标准CSR编码相同。
5.如权利要求1所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S3包括步骤
S31:获取各网络层的值向量;
S32:对各网络层值向量进行k-means聚类。
6.如权利要求1所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S4包括步骤
S41:利用步骤S3所得聚类结果和步骤S2的编码结果初始化各网络层的参数;
S42:设置求解参数,启动网络训练;
S43:在网络训练的过程中对聚类中心进行微调。
7.如权利要求6所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S43包括步骤
S431:根据当前网络参数对网络进行前向运算,得到网络的输出;
S432:根据网络的输出和此时网络的标签得到此时网络的损失值;
S433:利用网络损失值对网络进行反向传播,得到各层网络连接的梯度值;
S434:将属于同一个聚类中心的连接的梯度值加和,这样每一个聚类中心都有一个与之相对应的梯度加和值;
S435:将各聚类中心的值减去与其相对应的梯度加和值与此时网络学习率的乘积;
S436:将各网络连接的权值更新为该连接所属聚类中心的值;
S437:重复S431-S436直到网络训练收敛,停止训练。
8.如权利要求1所述的用于深度卷积神经网络模型压缩的方法,其特征在于,步骤S5包括步骤:
S51:将各个网络层的编码结果和微调之后的聚类结果保存成二进制文件;
S52:对所述二进制文件进行哈夫曼编码,保存为压缩文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学;富士通株式会社,未经华南理工大学;富士通株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710038007.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:编解码方法、装置及编解码设备
- 下一篇:一种生成及使用分布式唯一ID的方法