CN108229653A - 卷积神经网络系统及其操作方法 - Google Patents
卷积神经网络系统及其操作方法 Download PDFInfo
- Publication number
- CN108229653A CN108229653A CN201711337020.8A CN201711337020A CN108229653A CN 108229653 A CN108229653 A CN 108229653A CN 201711337020 A CN201711337020 A CN 201711337020A CN 108229653 A CN108229653 A CN 108229653A
- Authority
- CN
- China
- Prior art keywords
- maximum position
- maximum
- convolution
- feature vector
- 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.)
- Granted
Links
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 48
- 238000011017 operating method Methods 0.000 title abstract description 7
- 238000012545 processing Methods 0.000 claims description 42
- 238000000034 method Methods 0.000 claims description 38
- 238000001514 detection method Methods 0.000 claims description 31
- 238000005070 sampling Methods 0.000 claims description 19
- 238000012549 training Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 14
- 238000009825 accumulation Methods 0.000 description 9
- 235000013399 edible fruits Nutrition 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 230000001186 cumulative effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/15—Correlation function computation including computation of convolution operations
- G06F17/153—Multidimensional correlation or convolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/211—Selection of the most significant subset of features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Biodiversity & Conservation Biology (AREA)
- Algebra (AREA)
- Image Analysis (AREA)
Abstract
一种卷积神经网络系统及其操作方法。一种卷积神经网络的操作方法包括:执行用于确定至少一个内核与输入特征图之间的相关性的卷积环;确定输入特征图上的最大位置,其中,所述最大位置与基于卷积环产生的输出特征的最大值对应;通过使用所述至少一个内核的卷积环来处理输入特征图的第一区域的第一数据,其中,第一区域与所述最大位置相关联。处理第一数据的步骤包括:跳过输入特征图的第二区域的第二数据的卷积操作,其中,第二区域与所述最大位置无关。
Description
本申请要求于2016年12与22日提交到韩国知识产权局的第10-2016-0177031号韩国专利申请的优先权,所述韩国专利申请的全部内容通过引用包含于此。
技术领域
与示例实施例一致的设备和方法涉及一种神经网络系统,更具体地讲,涉及一种能够降低计算成本和功耗的卷积神经网络系统及其操作方法。
背景技术
近来,卷积神经网络(CNN)已成为用于图像识别的选择的深度神经网络技术。CNN具有多个卷积层。每个卷积层接收M个输入特征图,以产生N个输出特征图,其中,M和N是自然数。CNN执行下采样(或子采样),以降低作为多个卷积操作的结果而产生的特征图的大小。
在计算复杂度方面基本上占据整个CNN处理的最重要部分的操作是卷积。与CNN的其他操作相比,大量功率被消耗以执行乘法和累积操作被迭代的卷积操作。因此,为实现执行卷积神经网络CNN的硬件,存在对降低卷积操作的计算复杂度的需求。
发明内容
一个或多个示例实施例提供一种能够减少卷积神经网络系统中的具有大部分计算复杂度的卷积操作的卷积神经网络系统及其操作方法。
根据示例实施例的一方面,一种卷积神经网络的操作方法包括:执行用于计算至少一个内核与输入特征图之间的相关性的多个卷积环;确定输入特征图上的最大位置,其中,所述最大位置与基于所述多个卷积环产生的输出特征的最大值对应;通过使用所述至少一个内核的卷积环来处理输入特征图的第一区域的第一数据,其中,第一区域与所述最大位置相关联。处理第一数据的步骤可包括:跳过输入特征图的第二区域的第二数据的卷积操作,其中,第二区域与所述最大位置无关。
根据另一示例实施例的一方面,一种卷积神经网络系统可包括:输入缓冲器,被配置为缓冲输入图像和输入特征图中的至少一个;处理元件单元,使用来自输入缓冲器的输入图像和输入特征图中的所述至少一个以及至少一个内核来执行卷积操作;输出缓冲器,被配置为存储作为处理元件单元的卷积操作的结果输出的输出特征;控制器,被配置为:控制输入缓冲器、处理元件单元和输出缓冲器执行用于处理输入图像和输入特征图中的所述至少一个的卷积环,并检测与基于卷积环产生的输出特征的最大值相关联的最大位置;最大位置缓冲器,被配置为存储所述最大位置。
根据另一示例实施例的一方面,一种方法包括:确定输入特征图的最大位置,其中,输入特征图的与经由卷积环产生的输出特征的最大值对应的位置收敛于所述最大位置;仅对输入特征图的与所述最大位置对应的第一区域执行卷积环以产生输出特征图,同时跳过输入特征图的不与所述最大位置对应的第二区域上的卷积环的执行;存储所述最大位置。
附图说明
通过下面参照下面的附图的描述,以上和/或其他方面将会变得清楚和更容易理解,其中,除非另外说明,否则贯穿各个的附图,相同的参考标号表示相同的部件,其中:
图1是示出根据示例实施例的卷积神经网络系统的框图;
图2是示出在图1的卷积神经网络系统中执行的操作的示图;
图3是示出卷积层和池化层的操作的示图;
图4是示出根据示例实施例的卷积操作的特性的示图;
图5是示出根据示例实施例的下采样过程的示图;
图6是示出根据示例实施例的卷积层中的操作的示图;
图7是示出根据示例实施例的执行图6中简明地描述的卷积操作的方法的流程图;
图8是示出在图7中执行的操作S160的示例的流程图;
图9是示出在图7中执行的操作S160的另一示例实施例的流程图;
图10是示出在图7中执行的检测最大位置的方法的另一示例实施例的流程图;
图11是示出使用本发明构思的最大位置的另一示例实施例的示图;
图12是示出使用本发明构思的最大位置的另一示例实施例的流程图。
具体实施方式
通常,卷积操作被执行以检测两个函数之间的相关性。术语“卷积神经网络”或“CNN”可表示通过使用指示特定特征的内核执行卷积操作并重复卷积结果来确定图像的模式的任何处理或系统。
下面,将参照附图清楚和详细地描述示例实施例以达到本领域普通技术人员能够实现他们的程度。
图1是示出根据示例实施例的卷积神经网络系统的框图。参照图1,卷积神经网络系统100处理输入图像10以产生输出结果20。
输入图像10可以是通过图像传感器提供的静止图像或视频图像。可选地,输入图像10可以是通过有线/无线通信手段传输的图像。输入图像10可表示数字化图像数据的二维阵列。输入图像10可以是针对卷积神经网络系统100的训练而提供的样本图像。虽然单个图像被提供作为输入图像10,但是一个输入图像10包含的数据的量可能不小。
输出结果20可以是作为通过卷积神经网络系统100的输入图像10的处理结果的结果值。输出结果20可作为在卷积神经网络系统100的学习操作或估计操作期间确定输入图像的结果而被获得。输出结果20可以是卷积神经网络系统100检测的包括在输入图像10中的模式或识别信息。
卷积神经网络系统100可包括输入缓冲器110、处理元件单元(PEU)130(例如,处理器)、参数缓冲器150、输出缓冲器170、控制器190和最大位置缓冲器195。
输入图像10的数据值可被加载到输入缓冲器110上。输入缓冲器110的大小可随着用于卷积的内核的大小而变化。例如,在内核的大小为“k×k”的情况下,足够处理元件单元130使用内核顺序执行卷积操作(例如,内核化(kernelling))的大小的输入数据必须被加载到输入缓冲器110上。可通过控制器190来控制输入数据到输入缓冲器110上的加载。
处理元件单元130可通过使用输入缓冲器110、参数缓冲器150和输出缓冲器170来执行卷积操作或池化操作。例如,处理元件单元130可执行内核化,其中,在内核化中,将内核与输入图像10相乘的处理以及将相乘的结果相加的处理可被迭代地执行。处理元件单元130可包括用于并行处理多个内核化或池化操作的并行处理核。
例如,可从参数缓冲器150提供内核。以下,将内核与输入图像10的重叠位置的全部数据相乘并将乘法结果相加的处理被称为“内核化”。多个内核中的每个内核可被视为特定特征标识符。也就是说,在多个内核中的一个内核为用于辨识具有特定曲率的曲线的滤波器的情况下,当输入图像10的特定模式与特定曲率匹配时,可产生大的内核化结果值。可对输入图像10和分别对应于各个特征标识符的多个内核执行内核化。通过全部内核执行内核化的过程可在卷积层中被执行,并且作为内核化的结果值可产生多个特征图。
处理元件单元130可对由卷积层产生的特征图执行下采样。由于通过卷积操作产生的特征图的大小相对较大,因此处理元件单元130可执行用于下采样的池化,以降低特征图的大小。每个内核化或池化操作的结果值可存储在输出缓冲器170中,并每当卷积环(convolution loop)的数量增加时和每当池化操作被执行时,每个内核化或池化操作的结果值可被更新。
将由处理元件单元130执行的内核化、偏差加法(bias addition)、激活、池化等所需的参数可存储在参数缓冲器150中。在学习步骤中学习的参数也可存储在参数缓冲器150中。
由处理元件单元130执行的内核化或池化操作的结果值可被加载到输出缓冲器170上。加载到输出缓冲器170上的结果值可根据通过多个内核的每个卷积环的执行结果而被更新。然而,根据示例实施例,如果作为卷积环进展(progress)的最大(max)数据位置被检测到,则输出缓冲器170可被控制使得仅与检测到的特定位置对应的缓冲值被更新。
控制器190可控制处理元件单元130以便执行卷积操作和池化操作。控制器190可使用输入图像10或特征图和内核来执行卷积操作。在通过卷积操作处理任何一个输入图像10的情况下,可检测在特定深度或更深深度最大特征值的位置不再改变的时间点。这个时间点被称为“最大位置检测时间点”。在最大位置检测时间点之后,可通过卷积操作和池化操作来处理仅在输入图像10的最大值(即,最大特征值)存在时预测的区域。控制器190可将在最大位置检测时间点检测到的最大值的位置存储在最大位置缓冲器195中。之后,存储在最大位置缓冲器195中的图像的位置值可用于执行输入图像10的卷积操作和池化操作。
通过上面描述,在最大值的位置在卷积层中执行的卷积操作期间被检测到的情况下,下面的卷积环可被应用于仅与特征图或输入图像10的最大值的位置对应的数据。因此,在图像的与最大值的位置无关的区域中可不执行卷积操作。此外,可跳过用于处理包括在除了与最大值的位置对应的区域之外的剩余区域中的数据的偏差加法或池化操作中的比较操作。
图2是示出图1的卷积神经网络系统中执行的操作的示图。参照图2,可通过卷积层和用于对卷积层的执行结果进行下采样的池化层来迭代处理输入图像10。可在卷积层和池化层之间添加偏差加法或激活操作。
如果输入图像10被提供,则可将卷积层应用于输入图像10。针对卷积层的应用,可通过使用内核进行的内核化来处理输入图像10。也就是说,可将输入图像10的与内核151重叠的数据与在内核151中定义的加权值相乘。可通过将全部相乘的值求和来产生一个特征值。可在对内核151进行顺序移位的同时迭代执行内核化。如此,随着内核151被移位,可确定与每个位置对应的特征值。可通过使用多个内核来执行该一个输入图像10的内核化。随着卷积层被应用,可产生与多个内核中的每个内核对应的阵列形状的第一特征图131。例如,如果使用四个内核,则可产生由四个阵列形成的第一特征图131。然而,在输入图像10是三维图像的情况下,特征图的数量可急剧增加,并且与卷积环的迭代的次数对应的深度也可急剧增加。
一旦卷积层被完全地执行,则可对第一特征图131执行下采样。在卷积操作完成之后,可产生具有可由于内核的数量或输入图像10的大小而导致对于处理过于繁冗的大小的第一特征图131的数据。因此,在池化层中执行用于在下采样对操作结果没有大的影响的范围内降低第一特征图131的大小的下采样(或子采样)。池化表示下采样。可在特征图131中以预先确定的步长滑动用于下采样的滤波器的同时,选择对应区域的平均值或最大值。选择最大值的情况被称为“最大池化”,用于输出平均值的方法被称为“平均池化”。可通过池化层基于第一特征图131来产生具有减小的大小的第二特征图(FM2)132。
可通过对第二特征图132执行卷积操作来产生第三特征图133。可通过池化层基于第三特征图133来产生第四特征图134。图2示出被连续执行两次的一组卷积层和池化层。然而,实施例不限于此。该组卷积层和池化层被迭代执行的次数可根据系统需要而变化。可根据上述操作的结果产生第五特征图135和输出结果20。
可对乘法和累积操作进行迭代以执行卷积层。关于卷积层的执行,如果在特定卷积深度检测到最大值的位置,则可仅在特征图或输入图像10的最大值的位置执行下面的卷积操作。此外,将偏差加到卷积操作的结果值的处理可仅被应用于检测到最大值的位置。因此,可跳过与无意义的图像区域相关联的卷积操作。此外,根据示例实施例,可仅将偏差加法操作应用于(例如,选择性地应用于)最大值的位置的数据,并可跳过池化操作中的比较操作。
图3是示出卷积层和池化层的操作的示图。参照图3,第一特征图131可通过使用输入图像10经由卷积操作来产生,并且第一特征图131可通过池化操作被输出为第二特征图132。
输入图像10可使用内核151通过内核化来形成阵列形状的第一特征图131。可通过将输入图像10与内核151的重叠位置的内核化的值相加来产生第一特征图131的一个点的特征值。如果在针对输入图像10的全部位置对内核151进行移位的同时执行内核化,则可产生一个特征阵列。如果使用全部内核(例如,M个内核,每个内核大小为K×K)152执行卷积操作,则可产生多个特征图阵列(例如,M个图阵列)。
这里,可将通过卷积操作处理的输入图像10基本划分成各种分量。例如,可将一个输入图像10划分成用于表示与每个RGB(红、绿、蓝)分量相关联的对比度和颜色的多条图像数据。此外,可将输入图像10划分成大小被改变的多条数据。下面,用于通过使用全部内核(例如,M个内核)152对各个图像数据执行卷积操作的处理单元被称为“卷积环”。可通过输入图像10的多个深度执行卷积环。然而,如果在特定深度或更深深度执行卷积环,则作为对一个图像执行的卷积操作的结果值的累积值的特征图可倾向于使输入特征图或输入图像10的最大值的位置变得一致。因此,如果执行卷积环直到达到特定深度为止,则可固定最大值的位置。
根据示例实施例的一方面,如果确定在卷积操作的特定深度检测到特征的最大值,则可仅在输入图像10的与最大值对应的位置执行下面的卷积操作。因此,由于无意义(例如,不相关)的图像区域的卷积操作被跳过,所以计算复杂度可被显著地降低。
此外,如果将存储的最大值的位置信息用于对第一特征图131进行下采样的池化操作,则可在不比较最大值的候选的情况下将固定位置的特征返回到输出缓冲器170。例如,如果在通过大小为j×j滤波器153处理第一特征图131时将最大值的位置信息用于池化操作,则不必比较与滤波器153重叠的图像数据,。仅参考最大值的位置而选择的特征被输出。因此,根据示例实施例的一方面,如果最大值的位置被使用,则将在池化操作期间执行的比较操作的计算复杂度可被显著降低。此外,可仅将分配给通过卷积操作确定的特征值的偏差值应用于最大值的位置的特征。
图4是示出根据示例实施例的卷积操作的特性的示图。参照图4,如果使用输入图像10和内核151,则可产生特征值。
假设输入图像10是具有16个图像数据I0–I15的4乘4的矩阵。假设内核151是具有9个数据点“K0,0,0,0,0,K5,0,0和0”的3乘3大小的特征标识符。如果执行输入图像10和内核151的内核化,则通过内核化操作①产生部分和“K0×I0+K5×I6”。可以以相同的方式通过内核化操作②、③和④分别产生部分和(K0×I1+K5×I7)、(K0×I4+K5×I10)和(K0×I5+K5×I11)。如果将部分和组合为矩阵则可输矩阵作为特征图。对卷积操作进行迭代,直到达到预设深度为止。然而,如果根据示例实施例的控制器190(参照图1)确定卷积操作的特征值的最大值的位置是固定的,则控制器190可将关于最大值的位置的信息存储在最大位置缓冲器195中。在下面的卷积操作中,控制器190可通过使用卷积操作,仅处理存储在最大位置缓冲器195中的位置的图像数据。
图5是示出根据示例实施例的下采样过程的示图。参照图5,以下采样方式简明地示出了最大池化和平均池化。
第一特征图131的每个矩阵的值可以是通过上述图4的卷积操作计算的值。可在以步长2对2乘2大小的窗进行移位的同时执行下采样。首先,在最大池化的情况下,可通过选择第一特征图131的均具有2乘2大小的多个窗的最大值来产生2乘2大小的下采样值132a。可通过对第一特征图131的均具有2乘2大小的多个窗的特征的比较操作而选择最大值6、8、3和4,来输出下采样值132a。
相比之下,在平均池化的情况下,存在包括在第一特征图131的均具有2乘2大小的多个窗中的特征值的计算的平均值。可将计算的平均值输出作为2乘2大小的下采样值132b。可通过对第一特征图131的均具有2乘2大小的多个窗的特征的平均操作而选择平均值3、5、2和2,来输出下采样值132b。
图6是示出根据示例实施例的卷积层中的操作的示图。参照图6,根据示例实施例,简明地示出了与卷积层中的深度相关联的卷积操作的特性。根据示例实施例,执行卷积操作直到检测到最大值的位置的深度为止(MP跟踪)。在之后的卷积深度中,可仅将卷积操作应用于检测到最大值的图像的位置。
控制器190可检测输入图像10的特征的最大值的位置,其中,输入图像10的特征根据在执行卷积层时的深度的进展而被累积。如图6所示,可通过内核151对输入图像10的数据执行扫描和内核化。上述卷积环可继续,直到检测到最大值的位置为止。也就是说,可执行卷积环,并可累积作为卷积环的结果值的特征。通过内核151的特征值的最大值可从特定的卷积深度开始出现。例如,如果卷积环的深度有了进展,则由用于检测字母“m”的内核产生的特征值的位置开始被固定。如果以参考频率或更高频率在特定位置检测到最大值,则控制器190可确定检测到最大位置MP。控制器190可将最大位置数据存储在最大位置缓冲器195中。
控制器190可通过检测到最大位置MP之后的卷积深度的卷积操作,仅处理最大位置数据所指示的图像区域或特征图的区域。如果与字母“m”的位置对应的位置155被检测为最大位置MP,则可仅在最大位置MP执行之后的卷积操作。在这种情况下,与输入图像10的除最大位置155之外的剩余区域相关联的无意义的卷积操作可被跳过。
图7是示出根据示例实施例的执行在图6中简明地描述的卷积操作的方法的流程图。参照图7,控制器190(参照图1)可执行用于检测最大位置的操作,直到达到卷积操作的特定深度为止。如果检测到最大位置,则控制器190将最大位置数据存储在最大位置缓冲器195中。可在卷积神经网络系统100的训练操作期间以概率信息的形式将最大位置存储在最大位置缓冲器195中。可基于存储在最大位置缓冲器195中的最大位置数据来执行之后的卷积操作。下面将对这进行更详细地描述。
在操作S110中,控制器190可确定将要应用卷积操作的位置是否是固定的(例如,被预定义)。例如,针对卷积操作,可在输入图像的特定位置由用户固定(例如,与最大值对应的位置由用户输入)或者最大位置数据存在的情况下定义固定的位置。如果确定将要应用卷积操作的输入图像(或特征图)的位置是固定的(是),则处理进行到操作S120。如果确定将要应用卷积操作的输入图像或特征图的位置没有被设置成固定的值(否),则处理进行到操作S160。
在操作S120中,控制器190可确定最大位置是否被定义(例如,固定的、被检测到的)。例如,控制器190可在最大位置缓冲器195中搜索最大位置数据,并可确定是否检测到最大位置。如果确定检测到最大位置(是),则处理进行到操作S130。如果确定未检测到最大位置(否),则处理进行到操作S160。
在操作S130中,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170,使得卷积环基于存储在最大位置缓冲器195中的最大位置数据被执行。控制器190可从输入图像10或特征图选择与最大位置对应的区域的数据,并对选择的数据执行卷积操作。控制器190可跳过对输入图像10或特征图的除与最大位置对应的区域之外的剩余区域的卷积操作。
在操作S140中,控制器190可确定操作S130中执行的卷积环是否对应于卷积层的最后的深度或环。如果在操作S130中执行的卷积环不对应于卷积层的最后的环,则处理进行到操作S130。如果在操作S130中执行的卷积环对应于卷积层的最后的环,则处理进行到操作S150。
在操作S150中,控制器190可将在最后的卷积环中累积的最大位置的特征复制到输出缓冲器170中。换言之,控制器190可将结果写入到输出缓冲器170的特定位置。
在操作S160中,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170,使得用于确定最大位置的卷积环被执行。如果用于确定最大位置的卷积环被完全地执行,则处理进行到用于确定先前的卷积环的最大位置是否与当前执行的卷积环的最大位置相同的操作S120。
针对一个卷积层,上面描述了检测特征值的最大位置的方法和通过使用检测到的最大位置的信息来降低卷积操作的计算复杂度的方法。此外,如果检测到最大位置,则如果必要可应用终止另外卷积操作的技术。
图8是示出在图7中执行的操作S160的示例的流程图。将参照图8描述检测特征值的最大位置的方法的示例实施例(S160a)。
在操作S161中,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170执行用于确定最大位置的卷积环。处理元件单元130可通过对输入特征图或输入图像10的全部位置的数据进行内核化来计算与内核的相关性。如果完成了该卷积环,则可产生更新的新特征图。
在操作S162中,可确定执行卷积环的当前深度是否大于(深于)特定深度(例如,最大深度)。可将特定深度称为最大深度,因为它表示将被迭代的卷积环的最大次数。这里,可将特定深度(例如,最大深度)设置为通过卷积环的执行而累积的特征值有意义的最小深度。如果当前卷积深度大于特定深度(是),则处理进行到操作S163。如果当前卷积深度不大于特定深度(否),则处理进行到操作S161。
在操作S163中,控制器190可从根据操作S161的卷积环的执行而产生的特征图(例如,输出特征图)的特征(例如,输出特征)检测最大位置MP。这里,最大位置MP可对应于从根据在一个输入图像10中的卷积操作产生的累积的特征(例如,输出特征)之中检测到的最大值。可选地,最大位置MP可对应于一个输入图像10中划分的各个区域单元的累积的特征的最大值。
在操作S164中,控制器190可将在当前卷积环中检测到的当前最大位置CurrentMP与在先前卷积环中检测到的先前最大位置Previous MP进行比较。如果最大位置CurrentMP与在先前卷积环中检测到的最大位置Previous MP相同(是),则处理进行到操作S166。如果最大位置Current MP与最大位置Previous MP不同(否),则处理进行到操作S165。
在操作S165中,控制器190可初始化存储在最大位置缓冲器195中的最大位置数据。例如,在同一位置(即,一个位置)检测到最大值的次数可以是“0”,并且先前最大位置可被更新。之后,处理进行到操作S161,其中,在操作S161中,执行用于检测最大位置的下一深度的卷积环。
在操作S166中,控制器190可将最大位置缓冲器195中的在检测到最大位置的位置检测到最大值的次数(还被称为“最大值检测计数”)nMP加起来。也就是说,控制器190可更新在当前特征图中的同一位置检测到最大值的次数。例如,可将“1”加到最大位置缓冲器195中的以表的形式管理的最大值检测计数nMP。
在操作S167中,可根据在同一位置的最大值检测计数nMP与整个卷积深度(例如,预定义的最大卷积深度)的相对比率来进行操作分支。例如,在当前最大值检测计数nMP超出整个卷积深度tConv depth和参考比率的乘积(例如,10%)(还被称为预设比率或阈值比率)的情况下,可将最大位置确定为是固定的(例如,被检测的、被定义的、收敛的)。换言之,最大位置可以是与基于多个卷积环产生的输出特征的最大值对应的输入特征图的位置收敛的地方。在这种情况下,相对比率可以是10%或0.1。可根据卷积神经网络系统100的特性不同地设置相对比率的大小。如果在同一位置的最大值检测计数nMP与整个卷积深度的比率超出预设的参考比率(是),则可将最大位置确定为是固定的,并且操作160a结束。可将固定的最大位置存储在最大位置缓冲器195中。如果最大位置检测计数nMP在同一位置没有达到在整个卷积深度占据的相对比率(否),则处理进行到操作S161,其中,在操作S161中,执行用于检测另外最大位置的卷积环。
上面描述了用于检测最大位置的示例实施例。如果在同一位置的连续最大值检测计数nMP与整个卷积深度的比率大于预设相对比率,则可将最大位置确定为是固定的。然而,可很好地理解基于在同一位置不连续地检测到最大值的nMP次数来确定最大位置是否是固定的。
图9是示出在图7中执行的操作S160的另一示例实施例的流程图。将参照图9描述检测特征图的最大位置的方法的另一示例实施例(S160b)。
在操作S161中,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170执行用于确定最大位置的卷积环。处理元件单元130可通过卷积操作来处理输入特征图或输入图像10的全部位置的数据。可将多个内核用于卷积操作,因此,可产生多个特征图。如果完成了用于卷积操作的卷积环,则可产生更新的新特征图。
在操作S162中,控制器190可确定在操作S161中执行的卷积环的深度是否大于特定深度。这里,可将特定深度设置为通过卷积环的执行而累积的特征有意义的最小深度。如果当前卷积深度大于特定深度(是),则处理进行到操作S163。如果当前卷积深度不大于特定深度(否),则处理进行到操作S161。
在操作S163中,控制器190可从在操作S161的卷积环中产生的累积的特征(例如,输出特征)检测最大值以及检测到最大值的最大位置MP。这里,最大位置MP可对应于从根据一个输入图像10中的卷积操作产生的累积的特征之中检测到的最大值。可选地,最大位置MP可以是在一个输入图像10中划分的各个区域单元的累积的特征的最大值。
在操作S164中,控制器190可将在当前卷积环中检测到的最大位置Current MP与在先前卷积环中检测到的最大位置Previous MP进行比较。如果最大位置Current MP与在先前卷积环中检测到的最大位置Previous MP相同(是),则处理进行到操作S166。如果最大位置Current MP与最大位置Previous MP不同(否),则处理进行到操作S165。
在操作S165中,控制器190可初始化存储在最大位置缓冲器195中的最大位置数据。例如,在同一位置检测到最大值的次数可以是“0”,并且先前最大位置可被更新。之后,处理进行到操作S161,其中,在操作S161中,执行用于检测最大位置的下一深度的卷积环。
在操作S166中,控制器190可将最大位置缓冲器195中的在检测到的位置检测到最大值的次数nMP加起来。也就是说,控制器190可更新在当前特征图中的同一位置检测到最大值的次数。例如,可将“1”加到最大位置缓冲器195中的以表的形式管理的最大值检测计数nMP。
在操作S168中,可根据在同一位置的最大值检测计数nMP是否超过阈值TH来进行操作分支。例如,如果当前最大值检测计数nMP超过阈值TH,则控制器190可确定最大位置是固定的。可根据卷积神经网络系统100的特性来不同地设置阈值TH的大小。如果在同一位置的最大值检测计数nMP超过阈值TH(是),则可将最大位置确定为是固定的,并且操作S160b结束。可将固定的最大位置存储在最大位置缓冲器195中。如果在同一位置的最大值检测计数nMP没有达到阈值TH(否),则处理进行到操作S161,其中,在操作S161中,可执行用于检测另外最大位置的卷积环。
上面描述了用于检测最大位置的另一示例实施例。如果在同一位置的最大值检测计数nMP大于阈值TH,则可确定检测到最大位置。然而,可很好地理解基于在同一位置不连续地检测到的最大值检测计数nMP来确定最大位置是否是固定的。
图10是示出在图7中执行的检测最大位置的方法的另一示例实施例的流程图。参照图10,可以以从“A”到“B”的特定深度间隔检测特征图的最大位置。将使用操作S160c简明地描述该示例实施例。
在操作S161中,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170执行用于确定最大位置的卷积环。处理元件单元130可通过卷积操作来处理输入特征图或输入图像10的全部位置的数据。可将多个内核用于卷积操作,因此,可产生多个特征图。如果完成了用于卷积操作的卷积环,则可产生更新的新特征图。
在操作S162中,控制器190可确定在操作S161中执行的卷积环的深度是否大于特定深度。这里,可将特定深度设置为通过卷积环的执行而累积的特征有意义的最小深度。如果当前卷积深度大于特定深度(是),则处理进行到操作S163。如果当前卷积深度不大于特定深度(否),则处理进行到操作S161。
在操作S162’中,控制器190可确定在操作S161中执行的卷积环的深度是否被包括在特定范围内。这里,从“A”到“B”的特定范围可以是被选择来降低用于检测最大位置的计算复杂度的卷积环的深度范围。可仅在卷积环的特定深度检测具有最大值的特征值。如果在操作S161中执行的卷积环的深度没有被包括在从“A”到“B”的特定范围内(否),则处理进行到操作S161。如果在操作S161中执行的卷积环的深度被包括在从“A”到“B”的特定范围内(是),则处理进行到操作S163。
在操作S163中,控制器190可检测在操作S161的卷积环中产生的累积的特征(例如,输出特征)最大值以及检测到最大值的最大位置MP。这里,最大位置MP可对应于从根据一个输入图像10或特征图中的卷积操作产生的累积的特征之中检测到的最大值。可选地,最大位置MP可对应于在一个输入图像10或特征图中划分的各个区域单元的累积的特征的最大值。
在操作S164中,控制器190可将在当前卷积环中检测到的最大位置Current MP与在先前卷积环中检测到的最大位置Previous MP进行比较。如果最大位置Current MP与在先前卷积环中检测到的最大位置Previous MP基本相同(是),则处理进行到操作S166。如果最大位置Current MP与最大位置Previous MP不同(否),则处理进行到操作S165。
在操作S165中,控制器190可初始化存储在最大位置缓冲器195中的最大位置数据。换言之,最大位置可被找到。例如,在同一位置检测到最大值的次数可以是“0”,并且先前最大位置可被更新。之后,处理进行到操作S161,其中,在操作S161中,执行用于检测最大位置的下一深度的卷积环。
在操作S166中,控制器190可将最大位置缓冲器195中的在检测到的位置检测到最大值的次数nMP加起来。也就是说,控制器190可更新在当前特征图中的同一位置检测到最大值的次数。例如,可将“1”加到最大位置缓冲器195中的以表的形式管理的最大值检测计数nMP。
在操作S168中,可根据在同一位置的最大值检测计数nMP是否超过阈值TH来创建操作分支。例如,如果当前最大值检测计数nMP超过阈值TH,则控制器190可确定最大位置是固定的。可根据卷积神经网络系统100的特性来不同地设置阈值TH的大小。如果在同一位置的最大值检测计数nMP超过阈值TH(是),则可将最大位置确定为是固定的,并且操作S160c结束。可将固定的最大位置存储在最大位置缓冲器195中。如果在同一位置的最大值检测计数nMP没有达到阈值TH(否),则处理进行到操作S161,其中,在操作S161中,执行用于检测另外最大位置的卷积环。这里,可很好地理解使用整个卷积深度(例如,最大卷积深度)的特定比率来替换阈值TH,其中,阈值TH指示最大值检测计数nMP和特定比率的乘积,最大值检测计数nMP指示检测到最大值的环的数量。
上面描述了用于检测最大位置的另一示例实施例。由于用于检测最大位置的操作在从“A”到“B”的特定深度范围内被激活,因此用户可基于卷积神经网络系统100的操作条件或输入图像的类型来不同地调节检测条件。
图11是示出使用本发明构思的最大位置的另一示例实施例的示图。参照图11,在检测到最大位置MP之后,可仅对输入图像200或输入特征图的与最大位置MP对应的区域执行卷积操作。此外,还可将应用于卷积操作的结果值的偏差加法仅应用于最大位置MP。
输入图像200可以是构成输入原始图像的多个图像数据层中的一个。可选地,输入图像200可以是通过先前卷积操作产生的特征图。假设通过最大检测操作检测到的最大位置是最大区域(MP)202。在这种情况下,在检测到最大值之后,则可仅在最大区域202中执行卷积环。也就是说,可在最大区域202中移动多个内核,并且可对重叠区域的参数进行相乘和累积。然而,可跳过输入图像200的与最大区域202的外部对应的无效区域206的卷积操作。可将无效区域206的特征值设置为“0”,或将无效区域206的特征值设置为固定的特定水平。
如图11所示,任何一个内核204可在用于卷积操作的输入图像200中与最大区域202重叠。可将重叠区域的内核加权值和输入数据值进行相乘。可作为将相乘的值相加的结果输出一个特征值。然而,可将“0”输出为除最大区域202之外的无效区域的特征值。在这种情况下,将偏差值α加到作为卷积操作的结果而产生的特征值。根据示例性实施例的一方面,可在将卷积操作和偏差值α的相加仅应用于最大区域202的条件下,产生输出特征图210。也就是说,可跳过与输入图像200的无效区域206相关联的卷积操作和偏差相加操作。
通过将卷积操作和偏差相加应用于最大区域202,可显著地降低在检测到最大位置之后将应用的卷积环的计算复杂度。
图12是示出使用本发明构思的最大位置的另一示例实施例的流程图。参照图12,如果检测到最大位置MP,则控制器190(参照图1)可将最大位置数据存储在最大位置缓冲器195中。之后,可基于存储在最大位置缓冲器195中的最大位置数据来执行卷积操作。此外,控制器190可通过使用存储在最大位置缓冲器195中的最大位置数据来对在卷积环中产生的特征图执行下采样操作。
在操作S210中,可执行用于检测特征值的最大位置的与内核的卷积操作。针对卷积操作,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170,使得用于确定最大位置的卷积环被执行。控制器190可通过一个卷积环的执行来产生多个特征图。
在操作S220中,控制器190可检测包括在特征图中的特征值的最大值。控制器190可将在先前卷积环中累积的特征值的最大位置与在当前卷积环中产生的最大位置进行比较。参照图8至图10的流程图详细描述了确定最大位置的方法,因此省略其描述。如果确定检测到最大位置(是),则可将最大位置数据记录在最大位置缓冲器195中。之后,处理进行到操作S230。如果确定未检测到最大位置(否),则处理进行到操作S210。
在操作S230中,可继续进行在最大值的检测之后的卷积环。也就是说,控制器190可控制输入缓冲器110、处理元件单元130、参数缓冲器150和输出缓冲器170,使得仅检测到的最大位置MP所指示的最大区域202(参照图1)的特征图区域或图像数据通过使用内核的卷积操作而被处理。
在操作S240中,可检查在操作S230中执行的卷积环是否是用于处理输入图像10或特征图的最后的卷积环。如果在操作S230中执行的卷积环是最后的环(是),则处理进行到操作S250。如果在操作S230中执行的卷积环不是最后的环(否),则处理进行到操作S230。
在操作S250中,可执行偏差应用操作。也就是说,可将偏差α加到根据最后的卷积环的执行而产生的特征值(例如,输出特征值)。然而,可仅将偏差α选择性地加到与最大位置MP对应的特征值。相比之下,可跳过与最大位置不相关的区域的偏差相加。
在操作S260中,可执行池化或下采样操作。控制器190可参照存储在最大位置缓冲器195中的最大位置数据执行池化操作。例如,在使用最大池化的情况下,控制器190可在不应用池化滤波器的情况下参照存储在最大位置缓冲器195中的最大位置,将最大值特征发送到输出缓冲器170。因此,可不需要用于最大池化的比较操作。在针对下采样应用平均池化的情况下,可以以用于选择与最大区域对应的特征并获得平均值的方式来执行池化操作。除了上述平均池化之外,还可提供用于执行池化操作的各种方法。例如,可通过应用用于对池化滤波器的值进行排序的方式、用于选择中值的方式等来另外执行池化操作。
在操作S270中,在应用最大池化的情况下,可在没有对最大值特征的比较操作的情况下参照存储在最大位置缓冲器195中的最大位置,将结果写入到输出缓冲器170中。
上面简明地描述了使用在卷积层中产生的特征的最大位置的方法。当卷积深度深时,作为卷积环的执行结果而产生的特征的最大位置可被固定。如果使用卷积层的特性检测到最大位置,则可跳过除最大值之外的图像区域的卷积操作。因此,可显著地降低包括乘法和累积操作的卷积操作所需的计算复杂度。
根据一个或多个示例实施例,提供一种能够降低用于确定与内核的相关性的卷积环被执行的次数的卷积神经网络系统。因此,根据一个或多个示例实施例的卷积神经网络系统可显著地降低卷积操作所需的计算复杂度。这可意味着驱动卷积神经网络系统所需的功率被降低。
虽然已经描述了各个示例实施例,但是本领域技术人员将清楚,在不脱离本公开的精神和范围的情况下,可做出各种改变和修改。因此,应理解,上面的示例实施例不是限制性的,而是说明性的。
Claims (25)
1.一种操作卷积神经网络系统的方法,所述方法包括:
执行用于确定至少一个内核与输入特征图之间的相关性的卷积环;
确定输入特征图上的最大位置,其中,所述最大位置与基于卷积环产生的输出特征的最大值对应;
通过使用所述至少一个内核的卷积环来处理输入特征图的第一区域的第一数据,其中,第一区域与所述最大位置相关联,
其中,处理第一数据的步骤包括:跳过输入特征图的第二区域的第二数据的卷积操作,第二区域与所述最大位置无关。
2.如权利要求1所述的方法,其中,确定最大位置的步骤包括:响应于在输入特征图上的一个位置连续地检测到最大值至少参考次数,将所述一个位置确定为所述最大位置。
3.如权利要求1所述的方法,其中,确定最大位置的步骤包括:响应于在输入特征图上的一个位置连续地检测到最大值的次数大于最大卷积深度和参考比率的乘积,将所述一个位置确定为所述最大位置。
4.如权利要求1所述的方法,其中,执行卷积环的步骤包括:以最大卷积深度的特定范围的深度间隔执行卷积环。
5.如权利要求1所述的方法,其中,在所述卷积神经网络系统的训练操作期间以概率信息的形式存储所述最大位置。
6.如权利要求1所述的方法,其中,确定最大位置的步骤包括:在输入特征图上设置位置,其中,所述位置与由用户输入的最大值对应。
7.如权利要求1所述的方法,还包括:将偏差选择性地应用于根据处理第一数据的卷积环的执行而产生的输出特征值。
8.如权利要求7所述的方法,其中,选择性地应用偏差的步骤包括:将所述偏差应用于与所述最大位置对应的第一输出特征值,不将所述偏差应用于与所述最大位置不相关的第二输出特征值。
9.如权利要求1所述的方法,还包括:
在处理第一数据的步骤之后,执行用于减少将被输出的输出特征图的大小的池化操作。
10.如权利要求9所述的方法,其中,池化操作包括:将来自输出特征图的特征之中的与所述最大位置对应的特征发送到输出缓冲器。
11.如权利要求10所述的方法,其中,跳过在最大池化操作中选择的特征之间的比较操作。
12.一种卷积神经网络系统,包括:
输入缓冲器,被配置为:缓冲输入图像和输入特征图中的至少一个;
处理元件单元,被配置:使用来自输入缓冲器的输入图像和输入特征图中的所述至少一个以及至少一个内核,来执行卷积操作;
输出缓冲器,被配置为:存储作为由处理元件单元执行的卷积操作的结果输出的输出特征;
控制器,被配置为:控制输入缓冲器、处理元件单元和输出缓冲器执行用于处理输入图像和输入特征图中的所述至少一个的卷积环,并检测与基于卷积环产生的输出特征的最大值对应的最大位置;
最大位置缓冲器,被配置为:存储所述最大位置。
13.如权利要求12所述的卷积神经网络系统,其中,控制器还被配置为:在检测到所述最大位置之后执行的卷积环中,对基于所述最大位置选择的第一数据执行卷积操作,
其中,对基于所述最大位置而未选择的第二数据跳过卷积操作。
14.如权利要求12所述的卷积神经网络系统,其中,控制器还被配置为:响应于在输入图像和输入特征图中的所述至少一个上的一个位置连续地检测到最大值至少参考次数,将所述一个位置确定为所述最大位置,并将所述最大位置存储在最大位置缓冲器中。
15.如权利要求12所述的卷积神经网络系统,其中,控制器还被配置为:响应于在输入图像和输入特征图中的所述至少一个上的一个位置连续地检测到最大值的次数大于最大卷积深度和参考比率的乘积,将所述一个位置确定为所述最大位置并将所述最大位置存储在最大位置缓冲器中。
16.如权利要求12所述的卷积神经网络系统,其中,控制器还被配置为将偏差加到与所述最大位置对应的输出特征值。
17.如权利要求16所述的卷积神经网络系统,其中,所述偏差不被应用于与所述最大位置无关的输出特征值。
18.如权利要求12所述的卷积神经网络系统,其中,控制器还被配置为:
执行用于对输出特征进行下采样的池化操作;
在没有比较操作的情况下,将来自输出特征值之中的与所述最大位置对应的特征发送到输出缓冲器。
19.如权利要求12所述的卷积神经网络系统,还包括:
参数缓冲器,被配置为:将所述至少一个内核的权重值和大小信息提供给处理元件单元。
20.一种操作卷积神经网络系统的方法,包括:
确定输入特征图的最大位置,其中,输入特征图的与经由卷积环产生的输出特征的最大值对应的位置收敛于所述最大位置;
仅对输入特征图的与所述最大位置对应的第一区域执行卷积环以产生输出特征图,同时跳过输入特征图的不与所述最大位置对应的第二区域上的卷积环的执行;
存储所述最大位置。
21.如权利要求20所述的方法,其中,确定最大位置的步骤包括:接收用户输入作为所述最大位置。
22.如权利要求20所述的方法,其中,确定最大位置的步骤包括:
对输入特征图执行卷积环,以产生当前最大位置;
响应于当前最大位置不等于先前最大位置,初始化先前最大位置,并重复对输入特征图执行卷积环;
响应于当前最大位置等于先前最大位置,更新关于当前最大位置的最大值检测计数;
响应于关于当前最大位置的最大值检测计数超过阈值,将当前最大位置确定为所述最大位置。
23.如权利要求22所述的方法,其中,所述阈值是最大卷积深度和参考比率的乘积。
24.如权利要求22所述的方法,其中,执行卷积环的步骤包括:通过对输入特征图的全部位置的数据进行内核化,计算与内核的相关性。
25.如权利要求20所述的方法,其中,输入特征图表示输入图像。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160177031A KR20180073314A (ko) | 2016-12-22 | 2016-12-22 | 컨볼루션 신경망 시스템 및 그것의 동작 방법 |
KR10-2016-0177031 | 2016-12-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108229653A true CN108229653A (zh) | 2018-06-29 |
CN108229653B CN108229653B (zh) | 2023-04-07 |
Family
ID=62629938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711337020.8A Active CN108229653B (zh) | 2016-12-22 | 2017-12-14 | 卷积神经网络系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10521696B2 (zh) |
KR (1) | KR20180073314A (zh) |
CN (1) | CN108229653B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111657935A (zh) * | 2020-05-11 | 2020-09-15 | 浙江大学 | 一种基于层次图卷积神经网络的癫痫脑电识别系统、终端及存储介质 |
CN111988629A (zh) * | 2019-05-22 | 2020-11-24 | 富士通株式会社 | 图像编码方法和装置、图像解码方法和装置 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10366328B2 (en) * | 2017-09-19 | 2019-07-30 | Gyrfalcon Technology Inc. | Approximating fully-connected layers with multiple arrays of 3x3 convolutional filter kernels in a CNN based integrated circuit |
US10360470B2 (en) * | 2016-10-10 | 2019-07-23 | Gyrfalcon Technology Inc. | Implementation of MobileNet in a CNN based digital integrated circuit |
US10339445B2 (en) * | 2016-10-10 | 2019-07-02 | Gyrfalcon Technology Inc. | Implementation of ResNet in a CNN based digital integrated circuit |
US10261903B2 (en) | 2017-04-17 | 2019-04-16 | Intel Corporation | Extend GPU/CPU coherency to multi-GPU cores |
CN116629743A (zh) | 2017-05-23 | 2023-08-22 | 沃尔玛阿波罗有限责任公司 | 自动化检查系统 |
US20190279084A1 (en) * | 2017-08-15 | 2019-09-12 | Toonimo, Inc. | System and method for element detection and identification of changing elements on a web page |
KR102017998B1 (ko) | 2018-01-16 | 2019-09-03 | 한국과학기술원 | 이미지 파이프라인 처리 방법 및 장치 |
WO2019143027A1 (ko) | 2018-01-16 | 2019-07-25 | 한국과학기술원 | 이미지 파이프라인 처리 방법 및 장치 |
WO2019143026A1 (ko) | 2018-01-16 | 2019-07-25 | 한국과학기술원 | 특징맵 압축을 이용한 이미지 처리 방법 및 장치 |
US11448632B2 (en) | 2018-03-19 | 2022-09-20 | Walmart Apollo, Llc | System and method for the determination of produce shelf life |
KR102476239B1 (ko) * | 2018-07-17 | 2022-12-12 | 삼성전자주식회사 | 전자 장치, 영상 처리 방법 및 컴퓨터 판독가능 기록 매체 |
WO2020023762A1 (en) | 2018-07-26 | 2020-01-30 | Walmart Apollo, Llc | System and method for produce detection and classification |
KR102633139B1 (ko) * | 2018-09-07 | 2024-02-02 | 삼성전자주식회사 | 데이터를 추출하는 집적 회로, 그것을 포함하는 뉴럴 네트워크 프로세서 및 뉴럴 네트워크 장치 |
US11176427B2 (en) | 2018-09-26 | 2021-11-16 | International Business Machines Corporation | Overlapping CNN cache reuse in high resolution and streaming-based deep learning inference engines |
US10733742B2 (en) | 2018-09-26 | 2020-08-04 | International Business Machines Corporation | Image labeling |
US11715059B2 (en) | 2018-10-12 | 2023-08-01 | Walmart Apollo, Llc | Systems and methods for condition compliance |
WO2020106332A1 (en) | 2018-11-20 | 2020-05-28 | Walmart Apollo, Llc | Systems and methods for assessing products |
CN109376695B (zh) * | 2018-11-26 | 2021-09-17 | 北京工业大学 | 一种基于深度混合神经网络的烟雾检测方法 |
US11487845B2 (en) | 2018-11-28 | 2022-11-01 | Electronics And Telecommunications Research Institute | Convolutional operation device with dimensional conversion |
KR20200072308A (ko) | 2018-12-12 | 2020-06-22 | 삼성전자주식회사 | 뉴럴 네트워크에서 컨볼루션 연산을 수행하는 방법 및 장치 |
CN109740481B (zh) * | 2018-12-26 | 2019-12-10 | 山东科技大学 | 基于跳跃连接的cnn与lstm结合的房颤信号分类系统 |
CN111860064B (zh) * | 2019-04-30 | 2023-10-20 | 杭州海康威视数字技术股份有限公司 | 基于视频的目标检测方法、装置、设备及存储介质 |
KR102420104B1 (ko) * | 2019-05-16 | 2022-07-12 | 삼성전자주식회사 | 영상 처리 장치 및 그 동작방법 |
CN112116083B (zh) * | 2019-06-20 | 2024-03-08 | 地平线(上海)人工智能技术有限公司 | 神经网络加速器及其检测方法和装置 |
CN113128662A (zh) * | 2020-01-16 | 2021-07-16 | 波音公司 | 卷积神经网络及基于卷积神经网络的图像处理方法 |
CN111476174B (zh) * | 2020-04-09 | 2023-04-04 | 北方工业大学 | 一种基于人脸图像的情绪识别方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408435A (zh) * | 2014-12-05 | 2015-03-11 | 浙江大学 | 一种基于随机池化卷积神经网络的人脸识别方法 |
US20160162782A1 (en) * | 2014-12-09 | 2016-06-09 | Samsung Electronics Co., Ltd. | Convolution neural network training apparatus and method thereof |
US20160171346A1 (en) * | 2014-12-15 | 2016-06-16 | Samsung Electronics Co., Ltd. | Image recognition method and apparatus, image verification method and apparatus, learning method and apparatus to recognize image, and learning method and apparatus to verify image |
CN105913087A (zh) * | 2016-04-11 | 2016-08-31 | 天津大学 | 基于最优池化卷积神经网络的物体识别方法 |
US20160259995A1 (en) * | 2015-03-06 | 2016-09-08 | Panasonic Intellectual Property Management Co., Ltd. | Image recognition method, image recognition device, and recording medium |
US20160358068A1 (en) * | 2015-06-04 | 2016-12-08 | Samsung Electronics Co., Ltd. | Reducing computations in a neural network |
US20160358069A1 (en) * | 2015-06-03 | 2016-12-08 | Samsung Electronics Co., Ltd. | Neural network suppression |
CN106228240A (zh) * | 2016-07-30 | 2016-12-14 | 复旦大学 | 基于fpga的深度卷积神经网络实现方法 |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06180691A (ja) | 1992-12-11 | 1994-06-28 | Fujitsu Ltd | 適応的入出力装置 |
US6208982B1 (en) | 1996-11-18 | 2001-03-27 | Lockheed Martin Energy Research Corporation | Method and apparatus for solving complex and computationally intensive inverse problems in real-time |
US6909384B2 (en) | 2002-01-31 | 2005-06-21 | Microsoft Corporation | Generating and searching compressed data |
US6990150B2 (en) | 2002-05-14 | 2006-01-24 | Enseo, Inc. | System and method for using a High-Definition MPEG decoder to extract multiple Standard Definition frames from a High-Definition frame |
US20040070616A1 (en) | 2002-06-02 | 2004-04-15 | Hildebrandt Peter W. | Electronic whiteboard |
US7363540B2 (en) | 2002-10-22 | 2008-04-22 | Microsoft Corporation | Transaction-safe FAT file system improvements |
WO2005034092A2 (en) | 2003-09-29 | 2005-04-14 | Handheld Entertainment, Inc. | Method and apparatus for coding information |
EP1924091A1 (en) | 2005-08-09 | 2008-05-21 | Sharp Kabushiki Kaisha | Data recording device, data reproduction device, program, and recording medium |
US20070083467A1 (en) | 2005-10-10 | 2007-04-12 | Apple Computer, Inc. | Partial encryption techniques for media data |
JP4143655B2 (ja) * | 2005-11-24 | 2008-09-03 | キヤノン株式会社 | 画像処理装置、画像処理方法、プログラム、記憶媒体、システム |
US20090135309A1 (en) | 2007-11-28 | 2009-05-28 | Matsushita Electric Industrial Co., Ltd. | Method and apparatus for speeding up atsc channel searching |
US7979844B2 (en) | 2008-10-14 | 2011-07-12 | Edss, Inc. | TICC-paradigm to build formally verified parallel software for multi-core chips |
US8285965B2 (en) | 2009-11-20 | 2012-10-09 | Western Digital Technologies, Inc. | Aligning data storage device partition to boundary of physical data sector |
JP5721344B2 (ja) | 2010-05-07 | 2015-05-20 | キヤノン株式会社 | システム、システムの制御方法、及び、プログラム |
JP2012034356A (ja) | 2010-07-02 | 2012-02-16 | Panasonic Corp | 画像符号化装置、画像符号化方法、プログラムおよび集積回路 |
US20120158631A1 (en) | 2010-12-15 | 2012-06-21 | Scientific Conservation, Inc. | Analyzing inputs to an artificial neural network |
US9516379B2 (en) | 2011-03-08 | 2016-12-06 | Qualcomm Incorporated | Buffer management in video codecs |
JP5715297B2 (ja) | 2011-11-25 | 2015-05-07 | 株式会社日立製作所 | ストレージ装置及びその制御方法 |
JP6160173B2 (ja) | 2013-03-28 | 2017-07-12 | 富士通株式会社 | ストレージ装置、割当解放制御方法及び割当解放制御プログラム |
US9542626B2 (en) | 2013-09-06 | 2017-01-10 | Toyota Jidosha Kabushiki Kaisha | Augmenting layer-based object detection with deep convolutional neural networks |
US9400925B2 (en) | 2013-11-15 | 2016-07-26 | Facebook, Inc. | Pose-aligned networks for deep attribute modeling |
US20170357894A1 (en) * | 2016-06-10 | 2017-12-14 | Apple Inc. | Data packing for convolution of artificial neural networks |
-
2016
- 2016-12-22 KR KR1020160177031A patent/KR20180073314A/ko active Search and Examination
-
2017
- 2017-11-03 US US15/802,958 patent/US10521696B2/en active Active
- 2017-12-14 CN CN201711337020.8A patent/CN108229653B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408435A (zh) * | 2014-12-05 | 2015-03-11 | 浙江大学 | 一种基于随机池化卷积神经网络的人脸识别方法 |
US20160162782A1 (en) * | 2014-12-09 | 2016-06-09 | Samsung Electronics Co., Ltd. | Convolution neural network training apparatus and method thereof |
US20160171346A1 (en) * | 2014-12-15 | 2016-06-16 | Samsung Electronics Co., Ltd. | Image recognition method and apparatus, image verification method and apparatus, learning method and apparatus to recognize image, and learning method and apparatus to verify image |
US20160259995A1 (en) * | 2015-03-06 | 2016-09-08 | Panasonic Intellectual Property Management Co., Ltd. | Image recognition method, image recognition device, and recording medium |
US20160358069A1 (en) * | 2015-06-03 | 2016-12-08 | Samsung Electronics Co., Ltd. | Neural network suppression |
US20160358068A1 (en) * | 2015-06-04 | 2016-12-08 | Samsung Electronics Co., Ltd. | Reducing computations in a neural network |
CN105913087A (zh) * | 2016-04-11 | 2016-08-31 | 天津大学 | 基于最优池化卷积神经网络的物体识别方法 |
CN106228240A (zh) * | 2016-07-30 | 2016-12-14 | 复旦大学 | 基于fpga的深度卷积神经网络实现方法 |
Non-Patent Citations (1)
Title |
---|
JAWAD NAGI等: "Max-Pooling Convolutional Neural Networks for Vision-based Hand Gesture Recognition", 《2011 IEEE INTERNATIONAL CONFERENCE ON SIGNAL AND IMAGE PROCESSING APPLICATIONS (ICSIPA2011)》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111988629A (zh) * | 2019-05-22 | 2020-11-24 | 富士通株式会社 | 图像编码方法和装置、图像解码方法和装置 |
CN111988629B (zh) * | 2019-05-22 | 2024-02-09 | 富士通株式会社 | 图像编码装置和图像解码装置 |
CN111657935A (zh) * | 2020-05-11 | 2020-09-15 | 浙江大学 | 一种基于层次图卷积神经网络的癫痫脑电识别系统、终端及存储介质 |
CN111657935B (zh) * | 2020-05-11 | 2021-10-01 | 浙江大学 | 一种基于层次图卷积神经网络的癫痫脑电识别系统、终端及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108229653B (zh) | 2023-04-07 |
US20180181838A1 (en) | 2018-06-28 |
US10521696B2 (en) | 2019-12-31 |
KR20180073314A (ko) | 2018-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229653A (zh) | 卷积神经网络系统及其操作方法 | |
Carreira-Perpinán et al. | “learning-compression” algorithms for neural net pruning | |
KR102144381B1 (ko) | 이미지 세그멘테이션을 위한 학습 방법 및 학습 장치, 그리고 이를 이용한 이미지 세그멘테이션 방법 및 이미지 세그멘테이션 장치 | |
WO2020062894A1 (en) | Computer-implemented method using convolutional neural network, apparatus for generating composite image, and computer-program product | |
CN108701210A (zh) | 用于cnn网络适配和对象在线追踪的方法和系统 | |
CN110414574A (zh) | 一种目标检测方法、计算设备及存储介质 | |
CN108062526A (zh) | 一种人体姿态估计方法及移动终端 | |
CN111062475A (zh) | 用于对神经网络的参数进行量化的方法和装置 | |
CN109472757B (zh) | 一种基于生成对抗神经网络的图像去台标方法 | |
CN109324827A (zh) | 访问序言和结尾数据 | |
CN108648159B (zh) | 一种图像去雨方法及系统 | |
CN109670574A (zh) | 用于同时执行激活和卷积运算的方法和装置及其学习方法和学习装置 | |
US20170206661A1 (en) | Image processing apparatus, image processing method, image processing system, and non-transitory computer readable medium | |
CN112257603A (zh) | 高光谱图像分类方法及相关设备 | |
JP2016031746A (ja) | 情報処理装置、情報処理方法 | |
CN110991627A (zh) | 信息处理装置、信息处理方法 | |
KR20220004692A (ko) | 데이터 증강 정책의 업데이트 방법, 장치, 기기 및 저장 매체 | |
CN113811900A (zh) | 算术运算装置和算术运算系统 | |
Katsigiannis et al. | Grow-cut based automatic cDNA microarray image segmentation | |
Qu et al. | Learn to unlearn: A survey on machine unlearning | |
CN106778550B (zh) | 一种人脸检测的方法和装置 | |
CN112396085A (zh) | 识别图像的方法和设备 | |
Tofigh et al. | A low-Complexity modified ThiNet algorithm for Pruning convolutional neural networks | |
Fang et al. | Self-Supervised Reinforcement Learning for Active Object Detection | |
CN107871162A (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 |