CN113762496B - 一种降低低比特卷积神经网络推理运算复杂度的方法 - Google Patents
一种降低低比特卷积神经网络推理运算复杂度的方法 Download PDFInfo
- Publication number
- CN113762496B CN113762496B CN202010497777.9A CN202010497777A CN113762496B CN 113762496 B CN113762496 B CN 113762496B CN 202010497777 A CN202010497777 A CN 202010497777A CN 113762496 B CN113762496 B CN 113762496B
- Authority
- CN
- China
- Prior art keywords
- quantization
- quantized
- feature map
- int
- bit
- 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
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 15
- 238000013139 quantization Methods 0.000 claims abstract description 53
- 238000013528 artificial neural network Methods 0.000 claims abstract description 8
- 230000004913 activation Effects 0.000 claims abstract description 5
- 238000012549 training Methods 0.000 claims abstract description 5
- 238000004321 preservation Methods 0.000 claims abstract description 4
- 238000007667 floating Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 4
- 230000008569 process Effects 0.000 abstract description 4
- 238000011002 quantification Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 8
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 238000007493 shaping process 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
-
- 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
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
-
- 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 Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明提供一种降低低比特卷积神经网络推理运算复杂度的方法,包括S1神经网络训练结束后,利用保存的数据进行量化,假设第i层的量化如下: 其中δi为激活函数,QA为feature map的量化公式,Qw为权重的量化公式;S2当S1中公式的参数符合条件,量化通过定点数的运算获得:S3从feature map的量化确定阈值:feature map的量化:由feature map的量化公式直接推出阈值为(0.5,1.5…(2k‑0.5)),其中k是量化的比特位宽;因为阈值之间的距离都是1.0,所以在最终量化时只需保存其中则阈值其中k是量化的比特位宽;S4由于量化为低比特时,量化后feature map的数值确定,并且QA为均匀量化,所以S2中的通过和一系列阈值(T1,T2…Tn)比较获得最终的量化结果。本申请解决低比特模型推理过程计算复杂度和计算资源需求大的问题。
Description
技术领域
本发明涉及神经网络加速技术领域,特别涉及一种降低低比特卷积神经网络推理运算复杂度的方法。
背景技术
近年来,随着科技的飞速发展,大数据时代已经到来。深度学习以深度神经网络(DNN)作为模型,在许多人工智能的关键领域取得了十分显著的成果,如图像识别、增强学习、语义分析等。卷积神经网络(CNN)作为一种典型的DNN结构,能有效提取出图像的隐层特征,并对图像进行准确分类,在近几年的图像识别和检测领域得到了广泛的应用。
特别地,乘移位实现32bit量化为低比特:将量化卷积运算出来的结果保存为32bit整形,然后再根据之前预先计算出来的参数,做乘法和移位操作来实现32bit转低比特。
然而,现有技术中对32bit量化为低比特时,由于需要保证量化后的精度,所以在做量化的过程还需要做一系列的加法和比较运算,这样会大大增加计算复杂度和计算资源特别对于量化到2bit的时候,这种代价往往太大。
此外,现有技术中的常用术语如下:
卷积神经网络(Convolutional Neural Networks,CNN):是一类包含卷积计算且具有深度结构的前馈神经网络。
量化:量化指将信号的连续取值(或者大量可能的离散取值)近似为有限多个(或较少的)离散值的过程。
低比特:将数据量化为位宽为8bit,4bit或者2bit的数据。
推理:神经网络训练结束后,利用保存的数据进行运算的过程。
发明内容
本申请提出了一种降低低比特卷积神经网络推理运算复杂度的方法,旨在克服上述现有技术中存在的缺陷,解决现有低比特模型推理过程计算复杂度和计算资源需求大的问题。
具体地,本发明提供一种降低低比特卷积神经网络推理运算复杂度的方法,所述方法包括以下步骤:
S1,神经网络训练结束后,利用保存的数据进行量化,
假设第i层的量化如下所示:
其中δi为激活函数,QA为feature map的量化公式,Qw为权重的量化公式;
S2,当S1中公式的参数符合以下条件:
1)、用浮点标量缩放的定点数来表示即/>wint是用整数表示的定点数;
2)、用浮点标量缩放的定点数来表示即/>xint是用整数表示的定点数;
3)、δi为单调函数;
则,量化通过定点数的运算来获得,即:
S3,从feature map的量化确定阈值:
feature map的量化公式为:
由上式feature map的量化公式可以直接推出阈值为(0.5,1.5…(2k-0.5)),其中k是量化的比特位宽;
因为阈值之间的距离都是1.0,所以在最终量化时只需保存其中/>则阈值/>其中k是量化的比特位宽;
S4,由于量化为低比特时,量化后feature map的数值已经确定下来,并且QA为均匀量化,所以S2中的δi(swsxsBN(wint·xint+bi/(swsxsBN)))通过和步骤S3中一系列的所述阈值(T1,T2…Tn)比较来获得最终的量化结果。
所述步骤S2中当量化为低比特2bit时,量化后feature map的取值为0,1,2,3。
所述步骤S2中由于δi为单调函数,swsx>0,所以也可以通过(wint·xint+bi/(swsxsBN))和之间的比较来获得量化后的结果。
所述步骤S4中由于sBN每个通道是不一样的,所以保存阈值时需要每个通道都需要保存一个。
由此,本申请的优势在于:
1.直接通过阈值比较了实现32bit量化为低比特,从而降低了运算的复杂度;
2.减少了量化模型的整体运行时间;
3.减少了运算资源的需求;
避免了64bit乘64bit的运算。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是本发明方法的流程示意图。
具体实施方式
为了能够更清楚地理解本发明的技术内容及优点,现结合附图对本发明进行进一步的详细说明。
如图1所示,本发明的一种降低低比特卷积神经网络推理运算复杂度的方法,所述方法包括以下步骤:
S1,神经网络训练结束后,利用保存的数据进行量化,
假设第i层的量化如下所示:
其中δi为激活函数,QA为feature map的量化公式,Qw为权重的量化公式;
S2,当S1中公式的参数符合以下条件:
1)、用浮点标量缩放的定点数来表示即/>wint是用整数表示的定点数;
2)、用浮点标量缩放的定点数来表示即/>xint是用整数表示的定点数;
3)、δi为单调函数;
则,量化通过定点数的运算来获得,即:
S3,从feature map的量化确定阈值:
feature map的量化公式为:
由上式feature map的量化公式可以直接推出阈值为(0.5,1.5…(2k-0.5)),其中k是量化的比特位宽;
因为阈值之间的距离都是1.0,所以在最终量化时只需保存其中/>则阈值/>其中k是量化的比特位宽;
S4,由于量化为低比特时,量化后feature map的数值已经确定下来,并且QA为均匀量化,所以S2中的δi(swsxsBN(wint·xint+bi/(swsxsBN)))通过和步骤S3中一系列的所述阈值(T1,t2…Tn)比较来获得最终的量化结果。
特别地,本申请的方法还可以表述为以下:
假设第i层的量化计算如下所示:
其中δi为激活函数,QA为feature map的量化公式,Qw为权重的量化公式
上式中的参数符合以下条件:
1、可以用浮点标量缩放的定点数来表示即/>wint是用整数表示的定点数
2、可以用浮点标量缩放的定点数来表示即/>xint是用整数表示的定点数
3、δi为单调函数
所以计算最终的可以通过定点数的运算来求得即:
由于量化为低比特时,量化后feature map的数值其实就已经确定下来了(以2bit为例,feature map的取值为0,1,2,3),并且QA为均匀量化,所以δi(swsxsBN(wint·xint+bi/(swsxsBN)))可以通过和一系列的阈值(T1,T2…Tn)比较来获得量化结果,由于δi为单调函数,swsx>0,所以也可以通过(wint·xint+bi/(swsxsBN)和之间的比较来获得量化后的结果。
阈值的确定需要从feature map的量化公式入手。
feature map的量化公式为:
由上式可以直接推出阈值为(0.5,1.5…(2k-0.5)),其中k是量化的比特位宽。因为阈值之间的距离都是1.0,所以我们在最终量化时只需保存其中则阈值阈值/> 其中k是量化的比特位宽;由于sBN每个通道是不一样的,所以保存阈值时需要每个通道都需要保存一个。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种降低低比特卷积神经网络推理运算复杂度的方法,其特征在于,所述方法适用于图像识别和检测,包括以下步骤:
S1,神经网络训练结束后,利用保存的数据进行量化,
假设第i层的量化如下所示:
其中δi为激活函数,QA为feature map的量化公式,Qw为权重的量化公式;
S2,当S1中公式的参数符合以下条件:
1)、用浮点标量缩放的定点数来表示即/>wint是用整数表示的定点数;
2)、用浮点标量缩放的定点数来表示即/>xint是用整数表示的定点数;
3)、δi为单调函数;
则,量化通过定点数的运算来获得,即:
S3,从feature map的量化确定阈值:
feature map的量化公式为:
由上式feature map的量化公式直接推出阈值为(0.5,15…(2k-0.5)),其中k是量化的比特位宽;
因为阈值之间的距离都是1.0,所以在最终量化时只需保存其中则阈值/>其中k是量化的比特位宽;
S4,由于量化为低比特时,量化后feature map的数值已经确定下来,并且QA为均匀量化,所以s2中的δi(swsxsBN(wint·xint+bi/(swsxsBN)))通过和步骤S3中一系列的所述阈值(T1,T2…Tn)比较来获得最终的量化结果。
2.根据权利要求1所述的一种降低低比特卷积神经网络推理运算复杂度的方法,其特征在于,所述步骤S2中当量化为低比特2bit时,量化后feature map的取值为0,1,2,3。
3.根据权利要求1所述的一种降低低比特卷积神经网络推理运算复杂度的方法,其特征在于,所述步骤S2中由于δi为单调函数,swsx>0,所以也可以通过(wint·xint+bi/(swsxsBN))和之间的比较来获得量化后的结果。
4.根据权利要求1所述的一种降低低比特卷积神经网络推理运算复杂度的方法,其特征在于,所述步骤S4中由于sBN每个通道是不一样的,所以保存阈值时需要每个通道都需要保存一个。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010497777.9A CN113762496B (zh) | 2020-06-04 | 2020-06-04 | 一种降低低比特卷积神经网络推理运算复杂度的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010497777.9A CN113762496B (zh) | 2020-06-04 | 2020-06-04 | 一种降低低比特卷积神经网络推理运算复杂度的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113762496A CN113762496A (zh) | 2021-12-07 |
CN113762496B true CN113762496B (zh) | 2024-05-03 |
Family
ID=78783418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010497777.9A Active CN113762496B (zh) | 2020-06-04 | 2020-06-04 | 一种降低低比特卷积神经网络推理运算复杂度的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113762496B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107944458A (zh) * | 2017-12-08 | 2018-04-20 | 北京维大成科技有限公司 | 一种基于卷积神经网络的图像识别方法和装置 |
GB201821150D0 (en) * | 2018-12-21 | 2019-02-06 | Imagination Tech Ltd | Methods and systems for selecting quantisation parameters for deep neural neitworks using back-propagation |
CN109389212A (zh) * | 2018-12-30 | 2019-02-26 | 南京大学 | 一种面向低位宽卷积神经网络的可重构激活量化池化*** |
CN110188877A (zh) * | 2019-05-30 | 2019-08-30 | 苏州浪潮智能科技有限公司 | 一种神经网络压缩方法与装置 |
JP2019160319A (ja) * | 2018-03-09 | 2019-09-19 | キヤノン株式会社 | 多階層ニューラルネットワークモデルを最適化して適用する方法及び装置、及び記憶媒体 |
CN110363281A (zh) * | 2019-06-06 | 2019-10-22 | 上海交通大学 | 一种卷积神经网络量化方法、装置、计算机和存储介质 |
US10592799B1 (en) * | 2019-01-23 | 2020-03-17 | StradVision, Inc. | Determining FL value by using weighted quantization loss values to thereby quantize CNN parameters and feature values to be used for optimizing hardware applicable to mobile devices or compact networks with high precision |
CN111105007A (zh) * | 2018-10-26 | 2020-05-05 | 中国科学院半导体研究所 | 用于目标检测的深度卷积神经网络的压缩加速方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11270187B2 (en) * | 2017-11-07 | 2022-03-08 | Samsung Electronics Co., Ltd | Method and apparatus for learning low-precision neural network that combines weight quantization and activation quantization |
US11755880B2 (en) * | 2018-03-09 | 2023-09-12 | Canon Kabushiki Kaisha | Method and apparatus for optimizing and applying multilayer neural network model, and storage medium |
US11645493B2 (en) * | 2018-05-04 | 2023-05-09 | Microsoft Technology Licensing, Llc | Flow for quantized neural networks |
-
2020
- 2020-06-04 CN CN202010497777.9A patent/CN113762496B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107944458A (zh) * | 2017-12-08 | 2018-04-20 | 北京维大成科技有限公司 | 一种基于卷积神经网络的图像识别方法和装置 |
JP2019160319A (ja) * | 2018-03-09 | 2019-09-19 | キヤノン株式会社 | 多階層ニューラルネットワークモデルを最適化して適用する方法及び装置、及び記憶媒体 |
CN111105007A (zh) * | 2018-10-26 | 2020-05-05 | 中国科学院半导体研究所 | 用于目标检测的深度卷积神经网络的压缩加速方法 |
GB201821150D0 (en) * | 2018-12-21 | 2019-02-06 | Imagination Tech Ltd | Methods and systems for selecting quantisation parameters for deep neural neitworks using back-propagation |
CN109389212A (zh) * | 2018-12-30 | 2019-02-26 | 南京大学 | 一种面向低位宽卷积神经网络的可重构激活量化池化*** |
US10592799B1 (en) * | 2019-01-23 | 2020-03-17 | StradVision, Inc. | Determining FL value by using weighted quantization loss values to thereby quantize CNN parameters and feature values to be used for optimizing hardware applicable to mobile devices or compact networks with high precision |
CN110188877A (zh) * | 2019-05-30 | 2019-08-30 | 苏州浪潮智能科技有限公司 | 一种神经网络压缩方法与装置 |
CN110363281A (zh) * | 2019-06-06 | 2019-10-22 | 上海交通大学 | 一种卷积神经网络量化方法、装置、计算机和存储介质 |
Non-Patent Citations (5)
Title |
---|
Quantizing deep convolutional networks for efficient inference: A whitepaper;Krishnamoorthi R;arXiv preprint arXiv:1806.08342;20181231;全文 * |
Towards effective low-bitwidth convolutional neural networks;Zhuang B等;Proceedings of the IEEE conference on computer vision and pattern recognition;20181231;全文 * |
卷积神经网络低位宽量化推理研究;付强等;计算机与数字工程;20191231;全文 * |
基于位量化的深度神经网络加速与压缩研究;牟帅;中国硕士学位论文全文库 信息科技辑;20180615;全文 * |
面向"边缘"应用的卷积神经网络量化与压缩方法;蔡瑞初等;计算机应用;20180423(第09期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113762496A (zh) | 2021-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112116030A (zh) | 一种基于向量标准化和知识蒸馏的图像分类方法 | |
CN112183742B (zh) | 基于渐进式量化和Hessian信息的神经网络混合量化方法 | |
CN111612147A (zh) | 深度卷积网络的量化方法 | |
CN110874625B (zh) | 一种数据处理方法及装置 | |
CN111667068A (zh) | 一种基于掩码的深度图卷积神经网络模型剪枝方法与*** | |
CN111814973B (zh) | 一种适用于神经常微分方程网络计算的存内计算*** | |
CN112381205A (zh) | 一种神经网络低比特量化方法 | |
CN109978144B (zh) | 一种模型压缩方法和*** | |
CN110647990A (zh) | 基于灰色关联分析的深度卷积神经网络模型的裁剪方法 | |
CN112561050B (zh) | 一种神经网络模型训练方法及装置 | |
CN114943335A (zh) | 一种三值神经网络逐层优化方法 | |
CN113408696B (zh) | 深度学习模型的定点量化方法及装置 | |
CN113762496B (zh) | 一种降低低比特卷积神经网络推理运算复杂度的方法 | |
CN116884398A (zh) | 语音识别方法、装置、设备和介质 | |
CN114169513B (zh) | 神经网络的量化方法、装置、存储介质及电子设备 | |
CN110378467A (zh) | 一种针对深度学习网络参数的量化方法 | |
CN112446461A (zh) | 一种神经网络模型训练方法及装置 | |
CN112488291B (zh) | 一种神经网络8比特量化压缩方法 | |
CN109389221A (zh) | 一种神经网络压缩方法 | |
CN117973480A (zh) | 校准神经网络量化的方法、装置、设备、介质和程序产品 | |
CN113762452B (zh) | 一种量化prelu激活函数的方法 | |
CN114372565A (zh) | 一种用于边缘设备的目标检测网络压缩方法 | |
CN113593538B (zh) | 语音特征的分类方法、相关设备及可读存储介质 | |
CN113762499A (zh) | 一种分通道量化权重的方法 | |
CN113762500B (zh) | 一种卷积神经网络在量化时提高模型精度的训练方法 |
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 |