CN108629405B - 提高卷积神经网络计算效率的方法和装置 - Google Patents
提高卷积神经网络计算效率的方法和装置 Download PDFInfo
- Publication number
- CN108629405B CN108629405B CN201710173124.3A CN201710173124A CN108629405B CN 108629405 B CN108629405 B CN 108629405B CN 201710173124 A CN201710173124 A CN 201710173124A CN 108629405 B CN108629405 B CN 108629405B
- Authority
- CN
- China
- Prior art keywords
- feature map
- convolution
- layer
- resolution
- input feature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Biophysics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Neurology (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种提高卷积神经网络计算效率的方法和装置,一种提高卷积神经网络计算效率的方法包括:对于检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,对于检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,待检测图像的特征图作为检测模型第一卷积层的输入特征图。本发明实施例提供的提高卷积神经网络计算效率的方法和装置,用于提高卷积神经网络算法的计算效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种提高卷积神经网络计算效率的方法和装置。
背景技术
在图像识别领域,随着深度学习算法的不断发展,基于卷积神经网络(Convolutional Neural Network,CNN)的检测、分类、提取、匹配应用层出不穷。这些应用的基础就是各种CNN。CNN是一种模拟大脑神经网络的工作方式实现数据信息提取的算法。该算法利用卷积计算完成信息的初步提取,结合一些非线性运算,实现高性能的目标检测。
在大部分的CNN芯片方案中,主要关注的都是系统的计算性能、缓存模块的性能大小、互联关系。对于数据无法保证计算单元高效运转的情况,基本是采用增加接口带宽的方式来解决。事实上,由于CNN算法的巨大计算需求,其专用芯片的计算往往是以大规模并行的方式工作的。每一个时钟周期,芯片内都会进行上百至上万次不等的乘加运算。这导致计算单元在每个时钟周期都需要获取大量的输入数据,保证计算单元能持续工作。
在CNN芯片的计算中,控制单元从存储单元中获取CNN检测的模型架构、卷积计算的每层分辨率、每层卷积系数的分辨率等特征,随后控制单元对于卷积计算的每一层,按照该层分辨率输出特征数据与卷积系数进入乘加单元。乘法单元内的各乘法器完成特征数据与卷积系数的乘法后,将结果送入加法树单元。在加法树单元中,会根据控制单元的控制,将对应的数据累加,并送出结果到数据整理单元。数据整理单元则根据数据的分组情况,将结果按照写回存储单元。在完成CNN模型的各层卷积运算后,即可得到运算结果。
但在使用CNN芯片进行检测的过程中,输入的待检测图像的分辨率是不确定的,在卷积运算的每一层中,每一个维度上的分辨率也是在不断变化的。而CNN芯片中乘加单元中的乘法器对卷积运算中每一个维度上的分配方式是固定的,这就导致乘加单元中的乘法器在某些维度上输入的数据不足,某些维度上输入的数据又过多,无法发挥所有乘法器的最大运算性能,从而影响CNN芯片的计算效率。
发明内容
本发明实施例的目的在于提供一种提高卷积神经网络计算效率的方法和装置,提高了卷积神经网络算法的计算效率。
本实施例具体技术方案如下:
第一方面提供一种提高卷积神经网络计算效率的方法,包括:
获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数;
获取所述待检测图像的特征图的CNN检测模型,所述检测模型包括对所述特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数;
根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数;
对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定所述乘加单元在每个维度上乘法器的分配系数,其中,所述分配系数为2的n次方,n为正整数;
对于所述检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,所述待检测图像的特征图作为所述检测模型第一卷积层的输入特征图。
在第一方面一种可能的实现方式中,所述分配系数包括I、J、B、A;所述对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,包括:
对于所述检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;
其中,A小于或等于N,对于所述检测模型的第一卷积层,B大于或等于C;对于所述检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于所述乘加单元中乘法器的个数。
在第一方面一种可能的实现方式中,所述根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,包括:
使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
在第一方面一种可能的实现方式中,所述根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数,包括:
通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
在第一方面一种可能的实现方式中,所述方法还包括:
对于所述检测模型的每一卷积层,将乘加单元中为输入特征图通道维度上分配的乘法器设置于所述乘加单元中加法树相邻的位置。
第二方面提供一种提高卷积神经网络计算效率的装置,包括:
获取模块,用于获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数;
计算模块,用于获取所述待检测图像的特征图的CNN检测模型,所述检测模型包括对所述特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数;根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数;
分配模块,用于对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定所述乘加单元在每个维度上乘法器的分配系数,其中,所述分配系数为2的n次方,n为正整数;
输入模块,用于对于所述检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,所述待检测图像的特征图作为所述检测模型第一卷积层的输入特征图。
在第二方面一种可能的实现方式中,所述分配系数包括I、J、B、A;
所述分配模块,具体用于对于所述检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;其中,A小于或等于N,对于所述检测模型的第一卷积层,B大于或等于C;对于所述检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于所述乘加单元中乘法器的个数。
在第二方面一种可能的实现方式中,所述计算模块,具体用于使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
在第二方面一种可能的实现方式中,所述计算模块,具体用于
通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
在第二方面一种可能的实现方式中,所述分配模块,还用于对于所述检测模型的每一卷积层,将乘加单元中为输入特征图通道维度上分配的乘法器设置于所述乘加单元中加法树相邻的位置。
本发明实施例提供的网络设备配置方法、装置和网络设备配置系统,在确定待检测图像的特征图的CNN检测模型后,对于检测模块的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,并根据每个维度上乘法器的分配系数将卷积层的输入特征图每个维度上数据输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,由于采用了动态调整的方法调整每一卷积层各维度上分配的乘法器的数量,避免了向乘法器输入过多无效数据,从而提高了CNN算法的计算效率。当然,实施本发明的任一产品或方法必不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为CNN算法的算法示意图;
图2为CNN芯片的结构示意图;
图3为本发明实施例提供给提高卷积神经网络计算效率的方法实施例一的流程图;
图4至图7为以表1所示乘法器分配系数进行卷积运算的示意图;
图8为本发明实施例提供的提高卷积神经网络计算效率的装置实施例一的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
卷积神经网络是近年发展起来,并引起广泛重视的一种高效识别方法。现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。CNN的基本结构包括两层,其一为特征提取层,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其它特征间的位置关系也随之确定下来;其二是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。特征映射结构采用影响函数核小的sigmoid函数作为卷积网络的激活函数,使得特征映射具有位移不变性。此外,由于一个映射面上的神经元共享权值,因而减少了网络自由参数的个数。卷积神经网络中的每一个卷积层都紧跟着一个用来求局部平均与二次提取的计算层,这种特有的两次特征提取结构减小了特征分辨率CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。由于CNN的特征检测层通过训练数据进行学习,所以在使用CNN时,避免了显示的特征抽取,而隐式地从训练数据中进行学习;再者由于同一特征映射面上的神经元权值相同,所以网络可以并行学习,这也是卷积网络相对于神经元彼此相连网络的一大优势。卷积神经网络以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,其布局更接近于实际的生物神经网络,权值共享降低了网络的复杂性,特别是多维输入向量的图像可以直接输入网络这一特点避免了特征提取和分类过程中数据重建的复杂度。
在图像识别领域中,CNN算法是将待检测的图片转换为三维的特征图,然后根据预设的检测模型,确定对图片进行卷积的层数和各卷积层所使用的卷积系数。使用不同的卷积系数对每一层的输入特征图进行卷积运算,得到新的输出特征图。在每一卷积层的卷积运算过程中,需要先将输入特征图和卷积系数分别输入CNN芯片中乘加单元的乘法器,在进行了乘法运算后,再通过乘加单元中的加法树对乘法器输出的结果进行累加。在将输入特征图的每个维度的数据都与卷积系数进行了乘加运算后,得到该卷积层的输出特征图。
图1为CNN算法的算法示意图,在图1中示出CNN算法中一个卷积层的算法模型,其中,输入特征图的分辨率为X×Y,通道数为C,X和Y为输入特征图的像素点个数。例如对于检测模型的第一层,输入特征图即为待检测的图片转换后的三维特征图,X×Y即为待检测图片的分辨率,C为待检测图片的通道数。每一卷积层使用的卷积系数为N个分辨率为W×H的卷积系数,或者称为滤波系数,也可以称为卷积核。每个卷积系数与输入特征图对应的数据进行对位相乘后,完成乘积的累加后,输出的值为输出特征图的一个像素点。随后,卷积系数会根据该卷积层的设计参数,以指定的步进值S在输入特征图上平移后再次完成乘加运算,直至对整个输入特征图完成卷积运算,将得到的像素点进行组合后即为该卷积层的输出特征图C方向上的一层。N个卷积系数分别完成卷积后,就会产生一个分辨率为X/S×Y/S,通道数为N的输出特征图。需要说明的是,若跨度S选择为1,则输出特征图的分辨率为X×Y,通道数为N,若跨度S选择为2,则输出特征图的分辨率为X/2×Y/2,通道数为N。
图2为CNN芯片的结构示意图,如图2所示,CNN芯片包括控制单元201,存储单元202,乘法单元203,加法树单元204和数据整理单元205。其中乘法单元203和加法树单元204共同组成乘加单元。在进行卷积运算时,控制单元201从存储单元202中获取CNN检测模型架构、每一卷积层的分辨率、每一卷积层的卷积系数的分辨率等信息。随后控制单元201根据每一层计算的分辨率等信息,控制存储单元202按照分辨率输出特征数据与卷积系数进入乘法单元203。乘法单元203内的各乘法器完成特征数据与卷积系数的乘法后,将结果送入加法树单元204。在加法树单元204中,会根据控制单元201的控制,将对应的数据累加,并送出结果到数据整理单元205。数据整理单元205则根据数据的分组情况,将结果按照C->W->H的排列顺序其写回至存储单元202的对应地址。
由于CNN算法需要对待检测的图片的每个像素分别与多个卷积系数进行卷积运算,运算量极大,而CNN芯片中的乘法器数量是有限的,因此需要频繁地从存储器中向乘法器输入大量的数据进行卷积运算。若采用传统的计算方式,CNN芯片是从内存中读取数据,那么对内存带宽的压力很大,会影响整体的计算效率。
目前一般采用将待计算的数据放入CNN芯片的片内缓存中,利用缓存的高带宽来分担内存的带宽压力。在每一个卷积层中,一般都是采用深度方向获取数据或宽高方向获取数据的方式,将输入特征图中的数据输入乘法器进行运算的。但由于卷积运算的每一层得到的输出特征图的分辨率都不同,仅根据一个相同的数据获取方法向乘法器输入数据,会导致计算效率的下降。例如在卷积计算的第一层,由于输入特征图为待检测图片转换后的原始特征图,C方向的通道数较小,若采用深度优先的数据获取方法,优先获取深度方向的全部数据,那么可以保证C方向所有输入乘法器的数据都是有效数据。但对于卷积计算后面的卷积层,C方向上的通道数会变为卷积系数的数量N,在N较大时,仍在C方向上每次获取较小的数据,则会影响卷积计算的并行度,从而降低计算效率。而若采用宽或高方向优先的数据获取方法,C方向上获取数据的数量将较大,对于卷积计算除第一层以外的其他层,将能够提升计算效率,但对于卷积计算的第一层,C方向上并没有相应数量的数据输入,这样将导致乘法器获取很多无效数据。而CNN算法中第一卷积层的运算量是最大的,一般会占到总计算量的25%以上,这样显然也会影响CNN算法的计算效率。
对CNN算法进行分析后可知,影响CNN算法计算效率的原因在于,可能有无效的数据被读入乘法器,或者乘法器的并行计算程度受到影响。但这都是由于输入乘法器的数据维度不合理而导致的,因此,本发明实施例考虑将数据动态地合理非配给乘法器,从而提高CNN算法的计算效率。
图3为本发明实施例提供给提高卷积神经网络计算效率的方法实施例一的流程图,如图3所示,本实施例的方法包括:
步骤S301,获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数。
在使用CNN算法对一个图像进行检测的时候,首先需要获取待检测图像的特征图,待检测图像的特征图是对一个待检测的二维图像进行处理后得到的。待检测的二维图像是由多个像素点组成的,待检测图像的二维分辨率为X×Y,表示待检测图像的宽度和高度方向分别有X个和Y个像素点。待检测图像的通道数由输入图像的格式确定,待检测图像的每个像素点使用多个参数来表示,例如对于RGB格式的图像,每个像素点分别使用R、G、B三个参数来表示,将其作为待检测图像的C方向通道数。这样就得到了X、Y、C三个维度表示的图像数据,将其称为待检测图像的特征图。
另外,在使用CNN算法进行运算时,每次的卷积运算所能使用的乘法器最大数量是根据运行CNN算法的芯片的能力确定的,为了提高CNN算法的计算效率,在每次卷积运算时,需要尽可能地使用CNN芯片中乘加单元中的所有乘法器。而乘加单元中的乘法器需要分配在多个不同的维度上分别进行运算,因此,在进行卷积运算之前,还需要确定乘加单元中乘法器的个数,已根据乘法器的个数确定每个卷积层中乘加单元在每个维度上乘法器的分配系数。
步骤S302,获取待检测图像的特征图的CNN检测模型,检测模型包括对特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数。
对一个图像进行CNN算法计算之前,还需要获取CNN算法的检测模型,CNN算法的检测模型包括对特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数。也即确定对待检测图像进行卷积运算的每一卷积层在输入特征图各方向的维度,以及每一卷积层所使用的卷积系数的各方向维度,另外还有每一卷积层的步进值。CNN检测模型是根据CNN芯片的计算能力、CNN算法的计算精度等因素确定的,是预设在CNN芯片中的CNN算法固有属性。
步骤S303,根据CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数。
在确定了CNN检测模型后,对待检测图像进行卷积运算的各卷积层的参数已经确定,再结合输入的待检测图像的分辨率和通道数,即可得到每一卷积层的输入特征图的分辨率和通道数。例如,可以根据第1卷积层的步进值和第1卷积层的输入特征图的分辨率,确定第2卷积层的输入特征图的分辨率。根据第1卷积层所使用的卷积系数的个数,确定第2卷积层的输入特征图的通道数。
步骤S304,对于检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,其中,分配系数为2的n次方,n为正整数。
在获取了CNN检测模型后,即确定了CNN算法每一卷积层的输入特征图的分辨率及通道数,以及每一卷积层所使用的步进值和卷积系数的分辨率及个数。根据这些参数,即可确定每一卷积层上,CNN中的乘加单元在各维度上乘法器的分配系数。各维度上乘法器的分配系数用于表示在卷积运算时,为各维度数据分配的乘法器的数量。CNN芯片中总的乘法器的数量是固定的,为各维度的数据分配的乘法器的总数不能超过CNN芯片中总的乘法器的数量,另外,为了提高CNN芯片的计算效率,还需要尽量使CNN芯片中的各乘法器都能够被输入有效数据进行计算。确定乘法器的分配系数的原则是要使乘加单元对输入数据的利用率高于预设阈值。
例如,设定的预设阈值为70%,则对于CNN检测模型的每一卷积层,都要使每个计算周期内,乘加单元中的所有乘法器中至少有70%的乘法器输入的数据为有效数据。由于CNN检测模型中每一卷积层的输入特征图和卷积参数的分辨率都不尽相同,因此需要动态地调整每一卷积层对应的乘加单元中每个维度上乘法器的分配系数。
在本实施例中,令乘加单元在每个维度上乘法器的分配系数包括I、J、B、A,对于检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;其中,A小于或等于N,对于检测模型的第一卷积层,B大于或等于C;对于检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于乘加单元中乘法器的个数。
例如,对于图1所示的卷积层,在进行卷积运算时,同时对卷积参数矩阵中的A个进行计算,每个卷积参数对输入特征图中X和Y方向上的I×J个数据进行计算,每次同时取B个C方向上的数据。即同时在输入特征图上取I×J×B个数据,与A个卷积参数进行卷积计算。需要说明的是,由于卷积参数矩阵中一共有N个卷积参数,且输入特征图的C和N都会较大,因此A需要小于或等于N,B需要小于或等于C。因此,只要使I和J取较小的值,就能保证图像中的每个特征点读取的数据都是有效的值。例如将I和J都设置为1。而当输入特征图的C值较小时,例如对于卷积模型的第一卷积层,可以适当放大I和J的值,并将B的值设置为大于或等于C,以保证计算的效率。同时,I、J、B、A相乘之积应该小于或等于CNN芯片中乘法器的总数量,为了尽量提高乘法器的使用效率,一般使I×J×B×A等于CNN芯片中乘法器的总数量。CNN芯片一般都采用二进制设计,乘法器的数量一般均为2的n次方,那么为了在每次运算中尽量使用CNN芯片中的所有乘法器,乘加单元在每个维度上乘法器的分配系数一般均为2的n次方,n为整数。
每一卷积层的步进值为S,每一卷积层的输入特征图的分辨率为X×Y,通道数为C,在C方向上每次取B个数据,在N个卷积参数对输入特征图中X和Y方向上的I×J个数据进行计算,则检测模型每一卷积层的输出特征图的分辨率为X/S×Y/S,通道数为N。
表1为一种乘法器的分配系数的示例,表1中第一层的输入特征图的分辨率表示待检测的图片分辨率为220×220,通道数为3。假设CNN芯片中共有1024个乘法器,CNN检测模型中第一卷积层的步进值为2,第一卷积层使用的卷积参数为3×3的分辨率,卷积参数矩阵中共包括64个卷积参数。由于输入特征图的C方向分辨率较低,为了避免向乘法器输入过多的无效数据,可以将B设置为与C相同或略大于C,并且B需要为2的n次方。由于C=3,若将B设置为3则I、J、B、A相乘之积无法等于1024,因此将B设置为略大于C的值4。另外,由于B的值较小,A的值又需要小于或等于N的值,因此,需要适当提高I和J的取值,以便提高计算效率。这里将第一层的I和J分别设置为2,将A的值设置为与N相同,从而得到第一卷积层对应的乘法器分配系数I、J、B、A分别为2、2、4、64。在对第一卷积层进行完卷积运算后,得到第一卷积层的输出特征图的分辨率为110×110,通道数为64,将其作为第二卷积层的输入特征图。CNN检测模型中第二卷积层的步进值为2,第二卷积层使用的卷积参数为3×3的分辨率,卷积参数矩阵中共包括32个卷积参数。由于第二层的输入特征图的C方向分辨率较高,此时可以将B设置为与C相同或小于C。例如将B设置为64。另外,A也需要小于或等于N,这里将A的值设置为16。此时可以将I和J的值分别设置为1,从而得到第二卷积层对应的乘法器分配系数I、J、B、A分别为1、1、64、16。在对第二卷积层进行完卷积运算后,得到第二卷积层的输出特征图的分辨率为55×55,通道数为32,将其作为第三卷积层的输入特征图。CNN检测模型中第三卷积层的步进值为1,第三卷积层使用的卷积参数为3×3的分辨率,卷积参数矩阵中共包括64个卷积参数。第三层的输入特征图的C方向通道数较大,此时可以将B设置为与C相同或小于C。例如将B设置为32。另外,A也需要小于或等于N,这里将A的值设置为32。此时可以将I和J的值分别设置为1,从而得到第三卷积层对应的乘法器分配系数I、J、B、A分别为1、1、32、32。在对第三卷积层进行完卷积运算后,得到第三卷积层的输出特征图的分辨率为55×55,通道数为64,将其作为第四卷积层的输入特征图。第四卷积层使用的卷积参数为3×3的分辨率,卷积参数矩阵中共包括32个卷积参数。由于第四层的输入特征图的C方向通道数较大,此时可以将B设置为与C相同或小于C。例如将B设置为64。另外,A也需要小于或等于N,这里将A的值设置为16。此时可以将I和J的值分别设置为1,另外,在第四层上,在X和Y方向上,步进值S设为1,从而得到第四卷积层对应的乘法器分配系数I、J、B、A分别为1、1、64、16。
如表1所示的乘法器的分配系数中,第一卷积层中C方向有一个被浪费的数据,浪费的比例为四分之一,X和Y方向没有浪费的数据,因此计算效率为75%。对于第二卷积层,各方向都没有浪费的数据,因此计算效率为100%。对于第二层之后的各卷积层,C的值和N的值都不会过小,因此都与第二层类似的,可以达到100%的计算效率。
表1乘法器的分配系数
步骤S305,对于检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,待检测图像的特征图作为检测模型第一卷积层的输入特征图。
在确定了每一卷积层了CNN芯片中乘加单元各乘法器的分配系数后,即可将输入特征图和卷积参数中的各数据分别输入乘加单元中的各乘法器,使乘法器对输入的数据进行乘法运算。随后乘法器将计算结果输入乘加单元中的加法树单元,再对乘法结果进行累加,最终完成卷积运算。在对输入特征图的每个特征点都进行了上述运算后,即可得到每一卷积层的输出特征图。从而完成对待检测图像的CNN计算。
图4至图7为以表1所示乘法器分配系数进行卷积运算的示意图,其中每个小格表示X和Y方向上的一个像素,图中仅示意性地示出了X和Y方向上的若干个像素,并不表示特征图中的实际像素点数量。如图4所示,为第一层的卷积运算示意图,输入特征图分辨率为220×220,其中一个小格表示输入特征图的一个像素。深度方向标示出的3表示输入特征图具有3个通道。根据表1可知,在CNN模板中,第一层使用的卷积系数为64个,卷积系数的分辨率为3×3。在X和Y方向上,取I和J均为2,即在X和Y方向上,以两个像素为一个单元进行卷积运算,即将图4中的一个加粗框内的区域做为一个单元。在C方向上,选择大于3且为2的最小次幂的值,也就是B的值为4,那么可以计算出A为64(2×2×4×64=1024)。在第一层中选择步进值S为2,也就是在X和Y方向上每次移动两个像素,经过第一层的卷积运算,得到的输出特征图的分辨率为110×110,通道数为64。图5为第二层的的卷积运算示意图,第二层所使用的卷积系数为32个,卷积系数的分辨率为3×3。在X和Y方向上,取I和J均为1,即在X和Y方向上,以一个像素为一个单元进行卷积运算,即将图5中的一个加粗框内的区域做为一个单元。在C方向上,选择小于或等于C的值,这里选择等于C的值,也就是B的值为64,那么可以计算出A为16(1×1×64×16=1024)。在第二层中选择步进值S为2,也就是在X和Y方向上每次移动两个像素,经过第二层的卷积运算,得到的输出特征图的分辨率为55×55,通道数为32。图6为第三层的的卷积运算示意图,第三层所使用的卷积系数为64个,卷积系数的分辨率为3×3。在X和Y方向上,取I和J均为1,即在X和Y方向上,以一个像素为一个单元进行卷积运算,即将图6中的一个加粗框内的区域做为一个单元。在C方向上,选择小于或等于C的值,这里选择等于C的值,也就是B的值为32,那么可以计算出A为32(1×1×32×32=1024)。在第三层中选择步进值S为1,也就是在X和Y方向上每次移动一个像素,经过第三层的卷积运算,得到的输出特征图的分辨率为55×55,通道数为64。图7为第四层的的卷积运算示意图,第四层所使用的卷积系数为32个,卷积系数的分辨率为3×3。在X和Y方向上,取I和J均为1,即在X和Y方向上,以一个像素为一个单元进行卷积运算,即将图7中的一个加粗框内的区域做为一个单元。在C方向上,选择小于或等于C的值,这里选择等于C的值,也就是B的值为64,那么可以计算出A为16(1×1×64×16=1024)。在第四层中选择步进值S为1,也就是在X和Y方向上每次移动一个像素,经过第四层的卷积运算,得到的输出特征图的分辨率为55×55,通道数为32。依次类推,直至将CNN计算模板中的每一层都计算完毕。
在完成对待检测图像的CNN计算后,得到的最后一个卷积层的输出特征图即为进行图像检测的基础。根据最后一个卷积层的输出特征图进行图像检测的方法为图像检测领域的常规方法,与本实施例所关注的提高CNN算法的计算效率无关,此处不再赘述。
本发明实施例提供的提高卷积神经网络计算效率的方法中,在确定待检测图像的特征图的CNN检测模型后,对于检测模块的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,并根据每个维度上乘法器的分配系数将卷积层的输入特征图每个维度上数据输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,由于采用了动态调整的方法调整每一卷积层各维度上分配的乘法器的数量,避免了向乘法器输入过多无效数据,从而提高了CNN算法的计算效率。
需要说明的是,可以使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
进一步地,在本发明实施例中,可以通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
进一步地,由于在使用乘法器进行计算时,一共在四个维度上分配了乘法器进行乘法计算,根据乘法器的计算规则,为输入特征图通道维度(即上述实施例中的C方向)上分配的乘法器输出的数据为每次乘法计算的输出结果,需要使用加法树单元中的加法器对为C方向分配的乘法器计算出的结果进行累加运算。那么,同样为了提高计算效率,可以将为C方向分配的乘法器设置于乘加单元中加法树相邻的位置。这样在为C方向分配的乘法器完成乘法运算后,即可将结果输入临近的加法单元完成累加处理,从而输出计算结果,提高计算效率。
图8为本发明实施例提供的提高卷积神经网络计算效率的装置实施例一的结构示意图,其特征在于,包括:
获取模块81,用于获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数。
计算模块82,用于获取待检测图像的特征图的卷积神经网络CNN检测模型,检测模型包括对特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数;根据CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数。
分配模块83,用于对于检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,其中,分配系数为2的n次方,n为正整数。
输入模块84,用于对于检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,待检测图像的特征图作为检测模型第一卷积层的输入特征图。
需要说明的是,本实施例提供的提高卷积神经网络计算效率的装置可以为CNN芯片中的控制单元或控制单元中的一个功能模块。
本发明实施例提供的提高卷积神经网络计算效率的装置用于实现图3所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
进一步地,在图8所示实施例中,分配系数包括I、J、B、A;分配模块83,具体用于对于检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;其中,A小于或等于N,对于检测模型的第一卷积层,B大于或等于C;对于检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于所述乘加单元中乘法器的个数。
进一步地,在图8所示实施例中,计算模块82,具体用于使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
进一步地,在图8所示实施例中,计算模块82,具体用于通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
进一步地,在图8所示实施例中,分配模块83,还用于对于检测模型的每一卷积层,将乘加单元中为输入特征图通道维度上分配的乘法器设置于乘加单元中加法树相邻的位置。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种提高卷积神经网络计算效率的方法,其特征在于,包括:
获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数;
获取所述待检测图像的特征图的卷积神经网络CNN检测模型,所述检测模型包括对所述特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数;
根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数;
对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定所述乘加单元在每个维度上乘法器的分配系数,其中,所述分配系数为2的n次方,n为正整数;
对于所述检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,所述待检测图像的特征图作为所述检测模型第一卷积层的输入特征图。
2.根据权利要求1所述的方法,其特征在于,所述分配系数包括I、J、B、A;所述对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定乘加单元在每个维度上乘法器的分配系数,包括:
对于所述检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;
其中,A小于或等于N,对于所述检测模型的第一卷积层,B大于或等于C;对于所述检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于所述乘加单元中乘法器的个数。
3.根据权利要求1所述的方法,其特征在于,所述根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,包括:
使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
4.根据权利要求1所述的方法,其特征在于,所述根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数,包括:
通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
5.根据权利要求1~4任一项所述的方法,其特征在于,所述方法还包括:
对于所述检测模型的每一卷积层,将乘加单元中为输入特征图通道维度上分配的乘法器设置于所述乘加单元中加法树相邻的位置。
6.一种提高卷积神经网络计算效率的装置,其特征在于,包括:
获取模块,用于获取待检测图像的特征图的分辨率和通道数以及乘加单元中乘法器的个数;
计算模块,用于获取所述待检测图像的特征图的卷积神经网络CNN检测模型,所述检测模型包括对所述特征图进行卷积运算时每一卷积层的步进值、每一卷积层所使用的卷积系数分辨率和每一卷积层所使用的卷积系数的个数;根据所述CNN检测模型第m卷积层的步进值和第m卷积层的输入特征图的分辨率,确定第m+1卷积层的输入特征图的分辨率,根据所述CNN检测模型第m卷积层所使用的卷积系数的个数,确定第m+1卷积层的输入特征图的通道数;
分配模块,用于对于所述检测模型的每一卷积层,根据输入特征图的分辨率和通道数、卷积系数的个数以及所述乘加单元中乘法器的个数,确定所述乘加单元在每个维度上乘法器的分配系数,其中,所述分配系数为2的n次方,n为正整数;
输入模块,用于对于所述检测模型的每一卷积层,根据每个维度上乘法器的分配系数,将卷积层的输入特征图的分辨率及通道数上的各数据,输入所述乘加单元中的各乘法器进行卷积运算,输出每一卷积层的输出特征图,其中,所述待检测图像的特征图作为所述检测模型第一卷积层的输入特征图。
7.根据权利要求6所述的装置,其特征在于,所述分配系数包括I、J、B、A;
所述分配模块,具体用于对于所述检测模型的每一卷积层,根据输入特征图的通道数C确定B,根据卷积系数的个数N确定A,根据输入特征图的分辨率确定I和J;其中,A小于或等于N,对于所述检测模型的第一卷积层,B大于或等于C;对于所述检测模型除了第一卷积层以外的其他卷积层,B小于或等于C;输入特征图的分辨率与I和J的取值正相关,且I×J×B×A等于所述乘加单元中乘法器的个数。
8.根据权利要求6所述的装置,其特征在于,所述计算模块,具体用于使用公式Rm+1=Rm/Sm计算第m+1卷积层的输入特征图的分辨率,其中,Rm+1表示第m+1卷积层的输入特征图的分辨率,Rm表示第m卷积层的输入特征图的分辨率,Sm表示第m卷积层的步进值。
9.根据权利要求6所述的装置,其特征在于,所述计算模块,具体用于通过公式Cm+1=Nm,计算第m+1卷积层的输入特征图的通道数,其中,Cm+1表示第m+1卷积层的输入特征图的通道数,Nm表示第m卷积层所使用的卷积系数的个数。
10.根据权利要求6~9任一项所述的装置,其特征在于,所述分配模块,还用于对于所述检测模型的每一卷积层,将乘加单元中为输入特征图通道维度上分配的乘法器设置于所述乘加单元中加法树相邻的位置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710173124.3A CN108629405B (zh) | 2017-03-22 | 2017-03-22 | 提高卷积神经网络计算效率的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710173124.3A CN108629405B (zh) | 2017-03-22 | 2017-03-22 | 提高卷积神经网络计算效率的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108629405A CN108629405A (zh) | 2018-10-09 |
CN108629405B true CN108629405B (zh) | 2020-09-18 |
Family
ID=63707096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710173124.3A Active CN108629405B (zh) | 2017-03-22 | 2017-03-22 | 提高卷积神经网络计算效率的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108629405B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112215330B (zh) * | 2019-07-09 | 2024-04-26 | 杭州海康威视数字技术股份有限公司 | 基于神经网络的卷积方法及装置 |
CN110619387B (zh) * | 2019-09-12 | 2023-06-20 | 复旦大学 | 一种基于卷积神经网络的通道扩展方法 |
CN113902088A (zh) * | 2020-06-22 | 2022-01-07 | 华为技术有限公司 | 神经网络结构搜索的方法、装置与系统 |
WO2022246617A1 (zh) * | 2021-05-24 | 2022-12-01 | 深圳市大疆创新科技有限公司 | 卷积运算方法、图像处理方法、装置和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252331A (zh) * | 2013-06-29 | 2014-12-31 | 华为技术有限公司 | 乘累加器 |
CN106127302A (zh) * | 2016-06-23 | 2016-11-16 | 杭州华为数字技术有限公司 | 处理数据的电路、图像处理系统、处理数据的方法和装置 |
CN106203617A (zh) * | 2016-06-27 | 2016-12-07 | 哈尔滨工业大学深圳研究生院 | 一种基于卷积神经网络的加速处理单元及阵列结构 |
CN106228238A (zh) * | 2016-07-27 | 2016-12-14 | 中国科学技术大学苏州研究院 | 现场可编程门阵列平台上加速深度学习算法的方法和系统 |
CN106485319A (zh) * | 2015-10-08 | 2017-03-08 | 上海兆芯集成电路有限公司 | 具有神经处理单元可动态配置以执行多种数据尺寸的神经网络单元 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5376920B2 (ja) * | 2008-12-04 | 2013-12-25 | キヤノン株式会社 | コンボリューション演算回路、階層的コンボリューション演算回路及び物体認識装置 |
US20160328645A1 (en) * | 2015-05-08 | 2016-11-10 | Qualcomm Incorporated | Reduced computational complexity for fixed point neural network |
-
2017
- 2017-03-22 CN CN201710173124.3A patent/CN108629405B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104252331A (zh) * | 2013-06-29 | 2014-12-31 | 华为技术有限公司 | 乘累加器 |
CN106485319A (zh) * | 2015-10-08 | 2017-03-08 | 上海兆芯集成电路有限公司 | 具有神经处理单元可动态配置以执行多种数据尺寸的神经网络单元 |
CN106127302A (zh) * | 2016-06-23 | 2016-11-16 | 杭州华为数字技术有限公司 | 处理数据的电路、图像处理系统、处理数据的方法和装置 |
CN106203617A (zh) * | 2016-06-27 | 2016-12-07 | 哈尔滨工业大学深圳研究生院 | 一种基于卷积神经网络的加速处理单元及阵列结构 |
CN106228238A (zh) * | 2016-07-27 | 2016-12-14 | 中国科学技术大学苏州研究院 | 现场可编程门阵列平台上加速深度学习算法的方法和系统 |
Non-Patent Citations (1)
Title |
---|
Speeding up Convolutional Neural Network Training with Dynamic Precision Scaling and Flexible Multiplier-Accumulator;Taesik Na 等;《Proceedings of the 2016 International Symposium on Low Power Electronics and Design》;20160831;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108629405A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111684473B (zh) | 提高神经网络阵列的性能 | |
US11775836B2 (en) | Hand pose estimation | |
US20210224125A1 (en) | Operation Accelerator, Processing Method, and Related Device | |
Yuan et al. | Factorization-based texture segmentation | |
JP2021522565A (ja) | 並列分散テンソル計算用のニューラル・ハードウェア・アクセラレータ | |
CN108629405B (zh) | 提高卷积神经网络计算效率的方法和装置 | |
JP6393058B2 (ja) | 情報処理装置、情報処理方法 | |
CN105184772B (zh) | 一种基于超像素的自适应彩色图像分割方法 | |
CN109844738A (zh) | 运算处理电路和识别系统 | |
KR20180107869A (ko) | 머신 러닝을 수행하는 전자 장치 및 머신 러닝 수행 방법 | |
CN107301643B (zh) | 基于鲁棒稀疏表示与拉普拉斯正则项的显著目标检测方法 | |
Zhang et al. | A separation–aggregation network for image denoising | |
CN115294563A (zh) | 一种基于Transformer的增强了局部语义学习能力的3D点云分析方法及装置 | |
CN111899203A (zh) | 基于标注图在无监督训练下的真实图像生成方法及存储介质 | |
CN113065997B (zh) | 一种图像处理方法、神经网络的训练方法以及相关设备 | |
CN114846382A (zh) | 具有卷积神经网络实现的显微镜和方法 | |
CN114358246A (zh) | 三维点云场景的注意力机制的图卷积神经网络模块 | |
CN113205137A (zh) | 一种基于胶囊参数优化的图像识别方法及系统 | |
WO2023122896A1 (zh) | 一种数据处理方法和装置 | |
CN109902720A (zh) | 基于子空间分解进行深度特征估计的图像分类识别方法 | |
Mujtaba et al. | Automatic solar panel detection from high-resolution orthoimagery using deep learning segmentation networks | |
Jang et al. | Ghost graph convolutional network for skeleton-based action recognition | |
CN111488888B (zh) | 图像特征提取方法以及人脸特征生成设备 | |
CN111161250B (zh) | 一种多尺度遥感图像密集房屋检测方法及装置 | |
EP4089585A1 (en) | Device and method with multidimensional vector neural network |
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 |