CN108229672A - 一种深度神经网络及其处理方法、装置和设备 - Google Patents

一种深度神经网络及其处理方法、装置和设备 Download PDF

Info

Publication number
CN108229672A
CN108229672A CN201810150568.XA CN201810150568A CN108229672A CN 108229672 A CN108229672 A CN 108229672A CN 201810150568 A CN201810150568 A CN 201810150568A CN 108229672 A CN108229672 A CN 108229672A
Authority
CN
China
Prior art keywords
layer
computation
computation layer
neural network
channel
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
CN201810150568.XA
Other languages
English (en)
Other versions
CN108229672B (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.)
Aixin Yuanzhi Semiconductor Co ltd
Original Assignee
Beijing Megvii Technology 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 Beijing Megvii Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN201810150568.XA priority Critical patent/CN108229672B/zh
Publication of CN108229672A publication Critical patent/CN108229672A/zh
Application granted granted Critical
Publication of CN108229672B publication Critical patent/CN108229672B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)

Abstract

本发明提供了一种深度神经网络及其处理方法、装置和设备,包括:获取神经网络中第一目标计算层的多个输入数据,第一目标计算层为深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,多个输入数据为深度神经网络中位于第一目标计算层之前且与第一目标计算层相连接的多个计算层的输出数据,输入数据的位宽不超过预设位宽;通过信道拼接操作对多个输入数据进行信道拼接,得到信道拼接结果。本发明缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。

Description

一种深度神经网络及其处理方法、装置和设备
技术领域
本发明涉及人工智能技术领域,尤其是涉及一种深度神经网络及其处理方法、装置和设备。
背景技术
随着人工智能技术的快速发展,神经网络在图像、语音以及文字等具有海量数据的领域已经有了广泛而成功的应用。如图1所示,传统的神经网络是由多组卷积层和非线性单元层逐层叠加而成的,例如,图1所示的神经网络包括三个处理层,分别是卷积1和非线性处理层1,以及卷积2和非线性处理层2,以及卷积3和非线性处理层3。图1中非线性处理层对卷积层的处理结果进行非线性化。在低位宽神经网络中,非线性处理层一般采用的是离散定点化处理层,低位宽神经网络的每一层的输出会被离散定点化为数种固定的取值之一,而不再是浮点数。在通过该神经网络进行相关运算时,例如,加法运算和/或乘运算时,都会用到相应的加法器或者乘法器来进行计算。但是,通过加法器或者乘法器来进行相应的计算时,会影响神经网络的计算效率,从而影响低位宽神经网络的性能。
发明内容
有鉴于此,本发明的目的在于提供一种深度神经网络及其处理方法、装置和设备,以缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。
第一方面,本发明实施例提供了一种深度神经网络,包括:多个依次连接的计算层,每个所述计算层包括卷积层和非线性处理层,且多个所述计算层中第一计算层和第二计算层之间通过短路边相连接,所述第一计算层为所述多个依次连接的计算层中除前两个计算层之外的其他计算层,所述第二计算层为所述第一计算层之前与所述第一计算层通过短路边相连接的计算层;在所述第一计算层的起始位置处,还包括信道拼接处理层;所述信道拼接处理层用于对所述第二计算层的输出数据和所述第一计算层的前一个计算层的输出数据进行信道拼接。
进一步地,所述非线性处理层为离散定点化处理层,其中,所述信道拼接处理层用于对所述第二计算层中离散定点化处理层的输出数据和所述第一计算层的前一个计算层中离散定点化处理层的输出数据进行信道拼接。
第二方面,本发明实施例提供了一种深度神经网络的处理方法,包括:获取神经网络的第一目标计算层的多个输入数据,所述第一目标计算层为上述所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
进一步地,获取所述第一目标计算层的多个输入数据包括:确定多个第二目标计算层,其中,所述第二目标计算层为所述第一目标计算层的前一个计算层和通过短路边与所述第一目标计算层相连接的计算层;确定所述多个第二目标计算层的输出数据为所述第一目标计算层的所述多个输入数据。
进一步地,所述输入数据为三维张量,所述输入数据中包括:待处理图像块的高度,待处理图像块的宽度和信道数量,其中,任意两个输入数据的长度和宽度相同,且任意两个输入数据的信道数量相同或者不同。
进一步地,所述输出数据为离散定点化处理之后的输出数据,通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果包括:按照所述输入数据中的信道数量,对所述离散定点化处理之后的输出数据进行信道拼接,得到所述信道拼接结果。
进一步地,确定多个第二目标计算层包括:当所述深度神经网络中包含依次连接的多个计算层的数量为2N时,确定所述神经网络中第i-2n-1个计算层为所述第一目标计算层Ai的多个第二目标计算层,其中,第i-1个计算层为所述第一目标计算层Ai的前一个计算层,剩余计算层为通过短路边与所述第一目标计算层相连接的计算层,i-2n-1和n均为正整数,且n依次取1至N。
进一步地,所述方法还包括:获取原始深度神经网络;在所述原始深度神经网络中计算层的数量为2N时,在第i个计算层和第i-2k-1个计算层之间依次构建短路边,其中,i为大于2的正整数,i-2k-1和n均为正整数,且k依次取2至N;在所述第i个计算层的卷积层之前,构建信道拼接处理层,并将构建所述信道拼接处理层之后的原始深度神经网络作为所述深度神经网络。
第三方面,本发明实施例提供了一种深度神经网络的处理装置,包括:获取单元,用于获取神经网络的第一目标计算层的多个输入数据,所述第一目标计算层为上述所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;信道拼接单元,用于通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
第四方面,本发明实施例提供了一种深度神经网络的电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述所述的方法的步骤。
第五方面,本发明实施例提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质,所述程序代码使所述处理器执行上述所述的方法的步骤。
在本发明实施例中,在第一目标计算层的输入数据为多个时,通过信道拼接操作来代替传统的加法运算来对多个输入数据进行信道拼接的方式,能够简化运算过程,提高神经网络的运算效率,进而缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。
本发明的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术的一种深度神经网络的结构示意图;
图2是根据本发明实施例的一种电子设备的结构示意图;
图3是根据本发明实施例的一种基于短路边的深度神经网络的结构示意图;
图4是根据本发明实施例的一种可选的三维张量的结构示意图;
图5是根据本发明实施例的一种可选的两个三维张量进行信道拼接之后的结构示意图;
图6是根据本发明实施例的一种可选的深度神经网络的结构示意图;
图7是根据本发明实施例的另一种可选的深度神经网络的结构示意图;
图8是根据本发明实施例的一种深度神经网络的处理方法的流程图;
图9是根据本发明实施例的一种深度神经网络的处理装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,参照图2来描述用于实现本发明实施例的电子设备100,该电子设备可以用于运行本发明各实施例的神经网络。
如图2所示,电子设备100包括一个或多个处理器102、一个或多个存储器104、输入装置106、输出装置108以及数据采集器110,这些组件通过总线系统112和/或其它形式的连接机构(未示出)互连。应当注意,图2所示的电子设备100的组件和结构只是示例性的,而非限制性的,根据需要,所述电子设备也可以具有其他组件和结构。
所述处理器102可以采用数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、ASIC(Application Specific Integrated Circuit)中的至少一种硬件形式来实现,所述处理器102可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制所述电子设备100中的其它组件以执行期望的功能。
所述存储器104可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器102可以运行所述程序指令,以实现下文所述的本发明实施例中(由处理器实现)的客户端功能以及/或者其它期望的功能。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据,例如所述应用程序使用和/或产生的各种数据等。
所述输入装置106可以是用户用来输入指令的装置,并且可以包括键盘、鼠标、麦克风和触摸屏等中的一个或多个。
所述输出装置108可以向外部(例如,用户)输出各种信息(例如,图像或声音),并且可以包括显示器、扬声器等中的一个或多个。
所述数据采集器110用于进行数据采集,其中,数据采集器所采集的数据用于输入至所述神经网络中进行运算,例如,数据采集器可以拍摄用户期望的图像(例如照片、视频等),然后,将该图像输入至所述神经网络中进行运算,数据采集器还可以将所拍摄的图像存储在所述存储器104中以供其它组件使用。
示例性地,用于实现根据本发明实施例的电子设备可以被实现为诸如摄像机、抓拍机、智能手机、平板电脑等智能终端。
在本发明实施例中所提出的深度神经网络是一种基于短路边和信道拼接操作的神经网络,首先将分别介绍短路边和信道拼接操作。
短路边是一种跨越多于一层的网络连接。如图1所示的是传统的深度神经网络的结构示意图,在结构示意图在背景技术中进行了描述,此处不再赘述。在传统的神经网络中,可以采用短路边的结构来提升传统的深度神经网络的性能。在传统神经网络里加入的绕开了一层或多层的连接关系可称作短路边。当某个计算层通过短路边与一个或者多个位于其之前的计算层相连接时,那么该计算层将一个或者多个计算层的输出数据和其他计算层(例如,该计算层的前一个计算层)的输出数据进行相加运算,并将相加运算作为该计算层的输入数据。如图3所示,虚线部分(即,非线性处理层1和相加处理模块)之间的虚线即为短路边。
一个典型的神经网络中每一层的输出都是一个三维张量,三维分别为:长,宽和信道,如图4所示。信道拼接是指两个或多个这两的张量沿信道这一维进行拼接的操作,拼接之后的结果如图5所示。需要说明的是,当对两个三维张量进行信道拼接时,要求两个三维张量的长度相同,宽度相同,信道数量可以相同,还可以不同。
如图3所示的短路边的实现方式是将第一个计算层的输出数据和第二个计算层的输出数据直接相加。但是,在低位宽神经网络里,输出数据的直接相加会改变输出的位宽,从而给低位宽神经网络带来麻烦。
例如,如图3所示,在通过该加法器对该第一个计算层的输出数据和第二计算层输出数据进行相加处理时,需要考虑计算过程中的进位数据,当待处理的数据的位宽较大时,将影响低位宽神经网络的运算效率,给低位宽神经网络带来麻烦,从而降低了低位宽神经网络的性能。基于此,在本发明实施例提出一种深度神经网络,该深度神经网络是一种基于短路边和信道拼接操作的低位宽神经网络。在该深度神经网络中,可以将加法处理替换为信道拼接操作,在通过信道拼接操作对第一个计算层的输出数据和第二计算层输出数据进行信道拼接时,无需考虑进位,就能够得到第一个计算层的输出数据和第二计算层输出数据的相加输出数据。
需要说明的是,在本发明实施例中,可以定义低于16位宽的数据为低位宽数据,以及定义高于或者等于16位宽的数据为高位宽数据。需要说明的是,还可以根据实际需要设定高位宽数据和低位宽数据的分界值,此处不做具体限定。例如,还可以定义低于32位宽的数据为低位宽数据,定义高于或者等于32位宽的数据为高位宽数据,本发明对此不作具体限定。在本发明以下实施例中,以低位宽数据为低于16位宽的数据,高位宽数据为高于或者等于16位宽的数据为例进行说明。
根据本发明实施例,提供了一种深度神经网络的结构的实施例。
在本发明实施例中,该深度神经网络,包括:多个依次连接的计算层,每个所述计算层包括卷积层和非线性处理层,且多个所述计算层中第一计算层和第二计算层之间通过短路边相连接,所述第一计算层为所述多个依次连接的计算层中除前两个计算层之外的其他计算层,所述第二计算层为所述第一计算层之前与所述第一计算层通过短路边相连接的计算层;
在所述第一计算层的起始位置处,还包括信道拼接处理层;所述信道拼接处理层用于对所述第二计算层的输出数据和所述第一计算层的前一个计算层的输出数据进行信道拼接。
可选地,上述所述非线性处理层为离散定点化处理层,其中,所述信道拼接处理层用于对所述第二计算层中离散定点化处理层的输出数据和所述第一计算层的前一个计算层中离散定点化处理层的输出数据进行信道拼接。
需要说明的是,在本发明实施例中所采用的深度神经网络为低位宽的神经网络,因此,可以采用离散定点化处理层作为非线性处理层,其中,低位宽的神经网络是指其所处理的数据为低位宽数据。
如图6所示的即为一种可选的深度神经网络的结构示意图。在一个具体的实施例中,如图6所示,包括4个依次连接的计算层,其中,第一个计算层中包括卷积层1和离散定点化处理层1,第二个计算层中包括卷积层2和离散定点化处理层2,第三个计算层中包括卷积层3和离散定点化处理层3,第四个计算层中包括卷积层4和离散定点化处理层4。如图6所示,第一个计算层(即为上述第二计算层)与第三个计算层(即为上述第一计算层)通过短路边相连接;第二计算层(即为上述第二计算层)和第四个计算层(即为上述第一计算层)通过短路边相连接。
进一步地,从图6中还可以看出,在第三个计算层(即,上述第一计算层)的起始位置处,还包括信道拼接层,该信道拼接层用于对第一个计算层(即,上述的第二计算层)的输出数据和第二个计算层(即,上述第一计算层的前一个计算层)的输出数据进行信道拼接。
进一步地,从图6中还可以看出,在第四个计算层(即,上述第一计算层)的起始位置处,还包括信道拼接层,该信道拼接层用于对第二个计算层(即,上述的第二计算层)的输出数据和第三个计算层(即,上述第一计算层的前一个计算层)的输出数据进行信道拼接。
通过上述描述可知,在本实施例中,所采用的深度神经网络为低位宽的神经网络,当低位宽的神经网络中包含短路边时,低位宽的神经网络不方便实现短路边加法的问题,基于此,设计了一种通过信道拼接来实现短路边加法的问题。通过信道拼接的处理方式,能够让深度神经网络中的前面计算层的信息更无损的流向后面层,从而提升低位宽的神经网络的性能。
需要说明的是,在本发明实施例中,如图6所示的结构图是深度神经网络一个可选的连接方式。在本发明实施例中,并不限定深度神经网络中计算层之间的短路边连接方式,相关技术人员可以根据实际需要来进行设定。
优选地,当所述深度神经网络中包含依次连接的多个计算层的数量为2N时,确定所述深度神经网络中第i-2n-1个计算层为与第i个计算层相连接的计算层,i依次取3至2N
例如,当N为2时(即,如图6所示的网络结构)多个计算层的数量为4。此时,与第三个计算层相连接的计算层分别为:3-21-1=2,3-22-1=1,也就是说,与第三个计算层相连接的计算层分别是第一个计算层和第二个计算层,其中,第二个计算层为第三个计算层的上一个计算层,第一个计算层为通过短路边与第三个计算层相连接的计算层。
又例如,当N为3时,深度神经网络中包含依次连接的多个计算层的数量为8,此时,与第六个计算层相连接的计算层分别为:6-21-1=5,6-22-1=4,6-23-1=2。也就是说,与第六个计算层相连接的计算层分别是第五个计算层,第四个计算层和第二个计算层,其中,第五个计算层为第六个计算层的上一个计算层,第四个计算层和第二个计算层为通过短路边与第六个计算层相连接的计算层。
如图7所示的即为另一种可选的深度神经网络的结构示意图。在本发明实施例中,如果深度神经网络中包括的深度神经网络单元(也可简称深度神经网络)的数量为多个,例如,如图7所示,包括深度神经网络1,深度神经网络2,深度神经网络3,…,深度神经网络r时,深度神经网络1,深度神经网络2,深度神经网络3,…,深度神经网络r中的部分或者全部网络可以采用如图7中右侧虚线框所示的连接结构。当部分网络可以采用如图7中右侧虚线框所示的连接结构时,具体哪个神经网络采用如图7中右侧虚线框所示的连接结构可以根据实际需要来进行设定,对此不作具体限定。
根据本发明又一实施例中,还提供了一种深度神经网络的处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图8是根据本发明实施例的一种深度神经网络的处理方法的流程图,如图8所示,该方法包括如下步骤:
步骤S802,获取神经网络中第一目标计算层的多个输入数据,所述第一目标计算层为所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;
在本发明实施例中,该深度神经网络为低位宽神经网络,该低位宽神经网络的数据位宽不超过预设位宽,例如,不超过16位宽。此时,在对多个输入数据进行加法计算时,会改变输出数据的位宽,例如,增大输出数据的位宽,从而给低位宽神经网络带来麻烦。基于此,在本发明实施例中,通过信道拼接操作来对多个输入数据进行累加计算,从而简化多个输入数据的计算过程。
步骤S804,通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
显然,该信道拼接结果可以等效于传统的深度神经网络计算中的累加计算结果。也就是说,本实施例中的深度神经网络的处理方法通过信道拼接能够实现短路边的加法。
可选地,如图6和图7所示的深度神经网络中,每个计算层的输出数据均为离散定点化处理之后的输出数据,基于此,通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果包括:按照所述输入数据中的信道数量,对所述离散定点化处理之后的输出数据进行信道拼接,得到所述信道拼接结果。
在本发明实施例中,输入数据为三维张量,所述输入数据中包括:待处理图像块的高度,待处理图像块的宽度和信道数量,其中,任意两个输入数据的长度和宽度相同,且任意两个输入数据的信道数量相同或者不同。如图4所示的即为一个三维张量,该三维张量包括长度,宽度和信道数量。
当输入至该神经网络的数据为图像时,该长度可以理解为待处理图像块的长度,该宽度可以理解为待处理图像块的宽度,该信道数量可以理解为待处理图像块的特征维度。当对两个三维张量进行信道拼接时,要求两个三维张量的长度相同,两个三维张量的宽度相同,两个三维张量的信道数量相同或者不同。如图5所示的即为两个三维张量的信道拼接结果。
在本发明实施例中,在第一目标计算层的输入数据为多个时,通过信道拼接操作来代替传统的加法运算来对多个输入数据进行信道拼接的方式,能够简化运算过程,提高神经网络的运算效率,进而缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。
在一个实施例中,获取所述第一目标计算层的多个输入数据包括如下步骤:
步骤S8021,确定多个第二目标计算层,其中,所述第二目标计算层为所述第一目标计算层的前一个计算层和通过短路边与所述第一目标计算层相连接的计算层;
步骤S8022,确定所述多个第二目标计算层的输出数据为所述第一目标计算层的所述多个输入数据。
在本发明实施例中,在第一目标计算层进行数据计算时,首先确定与第一目标计算层相连接的多个第二目标计算层。然后,获取多个第二目标计算层的输出数据,最后,将多个第二目标计算层的输出数据作为多个输入数据。
例如,如图6所示,假设,图6中第三个计算层为第一目标计算层,此时,通过步骤S8021可以确定出第三个计算层的第二目标计算层为第一个计算层和第二个计算层。其中,第一个计算层与第三个计算层通过短路边相连接,第二个计算层为第三个计算层的前一个计算层。此时,通过步骤S8022就能够确定出第一个计算层和第二个计算层的输出数据即为第三个计算层的输入数据。
在获得第一个计算层和第二个计算层的输出数据之后,如果需要对第一个计算层和第二个计算层的输出数据进行加法操作时,可以通过相应的信道拼接操作来对第一个计算层和第二个计算层的输出数据进行累加计算。
在一个实施例中,确定多个第二目标计算层包括如下步骤:
当所述深度神经网络中包含依次连接的多个计算层的数量为2N时,确定所述神经网络中第i-2n-1个计算层为所述第一目标计算层Ai的多个第二目标计算层,其中,第i-1个计算层为所述第一目标计算层Ai的前一个计算层,剩余计算层为通过短路边与所述第一目标计算层相连接的计算层,i-2n-1和n均为正整数,且n依次取1至N。
例如,当N为2时(即,如图6所示的网络结构)多个计算层的数量为4。此时,与第三个计算层(即,第一目标计算层A3)相连接的计算层分别为:3-21-1=2,3-22-1=1,也就是说,与第三个计算层(即,第一目标计算层A3)相连接的计算层分别是第一个计算层和第二个计算层,其中,第一个计算层和第二个计算层即为第一目标计算层A3的多个第二目标计算层,第二个计算层为第三个计算层的上一个计算层,第一个计算层为通过短路边与第三个计算层相连接的计算层。
当N为3时,深度神经网络中包含依次连接的多个计算层的数量为8,此时,与第六个计算层(即,第一目标计算层A6)相连接的计算层分别为:6-21-1=5,6-22-1=4,6-23-1=2,其中,i等于6。也就是说,与第六个计算层(即,第一目标计算层A6)相连接的计算层分别是第五个计算层,第四个计算层和第二个计算层,其中,第五个计算层,第四个计算层和第二个计算层即为第一目标计算层A6的多个第二目标计算层,第五个计算层为第六个计算层的上一个计算层,第四个计算层和第二个计算层为通过短路边与第六个计算层相连接的计算层。
也就是说,当个计算层的数量为2N时,与每个第一目标计算层相连接的计算层表示为从第一目标计算层开始,往前数1(21-1,N=1)层,往前数2(22-1,N=2)层,往前数4(23-1,N=3)层,…,往前数2N-1层之后得到的计算层为第一目标计算层的多个第二目标计算层。
在一个可选的实施例中,所述方法还包括如下步骤:
首先,获取原始深度神经网络;
然后,在所述原始深度神经网络中计算层的数量为2N时,在第i个计算层和第i-2k -1个计算层之间依次构建短路边,其中,i为大于2的正整数,i-2k-1和n均为正整数,且k依次取2至N;
最后,在所述第i个计算层的卷积层之前,构建信道拼接层,并将构建所述信道拼接处理层之后的原始深度神经网络作为所述深度神经网络。
在本发明实施例中,在步骤S802之前,还可以构建一个基于短路边和信道拼接操作的深度神经网络。具体地,可以首先获取一个原始深度神经网络,例如,如图1所示的神经网络。
可选地,在原始深度神经网络中计算层的数量为2N的情况下,则在第i个计算层和第i-2k-1个计算层之间依次构建短路边。
例如,当N=2时,如果i等于3时,由于第3个计算层与第2个计算层已经连接了,此时,只需要将第3个计算层与3-22-1=1,即第1个计算层之间构建短路边。并在第3个计算层的卷积层之前,构建信道拼接层。此时,该信道拼接层就能够将第2个计算层的输出数据和第1个计算层的输出数据进行信道拼接。
例如,当N=3时,如果i等于6时,由于第6个计算层与第5个计算层已经连接了,此时,只需要将第6个计算层与6-22-1=4,即第4个计算层,以及6-23-1=2,即第2个计算层之间构建短路边。并在第6个计算层的卷积层之前,构建信道拼接层。此时,该信道拼接层就能够将第5个计算层的输出数据,第4个计算层的输出数据和第2个计算层的输出数据进行信道拼接。
可选地,在原始深度神经网络中计算层的数量不是2N的情况下,则相关技术人员可以根据实际需要来通过短路边构建第i个计算层与其他计算层之间的连接。其中,其他计算层可以根据实际需要来进行选取。
在本发明实施例中,当第一目标计算层的输入数据为多个时,通过信道拼接操作来代替传统的加法运算来对多个输入数据进行信道拼接的方式,能够简化运算过程,提高神经网络的运算效率,进而缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。
本发明实施例还提供了一种深度神经网络的处理装置,该深度神经网络的处理装置主要用于执行本发明实施例上述内容所提供的深度神经网络的处理方法,以下对本发明实施例提供的深度神经网络的处理装置做具体介绍。
图9是根据本发明实施例的一种深度神经网络的处理装置的示意图,如图9所示,该深度神经网络的处理装置主要包括获取单元10和信道拼接单元20,其中:
获取单元10,用于获取神经网络中第一目标计算层的多个输入数据,所述第一目标计算层为所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;
信道拼接单元20,用于通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
在本发明实施例中,在第一目标计算层的输入数据为多个时,通过信道拼接操作来代替传统的加法运算来对多个输入数据进行信道拼接的方式,能够简化运算过程,提高神经网络的运算效率,进而缓解了现有的神经网络在对多个输入进行加法或者乘法等运算时,由于运算过程相对较为复杂导致神经网络的计算效率较低的技术问题。
可选地,获取单元10用于:确定多个第二目标计算层,其中,所述第二目标计算层为所述第一目标计算层的前一个计算层和通过短路边与所述第一目标计算层相连接的计算层;确定所述多个第二目标计算层的输出数据为所述第一目标计算层的所述多个输入数据。
可选地,所述输入数据为三维张量,所述输入数据中包括:待处理图像块的高度,待处理图像块的宽度和信道数量,其中,任意两个输入数据的长度和宽度相同,且任意两个输入数据的信道数量相同或者不同。
可选地,信道拼接模块20用于:按照所述输入数据中的信道数量,对所述离散定点化处理之后的输出数据进行信道拼接,得到所述信道拼接结果
可选地,获取单元10还用于:当所述深度神经网络中包含依次连接的多个计算层的数量为2N时,确定所述神经网络中第i-2n-1个计算层为所述第一目标计算层Ai的多个第二目标计算层,其中,第i-1个计算层为所述第一目标计算层Ai的前一个计算层,剩余计算层为通过短路边与所述第一目标计算层相连接的计算层,i-2n-1和n均为正整数,且n依次取1至N。
可选地,该装置还用于:获取原始深度神经网络;在所述原始深度神经网络中计算层的数量为2N时,在第i个计算层和第i-2k-1个计算层之间依次构建短路边,其中,i为大于2的正整数,i-2k-1和n均为正整数,且k依次取2至N;在所述第i个计算层的卷积层之前,构建信道拼接层,并将构建所述信道拼接处理层之后的原始深度神经网络作为所述深度神经网络。
本发明实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。
根据本发明又一实施例中,还提供了一种深度神经网络的处理设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法实施例中所描述的步骤。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
本发明实施例所提供的一种深度神经网络的处理方法的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (11)

1.一种深度神经网络,其特征在于,包括:多个依次连接的计算层,每个所述计算层包括卷积层和非线性处理层,且多个所述计算层中第一计算层和第二计算层之间通过短路边相连接,所述第一计算层为所述多个依次连接的计算层中除前两个计算层之外的其他计算层,所述第二计算层为所述第一计算层之前与所述第一计算层通过短路边相连接的计算层;
在所述第一计算层的起始位置处,还包括信道拼接处理层;所述信道拼接处理层用于对所述第二计算层的输出数据和所述第一计算层的前一个计算层的输出数据进行信道拼接。
2.根据权利要求1所述的深度神经网络,其特征在于,所述非线性处理层为离散定点化处理层,其中,所述信道拼接处理层用于对所述第二计算层中离散定点化处理层的输出数据和所述第一计算层的前一个计算层中离散定点化处理层的输出数据进行信道拼接。
3.一种深度神经网络的处理方法,其特征在于,包括:
获取神经网络的第一目标计算层的多个输入数据,所述第一目标计算层为上述权利要求1或2所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;
通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
4.根据权利要求3所述的方法,其特征在于,获取所述第一目标计算层的多个输入数据包括:
确定多个第二目标计算层,其中,所述第二目标计算层为所述第一目标计算层的前一个计算层和通过短路边与所述第一目标计算层相连接的计算层;
确定所述多个第二目标计算层的输出数据为所述第一目标计算层的所述多个输入数据。
5.根据权利要求4所述的方法,其特征在于,所述输入数据为三维张量,所述输入数据中包括:待处理图像块的高度,待处理图像块的宽度和信道数量,其中,任意两个输入数据的长度和宽度相同,且任意两个输入数据的信道数量相同或者不同。
6.根据权利要求5所述的方法,其特征在于,所述输出数据为离散定点化处理之后的输出数据,通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果包括:
按照所述输入数据中的信道数量,对所述离散定点化处理之后的输出数据进行信道拼接,得到所述信道拼接结果。
7.根据权利要求4所述的方法,其特征在于,确定多个第二目标计算层包括:
当所述深度神经网络中包含依次连接的多个计算层的数量为2N时,确定所述神经网络中第i-2n-1个计算层为所述第一目标计算层Ai的多个第二目标计算层,其中,第i-1个计算层为所述第一目标计算层Ai的前一个计算层,剩余计算层为通过短路边与所述第一目标计算层相连接的计算层,i-2n-1和n均为正整数,且n依次取1至N。
8.根据权利要求3至7中任一项所述的方法,其特征在于,所述方法还包括:
获取原始深度神经网络;
在所述原始深度神经网络中计算层的数量为2N时,在第i个计算层和第i-2k-1个计算层之间依次构建短路边,其中,i为大于2的正整数,i-2k-1和n均为正整数,且k依次取2至N;
在所述第i个计算层的卷积层之前,构建信道拼接处理层,并将构建所述信道拼接处理层之后的原始深度神经网络作为所述深度神经网络。
9.一种深度神经网络的处理装置,其特征在于,包括:
获取单元,用于获取神经网络中第一目标计算层的多个输入数据,所述第一目标计算层为上述权利要求1或2所述的深度神经网络中所包含的多个计算层中除前两个计算层之外的其他计算层,所述多个输入数据为所述深度神经网络中位于所述第一目标计算层之前且与所述第一目标计算层相连接的多个计算层的输出数据,所述输入数据的位宽不超过预设位宽;
信道拼接单元,用于通过信道拼接操作对所述多个输入数据进行信道拼接,得到信道拼接结果,并将所述信道拼接结果作为所述第一目标计算层的输入数据进行处理。
10.一种深度神经网络的处理设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求3至8中任一项所述的方法的步骤。
11.一种具有处理器可执行的非易失的程序代码的计算机可读介质,其特征在于,所述程序代码使所述处理器执行上述权利要求3至8中任一项所述的方法的步骤。
CN201810150568.XA 2018-02-13 2018-02-13 一种深度神经网络模型的处理方法、装置和设备 Active CN108229672B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810150568.XA CN108229672B (zh) 2018-02-13 2018-02-13 一种深度神经网络模型的处理方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810150568.XA CN108229672B (zh) 2018-02-13 2018-02-13 一种深度神经网络模型的处理方法、装置和设备

Publications (2)

Publication Number Publication Date
CN108229672A true CN108229672A (zh) 2018-06-29
CN108229672B CN108229672B (zh) 2022-03-29

Family

ID=62661817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810150568.XA Active CN108229672B (zh) 2018-02-13 2018-02-13 一种深度神经网络模型的处理方法、装置和设备

Country Status (1)

Country Link
CN (1) CN108229672B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109190758A (zh) * 2018-09-04 2019-01-11 地平线(上海)人工智能技术有限公司 用于展开卷积神经网络的张量数据的方法和装置
WO2020177251A1 (zh) * 2019-03-06 2020-09-10 上海熠知电子科技有限公司 一种面向多核图像处理卷积神经网络的数据读取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170295439A1 (en) * 2016-04-06 2017-10-12 Buye Xu Hearing device with neural network-based microphone signal processing
CN107247949A (zh) * 2017-08-02 2017-10-13 北京智慧眼科技股份有限公司 基于深度学习的人脸识别方法、装置和电子设备
CN107290653A (zh) * 2017-05-13 2017-10-24 华南理工大学 基于宽频磁感应信道特征辨识pcb的检测装置和方法
US20170311004A1 (en) * 2016-04-22 2017-10-26 Beijing Xiaomi Mobile Software Co., Ltd. Video processing method and device
CN107451659A (zh) * 2017-07-27 2017-12-08 清华大学 用于位宽分区的神经网络加速器及其实现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170295439A1 (en) * 2016-04-06 2017-10-12 Buye Xu Hearing device with neural network-based microphone signal processing
US20170311004A1 (en) * 2016-04-22 2017-10-26 Beijing Xiaomi Mobile Software Co., Ltd. Video processing method and device
CN107290653A (zh) * 2017-05-13 2017-10-24 华南理工大学 基于宽频磁感应信道特征辨识pcb的检测装置和方法
CN107451659A (zh) * 2017-07-27 2017-12-08 清华大学 用于位宽分区的神经网络加速器及其实现方法
CN107247949A (zh) * 2017-08-02 2017-10-13 北京智慧眼科技股份有限公司 基于深度学习的人脸识别方法、装置和电子设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109190758A (zh) * 2018-09-04 2019-01-11 地平线(上海)人工智能技术有限公司 用于展开卷积神经网络的张量数据的方法和装置
CN109190758B (zh) * 2018-09-04 2021-06-15 地平线(上海)人工智能技术有限公司 用于展开卷积神经网络的张量数据的方法和装置
WO2020177251A1 (zh) * 2019-03-06 2020-09-10 上海熠知电子科技有限公司 一种面向多核图像处理卷积神经网络的数据读取方法

Also Published As

Publication number Publication date
CN108229672B (zh) 2022-03-29

Similar Documents

Publication Publication Date Title
JP7146999B2 (ja) 畳み込みニューラルネットワークのための効率的データレイアウト
CN110473141B (zh) 图像处理方法、装置、存储介质及电子设备
CN108108754A (zh) 重识别网络的训练、重识别方法、装置和系统
CN107832804A (zh) 一种信息处理方法及相关产品
CN108133270A (zh) 卷积神经网络加速方法及装置
CN108961303A (zh) 一种图像处理方法、装置、电子设备和计算机可读介质
CN109858613A (zh) 一种深度神经网络的压缩方法、系统及终端设备
CN109754359A (zh) 一种应用于卷积神经网络的池化处理的方法及系统
CN109598250B (zh) 特征提取方法、装置、电子设备和计算机可读介质
CN110780921A (zh) 数据处理方法和装置、存储介质及电子装置
CN114066718A (zh) 一种图像风格迁移方法、装置、存储介质及终端
CN109360166A (zh) 一种图像处理方法、装置、电子设备和计算机可读介质
CN108711144A (zh) 增强现实方法及装置
CN114782686A (zh) 一种图像分割方法、装置、终端设备及存储介质
CN108229672A (zh) 一种深度神经网络及其处理方法、装置和设备
CN113313247A (zh) 基于数据流架构的稀疏神经网络的运算方法
CN108595211A (zh) 用于输出数据的方法和装置
CN113313140B (zh) 基于深度注意力的三维模型分类和检索方法及装置
CN108154120A (zh) 视频分类模型训练方法、装置、存储介质及电子设备
CN114638939A (zh) 模型生成方法、模型生成装置、电子设备和可读存储介质
CN112906554B (zh) 基于视觉图像的模型训练优化方法、装置及相关设备
CN108875901B (zh) 神经网络训练方法以及通用物体检测方法、装置和系统
CN108734712A (zh) 背景分割的方法、装置及计算机存储介质
CN110399881B (zh) 一种端到端的基于双目立体图像的质量增强方法及装置
CN106998489A (zh) 一种焦点越界搜索方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20230823

Address after: Room 59, 17th Floor, Science and Technology Innovation Building, No. 777 Zhongguan West Road, Zhuangshi Street, Zhenhai District, Ningbo City, Zhejiang Province, 315200

Patentee after: Aixin Yuanzhi Semiconductor (Ningbo) Co.,Ltd.

Address before: 313, block a, No.2, south academy of Sciences Road, Haidian District, Beijing

Patentee before: BEIJING KUANGSHI TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
CP03 Change of name, title or address

Address after: Room 59, 17th Floor, Science and Technology Innovation Building, No. 777 Zhongguan West Road, Zhuangshi Street, Ningbo City, Zhejiang Province, 315200

Patentee after: Aixin Yuanzhi Semiconductor Co.,Ltd.

Country or region after: China

Address before: Room 59, 17th Floor, Science and Technology Innovation Building, No. 777 Zhongguan West Road, Zhuangshi Street, Zhenhai District, Ningbo City, Zhejiang Province, 315200

Patentee before: Aixin Yuanzhi Semiconductor (Ningbo) Co.,Ltd.

Country or region before: China

CP03 Change of name, title or address