CN111814974A - 用于卷积神经网络的自适应量化的方法 - Google Patents

用于卷积神经网络的自适应量化的方法 Download PDF

Info

Publication number
CN111814974A
CN111814974A CN202010278258.3A CN202010278258A CN111814974A CN 111814974 A CN111814974 A CN 111814974A CN 202010278258 A CN202010278258 A CN 202010278258A CN 111814974 A CN111814974 A CN 111814974A
Authority
CN
China
Prior art keywords
quantization
point value
multiply
accumulate
input
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.)
Pending
Application number
CN202010278258.3A
Other languages
English (en)
Inventor
王祚官
周天
顾群
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Black Sesame Intelligent Technology Chongqing Co Ltd
Black Sesame International Holding Ltd
Original Assignee
Black Sesame Intelligent Technology Chongqing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Black Sesame Intelligent Technology Chongqing Co Ltd filed Critical Black Sesame Intelligent Technology Chongqing Co Ltd
Publication of CN111814974A publication Critical patent/CN111814974A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3812Devices capable of handling different types of numbers
    • G06F2207/382Reconfigurable for different fixed word lengths
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4818Threshold devices
    • G06F2207/4824Neural networks

Abstract

一种用于卷积神经网络的自适应量化的方法,包括如下中的至少一个:接收网络中的层的预定可接受模型准确度;基于浮点值权重和浮点值输入确定层的浮点值乘积累加;以多个权重量化精度量化浮点值权重;以多个输入量化精度量化浮点值输入;基于多个权重量化精度和多个输入量化精度,以多个乘积累加量化精度确定乘积累加;基于浮点值乘积累加与多个乘积累加量化精度之间的差确定多个量化误差;以及基于层的预定可接受模型准确度和多个量化误差选择多个权重量化精度中的一个、多个输入量化精度中的一个和多个乘积累加量化精度中的一个。

Description

用于卷积神经网络的自适应量化的方法
技术领域
本发明涉及卷积神经网络,具体地涉及改进网络内的操作效率。
背景技术
卷积神经网络通常由多个卷积层和至少一个全连接层组成。卷积层具有输入激活(input activation),滤波器(filter)和输出激活(output activation)。在卷积层内,滤波器被卷积并在输入激活范围内运行。滤波器与输入激活逐元素对应地相乘,并将结果相加。然后,滤波器在输入激活范围内按步幅(stride)进行位移,以产生下一组输出激活。此过程是复杂的,并且是存储器带宽密集的。
寻求在不显著降低准确度的情况下减少计算复杂度和存储器带宽的方法。
发明内容
一种用于卷积神经网络的自适应量化的示例方法,包括如下中的至少一个:接收网络中的层的预定可接受模型准确度;基于浮点值权重和浮点值输入确定层的浮点值乘积累加;以多个权重量化精度量化浮点值权重;以多个输入量化精度量化浮点值输入;基于多个权重量化精度和多个输入量化精度,以多个乘积累加量化精度确定乘积累加;基于浮点值乘积累加与多个乘积累加量化精度之间的差确定多个量化误差;以及基于层的预定可接受模型准确度和多个量化误差选择多个权重量化精度中的一个、多个输入量化精度中的一个和多个乘积累加量化精度中的一个。
在一个实施例中,自适应量化的方法还包括基于多个权重量化精度和浮点值权重来确定权重量化敏感度。
在一个实施例中,自适应量化的方法还包括基于多个输入量化精度和浮点值输入来确定输入量化敏感度。
在一个实施例中,自适应量化的方法还包括基于多个乘积累加量化精度和浮点值乘积累加来确定乘积累加量化敏感度。
在一个实施例中,自适应量化的方法还包括基于权重量化敏感度、输入量化敏感度以及乘积累加量化敏感度来确定整体量化敏感度。
在一个实施例中,自适应量化的方法还包括基于预定可接受模型准确度来最小化量化敏感度。
在一个实施例中,自适应量化的方法还包括迭代网络中的层。
在一个实施例中,自适应量化的方法还包括输入层的浮点值权重以及输入层的浮点值输入。
在一个实施例中,浮点值权重是有符号的。
在一个实施例中,浮点值输入是无符号的。
在一个实施例中,自适应量化的方法还包括选择层的量化位数。
在一个实施例中,在自适应量化的方法中,层的量化位数基于其对网络的整体准确度的影响来确定。
在一个实施例中,在自适应量化的方法中,如果层对量化较不敏感,则选择更少的层的量化位数。
附图说明
在图中:
图1是根据本发明的一个实施例的第一示例系统;
图2是根据本发明的一个实施例的第二示例系统;
图3是根据本发明的一个实施例的数值量化的示例描绘;
图4是根据本发明的一个实施例的在一组网络层中使用的自适应量化和混合精度的第一示例;
图5是根据本发明的一个实施例的自适应量化和混合精度训练流程的第一示例;
图6是根据本发明的一个实施例的在一组操作中使用的自适应量化和混合精度的第二示例;以及
图7是根据本发明的一个实施例的自适应量化和混合精度的示例方法。
具体实施方式
下面列出的实施例仅是为了说明装置和方法的应用,并不用于限制保护范围。对这种装置和方法等同形式的修改应归入权利要求的保护范围内。
在贯穿以下说明和权利要求中,某些术语被用来指代特定系统组件。如本领域技术人员可以理解的,不同的公司可以用不同的名称来指代组件和/或方法。本文无意区分名称不同但功能相同的组件和/或方法。
在以下的讨论和权利要求中,术语“包括”和“包含”以开放式方式使用,因此可以解释为表示“包括但不限于……”。此外,术语“耦合”旨在表示间接或直接连接。因此,如果第一设备耦合到第二设备,该连接可以是通过直接连接或通过经由其他设备和连接的间接连接。
图1描绘了示例混合计算系统100,其可用于实现与过程400、500、600和700的一个或多个部分或步骤的操作相关联的神经网。在该示例中,与混合计算系统相关联的处理器包括现场可编程门阵列(FPGA)122,图形处理器单元(GPU)120和中央处理单元(CPU)118。
处理单元118、120和122具有提供神经网的能力。CPU是可以执行许多不同功能的通用处理器,它的通用性使其具有执行多个不同任务的能力,但是,它对多个数据流的处理是有限的,并且其关于神经网络的功能也非常有限。GPU是图形处理器,其具有能够按顺序处理并行任务的许多小的处理核。FPGA是现场可编程设备,它具有重新配置的能力,并且可以以硬接线电路方式执行可编程到CPU或GPU中的任何功能。由于FPGA的编程采用电路形式,因此其速度比CPU快许多倍,并且比GPU也明显快得多。
系统还可以包含其他类型的处理器,例如加速处理单元(APU),其包括带有芯片上GPU元件的CPU和专用于执行高速数值数据处理的数字信号处理器(DSP)。专用集成电路(ASIC)也可以执行FPGA的硬接线功能;然而,设计和生产ASIC的前置时间大约为一年的几个季度,而不像FPGA编程中可行的快速周转实现。
图形处理器单元120、中央处理单元118和现场可编程门阵列122彼此连接并且连接到存储器接口和控制器112。FPGA通过可编程逻辑电路至存储器的互连130而连接到存储器接口。由于FPGA以非常大的带宽操作并且为了将FPGA中用来执行存储器任务的电子线路(circuitry)最小化,因此利用了这种附加的设备。存储器接口和控制器112被另外连接到持久性存储器盘110、系统存储器114和只读存储器(ROM)116。
可以利用图2的系统以对FPGA进行编程和训练。GPU可以很好地作用于非结构化数据并且可以被利用以进行训练,一旦数据已经被训练,就可以找到确定性推理模型,并且CPU可以利用由GPU确定的模型数据对FPGA进行编程。
存储器接口和控制器112连接到中央互连124,中央互连另外连接到GPU 120、CPU118和FPGA 122。中央互连124另外连接到输入和输出接口128以及网络接口126。
图2描绘了第二示例混合计算系统200,可用于实现与过程600的一个或多个部分或步骤的操作相关联的神经网。在该示例中,与混合计算系统相关联的处理器包括现场可编程门阵列(FPGA)210和中央处理单元(CPU)220。
FPGA 210电连接到FPGA控制器212,FPGA控制器212与直接存储器访问(DMA)218通过接口连接。DMA连接到输入缓冲器214和输出缓冲器216,输入缓冲器214和输出缓冲器216两者都耦合到FPGA,以分别对进出FPGA的数据进行缓冲。DMA 218具有两个先进先出(FIFO)缓冲器,一个用于主机CPU,以及另一个用于FPGA,DMA允许对适当的缓冲器读写数据。
在DMA的CPU侧是主开关228,主开关228将数据和命令传送(shuttle)到DMA。DMA还连接到同步动态随机存储器(SDRAM)控制器224,SDRAM控制器224允许数据从CPU 220传送到FPGA和从FPGA传送到CPU 220,SDRAM控制器还连接到外部SDRAM 226和CPU 220。主开关228连接到外围设备接口230。闪存控制器222控制持久性存储器并且连接到CPU 220。
网络计算的复杂度给在资源受限的边缘环境中部署深度网络带来了挑战。量化是一种通过将单精度浮点值(float value)(FP32)的计算转换为定点值来解决该挑战的方法,其显著地降低了模型的复杂度。
在图3中,300描绘了对称量化器的示例。假设x是要量化的变量,以及量化步长为ΔS,则量化结果xQ可以通过以下得到:
xround=round(x/ΔS)
xQ=clip(-N/2+1,N/2-1,xround)如果有符号
xQ=clip(0,N-1,xround)如果无符号
其中N=2n_bits,n_bits是代表位数。
权重和激活被量化,权重被视为有符号的,而激活被视为无符号的。网络的不同层可以由不同级别的特征提取来表示。
网络的不同层对数值精度具有不同的敏感度。当前的量化算法通过将均匀的量化精度分配给各层来忽略这种对数值精度的不同敏感度。
在保持准确度的同时降低计算复杂度的一个可能的解决方案是使用自适应量化,其将不同的精度分配给不同的层。与均匀精度相比,这种可能的解决方案在保持准确度的同时缩减了模型复杂度。
Resnet构建块的混合精度的示例在图4中进行了证明,其中一些激活被量化为8位,而其它激活被量化为4位。在该示例中,卷积层conv1 410被量化为8位,池化层pool1412未被量化,分支层res2a_branch2a 414与分支层res2a_branch2b 416被同样量化为4位,而分支层res2a_branch1 420和res2a_branch2c 418在输入到节点res2a 422之前被量化为8位。
不同层的精度由度量模型准确度的训练过程决定。对量化更敏感的层以较高的精度进行量化,而对量化较不敏感的层以较低的精度进行量化。在本文中,精度和量化精度是指数字被量化为的位数。
图5描绘了量化训练过程,其取决于是否涉及微调(fine tuning)而可以由两个或更多个阶段组成。训练步骤首先用浮点值训练510网络,然后量化步骤512将浮点权重和浮点输入的浮点值离散为整数值。可以使用微调514来校正由量化过程引起的误差。在示例中,存在整体量化敏感度,权重量化敏感度和输入量化敏感度。
图6描绘了支持自适应量化的示例硬件图。数据表示和计算单元可调节至不同的精度。在此示例中,激活可以是整数8位或16位精度,以及累加器可以是24位或32位精度。具体地,在该描绘中,将不同量化的权重610和不同量化的激活612路由发送到乘积累加器(multiply accumulator),其输出614L1 Acc也被量化。来自结果缓冲器L2 Acc 616的数据也可以在输出614L1 Acc添加到该数据之前被量化。在将数据路由发送到乘法或修正线性单元(ReLU)激活函数之前,执行符号检测618。
图7描绘了卷积神经网络的自适应量化的示例方法,包括:接收710网络中的层的预定可接受模型准确度,以及基于浮点值权重和浮点值输入来确定712层的浮点值乘积累加(multiply accumulate)。方法还包括以多个权重量化精度量化714浮点值权重,以及以多个输入量化精度量化716浮点值输入。方法包括基于多个权重量化精度和多个输入量化精度,以多个乘积累加量化精度确定718乘积累加,基于浮点值乘积累加和多个乘积累加量化精度之间的差确定720多个量化误差,以及基于层的预定可接受模型准确度和多个量化误差选择722多个权重量化精度中的一个、多个输入量化精度中的一个和多个乘积累加量化精度中的一个。
本领域的技术人员将了解,本文中所描述的各种说明性的框、模块、元件、组件、方法和算法可被实现为电子硬件、计算机软件或两者的组合。为了说明硬件和软件的这种可互换性,已经在它们的功能方面对各种说明性的框、模块、元件、组件、方法和算法进行了以上大致描述。将这样的功能性实现为硬件还是软件取决于施加于整个系统的特定应用和设计约束。技术人员可以针对每个特定应用以不同方式实现所描述的功能性。在不脱离本主题技术的范围的情况下,各种组件和框可以不同地布置(例如,以不同的顺序布置,或以不同的方式划分)。
应理解,所公开的过程中的步骤的特定顺序或层次是对示例方法的说明。基于设计偏好,可以理解的是,过程中的步骤的特定顺序或层次可以重新布置。一些步骤可以同时执行。所附方法权利要求以样本顺序呈现各个步骤的要素,并不意在限于所呈现的特定顺序或层次。
提供前面的描述是为了使得任何本领域的技术人员都能够实践本文中所描述的各种方面。前面的描述提供了本主题技术的各种示例,并且本主题技术不限于这些示例。对于本领域技术人员来说,对这些方面的各种修改是明显的,并且本文定义的一般原理可以应用于其他方面。因此,权利要求不旨在限于本文所示的方面,而是旨在使全部范围与权利要求的语言表述相一致,其中除非具体如此陈述,对单数要素的引用并非旨在意为“一个且仅一个”,而是表示“一个或多个”。除非另外特别说明,否则术语“一些”是指一个或多个。男性的代词(例如,他的)包括女性和中性(例如,她的和它的),反之亦然。标题和副标题(如果有的话)仅用于方便而使用,并不限制本发明。谓语词“被配置为”,“可操作为”和“被编程为”并不意味着对主语的任何特定的有形或无形修改,而是旨在可互换地使用。例如,被配置以监视和控制操作或部件的处理器,还可以意为该处理器被编程以监视和控制该操作,或者处理器可被操作以监视和控制该操作。同样地,被配置以执行代码的处理器可以解释为被编程以执行代码或可操作以执行代码的处理器。
诸如“方面”的短语并不意味着这样的方面对于本主题技术是必不可少的,或者这样的方面适用于本主题技术的所有配置。涉及一方面的公开可适用于所有配置,或者一个或多个配置。一个方面可以提供一个或多个示例。诸如“方面”的短语可以指代一个或多个方面,反之亦然。诸如“实施例”的短语并不意味着这样的实施例对于本主题技术是必不可少的,或者这样的实施例适用于本主题技术的所有配置。涉及一个实施例的公开可以适用于所有实施例,或者一个或多个实施例。实施例可以提供一个或多个示例。诸如“实施例”的短语可以指代一个或多个实施例,反之亦然。诸如“配置”之类的短语并不意味着这种配置对于本主题技术是必不可少的,或者这种配置适用于本主题技术的所有配置。涉及一种配置的公开可以适用于所有配置,或者一个或多个配置。一种配置可以提供一个或多个示例。诸如“配置”的短语可以指代一个或多个配置,反之亦然。
本文所使用“示例”一词来表示“用作示例或说明”。本文中描述为“示例”的任何方面或设计并不必定被解释为比其他方面或设计更优选的或更具优势。
本领域普通技术人员已知或以后将会知道的贯穿本发明所描述的各个方面的元件等同的所有结构和功能通过引用被明确地并入本文,并且旨在由权利要求所涵盖。此外,无论在权利要求中是否明确地叙述了这样的公开,本文所公开的内容都不旨在捐献给公众。此外,关于说明书或权利要求中所使用的术语“包括”、“具有”或类似术语的含义,这样的术语旨在被包括在术语“包含”的方式内,类似于当“包括”在权利要求中被用作连接词时,对“包括”的解释那样。
对“一实施例”、“一个实施例”、“一些实施例”、“各种实施例”或类似表述的引用表示特定元件或特征包括于本发明的至少一个实施例中。尽管短语可能出现在各个地方,但短语不一定指的是同一实施例。连同本发明,本领域技术人员将能够设计和结合适合于实现上述功能的各种机制中的任何一种。
应当理解,本发明仅教导了说明性实施例的一个示例,并且本领域技术人员在阅读本发明之后能够容易地设计出本发明的许多变型,本发明的范围由以下权利要求确定。

Claims (13)

1.一种用于卷积神经网络的自适应量化的方法,包括:
接收网络中的层的预定可接受模型准确度;
基于浮点值权重和浮点值输入确定所述层的浮点值乘积累加;
以多个权重量化精度量化所述浮点值权重;
以多个输入量化精度量化所述浮点值输入;
基于所述多个权重量化精度和所述多个输入量化精度,以多个乘积累加量化精度确定乘积累加;
基于所述浮点值乘积累加与所述多个乘积累加量化精度之间的差确定多个量化误差;以及
基于所述层的预定可接受模型准确度和所述多个量化误差选择所述多个权重量化精度中的一个、所述多个输入量化精度中的一个和所述多个乘积累加量化精度中的一个。
2.根据权利要求1所述的自适应量化的方法,还包括基于所述多个权重量化精度和所述浮点值权重来确定权重量化敏感度。
3.根据权利要求2所述的自适应量化的方法,还包括基于所述多个输入量化精度和所述浮点值输入来确定输入量化敏感度。
4.根据权利要求3所述的自适应量化的方法,还包括基于所述多个乘积累加量化精度和所述浮点值乘积累加来确定乘积累加量化敏感度。
5.根据权利要求4所述的自适应量化的方法,还包括基于所述权重量化敏感度、所述输入量化敏感度以及所述乘积累加量化敏感度来确定整体量化敏感度。
6.根据权利要求5所述的自适应量化的方法,还包括基于所述预定可接受模型准确度来最小化所述量化敏感度。
7.根据权利要求1所述的自适应量化的方法,还包括迭代所述网络中的所述层。
8.根据权利要求1所述的自适应量化的方法,还包括:
输入所述层的所述浮点值权重;以及
输入所述层的所述浮点值输入。
9.根据权利要求8所述的自适应量化的方法,其中所述浮点值权重是有符号的。
10.根据权利要求8所述的自适应量化的方法,其中所述浮点值输入是无符号的。
11.根据权利要求1所述的自适应量化的方法,还包括选择所述层的量化位数。
12.根据权利要求11所述的自适应量化的方法,其中所述层的所述量化位数基于其对所述网络的整体准确度的影响来确定。
13.根据权利要求11所述的自适应量化的方法,其中如果所述层对量化较不敏感,则选择更少的所述层的量化位数。
CN202010278258.3A 2019-01-22 2020-04-10 用于卷积神经网络的自适应量化的方法 Pending CN111814974A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962795407P 2019-01-22 2019-01-22
US16/380,813 US11507823B2 (en) 2019-01-22 2019-04-10 Adaptive quantization and mixed precision in a network
US16/380,813 2019-04-10

Publications (1)

Publication Number Publication Date
CN111814974A true CN111814974A (zh) 2020-10-23

Family

ID=71609430

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010278258.3A Pending CN111814974A (zh) 2019-01-22 2020-04-10 用于卷积神经网络的自适应量化的方法

Country Status (2)

Country Link
US (1) US11507823B2 (zh)
CN (1) CN111814974A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11507823B2 (en) * 2019-01-22 2022-11-22 Black Sesame Technologies Inc. Adaptive quantization and mixed precision in a network
US20210150313A1 (en) * 2019-11-15 2021-05-20 Samsung Electronics Co., Ltd. Electronic device and method for inference binary and ternary neural networks
TWI737228B (zh) * 2020-03-20 2021-08-21 國立清華大學 基於記憶體內運算電路架構之量化方法及其系統

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160328645A1 (en) * 2015-05-08 2016-11-10 Qualcomm Incorporated Reduced computational complexity for fixed point neural network
US10262259B2 (en) * 2015-05-08 2019-04-16 Qualcomm Incorporated Bit width selection for fixed point neural networks
US20180046903A1 (en) * 2016-08-12 2018-02-15 DeePhi Technology Co., Ltd. Deep processing unit (dpu) for implementing an artificial neural network (ann)
US10621486B2 (en) * 2016-08-12 2020-04-14 Beijing Deephi Intelligent Technology Co., Ltd. Method for optimizing an artificial neural network (ANN)
US11556772B2 (en) * 2017-04-28 2023-01-17 Intel Corporation Incremental precision networks using residual inference and fine-grain quantization
US10878273B2 (en) * 2017-07-06 2020-12-29 Texas Instruments Incorporated Dynamic quantization for deep neural network inference system and method
US11216719B2 (en) * 2017-12-12 2022-01-04 Intel Corporation Methods and arrangements to quantize a neural network with machine learning
US11803734B2 (en) * 2017-12-20 2023-10-31 Advanced Micro Devices, Inc. Adaptive quantization for neural networks
US11755901B2 (en) * 2017-12-28 2023-09-12 Intel Corporation Dynamic quantization of neural networks
US11645493B2 (en) * 2018-05-04 2023-05-09 Microsoft Technology Licensing, Llc Flow for quantized neural networks
US11562208B2 (en) * 2018-05-17 2023-01-24 Qualcomm Incorporated Continuous relaxation of quantization for discretized deep neural networks
US20210019630A1 (en) * 2018-07-26 2021-01-21 Anbang Yao Loss-error-aware quantization of a low-bit neural network
US20200193270A1 (en) * 2018-12-12 2020-06-18 Kneron (Taiwan) Co., Ltd. Low precision and coarse-to-fine dynamic fixed-point quantization design in convolution neural network
US11586883B2 (en) * 2018-12-14 2023-02-21 Microsoft Technology Licensing, Llc Residual quantization for neural networks
US20200210838A1 (en) * 2018-12-31 2020-07-02 Microsoft Technology Licensing, Llc Neural network activation compression with narrow block floating-point
US20200218982A1 (en) * 2019-01-04 2020-07-09 Microsoft Technology Licensing, Llc Dithered quantization of parameters during training with a machine learning tool
US11507823B2 (en) * 2019-01-22 2022-11-22 Black Sesame Technologies Inc. Adaptive quantization and mixed precision in a network
US11625607B2 (en) * 2019-01-22 2023-04-11 Black Sesame Technologies Inc. Method of structured network pruning and sparsity speed-up
US11556764B2 (en) * 2019-03-01 2023-01-17 Microsoft Technology Licensing, Llc Deriving a concordant software neural network layer from a quantized firmware neural network layer
US11494624B2 (en) * 2019-05-20 2022-11-08 Mipsology SAS Accelerating neuron computations in artificial neural networks with dual sparsity
EP3998554A4 (en) * 2019-06-12 2023-11-15 Shanghai Cambricon Information Technology Co., Ltd METHOD FOR DETERMINING QUANTIZATION PARAMETERS IN A NEURONAL NETWORK AND ASSOCIATED PRODUCTS
US11676028B2 (en) * 2019-06-12 2023-06-13 Shanghai Cambricon Information Technology Co., Ltd Neural network quantization parameter determination method and related products
US20210064985A1 (en) * 2019-09-03 2021-03-04 International Business Machines Corporation Machine learning hardware having reduced precision parameter components for efficient parameter update
WO2021056112A1 (en) * 2019-09-24 2021-04-01 Huawei Technologies Co., Ltd. Training method for quantizing the weights and inputs of a neural network
CN113361700A (zh) * 2020-03-04 2021-09-07 佳能株式会社 生成量化神经网络的方法、装置、系统、存储介质及应用
US11861467B2 (en) * 2020-03-05 2024-01-02 Qualcomm Incorporated Adaptive quantization for execution of machine learning models
US20210377122A1 (en) * 2020-05-26 2021-12-02 Synopsys, Inc. Mixed-precision neural networks
US20220114413A1 (en) * 2020-10-12 2022-04-14 Black Sesame International Holding Limited Integer-based fused convolutional layer in a convolutional neural network
US20220284260A1 (en) * 2021-03-05 2022-09-08 Qualcomm Incorporated Variable quantization for neural networks

Also Published As

Publication number Publication date
US11507823B2 (en) 2022-11-22
US20200234112A1 (en) 2020-07-23

Similar Documents

Publication Publication Date Title
CN111814974A (zh) 用于卷积神经网络的自适应量化的方法
US10949736B2 (en) Flexible neural network accelerator and methods therefor
KR20190058636A (ko) 신경망을 이용한 텍스트 시퀀스 처리
CN110889815B (zh) 卷积神经网络中的子图块融合
US20200285933A1 (en) Deep neural network-based method and device for quantifying activation amount
US20190370656A1 (en) Lossless Model Compression by Batch Normalization Layer Pruning in Deep Neural Networks
CN109583561B (zh) 一种深度神经网络的激活量量化方法及装置
TW201636998A (zh) 用於自動言語辨識解碼的傳感器資料之隨機存取壓縮的方法及系統
EP3816866A1 (en) Operation method and apparatus for network layer in deep neural network
CN113420788A (zh) 卷积神经网络中基于整数的融合卷积层以及融合卷积方法
EP3676698B1 (en) Providing efficient floating-point operations using matrix processors in processor-based systems
WO2020176248A1 (en) Neural network layer processing with scaled quantization
CN114898108B (zh) 一种基于fpga的cnn模型轻量化方法、目标检测方法及系统
CN109242091B (zh) 图像识别方法、装置、设备及可读存储介质
CN110888824B (zh) 多级存储器层级结构
CN112446384A (zh) 快速实例分割
US20220391676A1 (en) Quantization evaluator
CN115293076A (zh) 生成电路的方法、电子设备及存储介质
CN112561050B (zh) 一种神经网络模型训练方法及装置
US9467199B1 (en) Compression using mu-law approximation
CN113495717A (zh) 神经网络装置、操作神经网络装置的方法和应用处理器
CN114595627A (zh) 模型量化方法、装置、设备及存储介质
US20190279071A1 (en) Arithmetic processing device and system to realize multi-layer convolutional neural network circuit to perform process with fixed-point number format
CN115482422B (zh) 深度学习模型的训练方法、图像处理方法和装置
CN114662679B (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