CN112200296A - 网络模型量化方法、装置、存储介质及电子设备 - Google Patents
网络模型量化方法、装置、存储介质及电子设备 Download PDFInfo
- Publication number
- CN112200296A CN112200296A CN202010763426.8A CN202010763426A CN112200296A CN 112200296 A CN112200296 A CN 112200296A CN 202010763426 A CN202010763426 A CN 202010763426A CN 112200296 A CN112200296 A CN 112200296A
- Authority
- CN
- China
- Prior art keywords
- network model
- quantization
- floating point
- target
- point network
- 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
- 238000000034 method Methods 0.000 title claims abstract description 62
- 238000003860 storage Methods 0.000 title claims abstract description 19
- 238000011002 quantification Methods 0.000 title claims description 7
- 238000013139 quantization Methods 0.000 claims abstract description 711
- 238000005303 weighing Methods 0.000 claims abstract description 29
- 238000009826 distribution Methods 0.000 claims description 41
- 238000012549 training Methods 0.000 claims description 39
- 238000004422 calculation algorithm Methods 0.000 claims description 20
- 238000010845 search algorithm Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 description 19
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000005457 optimization Methods 0.000 description 6
- 238000013135 deep learning Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- JDDUQGRUPLKDNT-IDTAVKCVSA-N (2r,3r,4s,5s)-2-(6-aminopurin-9-yl)-5-(2-methylpropylsulfanylmethyl)oxolane-3,4-diol Chemical compound O[C@@H]1[C@H](O)[C@@H](CSCC(C)C)O[C@H]1N1C2=NC=NC(N)=C2N=C1 JDDUQGRUPLKDNT-IDTAVKCVSA-N 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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/047—Probabilistic or stochastic 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Operations Research (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Neurology (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本申请实施例公开了一种网络模型量化方法、装置、存储介质及电子设备,其中,通过获取需要进行网络模型量化的一目标浮点网络模型;以及确定对应目标浮点网络模型的输入值的一非对称量化区间;以及确定对应目标浮点网络模型的权重值的一对称量化区间;然后根据前述非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据前述对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。由此,通过将目标浮点网络模型定点量化为定点网络模型,使得其数据类型由浮点类型转换为定点类型,使得模型尺寸得以降低,并且,网络模型中的所有运算也由浮点运算转换为定点运算,还使得其资源占用得以降低。
Description
技术领域
本申请涉及人工智能技术领域,具体涉及一种网络模型量化方法、装置、存储介质及电子设备。
背景技术
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括机器学习(Machine Learning,ML)技术,其中,深度学习(Deep Learning,DL)是机器学习中一个新的研究方向,它被引入机器学习以使其更接近于最初的目标—人工智能。目前,深度学习主要应用在计算机视觉、自然语言处理等领域。
深度学习是学习样本数据的内在规律和表示层次,这些学习过程中获得的信息对诸如文字,图像和声音等数据的解释有很大的帮助。利用深度学习技术,以及对应的训练数据集,能够训练得到实现不同功能的网络模型,比如,基于一训练数据集能够训练得到用于性别分类的网络模型,基于另一训练数据集能够训练得到图像优化的网络模型。
目前,随着人工智能技术的不断发展,网络模型被部署在如智能手机、平板电脑等电子设备上,用于增强电子设备的处理能力。比如,电子设备通过其部署的图像优化模型,可以对其拍摄的图像进行优化,提升图像质量。
从存储的角度来看,现有的网络模型都是采用浮点型进行存储的,其通常需要占用电子设备几十上百兆的存储空间。从运算的角度来看,浮点型数据的运算会占用大量的计算资源,容易影响电子设备的正常运行。因此,如何降低网络模型的尺寸和资源占用是当前亟需解决的问题。
发明内容
本申请提供了一种网络模型量化方法、装置、存储介质及电子设备,能够降低网络模型的尺寸和资源占用。
本申请提供一种网络模型量化方法,包括:
获取需要进行模型量化的一目标浮点网络模型;
确定对应所述目标浮点网络模型的输入值的一非对称量化区间;
确定对应所述目标浮点网络模型的权重值的一对称量化区间;
根据所述非对称量化区间对所述目标浮点网络模型的输入值进行定点量化,以及根据所述对称量化区间对所述目标浮点网络模型的权重值进行定点量化,得到对应所述目标浮点网络模型的一定点网络模型。
本申请提供一种网络模型量化装置,包括:
一网络模型获取模块,用于获取需要进行模型量化的一目标浮点网络模型;
一区间确定模块,用于确定对应所述目标浮点网络模型的输入值的一非对称量化区间;以及
用于确定对应所述目标浮点网络模型的权重值的一对称量化区间;
一网络模型量化模块,用于根据所述非对称量化区间对所述目标浮点网络模型的输入值进行定点量化,以及根据所述对称量化区间对所述目标浮点网络模型的权重值进行定点量化,得到对应所述目标浮点网络模型的一定点网络模型。
本申请提供一种存储介质,其上存储有一计算机程序,当所述计算机程序被一处理器加载时执行如本申请任一实施例提供的网络模型量化方法。
本申请提供的电子设备,包括一处理器和一存储器,所述存储器存储有计算机程序,在所述计算机程序被所述处理器加载时执行如本申请任一实施例提供的网络模型量化方法。
本申请中,通过获取需要进行网络模型量化的一目标浮点网络模型;以及确定对应目标浮点网络模型的输入值的一非对称量化区间;以及确定对应目标浮点网络模型的权重值的一对称量化区间;然后根据前述非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据前述对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。由此,通过将目标浮点网络模型定点量化为定点网络模型,使得其数据类型由浮点类型转换为定点类型,使得模型尺寸得以降低,并且,网络模型中的所有运算也由浮点运算转换为定点运算,还使得其资源占用得以降低。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的网络模型量化方法的应用场景示意图。
图2为本申请实施例提供的网络模型量化方法的一流程示意图。
图3是本申请实施例中提供的网络模型量化界面的示意图。
图4是本申请实施例中提供的选择子界面的示意图。
图5是本申请实施例中确定出的非对称量化区间的示意图。
图6是本申请实施例中确定出的对称量化区间的示意图。
图7是本申请实施例中涉及的网络模型的拓扑结构示意图。
图8是本申请实施例中获取一校准数据集示意图。
图9是本申请实施例提供的网络模型量化方法的另一流程示意图。
图10是本申请实施例中确定的目标浮点卷积网络模型的拓扑结构示意图。
图11是本申请实施例提供的网络模型量化装置300的一结构示意图。
图12是本申请实施例提供的电子设备400的一结构示意图。
具体实施方式
应当说明的是,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是通过所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其它具体实施例。
本申请实施例提供的方案涉及人工智能的机器学习技术,具体涉及网络模型的训练后阶段,通过如下实施例进行说明:
本申请实施例提供一种网络模型量化方法、网络模型量化装置、存储介质以及电子设备,其中,该网络模型量化方法的执行主体可以是本申请实施例中提供的网络模型量化装置,或者是本申请实施例提供的电子设备,其中该网络模型量化装置可以采用硬件或软件的方式实现。其中,电子设备的实体展现形式可以是智能手机、平板电脑、车载电脑、掌上电脑、笔记本电脑、或者台式电脑等配置有处理器(包括但不限于通用处理器、专用处理器等,其中专用处理器比如神经网络处理器、智能处理器等)而具有处理能力的设备。
请参照图1,图1为本申请实施例提供的网络模型量化方法的应用场景示意图,以网络模型量化方法应用于实体展现形式台式电脑的电子设备为例,电子设备可以获取需要进行网络模型量化的一目标浮点网络模型;确定对应目标浮点网络模型的输入值的一非对称量化区间;确定对应目标浮点网络模型的权重值的一对称量化区间;根据非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。由此,通过将目标浮点网络模型定点量化为定点网络模型,能够压缩网络模型的尺寸,并降低其资源占用。
请参照图2,图2为本申请实施例提供的网络模型量化方法的流程示意图,本申请实施例提供的网络模型量化方法的流程可以如下:
在101中,获取需要进行网络模型量化的一目标浮点网络模型。
目前,相关技术中在进行模型训练时,为了保证训练精度,训练完成的网络模型的数据类型通常为浮点类型,而浮点数据的存储需要占用较大的存储空间,浮点数据的运算也需要占用较多的计算资源。为此,本申请提供一种网络模型量化方法,能够将浮点网络模型量化为定点网络模型,定点数据相较于浮点数据占用更小的存储空间,并且,定点数据较浮点数据占用更少的计算资源。
以下以网络模型量化方法的执行主体为电子设备进行说明。
本申请实施例中,电子设备首先获取需要进行网络模型量化的一目标浮点网络模型。应当说明的是,本申请实施例中对于目标浮点网络模型的来源不做具体限制,可以是电子设备自身训练完成的浮点网络模型,也可以其它电子设备训练完成的浮点网络模型。
示例性的,电子设备可以在接收到用户输入的模型量化指令时,根据用户输入的模型量化指令获取到需要进行模型量化的目标浮点网络模型,还可以是在接收到其它电子设备传输的模型量化请求时,根据接收到的模型量化请求获取到需要进行模型量化的目标浮点网络模型。
应当说明的是,本申请实施例对于模型量化指令以及模型量化请求的设置均不做具体限定,可由本领域普通技术人员根据实际需要进行配置。
比如,电子设备可以通过包括指令输入接口的网络模型量化界面接收输入的模型量化指令,如图3所示,该指令输入接口可以为输入框的形式,用户可以在该输入框形式的指令输入接口中键入需要进行模型量化的浮点网络模型的模型标识信息,并输入确认信息(如直接按下键盘的回车键)以向电子设备输入模型量化指令,该模型量化指令携带有需要进行模型量化的浮点网络模型的模型标识信息。指示电子设备将标识信息对应的浮点网络模型作为目标浮点网络模型。此外,网络模型量化界面还包括提示信息“请选择需要进行模型量化的网络模型”。
又比如,在图3所示的网络模型量化界面中,还包括“打开”控件,一方面,电子设备在侦测到该打开控件被触发时,将在网络模型量化界面之上叠加显示选择子界面(如图4所示),该选择子界面向用户提供本地储存的可进行模型量化的浮点网络模型的图标,如浮点网络模型A、浮点网络模型B、浮点网络模型C、浮点网络模型D、浮点网络模型E、浮点网络模型F等浮点网络模型的图标,供用户查找并选中需要进行模型量化的浮点网络模型的图标;另一方面,用户可以在选中需要进行模型量化的浮点网络模型的图标之后,触发选择子界面提供的确认控件,以向电子设备输入模型量化指令,该模型量化指令与用户选中的浮点网络模型的图标相关联,指示电子设备将用户选中的浮点网络模型作为需要进行模型量化的目标浮点网络模型。
又比如,电子设备接收其它电子设备传输的模型量化请求,并解析出该模型量化请求所携带的模型标识信息,该模型标识信息指示需要进行模型量化的目标浮点网络模型。相应的,电子设备根据该模型标识信息从本地、或者其它电子设备等处获取到需要进行模型量化的目标浮点网络模型。
应当说明的是,本申请实施例中对于需要进行模型量化的目标浮点网络模型的结构不做具体限定,包括但不限于深度神经网络模型、循环神经网络模型以及卷积神经网络模型等。
在102中,确定对应目标浮点网络模型的输入值的一非对称量化区间。
应当说明的是,本申请实施例预先配置有输入值量化区间确定策略,该输入值量化区间确定策略用于描述如何确定目标浮点网络模型的输入值的量化区间。
本申请实施例中,输入值量化区间确定策略被配置为用于确定出包括负量化参数和正量化参数的非对称量化区间,其中,负量化参数为非对称量化区间的最小值,正量化参数为非对称量化区间的最大值,且负量化参数的绝对值与正量化参数的绝对值不相等。
相应的,电子设备在获取到需要进行模型量化的目标浮点网络模型之后时,进一步按照配置的输入值量化区间确定策略,相应确定出对应目标浮点网络模型的输入值的非对称量化区间。
比如,请参照图5,确定出对应目标浮点网络模型的输入值的非对称量化区间为[a,b],其中,a(负量化参数)、b(正量化参数)为实数,a取负值,b取正值,且|a|≠|b|。
在103中,确定对应目标浮点网络模型的权重值的一对称量化区间。
应当说明的是,本申请实施例还预先配置有权重值量化区间确定策略,该权重值量化区间确定策略用于描述如何确定目标浮点网络模型的权重值的量化区间。
本申请实施例中,区别于输入值量化区间确定策略,权重值量化区间确定策略被配置为用于确定出包括负量化参数和正量化参数的对称量化区间,其中,负量化参数为对称量化区间的最小值,正量化参数为对称量化区间的最大值,且负量化参数的绝对值与正量化参数的绝对值相等。
相应的,电子设备在获取到需要进行模型量化的目标浮点网络模型之后时,还按照配置的权重值量化区间确定策略,相应确定出对应目标浮点网络模型的权重值的对称量化区间。
比如,请参照图6,确定出对应目标浮点网络模型的权重值的对称量化区间为[-c,c],其中,c为实数,且取正值,-c表示负量化参数,c表示正量化参数。
应当说明的是,以上102和103的执行先后顺序不受序号大小的影响,可以是102在103之前执行,也可以是102在103之后执行,还可以是102和103并行执行。
在104中,根据非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。
本申请实施例中,在确定出对应目标浮点网络模型的输入值的非对称量化区间,以及确定出对应目标浮点网络模型的权重值的对称量化区间之后,电子设备即根据确定出的非对称量化区间对目标浮点网络模型的输入值进行定点量化,从而将目标浮点网络模型的输入值由浮点类型转换为定点类型;此外,电子设备还根据确定出的对称量化区间对目标浮点网络模型的权重值进行定点量化,从而将目标浮点网络模型的权重值由浮点类型转换为定点类型,由此得到对应目标浮点网络模型的一定点网络模型。
由上可知,本申请通过获取需要进行网络模型量化的一目标浮点网络模型;以及确定对应目标浮点网络模型的输入值的一非对称量化区间;以及确定对应目标浮点网络模型的权重值的一对称量化区间;然后根据前述非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据前述对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。由此,通过将目标浮点网络模型定点量化为定点网络模型,使得其数据类型由浮点类型转换为定点类型,使得模型尺寸得以降低,并且,网络模型中的所有运算也由浮点运算转换为定点运算,还使得其资源占用得以降低。
可选地,在一实施例中,确定对应目标浮点网络模型的输入值的一非对称量化区间,包括:
(1)获取对应目标浮点网络模型每一层输入值的一第一目标量化精度;
(2)根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
本领域普通技术人员可以理解的是,网络模型是分层的,即网络模型在推理时根据执行逻辑可以将网络模型划分为不同的层。比如,请参照图7,图示网络模型由3层组成,计为第一层、第二层、第二层。其中,图中圆形代表不同的算子,任意两个圆形之间的连线即代表了对应两个算子间的连接关系以及数据流向。
相应的,为了降低量化后网络模型的精度损失,在本申请实施例中以层为对象进行输入值的定点量化。
在确定对应目标浮点网络模型的输入值的一非对称量化区间时,电子设备首先获取对应目标浮点网络模型的每一层输入值的一量化精度,记为第一目标量化精度。
应当说明的是,量化精度用于描述量化后的数据类型,本申请使用kIB表示第一目标量化精度,比如IB-UkIB表示将输入值量化为kIB比特的无符号整数,IB-SkIB表示将输入值量化为kIB比特的有符号整数,其中,kIB取整数,U表示无符号,S表示有符号。
本申请实施例中,目标浮点网络模型中不同层输入值所对应的第一目标量化精度可以相同,也可以不同,具体可由本领域普通技术人员根据实际需要预先配置,其中,量化精度配置越高,量化后模型精度损失越小,但是占用计算资源越大。比如,可配置的第一目标量化精度比如IB-U4(表示将输入值量化为4比特的无符号整数)、IB-U8(表示将输入值量化为8比特的无符号整数)等。
此外,电子设备还根据目标浮点网络模型每一层输入值的一第一目标量化精度,相应按照配置的输入值量化区间确定策略,确定出对应目标浮点网络模型每一层输入值的非对称量化区间。
可选地,在一实施例中,根据非对称量化区间对目标浮点网络模型的输入值进行定点量化,包括:
根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化。
相应的,在对目标浮点网络模型的输入值进行定点量化时,电子设备即可根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化。
应当说明的是,本申请实施例中所提及的每一层均代指需要进行量化处理每一层,可以是目标浮点网络模型的部分层,也可以是目标浮点网络模型的全部层,具体可由本领域普通技术人员根据实际需要进行配置。
可选地,在一实施例中,根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间,包括:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
本申请实施例进一步提供一可选地输入值量化区间确定策略。
其中,确定输入值量化区间的目标是最小化量化前后输入值的均方误差,可以表达为如下优化问题:
其中,针对于一层输入值,NIB表示该层输入值的个数,r1表示该层输入值量化前的最小值,r2表示该层输入值量化前的最大值,SIB表示对该层输入值进行量化的量化尺度,b(取正实数)表示对应该层输入值的非对称量化区间的正量化参数,a(取负实数)表示对应该层输入值的非对称量化区间的负量化参数,表示该层量化后的第i个输入值,表示该层量化前的第i个输入值,round()表示取整函数,clip()表示截取函数,用于将范围外的数强制转换为范围内的数,
因此,通过求解以上问题,确定出a和b的最优解,从而得到对应该层输入值的非对称量化区间[a,b]。
应当说明的是,以上r1和r2的值可以利用校准数据集得出。
本申请实施例中,根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化可以表示为:
可以看出,量化后的输入值的取值范围为{0,1,……,2IB-1},比如,当某层输入值对应的第一目标量化强度取值为8时,该层输入值的取值范围为{0,1,……,255}。
可选地,在一实施例中,非对称量化区间包括一负量化参数和一正量化参数,根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间,包括:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索。
如上所述,目标浮点网络模型每一层输入值的非对称量化区间由一负量化参数和一正量化参数组成,可以表示为[a,b]。
应当说明的是,针对一层输入值,当固定其非对称量化区间[a,b]的正量化参数b为b+时,与之对应的负量化参数a可以在[min(r1,0),0]内采用黄金分割搜索的方式快速搜索得到;当b+在[0,max(r2,0)]内连续取值时,量化前后输入值的均方误差为b+的凸函数。
而当固定其非对称量化区间[a,b]的负量化参数a为a-时,正量化参数b可在[0,max(r2,0)]内采用黄金分割搜索的方式快速搜索得到;当a-在[min(r1,0),0]内连续取值时,量化前后输入值的均方误差为a-的凸函数。
根据上述特点,在确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,电子设备可以根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索,相应得到目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数的最优解。
可选地,在一实施例中,采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索,包括:
(1)确定负量化参数的一初始搜索范围;
(2)在初始搜索范围对负量化参数进行第一次黄金分割搜索,得到第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与第一候选负量化参数对应的一第一候选正量化参数,与第二候选负量化参数对应的一第二候选正量化参数;
(3)根据第一候选负量化参数、第一候选正量化参数、第二候选负量化参数以及第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在更新搜索范围对负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到负量化参数;
(4)采用黄金分割搜索算法搜索得到与负量化参数对应的正量化参数。
本申请实施例中,在采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索时,电子设备首先确定负量化参数的一初始搜索范围,比如,直接确定负量化参数的一初始搜索范围为[min(r1,0),0];然后,电子设备在该初始搜索范围对负量化参数进行第一次黄金分割搜索,得到第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与第一候选负量化参数对应的一第一候选正量化参数(即当第一候选负量化参数取值确定时,使得量化前后输入值最小的候选正量化参数),与第二候选负量化参数对应的一第二候选正量化参数(即当第二候选负量化参数取值确定时,使得量化前后输入值最小的候选正量化参数);然后,根据第一候选负量化参数、第一候选正量化参数、第二候选负量化参数以及第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在更新搜索范围对负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到负量化参数;然后,采用黄金分割搜索算法搜索得到与负量化参数对应的正量化参数。
可选地,在一实施例中,根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间,包括:
(1)获取一校准数据集,根据校准数据集获取目标浮点网络模型每一层输入值在量化前的统计分布;
(2)根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
本申请实施例进一步提供一可选地输入值量化区间确定策略。
其中,确定输入值量化区间的目标是最小化量化前后输入值的统计分布的KL散度,可以表达为如下优化问题:
其中,针对于一层输入值,DKL(rIB,qIB)表示该层输入值量化前后统计分布的KL散度,NIB表示该层输入值的个数,r1表示该层输入值量化前的最小值,r2表示该层输入值量化前的最大值,SIB表示对该层输入值进行量化的量化尺度,b表示对应该层输入值的非对称量化区间的正量化参数,a表示对应该层输入值的非对称量化区间的负量化参数,表示该层量化后的第i个输入值,表示该层量化前的第i个输入值,round()表示取整函数,clip()表示截取函数,用于将范围外的数强制转换为范围内的数,
相应的,通过求解以上问题,确定出a和b的最优解,从而得到对应该层输入值的非对称量化区间[a,b]。
应当说明的是,以上r1和r2的值可以利用校准数据集得出,即将校准数据集输入目标浮点网络模型进行推理,相应获取到每一层输入值的取值范围[r1,r2]。
本申请实施例中,根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化可以表示为:
可选地,根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间,包括:
(1)根据第一目标量化精度确定对应目标浮点网络模型每一层输入值的多个搜索宽度;
(2)以最小化量化前后输入值的统计分布的KL散度为目标,在多个搜索宽度采用黄金分割搜索算法搜索对应目标浮点网络模型每一层输入值的一非对称量化区间。
如上所述,目标浮点网络模型每一层输入值的非对称量化区间由一负量化参数和一正量化参数组成。
应当说明的是,针对一层输入值,当以最小化量化前后输入值的统计分布的KL散度为求取其非对称量化区间[a,b]的目标时,预先将量化前的输入值划分成B个bins,B取的整数倍,可以表示为相应的,可以通过选择bins的数量来决定非对称量化区间的宽度。相应的,在搜索非对称量化区间的最优解时,只需搜索的整数倍的bins对应的宽度,即只需搜索这B0个宽度,记为搜索宽度。对于每一固定的搜索宽度,对非对称量化区间[a,b]的搜索退化为一维搜索,可通过黄金分割搜索的方式快速搜索得到非对称量化区间[a,b]的最优解。
相应的,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,电子设备可以根据第一目标量化精度确定对应目标浮点网络模型每一层输入值的多个搜索宽度;然后以最小化量化前后输入值的统计分布的KL散度为目标,在多个搜索宽度采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层输入值的一非对称量化区间。
其中,本申请实施例中对于B的取值不做限制,可由本领域普通技术人员根据电子设备的处理能力取经验值。
可选地,在一实施例中,获取一校准数据集,包括:
(1)获取用于训练目标浮点网络模型的一训练集;
(2)抽取训练集的一子集作为校准数据集。
本申请实施例提供一可选地获取一校准数据集的方式。
其中,当用于训练目标浮点网络模型的训练集可以获取时,电子设备可以首先获取到用于训练目标浮点网络模型的一训练集,直接从该训练集中抽取一个子集作为校准数据集,如图8所示。应当说明的是,本申请实施例中对于抽取子集的方式不做具体限定,具体可由本领域普通技术人员根据实际需要进行配置。
可选地,获取一校准数据集,包括:
(1)获取目标浮点网络模型中网络参数的一分布特征;
(2)根据前述分布特征生成一目标数据集,目标数据集的数据分布与用于训练目标浮点网络模型的训练集的数据分布匹配;
(3)将前述目标数据集作为校准数据集。
本申请实施例提供一可选地获取一校准数据集的方式。
本申请实施例中,当用于训练目标浮点网络模型的训练集无法获取时,电子设备可以根据目标浮点网络模型的网络性质生成一个逼近训练集数据分布的数据集作为校准数据集。
其中,电子设备首先对目标浮点网络模型中的网络参数进行分析,得到其分布特征,然后根据该分布特征生成与用于训练目标浮点网络模型的训练集的数据分布所匹配的数据集,将该数据集作为校准数据集。
可选地,在一实施例中,确定对应目标浮点网络模型的权重值的一对称量化区间,包括:
(1)获取对应目标浮点网络模型每一层权重值的一第二目标量化精度;
(2)根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间;
根据对称量化区间对目标浮点网络模型的权重值进行定点量化,包括:
(3)根据目标浮点网络模型每一层权重值对应的一对称量化区间,对目标浮点网络模型每一层权重值进行定点量化。
本申请实施例中,为了降低量化后网络模型的精度损失,在本申请实施例中以层为对象进行权重值的定点量化。
其中,在确定对应目标浮点网络模型的权重值的一对称量化区间时,电子设备首先获取对应目标浮点网络模型的每一层权重值的量化精度,记为第二目标量化精度。
应当说明的是,量化精度用于描述量化后的数据类型,本申请使用kKB表示第二目标量化精度,比如KB-UkKB表示将权重值量化为kKB比特的无符号整数,KB-SkKB表示将权重值量化为kKB比特的有符号整数,其中,kKB取整数,U表示无符号,S表示有符号。
本申请实施例中,目标浮点网络模型中不同层权重值所对应的第二目标量化精度可以相同,也可以不同,具体可由本领域普通技术人员根据实际需要预先配置,其中,量化精度配置越高,量化后模型精度损失越小,但是占用计算资源越大。比如,可配置的第二目标量化精度比如KB-S4(表示将权重值量化为4比特的有符号整数)、KB-S8(表示将权重值量化为8比特的有符号整数)等。
此外,电子设备还根据目标浮点网络模型每一层权重值的一第二目标量化精度,相应按照配置的权重值量化区间确定策略,确定出对应目标浮点网络模型每一层权重值的第二目标量化精度。
相应的,在对目标浮点网络模型的权重值进行定点量化时,电子设备即可根据目标浮点网络模型每一层权重值对应的一对称量化区间,对目标浮点网络模型每一层权重值进行定点量化。
应当说明的是,本申请实施例中所提及的每一层均代指需要进行量化处理每一层,可以是目标浮点网络模型的部分层,也可以是目标浮点网络模型的全部层,具体可由本领域普通技术人员根据实际需要进行配置。
可选地,在一实施例中,根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间,包括:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间。
本申请实施例进一步提供一可选地权重值量化区间确定策略。
其中,确定权重值量化区间的目标是最小化量化前后权重值的均方误差,可以表达为如下优化问题:
其中,针对于一层权重值,NKB表示该层权重值的个数,r3表示该层权重值量化前的最小值,r4表示该层权重值量化前的最大值,SKB表示对该层权重值进行量化的量化尺度,c(取正实数)表示对应该层权重值的对称量化区间的正量化参数,-c表示对应该层权重值的对称量化区间的负量化参数,表示该层量化后的第i个权重值,表示该层量化前的第j个权重值,round()表示取整函数,clip()表示截取函数,用于将范围外的数强制转换为范围内的数,
因此,通过求解以上问题,确定出c的最优解,从而得到对应该层权重值的对称量化区间[-c,c]。
应当说明的是,以上r3和r4的值可以利用校准数据集得出。
本申请实施例中,根据目标浮点网络模型每一层权重值对应的一对称量化区间,对目标浮点网络模型每一层权重值进行定点量化可以表示为:
可以看出,量化后的权重值的取值范围为{-(2KB-1-1),-(2KB-1-2),……,2KB-1-1},比如,当某层权重值对应的第二目标量化强度取值为8时,该层权重值的取值范围为{-127,-126,……,127}。
可选地,在一实施例中,根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间,包括:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层权重值的一对称量化区间。
如上所述,目标浮点网络模型每一层权重值的对称量化区间由负量化参数和正量化参数组成,可以表示为[-c,c]。
应当说明的是,针对一层权重值,其量化前后权重值的均方误差为正量化参数c的凸函数,因此,在确定对应目标浮点网络模型每一层权重值的一对称量化区间时,电子设备可以根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层权重值的正量化参数c,根据该正量化参数即可得到与之对应的对称量化区间,可表示为[-c,c]。
请参照图9,图9为本申请实施例提供的网络模型量化方法的另一流程示意图,本申请实施例提供的网络模型量化方法的流程还可以如下:
在201中,电子设备获取需要进行模型量化的一目标浮点卷积网络模型。
本申请实施例中,电子设备首先获取需要进行模型量化的一目标浮点卷积网络模型。应当说明的是,本申请实施例中对于目标浮点卷积网络模型的来源不做具体限制,可以是电子设备自身训练完成的浮点卷积网络模型,也可以其它电子设备训练完成的浮点卷积网络模型。
示例性的,电子设备可以在接收到用户输入的模型量化指令时,根据用户输入的模型量化指令获取到需要进行模型量化的目标浮点卷积网络模型,还可以是在接收到其它电子设备传输的模型量化请求时,根据接收到的模型量化请求获取到需要进行模型量化的目标浮点卷积网络模型。
应当说明的是,本申请实施例对于模型量化指令以及模型量化请求的设置均不做具体限定,可由本领域普通技术人员根据实际需要进行配置。
比如,电子设备可以通过包括指令输入接口的网络模型量化界面接收输入的网络模型量化指令,如图3所示,该指令输入接口可以为输入框的形式,用户可以在该输入框形式的指令输入接口中键入需要进行模型量化的浮点卷积网络模型的模型标识信息,并输入确认信息(如直接按下键盘的回车键)以向电子设备输入模型量化指令,该模型量化指令携带有需要进行模型量化的浮点卷积网络模型的模型标识信息。指示电子设备将标识信息对应的浮点卷积网络模型作为目标浮点卷积网络模型。此外,网络模型量化界面还包括提示信息“请选择需要进行模型量化的网络模型”。
又比如,电子设备接收其它电子设备传输的模型量化请求,并解析出该模型量化请求所携带的模型标识信息,该模型标识信息指示需要进行模型量化的目标浮点卷积网络模型。相应的,电子设备根据该模型标识信息从本地、或者其它电子设备等处获取到需要进行模型量化的目标浮点卷积网络模型。
在202中,电子设备获取对应目标浮点卷积网络模型每一卷积层输入值的一第一目标量化精度。
本领域普通技术人员可以理解的是,网络模型是分层的,即网络模型在推理时根据执行逻辑可以将网络模型划分为不同的层。比如,请参照图10,图10示出了一目标浮点卷积网络模型,该目标浮点卷积网络模型包括M层卷积层(其它层未示出),每一卷积层包括多个卷积算子(图中圆形代表卷积算子)。
为了降低量化后网络模型的精度损失,在本申请实施例中以层为对象进行输入值的定点量化。
其中,电子设备首先获取对应目标浮点卷积网络模型的每一卷积层输入值的量化精度,记为第一目标量化精度。
应当说明的是,量化精度用于描述量化后的数据类型,本申请使用kIB表示第一目标量化精度,比如IB-UkIB表示将输入值量化为kIB比特的无符号整数,IB-SkIB表示将输入值量化为kIB比特的有符号整数,其中,kIB取整数,U表示无符号,S表示有符号。
本申请实施例中,目标浮点卷积网络模型中不同卷积层输入值所对应的第一目标量化精度可以相同,也可以不同,具体可由本领域普通技术人员根据实际需要预先配置,其中,量化精度配置越高,量化后模型精度损失越小,但是占用计算资源越大。比如,可配置的第一目标量化精度比如IB-U4(表示将输入值量化为4比特的无符号整数)、IB-U8(表示将输入值量化为8比特的无符号整数)等。
在203中,电子设备根据目标浮点卷积网络模型每一卷积层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,采用黄金分割搜索算法对所述目标浮点卷积网络模型每一卷积层输入值对应的一负量化参数和一正量化参数进行联合搜索,得到一非对称量化区间。
本申请实施例中,电子设备还根据目标浮点卷积网络模型每一卷积层输入值的一第一目标量化精度,相应按照配置的输入值量化区间确定策略,确定出对应目标浮点卷积网络模型每一卷积层输入值的一非对称量化区间。
其中,确定输入值量化区间的目标是最小化量化前后输入值的均方误差,可以表达为如下优化问题:
其中,针对于一层输入值,NIB表示该层输入值的个数,r1表示该层输入值量化前的最小值,r2表示该层输入值量化前的最大值,SIB表示对该层输入值进行量化的量化尺度,b(取正实数)表示对应该层输入值的非对称量化区间的正量化参数,a(取负实数)表示对应该层输入值的非对称量化区间的负量化参数,表示该层量化后的第i个输入值,表示该层量化前的第i个输入值,round()表示取整函数,clip()表示截取函数,用于将范围外的数强制转换为范围内的数,
因此,通过求解以上问题,确定出a和b的最优解,从而得到对应该层输入值的非对称量化区间[a,b]。
应当说明的是,以上r1和r2的值可以利用校准数据集得出。
如上所述,目标浮点卷积网络模型每一卷积层输入值的非对称量化区间由负量化参数和正量化参数组成,可以表示为[a,b]。
应当说明的是,针对一层输入值,当固定其非对称量化区间[a,b]的正量化参数b为b+时,与之对应的负量化参数a可以在[min(r1,0),0]内采用黄金分割搜索的方式快速搜索得到;当b+在[0,max(r2,0)]内连续取值时,量化前后输入值的均方误差为b+的凸函数。
而当固定其非对称量化区间[a,b]的负量化参数a为a-时,正量化参数b可在[0,max(r2,0)]内采用黄金分割搜索的方式快速搜索得到;当a-在[min(r1,0),0]内连续取值时,量化前后输入值的均方误差为a-的凸函数。
根据上述特点,在确定对应目标浮点卷积网络模型每一卷积层输入值的非对称量化区间时,电子设备可以根据目标浮点卷积网络模型每一卷积层输入值的第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对目标浮点卷积网络模型每一卷积层输入值对应的负量化参数和正量化参数进行联合搜索,相应得到目标浮点卷积网络模型每一卷积层输入值对应的负量化参数和正量化参数的最优解。
其中,在采用黄金分割搜索算法对目标浮点卷积网络模型每一卷积层输入值对应的负量化参数和正量化参数进行联合搜索时,电子设备首先确定负量化参数的一初始搜索范围,比如,直接确定负量化参数的一初始搜索范围为[min(r1,0),0];然后,电子设备在该初始搜索范围对负量化参数进行第一次黄金分割搜索,得到第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与第一候选负量化参数对应的一第一候选正量化参数(即当第一候选负量化参数取值确定时,使得量化前后输入值最小的候选正量化参数),与第二候选负量化参数对应的一第二候选正量化参数(即当第二候选负量化参数取值确定时,使得量化前后输入值最小的候选正量化参数);然后,根据第一候选负量化参数、第一候选正量化参数、第二候选负量化参数以及第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在更新搜索范围对负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到负量化参数;然后,采用黄金分割搜索算法搜索得到与负量化参数对应的正量化参数。
在204中,电子设备获取对应目标浮点卷积网络模型每一卷积层权重值的一第二目标量化精度。
同样的,为了降低量化后网络模型的精度损失,在本申请实施例中以层为对象进行权重值的定点量化。
本申请实施例中,电子设备还获取对应目标浮点卷积网络模型的每一卷积层权重值的一量化精度,记为第二目标量化精度。
本申请实施例中,目标浮点卷积网络模型中不同层权重值所对应的第二目标量化精度可以相同,也可以不同,具体可由本领域普通技术人员根据实际需要预先配置,其中,量化精度配置越高,量化后模型精度损失越小,但是占用计算资源越大。比如,可配置的第二目标量化精度比如KB-S4(表示将权重值量化为4比特的有符号整数)、KB-S8(表示将权重值量化为8比特的有符号整数)等。
在205中,电子设备根据目标浮点卷积网络模型每一卷积层权重值的第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应所述目标浮点卷积网络模型每一卷积层权重值的一对称量化区间。
本申请实施例中,电子设备还根据目标浮点卷积网络模型每一层权重值的第二目标量化精度,相应按照配置的权重值量化区间确定策略,确定出对应目标浮点卷积网络模型每一层权重值的第二目标量化精度。
其中,确定权重值量化区间的目标是最小化量化前后权重值的均方误差,可以表达为如下优化问题:
其中,针对于一层权重值,NKB表示该层权重值的个数,r3表示该层权重值量化前的最小值,r4表示该层权重值量化前的最大值,SKB表示对该层权重值进行量化的量化尺度,c(取正实数)表示对应该层权重值的对称量化区间的正量化参数,-c表示对应该层权重值的对称量化区间的负量化参数,表示该层量化后的第i个权重值,表示该层量化前的第j个权重值,round()表示取整函数,clip()表示截取函数,用于将范围外的数强制转换为范围内的数,
因此,通过求解以上问题,确定出c的最优解,从而得到对应该层权重值的对称量化区间[-c,c]。
如上所述,目标浮点网络模型每一层权重值的对称量化区间由负量化参数和正量化参数组成,可以表示为[-c,c]。
应当说明的是,针对一层权重值,其量化前后权重值的均方误差为正量化参数c的凸函数,因此,在确定对应目标浮点网络模型每一层权重值的一对称量化区间时,电子设备可以根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层权重值的正量化参数c,根据该正量化参数即可得到与之对应的对称量化区间,可表示为[-c,c]。
在206中,电子设备根据目标浮点卷积网络模型每一卷积层输入值对应的非对称量化区间,对目标浮点卷积网络模型每一卷积层输入值进行定点量化,以及根据目标浮点卷积网络模型每一卷积层权重值对应的对称量化区间,对目标浮点卷积网络模型每一卷积层权重值进行定点量化,得到对应目标浮点卷积网络模型的一定点卷积网络模型。
其中,根据目标浮点卷积网络模型每一卷积层输入值对应的非对称量化区间,对目标浮点卷积网络模型每一卷积层输入值进行定点量化,可以表示为:
根据目标浮点卷积网络模型每一卷积层权重值对应的对称量化区间,对目标浮点卷积网络模型每一卷积层权重值进行定点量化,可以表示为:
如上,通过分别对目标浮点卷积网络模型中每一卷积层的输入值和权重值进行定点量化,相应得到对应目标浮点卷积网络模型的一定点卷积网络模型。
请参照图11,图11为本申请实施例提供的网络模型量化装置300的结构示意图。其中该网络模型量化装置300应用于电子设备,该网络模型量化装置300包括:
一网络模型获取模块301,用于获取需要进行网络模型量化的一目标浮点网络模型;
一区间确定模块302,用于确定对应目标浮点网络模型的输入值的一非对称量化区间;
以及确定对应目标浮点网络模型的权重值的一对称量化区间;
一网络模型量化模块303,用于根据非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。
可选地,在一实施例中,在确定对应目标浮点网络模型的输入值的一非对称量化区间时,区间确定模块302用于:
获取对应目标浮点网络模型每一层输入值的一第一目标量化精度;
根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间;
在根据非对称量化区间对目标浮点网络模型的输入值进行定点量化时,网络模型量化模块303用于:
根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,区间确定模块302用于:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,非对称量化区间包括一负量化参数和一正量化参数,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,区间确定模块302用于:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索。
可选地,在一实施例中,在采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索时,区间确定模块302用于:
确定负量化参数的一初始搜索范围;
在初始搜索范围对负量化参数进行第一次黄金分割搜索,得到第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与第一候选负量化参数对应的一第一候选正量化参数,与第二候选负量化参数对应的一第二候选正量化参数;
根据第一候选负量化参数、第一候选正量化参数、第二候选负量化参数以及第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在更新搜索范围对负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到负量化参数;
采用黄金分割搜索算法搜索得到与负量化参数对应的正量化参数。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,区间确定模块302用于:
获取一校准数据集,根据校准数据集获取目标浮点网络模型每一层输入值在量化前的统计分布;
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,区间确定模块302用于:
根据第一目标量化精度确定对应目标浮点网络模型每一层输入值的多个搜索宽度;
以最小化量化前后输入值的统计分布的KL散度为目标,在多个搜索宽度采用黄金分割搜索算法搜索对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,在获取一校准数据集时,区间确定模块302用于:
获取用于训练目标浮点网络模型的一训练集;
抽取训练集的一子集作为校准数据集。
可选地,在一实施例中,在获取一校准数据集时,区间确定模块302用于:
获取目标浮点网络模型中网络参数的一分布特征;
根据前述分布特征生成一目标数据集,目标数据集的数据分布与用于训练目标浮点网络模型的训练集的数据分布匹配;
将前述目标数据集作为校准数据集。
可选地,在一实施例中,在确定对应目标浮点网络模型的权重值的一对称量化区间时,区间确定模块302用于:
获取对应目标浮点网络模型每一层权重值的一第二目标量化精度;
根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间;
在根据对称量化区间对目标浮点网络模型的权重值进行定点量化时,区间确定模块302用于:
根据目标浮点网络模型每一层权重值对应的一对称量化区间,对目标浮点网络模型每一层权重值进行定点量化。
可选地,在一实施例中,在根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间时,区间确定模块302用于:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间。
可选地,在一实施例中,在根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间时,区间确定模块302用于:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层权重值的一对称量化区间。
应当说明的是,本申请实施例提供的网络模型量化装置300与上文实施例中的网络模型量化方法属于同一构思,在网络模型量化装置300上可以运行网络模型量化方法实施例中提供的任一方法,其具体实现过程详见以上实施例,此处不再赘述。
在一实施例中,还提供一种电子设备400,请参照图12,电子设备400包括处理器401和存储器402。
本申请实施例中的处理器401可以是通用处理器,也可以是专用处理器,比如神经网络处理器。
存储器402中存储有计算机程序,其可以为高速随机存取存储器,还可以为非易失性存储器,比如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件等。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402中计算机程序的访问,实现如下功能:
获取需要进行网络模型量化的一目标浮点网络模型;
确定对应目标浮点网络模型的输入值的一非对称量化区间;
确定对应目标浮点网络模型的权重值的一对称量化区间;
根据非对称量化区间对目标浮点网络模型的输入值进行定点量化,以及根据对称量化区间对目标浮点网络模型的权重值进行定点量化,得到对应目标浮点网络模型的一定点网络模型。
可选地,在一实施例中,在确定对应目标浮点网络模型的输入值的一非对称量化区间时,处理器401用于:
获取对应目标浮点网络模型每一层输入值的一第一目标量化精度;
根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间;
在根据非对称量化区间对目标浮点网络模型的输入值进行定点量化时,处理器401用于:
根据目标浮点网络模型每一层输入值对应的一非对称量化区间,对目标浮点网络模型每一层输入值进行定点量化。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,处理器401用于:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,非对称量化区间包括一负量化参数和一正量化参数,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,处理器401用于:
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索。
可选地,在一实施例中,在采用黄金分割搜索算法对目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索时,处理器401用于:
确定负量化参数的一初始搜索范围;
在初始搜索范围对负量化参数进行第一次黄金分割搜索,得到第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与第一候选负量化参数对应的一第一候选正量化参数,与第二候选负量化参数对应的一第二候选正量化参数;
根据第一候选负量化参数、第一候选正量化参数、第二候选负量化参数以及第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在更新搜索范围对负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到负量化参数;
采用黄金分割搜索算法搜索得到与负量化参数对应的正量化参数。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,处理器401用于:
获取一校准数据集,根据校准数据集获取目标浮点网络模型每一层输入值在量化前的统计分布;
根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,在根据目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应目标浮点网络模型每一层输入值的一非对称量化区间时,处理器401用于:
根据第一目标量化精度确定对应目标浮点网络模型每一层输入值的多个搜索宽度;
以最小化量化前后输入值的统计分布的KL散度为目标,在多个搜索宽度采用黄金分割搜索算法搜索对应目标浮点网络模型每一层输入值的一非对称量化区间。
可选地,在一实施例中,在获取一校准数据集时,处理器401用于:
获取用于训练目标浮点网络模型的一训练集;
抽取训练集的一子集作为校准数据集。
可选地,在一实施例中,在获取一校准数据集时,处理器401用于:
获取目标浮点网络模型中网络参数的一分布特征;
根据前述分布特征生成一目标数据集,目标数据集的数据分布与用于训练目标浮点网络模型的训练集的数据分布匹配;
将前述目标数据集作为校准数据集。
可选地,在一实施例中,在确定对应目标浮点网络模型的权重值的一对称量化区间时,处理器401用于:
获取对应目标浮点网络模型每一层权重值的一第二目标量化精度;
根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间;
在根据对称量化区间对目标浮点网络模型的权重值进行定点量化时,处理器401用于:
根据目标浮点网络模型每一层权重值对应的一对称量化区间,对目标浮点网络模型每一层权重值进行定点量化。
可选地,在一实施例中,在根据目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应目标浮点网络模型每一层权重值的一对称量化区间时,处理器401用于:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间。
可选地,在一实施例中,在根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应目标浮点网络模型每一层权重值的一对称量化区间时,处理器401用于:
根据目标浮点网络模型每一层权重值的一第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应目标浮点网络模型每一层权重值的一对称量化区间。
应当说明的是,本申请实施例提供的电子设备与上文实施例中的网络模型量化方法属于同一构思,在电子设备上可以运行网络模型量化方法实施例中提供的任一方法,其具体实现过程详见网络模型量化方法实施例,此处不再赘述。
需要说明的是,对本申请实施例的网络模型量化方法而言,本领域普通技术人员可以理解实现本申请实施例的网络模型量化方法的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述计算机程序可存储于一计算机可读取存储介质中,如存储在电子设备的存储器中,并被该电子设备内的处理器执行,在执行过程中可包括如网络模型量化方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储器、随机存取记忆体等。
以上对本申请实施例所提供的一种网络模型量化方法、装置、存储介质及电子设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (16)
1.一种网络模型量化方法,其特征在于,包括:
获取需要进行模型量化的一目标浮点网络模型;
确定对应所述目标浮点网络模型的输入值的一非对称量化区间;
确定对应所述目标浮点网络模型的权重值的一对称量化区间;
根据所述非对称量化区间对所述目标浮点网络模型的输入值进行定点量化,以及根据所述对称量化区间对所述目标浮点网络模型的权重值进行定点量化,得到对应所述目标浮点网络模型的一定点网络模型。
2.根据权利要求1所述的网络模型量化方法,其特征在于,所述确定对应所述目标浮点网络模型的输入值的一非对称量化区间,包括:
获取对应所述目标浮点网络模型每一层输入值的一第一目标量化精度;
根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间。
3.根据权利要求2所述的网络模型量化方法,所述根据所述非对称量化区间对所述目标浮点网络模型的输入值进行定点量化,包括:
根据所述目标浮点网络模型每一层输入值对应的一非对称量化区间,对所述目标浮点网络模型每一层输入值进行定点量化。
4.根据权利要求3所述的网络模型量化方法,其特征在于,所述根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间,包括:
根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间。
5.根据权利要求4所述的网络模型量化方法,其特征在于,非对称量化区间包括一负量化参数和一正量化参数,所述根据所述目标浮点网络模型每一层输入值的第一目标量化精度,以最小化量化前后输入值的均方误差为目标,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间,包括:
根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化输入值量化前后的均方误差为目标,采用黄金分割搜索算法对所述目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索。
6.根据权利要求5所述的网络模型量化方法,其特征在于,所述采用黄金分割搜索算法对所述目标浮点网络模型每一层输入值对应的一负量化参数和一正量化参数进行联合搜索,包括:
确定所述负量化参数的一初始搜索范围;
在所述初始搜索范围对所述负量化参数进行第一次黄金分割搜索,得到一第一候选负量化参数和一第二候选负量化参数,采用黄金分割算法分别搜索得到与所述第一候选负量化参数对应的一第一候选正量化参数,与所述第二候选负量化参数对应的一第二候选正量化参数;
根据所述第一候选负量化参数、所述第一候选正量化参数、所述第二候选负量化参数以及所述第二候选正量化参数确定下一次进行黄金分割搜索的更新搜索范围,并在所述更新搜索范围对所述负量化参数进行第二次黄金分割搜索,如此循环,直至搜索到所述负量化参数;
采用黄金分割搜索算法搜索得到与所述负量化参数对应的所述正量化参数。
7.根据权利要求2所述的网络模型量化方法,其特征在于,所述根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间,包括:
获取一校准数据集,根据所述校准数据集获取所述目标浮点网络模型每一层输入值在量化前的统计分布;
根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间。
8.根据权利要求7所述的网络模型量化方法,其特征在于,所述根据所述目标浮点网络模型每一层输入值的一第一目标量化精度,以最小化量化前后输入值的统计分布的KL散度为目标,确定对应所述目标浮点网络模型每一层输入值的一非对称量化区间,包括:
根据所述第一目标量化精度确定对应所述目标浮点网络模型每一层输入值的多个搜索宽度;
以最小化量化前后输入值的统计分布的KL散度为目标,在所述多个搜索宽度采用黄金分割搜索算法搜索得到对应所述目标浮点网络模型每一层输入值的一非对称量化区间。
9.根据权利要求7所述的网络模型量化方法,其特征在于,所述获取一校准数据集,包括:
获取用于训练所述目标浮点网络模型的一训练集;
抽取所述训练集的一子集作为所述校准数据集。
10.根据权利要求7所述的网络模型量化方法,其特征在于,所述获取一校准数据集,包括:
获取所述目标浮点网络模型中网络参数的一分布特征;
根据所述分布特征生成一目标数据集,所述目标数据集的数据分布与用于训练所述目标浮点网络模型的训练集的数据分布匹配;
将所述目标数据集作为所述校准数据集。
11.根据权利要求1所述的网络模型量化方法,其特征在于,所述确定对应所述目标浮点网络模型的权重值的一对称量化区间,包括:
获取对应所述目标浮点网络模型每一层权重值的一第二目标量化精度;
根据所述目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应所述目标浮点网络模型每一层权重值的一对称量化区间;
所述根据所述对称量化区间对所述目标浮点网络模型的权重值进行定点量化,包括:
根据所述目标浮点网络模型每一层权重值对应的一对称量化区间,对所述目标浮点网络模型每一层权重值进行定点量化。
12.根据权利要求11所述的网络模型量化方法,其特征在于,所述根据所述目标浮点网络模型每一层权重值的一第二目标量化精度,确定对应所述目标浮点网络模型每一层权重值的一对称量化区间,包括:
根据所述第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应所述目标浮点网络模型每一层权重值的一对称量化区间。
13.根据权利要求12所述的网络模型量化方法,其特征在于,所述根据所述第二目标量化精度,以最小化量化前后权重值的均方误差为目标,确定对应所述目标浮点网络模型每一层权重值的一对称量化区间,包括:
根据所述第二目标量化精度,以最小化量化前后权重值的均方误差为目标,采用黄金分割搜索算法搜索得到对应所述目标浮点网络模型每一层权重值的一对称量化区间。
14.一种网络模型量化装置,其特征在于,包括:
一网络模型获取模块,用于获取需要进行模型量化的一目标浮点网络模型;
一区间确定模块,用于确定对应所述目标浮点网络模型的输入值的一非对称量化区间;以及
用于确定对应所述目标浮点网络模型的权重值的一对称量化区间;
一网络模型量化模块,用于根据所述非对称量化区间对所述目标浮点网络模型的输入值进行定点量化,以及根据所述对称量化区间对所述目标浮点网络模型的权重值进行定点量化,得到对应所述目标浮点网络模型的一定点网络模型。
15.一种存储介质,其上存储有一计算机程序,其特征在于,在所述计算机程序被一处理器加载时执行如权利要求1至13任一项所述的网络模型量化方法。
16.一种电子设备,包括一处理器和一存储器,所述存储器存储有一计算机程序,其特征在于,在所述计算机程序被所述处理器加载时执行如权利要求1至13任一项所述的网络模型量化方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010763426.8A CN112200296B (zh) | 2020-07-31 | 2020-07-31 | 网络模型量化方法、装置、存储介质及电子设备 |
TW109140401A TWI741877B (zh) | 2020-07-31 | 2020-11-18 | 網路模型量化方法、裝置及電子設備 |
US17/159,217 US20220036162A1 (en) | 2020-07-31 | 2021-01-27 | Network model quantization method and electronic apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010763426.8A CN112200296B (zh) | 2020-07-31 | 2020-07-31 | 网络模型量化方法、装置、存储介质及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112200296A true CN112200296A (zh) | 2021-01-08 |
CN112200296B CN112200296B (zh) | 2024-04-05 |
Family
ID=74006041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010763426.8A Active CN112200296B (zh) | 2020-07-31 | 2020-07-31 | 网络模型量化方法、装置、存储介质及电子设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20220036162A1 (zh) |
CN (1) | CN112200296B (zh) |
TW (1) | TWI741877B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113610232A (zh) * | 2021-09-28 | 2021-11-05 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN114528924A (zh) * | 2022-01-27 | 2022-05-24 | 山东浪潮科学研究院有限公司 | 一种图像分类模型的推理方法、装置、设备及介质 |
CN115294108A (zh) * | 2022-09-29 | 2022-11-04 | 深圳比特微电子科技有限公司 | 目标检测方法、目标检测模型的量化方法、装置和介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115496200B (zh) * | 2022-09-05 | 2023-09-22 | 中国科学院半导体研究所 | 神经网络量化模型训练方法、装置及设备 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8326068B1 (en) * | 2006-08-30 | 2012-12-04 | Maxim Integrated Products, Inc. | Method and apparatus for modeling quantization matrices for image/video encoding |
CN108304919A (zh) * | 2018-01-29 | 2018-07-20 | 百度在线网络技术(北京)有限公司 | 用于生成卷积神经网络的方法和装置 |
CN110121171A (zh) * | 2019-05-10 | 2019-08-13 | 青岛大学 | 基于指数平滑法和灰色模型的信任预测方法 |
CN110135580A (zh) * | 2019-04-26 | 2019-08-16 | 华中科技大学 | 一种卷积网络全整型量化方法及其应用方法 |
CN110414679A (zh) * | 2019-08-02 | 2019-11-05 | 厦门美图之家科技有限公司 | 模型训练方法、装置、电子设备和计算机可读存储介质 |
US20200026986A1 (en) * | 2018-04-27 | 2020-01-23 | Samsung Electronics Co., Ltd. | Neural network method and appartus with parameter quantization |
CN110889503A (zh) * | 2019-11-26 | 2020-03-17 | 中科寒武纪科技股份有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN110942148A (zh) * | 2019-12-11 | 2020-03-31 | 北京工业大学 | 一种自适应的非对称量化的深度神经网络模型压缩方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11475352B2 (en) * | 2018-11-07 | 2022-10-18 | Alibaba Group Holding Limited | Quantizing machine learning models with balanced resolution via damped encoding |
CN111353517B (zh) * | 2018-12-24 | 2023-09-26 | 杭州海康威视数字技术股份有限公司 | 一种车牌识别方法、装置及电子设备 |
CN110929862B (zh) * | 2019-11-26 | 2023-08-01 | 陈子祺 | 定点化的神经网络模型量化装置和方法 |
CN111240746B (zh) * | 2020-01-12 | 2023-01-10 | 苏州浪潮智能科技有限公司 | 一种浮点数据反量化及量化的方法和设备 |
CN111401550A (zh) * | 2020-03-10 | 2020-07-10 | 北京迈格威科技有限公司 | 神经网络模型量化方法、装置及电子设备 |
-
2020
- 2020-07-31 CN CN202010763426.8A patent/CN112200296B/zh active Active
- 2020-11-18 TW TW109140401A patent/TWI741877B/zh active
-
2021
- 2021-01-27 US US17/159,217 patent/US20220036162A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8326068B1 (en) * | 2006-08-30 | 2012-12-04 | Maxim Integrated Products, Inc. | Method and apparatus for modeling quantization matrices for image/video encoding |
CN108304919A (zh) * | 2018-01-29 | 2018-07-20 | 百度在线网络技术(北京)有限公司 | 用于生成卷积神经网络的方法和装置 |
US20200026986A1 (en) * | 2018-04-27 | 2020-01-23 | Samsung Electronics Co., Ltd. | Neural network method and appartus with parameter quantization |
CN110135580A (zh) * | 2019-04-26 | 2019-08-16 | 华中科技大学 | 一种卷积网络全整型量化方法及其应用方法 |
CN110121171A (zh) * | 2019-05-10 | 2019-08-13 | 青岛大学 | 基于指数平滑法和灰色模型的信任预测方法 |
CN110414679A (zh) * | 2019-08-02 | 2019-11-05 | 厦门美图之家科技有限公司 | 模型训练方法、装置、电子设备和计算机可读存储介质 |
CN110889503A (zh) * | 2019-11-26 | 2020-03-17 | 中科寒武纪科技股份有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
CN110942148A (zh) * | 2019-12-11 | 2020-03-31 | 北京工业大学 | 一种自适应的非对称量化的深度神经网络模型压缩方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113610232A (zh) * | 2021-09-28 | 2021-11-05 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN113610232B (zh) * | 2021-09-28 | 2022-02-22 | 苏州浪潮智能科技有限公司 | 网络模型量化方法、装置、计算机设备以及存储介质 |
CN114528924A (zh) * | 2022-01-27 | 2022-05-24 | 山东浪潮科学研究院有限公司 | 一种图像分类模型的推理方法、装置、设备及介质 |
CN114528924B (zh) * | 2022-01-27 | 2024-05-10 | 山东浪潮科学研究院有限公司 | 一种图像分类模型的推理方法、装置、设备及介质 |
CN115294108A (zh) * | 2022-09-29 | 2022-11-04 | 深圳比特微电子科技有限公司 | 目标检测方法、目标检测模型的量化方法、装置和介质 |
Also Published As
Publication number | Publication date |
---|---|
TWI741877B (zh) | 2021-10-01 |
US20220036162A1 (en) | 2022-02-03 |
CN112200296B (zh) | 2024-04-05 |
TW202207091A (zh) | 2022-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11790212B2 (en) | Quantization-aware neural architecture search | |
US11544536B2 (en) | Hybrid neural architecture search | |
EP3711000B1 (en) | Regularized neural network architecture search | |
CN112200296B (zh) | 网络模型量化方法、装置、存储介质及电子设备 | |
US20190340492A1 (en) | Design flow for quantized neural networks | |
US11604960B2 (en) | Differential bit width neural architecture search | |
CN110766142A (zh) | 模型生成方法和装置 | |
CN111666416B (zh) | 用于生成语义匹配模型的方法和装置 | |
CN110674292A (zh) | 一种人机交互方法、装置、设备及介质 | |
US20200302283A1 (en) | Mixed precision training of an artificial neural network | |
US20190228297A1 (en) | Artificial Intelligence Modelling Engine | |
CN112420125A (zh) | 分子属性预测方法、装置、智能设备和终端 | |
CN114492601A (zh) | 资源分类模型的训练方法、装置、电子设备及存储介质 | |
CN112149809A (zh) | 模型超参数的确定方法及设备、计算设备和介质 | |
CN111832693A (zh) | 神经网络层运算、模型训练方法、装置及设备 | |
CN112966592A (zh) | 手部关键点检测方法、装置、设备和介质 | |
US20230140173A1 (en) | Deep neural network (dnn) accelerators with heterogeneous tiling | |
CN116957006A (zh) | 预测模型的训练方法、装置、设备、介质及程序产品 | |
CN117999560A (zh) | 机器学习模型的硬件感知渐进训练 | |
CN112148865B (zh) | 信息推送方法和装置 | |
CN113128677A (zh) | 模型生成方法和装置 | |
CN111898389B (zh) | 信息确定方法、装置、计算机设备及存储介质 | |
CN116778264B (zh) | 基于类增学习的对象分类方法、图像分类方法及相关设备 | |
CN116680390B (zh) | 一种词汇联想推荐方法及系统 | |
CN112836721B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 361005 1501, zone a, innovation building, software park, torch hi tech Zone, Xiamen City, Fujian Province Applicant after: Xingchen Technology Co.,Ltd. Address before: 361005 1501, zone a, innovation building, software park, torch hi tech Zone, Xiamen City, Fujian Province Applicant before: Xiamen Xingchen Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |