CN111126558A - 一种卷积神经网络计算加速方法及装置、设备、介质 - Google Patents

一种卷积神经网络计算加速方法及装置、设备、介质 Download PDF

Info

Publication number
CN111126558A
CN111126558A CN201811286575.9A CN201811286575A CN111126558A CN 111126558 A CN111126558 A CN 111126558A CN 201811286575 A CN201811286575 A CN 201811286575A CN 111126558 A CN111126558 A CN 111126558A
Authority
CN
China
Prior art keywords
quantization
convolution
input tensor
convolution kernel
point number
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
Application number
CN201811286575.9A
Other languages
English (en)
Other versions
CN111126558B (zh
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.)
Canaan Bright Sight Co Ltd
Original Assignee
Canaan Creative 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 Canaan Creative Co Ltd filed Critical Canaan Creative Co Ltd
Priority to CN201811286575.9A priority Critical patent/CN111126558B/zh
Priority to US17/290,351 priority patent/US20220004884A1/en
Priority to PCT/CN2019/106083 priority patent/WO2020088131A1/zh
Publication of CN111126558A publication Critical patent/CN111126558A/zh
Application granted granted Critical
Publication of CN111126558B publication Critical patent/CN111126558B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/15Correlation function computation including computation of convolution operations
    • 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/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/01Methods or arrangements for data conversion without changing the order or content of the data handled for shifting, e.g. justifying, scaling, normalising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/10Interfaces, programming languages or software development kits, e.g. for simulating neural networks
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/14Conversion to or from non-weighted codes
    • H03M7/24Conversion to or from floating-point codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Neurology (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Complex Calculations (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本申请公开了一种卷积神经网络计算加速方法及装置、设备、介质。该方法至少包括:利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;利用第二函数,计算定点数形式的输入张量和卷积核分别的量化偏移,第一函数和第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;根据量化偏移,计算定点数形式的输入张量和卷积核的第一卷积结果;根据量化缩放系数和第一卷积结果,计算原始的输入张量和卷积核的第二卷积结果。本申请利用浮点数转定点数的转换逻辑,以及基于量化偏移的自适应量化处理,有利于提高卷积计算速度,提高算法性能,降低硬件功耗和设计难度。

Description

一种卷积神经网络计算加速方法及装置、设备、介质
技术领域
本申请涉及机器学习技术领域,尤其涉及一种卷积神经网络计算加速方法及装置、设备、介质。
背景技术
卷积神经网络在计算机视觉、语音处理、机器学习、图像识别、人脸识别等众多领域取得了巨大的突破,显著地提高了相应的机器算法在图像分类、目标检测和语音识别等多种任务中的性能,并且在互联网、视频监控等行业中得到了广泛应用。
大容量、高复杂度的卷积神经网络能够更全面地对数据进行学习,从而更准确地识别数据,当然,随着网络层数与参数数量的增加,计算和存储代价也会大幅增长。
在现有技术中,使用卷积神经网络处理对数据进行处理时,通常直接使用浮点数进行卷积计算,但是,这种方式计算速度慢,且硬件功耗大。
发明内容
本申请实施例提供一种卷积神经网络计算加速方法及装置、设备、介质,用以解决现有技术中的如下技术问题:使用卷积神经网络处理对数据进行处理时,通常直接使用浮点数进行卷积计算,但是,这种方式计算速度慢,且硬件功耗大。
本申请实施例采用下述技术方案:
一种卷积神经网络计算加速方法,包括:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
可选地,所述量化缩放系数包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数;
所述第一量化系数根据指定的量化值域的最值和所述原始的输入张量的最值计算得到,和/或
所述第二量化系数根据指定的量化值域的最值和所述原始的卷积核的最值计算得到。
可选地,量化值域的最值根据指定的量化位数计算得到。
可选地,所述指定的量化位数为指定的N进制数的量化位数w,按照如下公式计算所述量化值域的最值:
Qlow=-Nw-1
Qhigh=Nw-1-1;
其中,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值。
可选地,所述第一量化系数按照公式
Figure BDA0001849184030000021
计算得到,和/或
所述第二量化系数按照公式
Figure BDA0001849184030000022
计算得到;
其中,SX表示所述第一量化系数,SW表示所述第二量化系数,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值,Xmin表示所述原始的输入张量的最小值,Xmax表示所述原始的输入张量的最大值,Wmin表示所述原始的卷积核的最小值,Wmax表示所述原始的卷积核的最大值。
可选地,在所述量化缩放系数以外,所述第一函数和/或所述第二函数还包含所述量化值域的最小值,以及所进行量化处理的对象的最小值;
其中,所述对象为所述原始的输入张量或者卷积核。
可选地,所述第一函数表示为:
Figure BDA0001849184030000031
其中,α表示所述对象,
Figure BDA0001849184030000036
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述第二函数表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果,具体包括:
按照如下公式,计算所述定点数形式的输入张量和卷积核的第一卷积结果:
Figure BDA0001849184030000032
其中,
Figure BDA0001849184030000033
表示所述第一卷积结果,
Figure BDA0001849184030000034
表示所述定点数形式的输入张量,
Figure BDA0001849184030000035
表示所述定点数形式的卷积核,BX表示为所述定点数形式的输入张量计算的量化偏移,BW表示为所述定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。
可选地,所述根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果,具体包括:
按照如下公式,计算所述原始的输入张量和卷积核的第二卷积结果:
Figure BDA0001849184030000041
其中,Y表示所述第二卷积结果,SX表示用于所述原始的输入张量的量化缩放系数,SW表示用于所述原始的卷积核的量化缩放系数。
一种卷积神经网络计算加速装置,包括:
量化模块,利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
量化偏移模块,利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
第一卷积模块,根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
第二卷积模块,根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
可选地,所述量化缩放系数包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数;
所述第一量化系数根据指定的量化值域的最值和所述原始的输入张量的最值计算得到,和/或
所述第二量化系数根据指定的量化值域的最值和所述原始的卷积核的最值计算得到。
可选地,量化值域的最值根据指定的量化位数计算得到。
可选地,所述指定的量化位数为指定的N进制数的量化位数w,所述量化模块按照如下公式计算所述量化值域的最值:
Qlow=-Nw-1
Qhigh=Nw-1-1;
其中,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值。
可选地,所述第一量化系数按照公式
Figure BDA0001849184030000051
计算得到,和/或
所述第二量化系数按照公式
Figure BDA0001849184030000052
计算得到;
其中,SX表示所述第一量化系数,SW表示所述第二量化系数,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值,Xmin表示所述原始的输入张量的最小值,Xmax表示所述原始的输入张量的最大值,Wmin表示所述原始的卷积核的最小值,Wmax表示所述原始的卷积核的最大值。
可选地,在所述量化缩放系数以外,所述第一函数和/或所述第二函数还包含所述量化值域的最小值,以及所进行量化处理的对象的最小值;
其中,所述对象为所述原始的输入张量或者卷积核。
可选地,所述第一函数表示为:
Figure BDA0001849184030000053
其中,α表示所述对象,
Figure BDA0001849184030000054
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述第二函数表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述第一卷积模块根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果,具体包括:
所述第一卷积模块按照如下公式,计算所述定点数形式的输入张量和卷积核的第一卷积结果:
Figure BDA0001849184030000061
其中,
Figure BDA0001849184030000062
表示所述第一卷积结果,
Figure BDA0001849184030000063
表示所述定点数形式的输入张量,
Figure BDA0001849184030000064
表示所述定点数形式的卷积核,BX表示为所述定点数形式的输入张量计算的量化偏移,BW表示为所述定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。
可选地,所述第二卷积模块根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果,具体包括:
所述第二卷积模块按照如下公式,计算所述原始的输入张量和卷积核的第二卷积结果:
Figure BDA0001849184030000065
其中,Y表示所述第二卷积结果,SX表示用于所述原始的输入张量的量化缩放系数,SW表示用于所述原始的卷积核的量化缩放系数。
一种卷积神经网络计算加速设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
一种卷积神经网络计算加速非易失性计算机存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:利用浮点数转定点数的转换逻辑,以及基于量化偏移的自适应量化处理,有利于提高卷积计算速度,提高算法性能,降低硬件功耗和设计难度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请的一些实施例提供的一种卷积神经网络计算加速方法的流程示意图;
图2为本申请的一些实施例提供的对应于图1的一种卷积神经网络计算加速装置的结构示意图;
图3为本申请的一些实施例提供的对应于图1的一种卷积神经网络计算加速设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
卷积计算是图像处理中常用的计算。对于一个输入图像,在卷积神经网络中任一层输出的图像中每个像素可以是输入图像中一个小区域中像素的加权平均,其权值由一个函数定义,该函数可以称为卷积核。对图像进行卷积计算的过程为:获取表示为矩阵的输入图像和卷积核,对输入图像和卷积核按照卷积的规则以预定步长进行乘加等运算,得到卷积结果。
而本申请并非直接进行上面的卷积计算,而是通过浮点数转定点数,以及基于动态的量化偏移的自适应量化等处理,近似地进行卷积计算,既能够加快计算速度,同时也保留了较好的计算精度的,有效地降低了卷积神经网络的实现和工作成本。
下面对本申请的方案进行详细说明。
图1为本申请的一些实施例提供的一种卷积神经网络计算加速方法的流程示意图。在该流程中,从设备角度而言,执行主体可以是一个或者多个计算设备,比如,基于卷积神经网络的单个机器学习服务器、机器学习服务器集群等,从程序角度而言,执行主体相应地可以是搭载于这些计算设备上的程序,比如,基于卷积神经网络的神经网络建模平台、图像处理平台等,更具体地,可以是这类平台上所使用的卷积神经网络中包含的一个或者多个神经元。
图1中的流程可以包括以下步骤:
S102:利用第一函数,对原始的输入张量和卷积核(统称为原始数据)进行量化处理,得到定点数形式的输入张量和卷积核。
在本申请的一些实施例中,原始的输入张量可以是整个卷积神经网络的输入,也可以是卷积神经网络中任一神经元的输入,对于卷积神经网络,输入张量一般表示为向量或者矩阵,输入张量中的元素往往是浮点数形式的。
目前,会由神经元直接对原始的输入张量和卷积核(不同的神经元可能采用不同的卷积核)进行卷积计算,直接对浮点数进行卷积计算。而本申请不会直接对原始的输入张量和卷积核进行卷积计算,而是先进行一些近似的处理以实现简化,再用简化后的数据进行卷积计算,从而间接地得到卷积结果。
在本申请的一些实施例中,近似的处理至少包括量化处理,在量化处理的过程中,还会进行浮点数转定点数的转换处理。
在本申请的一些实施例中,对原始的输入张量和卷积核分别进行的量化处理可以是有所区别的,比如,量化位数可以不同、浮点数转定点数的转换逻辑可以不同等。
S104:利用第二函数,计算定点数形式的输入张量和卷积核分别的量化偏移,第一函数和第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑。
在本申请的一些实施例中,量化偏移可以是适应于当前的输入张量和卷积核而动态变化的。量化偏移用于对步骤S102中初步量化结果进一步地自适应调整,以使得调整后得到的最终量化结果更加接近原始数据,从而有利于提高计算精度。
在本申请的一些实施例中,量化缩放系数主要决定了对原始数据的变换尺度,量化缩放系数的计算方式可以是多样的,比如,根据预定的量化值域和/或量化对象本身的值域计算得到。浮点数转定点数的转换逻辑也可以是多样的,比如,通过四舍五入处理转换,通过直接舍去尾数转换等。
S106:根据量化偏移,计算定点数形式的输入张量和卷积核的第一卷积结果。
S108:根据量化缩放系数和第一卷积结果,计算原始的输入张量和卷积核的第二卷积结果。第二卷积结果可以作为当前神经元的输出。
在本申请的一些实施例中,不直接对原始的输入张量和卷积核进行卷积计算,而是可以根据对上面的最终量化结果的卷积计算的结果,间接地近似计算原始的输入张量和卷积核的卷积结果,以降低计算量,以及降低量化处理对卷积计算带来的误差。
通过图1的方法,利用浮点数转定点数的转换逻辑,以及基于量化偏移的自适应量化处理,有利于提高卷积计算速度,提高算法性能,降低硬件功耗和设计难度。
基于图1的方法,本申请的一些实施例还提供了该方法的一些具体实施方案,以及扩展方案,下面进行说明。
在本申请的一些实施例中,可以预先指定的量化值域,据此进行量化处理,量化处理后得到的数据将会落在量化值域中,量化值域是离散的。将原始数据的值域与量化值域进行映射,能够实现量化。
假定采用不同的量化参数(以量化缩放系数为例,也可以是诸如量化缩放后微调系数等其他参数),对输入张量和卷积核分别进行量化处理。则量化缩放系数比如可以包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数,进一步地,第一量化系数比如根据指定的量化值域的最值和原始的输入张量的最值计算得到,和/或第二量化系数根据指定的量化值域的最值和原始的卷积核的最值计算得到。
最值包括最小值和最大值中的至少一个,可以通过遍历输入张量或者卷积核中的各元素确定,可以将最小的元素作为最小值,最大的元素作为最大值。
在本申请的一些实施例中,量化值域的最值可以根据指定的量化位数计算得到。量化位数通常是2进制位数的,比如,8位、16位或者32位等2进制数,一般地,位数越高,量化精度也越高。
假定指定的量化位数为指定的N进制数的量化位数w,比如,可以按照如下公式计算量化值域的最值:Qlow=-Nw-1;Qhigh=Nw-1-1;其中,Qlow表示量化值域的最小值,Qhigh表示量化值域的最大值,N一般为2。该例中,考虑了负值,在实际应用中,也可以只取正值的值域。
在本申请的一些实施例中,量化缩放系数可以是基于均匀量化或者非均匀量化的方式定义的,以均匀量化方式定义为例,则比如:
第一量化系数可以按照公式
Figure BDA0001849184030000111
计算得到,第二量化系数可以按照公式
Figure BDA0001849184030000112
计算得到;
其中,X表示原始的输入张量,W表示原始的卷积核,SX表示第一量化系数,SW表示第二量化系数,Qlow表示量化值域的最小值,Qhigh表示量化值域的最大值,Xmin表示原始的输入张量的最小值,Xmax表示原始的输入张量的最大值,Wmin表示原始的卷积核的最小值,Wmax表示原始的卷积核的最大值。
若以非均匀量化方式定义,比如,可以在上例中公式中再加入包含当前的X或者W的系数或者附加项等。
在本申请的一些实施例中,对于图1中的第一函数和/或第二函数,其包含有量化缩放系数,同时,在量化缩放系数以外,还可以包含量化值域的最小值,以及所进行量化处理的对象的最小值等其他因子;其中,该对象为原始的输入张量或者卷积核。
更直观地,本申请提供了一种实际应用场景下,适用的第一函数和第二函数作为示例。
第一函数比如表示为:
Figure BDA0001849184030000113
其中,α表示该对象,
Figure BDA0001849184030000114
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
第二函数比如表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示量化值域的最小值。
可以将round替换为其他能够实现浮点数转定点数的函数。在对原始的输入张量进行量化处理,以及进一步地计算量化偏移时,α即可以为X,在对卷积核进行量化处理,以及进一步地计算量化偏移时,α即可以为W。
在本申请的一些实施例中,对于步骤S106,根据量化偏移,计算定点数形式的输入张量和卷积核的第一卷积结果,比如可以包括:
按照如下公式,计算定点数形式的输入张量和卷积核的第一卷积结果:
Figure BDA0001849184030000121
其中,
Figure BDA0001849184030000122
表示第一卷积结果,
Figure BDA0001849184030000123
表示定点数形式的输入张量,
Figure BDA0001849184030000124
表示定点数形式的卷积核,BX表示为定点数形式的输入张量计算的量化偏移,BW表示为定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。这里,
Figure BDA0001849184030000126
Figure BDA0001849184030000125
可以表示X和W分别的最终量化结果,第一卷积结果即通过对最终量化结果直接进行卷积计算得到。
在本申请的一些实施例中,可以将第一卷积结果
Figure BDA0001849184030000127
作为当前神经元的输出,但是,考虑到量化处理会带来数据精度损失,相应地,基于最终量化结果计算得到的第一卷积结果
Figure BDA0001849184030000128
实际上与真实结果(直接利用conv对X和W进行卷积计算得到的结果)也有损失,为了尽量减少损失,可以进一步地利用量化缩放系数,再对
Figure BDA0001849184030000129
反向地进行一定程度的还原,从而得到相对可能更接近真实结果的第二卷积结果Y。
基于这样的考虑,对于步骤S108,根据量化缩放系数和第一卷积结果,计算原始的输入张量和卷积核的第二卷积结果,比如可以包括:
按照如下公式,计算原始的输入张量和卷积核的第二卷积结果:
Figure BDA0001849184030000131
其中,Y表示第二卷积结果,SX表示用于原始的输入张量的量化缩放系数,SW表示用于原始的卷积核的量化缩放系数。
需要说明的是,上面列举的一些公式反映了本申请方案的思想,但是并非是唯一实施形式,基于本申请方案的思想,能够得到更多的类似公式替代上面的公式。
基于同样的思路,本申请的一些实施例还提供了上述方法对应的装置、设备和非易失性计算机存储介质。
图2为本申请的一些实施例提供的对应于图1的一种卷积神经网络计算加速装置的结构示意图,该装置包括:
量化模块201,利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
量化偏移模块202,利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
第一卷积模块203,根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
第二卷积模块204,根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
可选地,所述量化缩放系数包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数;
所述第一量化系数根据指定的量化值域的最值和所述原始的输入张量的最值计算得到,和/或
所述第二量化系数根据指定的量化值域的最值和所述原始的卷积核的最值计算得到。
可选地,量化值域的最值根据指定的量化位数计算得到。
可选地,所述指定的量化位数为指定的N进制数的量化位数w,所述量化模块201按照如下公式计算所述量化值域的最值:
Qlow=-Nw-1
Qhigh=Nw-1-1;
其中,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值。
可选地,所述第一量化系数按照公式
Figure BDA0001849184030000141
计算得到,和/或
所述第二量化系数按照公式
Figure BDA0001849184030000142
计算得到;
其中,SX表示所述第一量化系数,SW表示所述第二量化系数,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值,Xmin表示所述原始的输入张量的最小值,Xmax表示所述原始的输入张量的最大值,Wmin表示所述原始的卷积核的最小值,Wmax表示所述原始的卷积核的最大值。
可选地,在所述量化缩放系数以外,所述第一函数和/或所述第二函数还包含所述量化值域的最小值,以及所进行量化处理的对象的最小值;
其中,所述对象为所述原始的输入张量或者卷积核。
可选地,所述第一函数表示为:
Figure BDA0001849184030000143
其中,α表示所述对象,
Figure BDA0001849184030000144
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述第二函数表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
可选地,所述第一卷积模块203根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果,具体包括:
所述第一卷积模块按照如下公式,计算所述定点数形式的输入张量和卷积核的第一卷积结果:
Figure BDA0001849184030000151
其中,
Figure BDA0001849184030000152
表示所述第一卷积结果,
Figure BDA0001849184030000153
表示所述定点数形式的输入张量,
Figure BDA0001849184030000154
表示所述定点数形式的卷积核,BX表示为所述定点数形式的输入张量计算的量化偏移,BW表示为所述定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。
可选地,所述第二卷积模块204根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果,具体包括:
所述第二卷积模块204按照如下公式,计算所述原始的输入张量和卷积核的第二卷积结果:
Figure BDA0001849184030000155
其中,Y表示所述第二卷积结果,SX表示用于所述原始的输入张量的量化缩放系数,SW表示用于所述原始的卷积核的量化缩放系数。
图3为本申请的一些实施例提供的对应于图1的一种卷积神经网络计算加速设备的结构示意图,该设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
本申请的一些实施例提供的对应于图1的一种卷积神经网络计算加速非易失性计算机存储介质,存储有计算机可执行指令,该计算机可执行指令设置为:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备和介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例提供的装置、设备和介质与方法是一一对应的,因此,装置、设备和介质也具有与其对应的方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述装置、设备和介质的有益技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(f l ash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (22)

1.一种卷积神经网络计算加速方法,其特征在于,包括:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
2.如权利要求1所述的方法,其特征在于,所述量化缩放系数包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数;
所述第一量化系数根据指定的量化值域的最值和所述原始的输入张量的最值计算得到,和/或
所述第二量化系数根据指定的量化值域的最值和所述原始的卷积核的最值计算得到。
3.如权利要求2所述的方法,其特征在于,量化值域的最值根据指定的量化位数计算得到。
4.如权利要求3所述的方法,其特征在于,所述指定的量化位数为指定的N进制数的量化位数w,按照如下公式计算所述量化值域的最值:
Qlow=-Nw-1
Qhigh=Nw-1-1;
其中,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值。
5.如权利要求2所述的方法,其特征在于,所述第一量化系数按照公式
Figure FDA0001849184020000021
计算得到,和/或
所述第二量化系数按照公式
Figure FDA0001849184020000022
计算得到;
其中,SX表示所述第一量化系数,SW表示所述第二量化系数,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值,Xmin表示所述原始的输入张量的最小值,Xmax表示所述原始的输入张量的最大值,Wmin表示所述原始的卷积核的最小值,Wmax表示所述原始的卷积核的最大值。
6.如权利要求2所述的方法,其特征在于,在所述量化缩放系数以外,所述第一函数和/或所述第二函数还包含所述量化值域的最小值,以及所进行量化处理的对象的最小值;
其中,所述对象为所述原始的输入张量或者卷积核。
7.如权利要求6所述的方法,其特征在于,所述第一函数表示为:
Figure FDA0001849184020000023
其中,α表示所述对象,
Figure FDA0001849184020000024
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
8.如权利要求6所述的方法,其特征在于,所述第二函数表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
9.如权利要求1所述的方法,其特征在于,所述根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果,具体包括:
按照如下公式,计算所述定点数形式的输入张量和卷积核的第一卷积结果:
Figure FDA0001849184020000031
其中,
Figure FDA0001849184020000032
表示所述第一卷积结果,
Figure FDA0001849184020000033
表示所述定点数形式的输入张量,
Figure FDA0001849184020000034
表示所述定点数形式的卷积核,BX表示为所述定点数形式的输入张量计算的量化偏移,BW表示为所述定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。
10.如权利要求9所述的方法,其特征在于,所述根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果,具体包括:
按照如下公式,计算所述原始的输入张量和卷积核的第二卷积结果:
Figure FDA0001849184020000035
其中,Y表示所述第二卷积结果,SX表示用于所述原始的输入张量的量化缩放系数,SW表示用于所述原始的卷积核的量化缩放系数。
11.一种卷积神经网络计算加速装置,其特征在于,包括:
量化模块,利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
量化偏移模块,利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
第一卷积模块,根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
第二卷积模块,根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
12.如权利要求11所述的装置,其特征在于,所述量化缩放系数包括用于输入张量的第一量化系数,以及用于卷积核的第二量化系数;
所述第一量化系数根据指定的量化值域的最值和所述原始的输入张量的最值计算得到,和/或
所述第二量化系数根据指定的量化值域的最值和所述原始的卷积核的最值计算得到。
13.如权利要求12所述的装置,其特征在于,量化值域的最值根据指定的量化位数计算得到。
14.如权利要求13所述的装置,其特征在于,所述指定的量化位数为指定的N进制数的量化位数w,所述量化模块按照如下公式计算所述量化值域的最值:
Qlow=-Nw-1
Qhigh=Nw-1-1;
其中,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值。
15.如权利要求12所述的装置,其特征在于,所述第一量化系数按照公式
Figure FDA0001849184020000041
计算得到,和/或
所述第二量化系数按照公式
Figure FDA0001849184020000042
计算得到;
其中,SX表示所述第一量化系数,SW表示所述第二量化系数,Qlow表示所述量化值域的最小值,Qhigh表示所述量化值域的最大值,Xmin表示所述原始的输入张量的最小值,Xmax表示所述原始的输入张量的最大值,Wmin表示所述原始的卷积核的最小值,Wmax表示所述原始的卷积核的最大值。
16.如权利要求12所述的装置,其特征在于,在所述量化缩放系数以外,所述第一函数和/或所述第二函数还包含所述量化值域的最小值,以及所进行量化处理的对象的最小值;
其中,所述对象为所述原始的输入张量或者卷积核。
17.如权利要求16所述的装置,其特征在于,所述第一函数表示为:
Figure FDA0001849184020000043
其中,α表示所述对象,
Figure FDA0001849184020000051
表示量化处理后的α,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
18.如权利要求16所述的装置,其特征在于,所述第二函数表示为:
Bα=round[-Sα·αmin]+Qlow
其中,Bα表示为进行量化处理后的α计算的量化偏移,αmin表示α的最小值,Sα表示用于α的量化缩放系数,Qlow表示所述量化值域的最小值,round表示将浮点数四舍五入为定点数的函数。
19.如权利要求11所述的装置,其特征在于,所述第一卷积模块根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果,具体包括:
所述第一卷积模块按照如下公式,计算所述定点数形式的输入张量和卷积核的第一卷积结果:
Figure FDA0001849184020000052
其中,
Figure FDA0001849184020000053
表示所述第一卷积结果,
Figure FDA0001849184020000054
表示所述定点数形式的输入张量,
Figure FDA0001849184020000055
表示所述定点数形式的卷积核,BX表示为所述定点数形式的输入张量计算的量化偏移,BW表示为所述定点数形式的卷积核计算的量化偏移,conv表示卷积计算函数。
20.如权利要求19所述的装置,其特征在于,所述第二卷积模块根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果,具体包括:
所述第二卷积模块按照如下公式,计算所述原始的输入张量和卷积核的第二卷积结果:
Figure FDA0001849184020000056
其中,Y表示所述第二卷积结果,SX表示用于所述原始的输入张量的量化缩放系数,SW表示用于所述原始的卷积核的量化缩放系数。
21.一种卷积神经网络计算加速设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
22.一种卷积神经网络计算加速非易失性计算机存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令设置为:
利用第一函数,对原始的输入张量和卷积核进行量化处理,得到定点数形式的输入张量和卷积核;
利用第二函数,计算所述定点数形式的输入张量和卷积核分别的量化偏移,所述第一函数和所述第二函数包含相应的量化缩放系数,以及浮点数转定点数的转换逻辑;
根据所述量化偏移,计算所述定点数形式的输入张量和卷积核的第一卷积结果;
根据所述量化缩放系数和所述第一卷积结果,计算所述原始的输入张量和卷积核的第二卷积结果。
CN201811286575.9A 2018-10-31 2018-10-31 一种卷积神经网络计算加速方法及装置、设备、介质 Active CN111126558B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201811286575.9A CN111126558B (zh) 2018-10-31 2018-10-31 一种卷积神经网络计算加速方法及装置、设备、介质
US17/290,351 US20220004884A1 (en) 2018-10-31 2019-09-17 Convolutional Neural Network Computing Acceleration Method and Apparatus, Device, and Medium
PCT/CN2019/106083 WO2020088131A1 (zh) 2018-10-31 2019-09-17 一种卷积神经网络计算加速方法及装置、设备、介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811286575.9A CN111126558B (zh) 2018-10-31 2018-10-31 一种卷积神经网络计算加速方法及装置、设备、介质

Publications (2)

Publication Number Publication Date
CN111126558A true CN111126558A (zh) 2020-05-08
CN111126558B CN111126558B (zh) 2024-04-02

Family

ID=70461969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811286575.9A Active CN111126558B (zh) 2018-10-31 2018-10-31 一种卷积神经网络计算加速方法及装置、设备、介质

Country Status (3)

Country Link
US (1) US20220004884A1 (zh)
CN (1) CN111126558B (zh)
WO (1) WO2020088131A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113011569A (zh) * 2021-04-07 2021-06-22 开放智能机器(上海)有限公司 离线量化参数加注方法、装置、电子设备和存储介质
CN113554149A (zh) * 2021-06-18 2021-10-26 北京百度网讯科技有限公司 神经网络处理单元npu、神经网络的处理方法及其装置
CN113850374A (zh) * 2021-10-14 2021-12-28 安谋科技(中国)有限公司 神经网络模型的量化方法、电子设备及介质
WO2022021073A1 (zh) * 2020-07-28 2022-02-03 嘉楠明芯(北京)科技有限公司 神经网络模型的多算子运算方法以及装置
CN114492778A (zh) * 2022-02-16 2022-05-13 安谋科技(中国)有限公司 神经网络模型的运行方法、可读介质和电子设备
CN115272706A (zh) * 2022-07-28 2022-11-01 腾讯科技(深圳)有限公司 一种图像处理方法、装置、计算机设备及存储介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11676029B2 (en) * 2019-06-12 2023-06-13 Shanghai Cambricon Information Technology Co., Ltd Neural network quantization parameter determination method and related products
US11601134B2 (en) * 2020-01-10 2023-03-07 Robert Bosch Gmbh Optimized quantization for reduced resolution neural networks

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107480770A (zh) * 2017-07-27 2017-12-15 中国科学院自动化研究所 可调节量化位宽的神经网络量化与压缩的方法及装置
CN108009634A (zh) * 2017-12-21 2018-05-08 美的集团股份有限公司 一种卷积神经网络的优化方法、装置及计算机存储介质
CN108053028A (zh) * 2017-12-21 2018-05-18 深圳云天励飞技术有限公司 数据定点化处理方法、装置、电子设备及计算机存储介质
US20180165577A1 (en) * 2016-12-13 2018-06-14 Google Inc. Performing average pooling in hardware
CN108229663A (zh) * 2018-01-29 2018-06-29 百度在线网络技术(北京)有限公司 用于生成卷积神经网络的方法和装置
CN108345939A (zh) * 2017-01-25 2018-07-31 微软技术许可有限责任公司 基于定点运算的神经网络
CN108491926A (zh) * 2018-03-05 2018-09-04 东南大学 一种基于对数量化的低比特高效深度卷积神经网络硬件加速设计方法、模块及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018184192A1 (en) * 2017-04-07 2018-10-11 Intel Corporation Methods and systems using camera devices for deep channel and convolutional neural network images and formats
CN108154194B (zh) * 2018-01-18 2021-04-30 北京工业大学 一种用基于张量的卷积网络提取高维特征的方法
US10977001B2 (en) * 2018-02-05 2021-04-13 Mediatek Inc. Asymmetric quantization of multiple-and-accumulate operations in deep learning processing
US10678508B2 (en) * 2018-03-23 2020-06-09 Amazon Technologies, Inc. Accelerated quantized multiply-and-add operations
CN112955907A (zh) * 2018-10-30 2021-06-11 谷歌有限责任公司 量化训练的长短期记忆神经网络
KR20210004306A (ko) * 2019-07-04 2021-01-13 삼성전자주식회사 뉴럴 네트워크 장치 및 뉴럴 네트워크의 파라미터 양자화 방법

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180165577A1 (en) * 2016-12-13 2018-06-14 Google Inc. Performing average pooling in hardware
CN108615072A (zh) * 2016-12-13 2018-10-02 谷歌公司 在硬件中执行平均池化
CN108345939A (zh) * 2017-01-25 2018-07-31 微软技术许可有限责任公司 基于定点运算的神经网络
CN107480770A (zh) * 2017-07-27 2017-12-15 中国科学院自动化研究所 可调节量化位宽的神经网络量化与压缩的方法及装置
CN108009634A (zh) * 2017-12-21 2018-05-08 美的集团股份有限公司 一种卷积神经网络的优化方法、装置及计算机存储介质
CN108053028A (zh) * 2017-12-21 2018-05-18 深圳云天励飞技术有限公司 数据定点化处理方法、装置、电子设备及计算机存储介质
CN108229663A (zh) * 2018-01-29 2018-06-29 百度在线网络技术(北京)有限公司 用于生成卷积神经网络的方法和装置
CN108491926A (zh) * 2018-03-05 2018-09-04 东南大学 一种基于对数量化的低比特高效深度卷积神经网络硬件加速设计方法、模块及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022021073A1 (zh) * 2020-07-28 2022-02-03 嘉楠明芯(北京)科技有限公司 神经网络模型的多算子运算方法以及装置
CN113011569A (zh) * 2021-04-07 2021-06-22 开放智能机器(上海)有限公司 离线量化参数加注方法、装置、电子设备和存储介质
CN113554149A (zh) * 2021-06-18 2021-10-26 北京百度网讯科技有限公司 神经网络处理单元npu、神经网络的处理方法及其装置
CN113850374A (zh) * 2021-10-14 2021-12-28 安谋科技(中国)有限公司 神经网络模型的量化方法、电子设备及介质
CN114492778A (zh) * 2022-02-16 2022-05-13 安谋科技(中国)有限公司 神经网络模型的运行方法、可读介质和电子设备
CN115272706A (zh) * 2022-07-28 2022-11-01 腾讯科技(深圳)有限公司 一种图像处理方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN111126558B (zh) 2024-04-02
WO2020088131A1 (zh) 2020-05-07
US20220004884A1 (en) 2022-01-06

Similar Documents

Publication Publication Date Title
CN111126558B (zh) 一种卷积神经网络计算加速方法及装置、设备、介质
US11727276B2 (en) Processing method and accelerating device
CN111191783B (zh) 一种自适应量化方法及装置、设备、介质
US20180197278A1 (en) Image processing apparatus and method
CN110728358B (zh) 基于神经网络的数据处理方法和装置
TWI796286B (zh) 一種機器學習系統的訓練方法和訓練系統
CN112508125A (zh) 一种图像检测模型的高效全整数量化方法
TW202119293A (zh) 對人工神經網路進行量化的方法及系統以及人工神經網路設備
US11704556B2 (en) Optimization methods for quantization of neural network models
CN114528924B (zh) 一种图像分类模型的推理方法、装置、设备及介质
CN114241388A (zh) 基于时空记忆信息的视频实例分割方法和分割装置
CN112598012B (zh) 神经网络模型中数据处理方法、存储介质和电子装置
CN107230190A (zh) 一种图像双边滤波方法和装置
CN112418388A (zh) 一种实现深度卷积神经网络处理的方法及装置
US11699077B2 (en) Multi-layer neural network system and method
WO2022247368A1 (en) Methods, systems, and mediafor low-bit neural networks using bit shift operations
CN114298291A (zh) 一种模型量化处理系统及一种模型量化处理方法
TWI789042B (zh) 具有平均量化機制的神經網路建構方法及裝置
EP3306535B1 (en) Runtime optimization of convolutional neural networks
CN111383156B (zh) 图像处理方法、装置、智能驾驶系统和车载运算平台
CN115965055A (zh) 具有平均量化机制的神经网络建构方法及装置
CN116306820A (zh) 量化训练方法、装置、设备和计算机可读存储介质
CN114972090A (zh) 图像处理模型的训练方法、图像处理方法及装置
CN116863216A (zh) 一种基于数据流形几何的深度领域适应图像分类方法、系统及介质
CN117348837A (zh) 浮点精度模型的量化方法、装置、电子设备以及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20201201

Address after: Room 206, 2 / F, building C, phase I, Zhongguancun Software Park, No. 8, Dongbei Wangxi Road, Haidian District, Beijing 100094

Applicant after: Canaan Bright Sight Co.,Ltd.

Address before: 100094, No. 3, building 23, building 8, northeast Wang Xi Road, Beijing, Haidian District, 307

Applicant before: Canaan Creative Co.,Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant