CN108133266B - 一种基于非均匀量化的神经网络权值压缩方法及使用方法 - Google Patents
一种基于非均匀量化的神经网络权值压缩方法及使用方法 Download PDFInfo
- Publication number
- CN108133266B CN108133266B CN201711318643.0A CN201711318643A CN108133266B CN 108133266 B CN108133266 B CN 108133266B CN 201711318643 A CN201711318643 A CN 201711318643A CN 108133266 B CN108133266 B CN 108133266B
- Authority
- CN
- China
- Prior art keywords
- weight
- compression
- value
- grouping
- compressed
- 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.)
- Active
Links
Images
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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/3059—Digital compression and data reduction techniques where the original information is represented by a subset or similar information, e.g. lossy compression
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)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明涉及一种基于非均匀量化的神经网络权值压缩方法及使用方法,其步骤:基于数据概率对连接权值分组;最大值归一化:将分组后的连接权值做最大值归一化处理,使得连接权值的幅度值处于[‑1 1];将归一化后的连接权值采用非均匀量化的A律压缩进行压缩编码。本发明能有效保证系统性能,显著降低了连接权值存储所需的容量,有利于深度神经网络在嵌入式系统中的应用。
Description
技术领域
本发明涉及一种深度学习神经网络压缩方法及使用方法,特别是关于一种在计算机应用领域中应用的基于非均匀量化的神经网络权值压缩方法及使用方法。
背景技术
人工神经网络(ANN),作为对人脑最简单的一种抽象和模拟,是人们模仿人的大脑神经系统信息处理功能的一个智能化系统,是20世纪80年代以来人工智能领域兴起的研究热点。人工神经网络以数学和物理方法以及信息处理的角度对人脑神经网络进行抽象,并建立某种简化模型,旨在模仿人脑结构及其功能的信息处理系统。
人工神经网络是由多个神经元连接构成,一个典型的人工神经元模型如图1所示。
其中,xj为神经元i的输入信号,wij为连接权值,b为外部刺激,f为激励函数,yi为神经元的输出,其输出公式为:
由上式可见,由于深度学习网络层数很多,网络规模较大,对于连接权值存储的问题成为嵌入式系统应用的瓶颈。由于连接权值在幅度分布上具有高斯分布的概率密度特征,采用均匀量化不能同时较好的描述幅度大的连接权值和幅度小的连接权值。
发明内容
针对上述问题,本发明的目的是提供一种基于非均匀量化的神经网络权值压缩方法及使用方法,该方法能有效保证系统性能,显著降低了连接权值存储所需的容量,有利于深度神经网络在嵌入式系统中的应用。
为实现上述目的,本发明采取以下技术方案:一种基于非均匀量化的神经网络权值压缩方法,其特征在于包括以下步骤:1)基于数据概率对连接权值分组;2)最大值归一化:将分组后的连接权值做最大值归一化处理,使得连接权值的幅度值处于[-1 1];3)将归一化后的连接权值采用非均匀量化的A律压缩进行压缩编码。
进一步,所述步骤1)中,分组过程如下:1.1)将权值以0为中心,左右平均分成两组:分组0和分组1;1.2)在分组0中权值增加偏移值C0,该偏移值为分组0的均值,使得权值负值空间域的数据集均值近似为0;1.3)在分组1同样增加偏移值C1,该偏移值为分组1的均值,使得权值正值空间域的数据集均值也近似为0;1.4)通过分组处理后,分组0和分组1近似服从均值为0的高斯分布,并增加一位分组标识符进行分组的区分。
进一步,所述步骤3)中,A律压缩公式F(x)为:
式中,A是压缩参数,x是需要压缩的归一化后的权值。
进一步,所述步骤3)中,在进行A律压缩时,线性的11+1位数据,默认其最高位为符号位,压缩时要保持最高位符号位不变;将压缩后的码字格式定义为PSSSQQQQ,相当于将正负权值输入分为8个区段(0-7),其中P(7)为符号位;SSS(4-6)表示段值;QQQQ(0-3)表示量化值。
进一步,所述步骤3)中,具体压缩编码过程如下:将归一化后的连接权值分别与最小量化间隔相除计算出每个权值含有的量化单位,对权值的量化单位进行二进制编码,将编码后的二进制数在输入值与压缩编码间的关系表中查找得到相应的压缩后的码字,该码字即为压缩后的连接权值。
进一步,所述输入值与压缩编码间的关系表为:
其中,0代表正,1代表负,压缩前码字符号放在最高位,压缩后码字符号放在最高位,×为压缩中丢弃的比特数。
一种如上述压缩方法的使用方法,即利用压缩后权值进行决策时的使用方法,其特征在于包括以下步骤:1)将非线性编码转换成线性的二进制编码;2)分组合并:根据分组标识符,如果属于分组0,压缩后权值减少偏移常量C0;如果属于分组1,压缩后权值减少偏移常量C1。
进一步,所述步骤1)中,转换时先不考虑符号位,将存储的压缩码字的低7位通过从A律压缩码字到线性码字的扩展转换表得到扩展后的无符号位的11位线性码字,再加上存储的符号位码即得出线性的12位线性码字。
进一步,所述从A律压缩码字到线性码字的扩展转换表为:
本发明由于采取以上技术方案,其具有以下优点:1、本发明的压缩方法与同类方法相比,本发明适用于神经网络中权值的大规模存储,保证了系统性能,显著降低了连接权值存储所需的容量,有利于深度神经网络在嵌入式系统中的应用。2、本发明是基于神经网络应用在资源有限的嵌入式系统中的一个关键环节,对连接权值进行压缩后存储可以有效解决连接权值存储容量大与有限存储空间之间的矛盾。
附图说明
图1是现有典型的人工神经元模型示意图;
图2是本发明的连接权值的压缩存储流程示意图;
图3是本发明分组前的权值分布示意图;
图4是本发明分组后的权值分布示意图;
图5是本发明的权值数据分组、压缩数据格式;
图6是本发明的权值数据解压、数据分组格式。
具体实施方式
下面结合附图和实施例对本发明进行详细的描述。
如图2所示,本发明提供一种基于非均匀量化的神经网络权值压缩方法,该方法是针对神经网络在训练完成后得到的连接权值进行分组,最大值归一化以及压缩编码。具体过程如下:
1)由于在连接权值的训练过程中,通常要进行剪支操作,导致训练得到的神经网络权值分布呈现为双驼峰分布,如图3所示。故基于数据概率对连接权值分组:
1.1)将权值以0为中心,左右平均分成两组:分组0和分组1。
1.2)在分组0中权值增加偏移值C0,该偏移值为分组0的均值,使得权值负值空间域的数据集均值近似为0。
1.3)在分组1同样增加偏移值C1,该偏移值为分组1的均值,使得权值正值空间域的数据集均值也近似为0。
1.4)通过分组处理后,分组0和分组1近似服从均值为0的高斯分布,如图4所示。
其中,通过分组后,需要增加一位分组标识符进行分组的区分。
2)最大值归一化:将分组后的连接权值做最大值归一化处理,使得连接权值的幅度值处于[-1 1]。
3)将归一化后的连接权值采用非均匀量化的A律压缩进行压缩编码,A律压缩公式F(x)为:
式中,A是压缩参数,取值不同其压缩特性亦不相同,国标采用A=87.6的13折线压缩方式。x是需要压缩的归一化后的权值。
在进行A律压缩时,线性的11+1位数据,默认其最高位为符号位,压缩时要保持最高位符号位不变。将压缩后的码字格式定义为PSSSQQQQ,相当于将正负权值输入分为8个区段(0-7)。其中P(7)为符号位;SSS(4-6)表示段值;QQQQ(0-3)表示量化值。这种编码方式降低了连接权值的存储容量,且使压缩、解压变得简洁而有效率。
输入值与压缩编码间的关系如表1所示:
表1从线性到A律的压缩转换
其中符号位:“0”代表正,“1”代表负,压缩前码字符号放在最高位(比特第12位),压缩后码字符号放在最高位(比特第8位),为了简化未写出。abcd表示四位二进制数。在压缩前码字中,当线性码只有四位时abcd表示这四位二进制码,当线性码超过4位时abcd由最高位“1”之后的四位表示。在压缩后码字中abcd表示量化值。×为压缩中丢弃的比特数,输入值越大,被丢弃的比特数越多。也就是说,数值小的连接权值,由于需要被更细致的数值描述,因此被丢弃的比特数少,而对于数值大的连接权值,被丢弃的比特数可以多些,通过上述压缩方法,在显著降低量化位数的情况下,整体的压缩量化损失较小。
具体压缩编码过程如下:
将归一化后的连接权值分别与最小量化间隔(12位线性码对应最小量化间隔为1/2048)相除计算出每个权值含有的量化单位,对权值的量化单位进行二进制编码,将编码后的二进制数在表1中查找得到相应的压缩后的码字。该码字即为压缩后的连接权值。
下面取归一化后连接权值数据集中的一个具体数据进行举例说明。
设数据集中的一个权值is=-0.62,取绝对值后为Is=0.62,Is与最小量化间隔相除得到权值含有的量化单位,可计算Is=0.62×2048=1269.76≈1270Δ个量化单位。
1270=1024+128+64+32+16+4+2=210+27+26+25+24+22+21
所以相应的12位线性码为110011110110。取除去最高位符号位后的低11位“10011110110”根据从线性到A律的压缩转换表可以得出压缩后码字位为“1110011”,加上符号位后最终得到的压缩码字为11110011。
将所有连接权值压缩后可以在嵌入式平台中进行存储以备神经网络决策时使用。如上所述,所提出的基于连接权值分组压缩的存储数据格式如图5所示。
本发明还提供一种基于非均匀量化的神经网络权值压缩使用方法,即利用压缩后权值进行决策时的使用方法,在利用压缩后的连接权值进行决策时,需要采用与压缩过程相反的两个模块。分别是非线性解压缩模块和分组合并模块;其步骤如下:
1)非线性解压缩模块:将存储的非线性编码转换成线性的二进制编码。
A律扩展原理定义为:
从A律压缩码字到线性码字的扩展转换如表2所示,转换时先不考虑符号位,将存储的压缩码字的低7位通过转换表得到扩展后的无符号位的11位线性码字,再加上存储的符号位码即可得出线性的12位线性码字。解压缩的过程如表2表示。
表2从压缩码字到线性码字的解压缩对应表
2)分组合并:
根据分组标识符,如果属于分组0,压缩后权值减少偏移常量C0;如果属于分组1,压缩后权值减少偏移常量C1,如图6所示。
上述各实施例仅用于说明本发明,各部件的结构、尺寸、设置位置及形状都是可以有所变化的,在本发明技术方案的基础上,凡根据本发明原理对个别部件进行的改进和等同变换,均不应排除在本发明的保护范围之外。
Claims (7)
1.一种基于非均匀量化的神经网络权值压缩方法,其特征在于包括以下步骤:
1)基于数据概率对连接权值分组;
2)最大值归一化:将分组后的连接权值做最大值归一化处理,使得连接权值的幅度值处于[-1 1];
3)将归一化后的连接权值采用非均匀量化的A律压缩进行压缩编码;
所述步骤1)中,分组过程如下:
1.1)将权值以0为中心,左右平均分成两组:分组0和分组1;
1.2)在分组0中权值增加偏移值C0,该偏移值为分组0的均值,使得权值负值空间域的数据集均值近似为0;
1.3)在分组1同样增加偏移值C1,该偏移值为分组1的均值,使得权值正值空间域的数据集均值也近似为0;
1.4)通过分组处理后,分组0和分组1近似服从均值为0的高斯分布,并增加一位分组标识符进行分组的区分;
所述步骤3)中,在进行A律压缩时,线性的11+1位数据,默认其最高位为符号位,压缩时要保持最高位符号位不变;将压缩后的码字格式定义为PSSSQQQQ,相当于将正负权值输入分为8个区段(0-7),其中P(7)为符号位;SSS(4-6)表示段值;QQQQ(0-3)表示量化值。
3.如权利要求1或2所述的一种基于非均匀量化的神经网络权值压缩方法,其特征在于:所述步骤3)中,具体压缩编码过程如下:将归一化后的连接权值分别与最小量化间隔相除计算出每个权值含有的量化单位,对权值的量化单位进行二进制编码,将编码后的二进制数在输入值与压缩编码间的关系表中查找得到相应的压缩后的码字,该码字即为压缩后的连接权值。
5.一种如权利要求1至4任一项所述压缩方法的使用方法,即利用压缩后权值进行决策时的使用方法,其特征在于包括以下步骤:
1)将非线性编码转换成线性的二进制编码;
2)分组合并:根据分组标识符,如果属于分组0,压缩后权值减少偏移常量C0;如果属于分组1,压缩后权值减少偏移常量C1。
6.如权利要求5所述的使用方法,其特征在于:所述步骤1)中,转换时先不考虑符号位,将存储的压缩码字的低7位通过从A律压缩码字到线性码字的扩展转换表得到扩展后的无符号位的11位线性码字,再加上存储的符号位码即得出线性的12位线性码字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711318643.0A CN108133266B (zh) | 2017-12-12 | 2017-12-12 | 一种基于非均匀量化的神经网络权值压缩方法及使用方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711318643.0A CN108133266B (zh) | 2017-12-12 | 2017-12-12 | 一种基于非均匀量化的神经网络权值压缩方法及使用方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108133266A CN108133266A (zh) | 2018-06-08 |
CN108133266B true CN108133266B (zh) | 2021-07-09 |
Family
ID=62390145
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711318643.0A Active CN108133266B (zh) | 2017-12-12 | 2017-12-12 | 一种基于非均匀量化的神经网络权值压缩方法及使用方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108133266B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109102064B (zh) * | 2018-06-26 | 2020-11-13 | 杭州雄迈集成电路技术股份有限公司 | 一种高精度的神经网络量化压缩方法 |
CN109190759A (zh) * | 2018-08-01 | 2019-01-11 | 西安电子科技大学 | 一种基于{-1,+1}编码的神经网络模型压缩与加速方法 |
CN111247797A (zh) * | 2019-01-23 | 2020-06-05 | 深圳市大疆创新科技有限公司 | 用于图像编解码的方法和装置 |
CN109886394B (zh) * | 2019-03-05 | 2021-06-18 | 北京时代拓灵科技有限公司 | 嵌入式设备中三值神经网络权值处理方法及装置 |
CN109993296B (zh) * | 2019-04-01 | 2020-12-29 | 安徽寒武纪信息科技有限公司 | 量化实现方法及相关产品 |
CN110705684A (zh) * | 2019-08-22 | 2020-01-17 | 中国科学院计算技术研究所 | 基于端云协同的环境自适应学习方法及系统 |
CN114781650B (zh) * | 2022-04-28 | 2024-02-27 | 北京百度网讯科技有限公司 | 一种数据处理方法、装置、设备以及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105007106A (zh) * | 2015-06-15 | 2015-10-28 | 大唐移动通信设备有限公司 | 一种信号压缩方法、bbu及其分布式基站系统 |
KR20170128080A (ko) * | 2016-05-13 | 2017-11-22 | 삼성전자주식회사 | 신경 네트워크를 구현하는 방법 및 장치 |
-
2017
- 2017-12-12 CN CN201711318643.0A patent/CN108133266B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105007106A (zh) * | 2015-06-15 | 2015-10-28 | 大唐移动通信设备有限公司 | 一种信号压缩方法、bbu及其分布式基站系统 |
KR20170128080A (ko) * | 2016-05-13 | 2017-11-22 | 삼성전자주식회사 | 신경 네트워크를 구현하는 방법 및 장치 |
Non-Patent Citations (2)
Title |
---|
INCREMENTAL NETWORK QUANTIZATION: TOWARDS LOSSLESS CNNS WITH LOW-PRECISION WEIGHTS;Aojun Zhou et al.;《arXiv》;20170825;第1-3节 * |
非均匀量化技术在空空导弹振动遥测中的应用研究;罗艳强等;《航空兵器》;20091231;第2-4节 * |
Also Published As
Publication number | Publication date |
---|---|
CN108133266A (zh) | 2018-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108133266B (zh) | 一种基于非均匀量化的神经网络权值压缩方法及使用方法 | |
CN108764471B (zh) | 基于特征冗余分析的神经网络跨层剪枝方法 | |
CN105184362B (zh) | 基于参数量化的深度卷积神经网络的加速与压缩方法 | |
CN109543838B (zh) | 一种基于变分自编码器的图像增量学习方法 | |
CN104881449B (zh) | 基于流形学习数据压缩哈希的图像检索方法 | |
CN111242287A (zh) | 一种基于通道l1范数剪枝的神经网络压缩方法 | |
CN106934458A (zh) | 基于深度学习的多层自动编码方法及系统 | |
CN108921007A (zh) | 一种基于SqueezeNet的手写体数字识别方法 | |
CN104850837A (zh) | 手写文字的识别方法 | |
CN109815496A (zh) | 基于容量自适应收缩机制载体生成式文本隐写方法及装置 | |
CN114092747A (zh) | 基于深度元度量模型互学习的小样本图像分类方法 | |
CN110569967A (zh) | 一种基于算术编码的神经网络模型压缩加密方法及系统 | |
CN110751265A (zh) | 一种轻量型神经网络构建方法、系统及电子设备 | |
CN108197707A (zh) | 基于全局误差重建的卷积神经网络的压缩方法 | |
CN108629412A (zh) | 一种基于无网格最大互信息准则的神经网络训练加速方法 | |
CN112418424A (zh) | 一种具有极高压缩比的剪枝深度神经网络的分层稀疏编码方法 | |
CN117041359A (zh) | 一种信息数据高效压缩传输方法 | |
CN116976428A (zh) | 模型训练方法、装置、设备及存储介质 | |
CN114301889B (zh) | 一种基于权重压缩的高效联邦学习方法及系统 | |
Xiong et al. | A dictionary learning algorithm for multi-channel neural recordings | |
CN112784625A (zh) | 一种行人重识别模型的加速与压缩的方法 | |
CN110633787A (zh) | 基于多比特神经网络非线性量化的深度神经网络压缩方法 | |
CN113688989B (zh) | 深度学习网络加速方法、装置、设备及存储介质 | |
CN110533157A (zh) | 一种基于svd和剪枝用于深度循环神经网络的压缩方法 | |
Seo et al. | Hybrid approach for efficient quantization of weights in convolutional neural networks |
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 |