[发明专利]一种用于深度卷积神经网络模型压缩的方法在审
申请号: | 201710038007.6 | 申请日: | 2017-01-18 |
公开(公告)号: | CN108322221A | 公开(公告)日: | 2018-07-24 |
发明(设计)人: | 肖学锋;金连文;杨亚锋;常天海;刘汝杰;孙俊 | 申请(专利权)人: | 华南理工大学;富士通株式会社 |
主分类号: | H03M7/40 | 分类号: | H03M7/40;H03M7/30;G06N3/08;G06K9/62 |
代理公司: | 广东广信君达律师事务所 44329 | 代理人: | 杨晓松 |
地址: | 510640 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 卷积神经网络 去除 模型压缩 网络层 微调 哈夫曼编码 比特位数 编码过程 聚类结果 网络连接 压缩文件 压缩率 保存 冗余 准确率 减小 聚类 索引 网络 压缩 改进 恢复 | ||
本发明公开了一种用于深度卷积神经网络模型压缩的方法,包括步骤:对于已经训练完成的深度卷积神经网络模型进行再训练,去除其中冗余的网络连接;对卷积神经网络的各网络层的剩余连接的权值进行编码;对卷积神经网络的各网络层的剩余连接的权值进行k‑means聚类;对聚类结果进行微调;保存微调后的结果,并对保存的文件进行哈夫曼编码。本发明通过动态阈值的设定,能够较平缓地去除网络中的连接,使网络能够从连接被去除的不利情况中恢复,从而能够达到相同准确率损失的情况下,压缩倍数较高的效果;在剩余连接编码过程中,使用的改进的CSR编码方法可以减少表示索引值所需要的比特位数,从而能够减小压缩文件的大小,提高压缩率。
技术领域
本发明涉及深度学习和人工智能领域,尤其涉及一种用于深度卷积神经网络模型压缩的方法。
背景技术
近年来,深度学习算法在人工智能领域取得了一系列令人惊艳的结果,而深度卷积神经网络是目前在人工智能领域的分支计算机视觉领域中应用最为广泛、最为成功的深度学习算法之一。一般来说,为了解决更复杂的计算机视觉问题,卷积神经网络中就需要引入更多的神经元或者增加网络的层数,但这样势必导致网络中的参数变多,整个网络模型变大。例如用于解决ImageNet数据集分类问题的AlexNet深度卷积神经网络的模型大小达到了243.9M,这样大小的模型显然是无法部署到移动端或者是嵌入式等存储空间十分有限的设备上的。
发明内容
为克服现有技术的不足,在压缩深度卷积神经网络模型大小的同时保持其准确率基本不变,本发明提出一种用于深度卷积神经网络模型压缩的方法。
本发明的技术方案是这样实现的,一种用于深度卷积神经网络模型压缩的方法,包括步骤
S1:对于已经训练完成的深度卷积神经网络模型进行再训练,去除其中冗余的网络连接;
S2:对卷积神经网络的各网络层的剩余连接的权值进行编码;
S3:对卷积神经网络的各网络层的剩余连接的权值进行k-means聚类;
S4:对聚类结果进行微调;
S5:保存微调后的结果,并对保存的文件进行哈夫曼编码。
进一步地,步骤S1包括步骤
S11:对训练完成的深度卷积神经网络模型进行继续训练;
S12:对任一网络层进行训练时,每次迭代都去除该层中一些权值小于某一动态阈值的连接;
S13:当任一网络层中去除的连接数占该层原始连接数的比例达到预设的值时,固定此时的该网络层的动态阈值,对深度卷积神经网络进行继续训练;
S14:当训练次数达到最大训练次数时,停止训练。
进一步地,步骤S2包括步骤
S21:将各网络层连接的权值矩阵按行优先分别排列为一个行向量;
S22:对各个行向量进行改进的CSR编码。
进一步地,步骤S21中所述改进的CSR编码是指在存储非零值的位置时,用相对前一个非零值的位移来代替相对行首的位移,并当相对位移超过2k时,在该位置补0,并视此位置为非零值的位置,其他与标准CSR编码相同。
进一步地,步骤S3包括步骤
S31:获取各网络层的值向量;
S32:对各网络层值向量进行k-means聚类。
进一步地,步骤S4包括步骤
S41:利用步骤S3所得聚类结果和步骤S2的编码结果初始化各网络层的参数;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华南理工大学;富士通株式会社,未经华南理工大学;富士通株式会社许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710038007.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:编解码方法、装置及编解码设备
- 下一篇:一种生成及使用分布式唯一ID的方法