产生输入图像的分类的卷积神经网络及计算机实现方法技术

技术编号:19321498 阅读:28 留言:0更新日期:2018-11-03 11:27
产生输入图像的分类的卷积神经网络及计算机实现方法。在此公开了用于产生输入图像的分类的卷积神经网络(CNN)系统。根据实施例,CNN系统包括:一系列的神经网络层,被配置为:至少基于输入图像获得特征图;通过根据模式将特征图和内核中的至少一个选择的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔;对特征图与内核进行卷积,以产生第一卷积输出;至少基于第一卷积输出,产生输入图像的分类。

Convolution neural network for classification of input images and computer implementation

A convolutional neural network for generating classification of input images and a computer implementation method. A convolutional neural network (CNN) system for generating classification of input images is disclosed. According to an embodiment, the CNN system includes a series of neural network layers configured to obtain a feature map at least based on the input image, set the value of one or more elements of at least one selected row in the feature map and the kernel to zero according to the pattern, and shift each row of the pattern at a predetermined interval by a root. The value of one or more elements of the remaining row of at least one selection is set to zero according to the cyclic shift mode to perforate the at least one selection; the feature graph is convoluted with the kernel to produce the first convolution output; and the classification of the input image is generated at least based on the first convolution output.

【技术实现步骤摘要】
产生输入图像的分类的卷积神经网络及计算机实现方法本申请要求于2017年4月18日提交的标题为“用于降低卷积神经网络的计算复杂度的方法和设备”的第62/486,626号美国临时专利申请的优先权和权益,以及于2017年6月27日提交的题目为“用于降低卷积神经网络的计算复杂度的方法和设备”的第15/634,537号美国非临时专利申请的优先权和权益,所述美国专利申请的全部内容通过引用合并于此。
本公开涉及卷积神经网络。具体地,本公开涉及一种降低卷积神经网络的计算复杂度的方法和设备。
技术介绍
卷积神经网络(CNN)系统是一种具有许多应用的前馈人工神经网络。CNN系统在机器学习领域中(例如,在目标检测、图像分类、场景分割和诸如超分辨率和视差估计的图像质量提高中)已经发展成为最先进的。CNN系统通常包括多层卷积滤波器(也被称为“加权内核”或仅称为“内核”)。每个卷积层可接收特征图作为输入,其中,特征图与内核卷积以产生卷积输出。由于深度神经网络中在每一层可能需要处理的大量的特征图、大的内核大小以及越来越多的层,训练和运行CNN系统通常计算昂贵。复杂度也随着较大的输入大小(例如,全高清(HD)图像)和所有中间特征图而增加,其中,较大的输入大小转化成输入特征图的较大的宽度和高度。许多应用(诸如,行人检测)需要快速实时处理。当前的硬件架构和图形处理器(GPU)目的在于对多个处理单元进行并行处理以加快处理。然而,由于最近在电力有限的电子装置(诸如,移动装置)上实现深度CNN系统的趋势,期望减少计算负担以降低功耗并加快处理时间。
技术实现思路
在此公开了用于产生输入图像的分类的卷积神经网络(CNN)系统。根据实施例,CNN系统包括:神经网络层的序列,被配置为:至少基于输入图像获得特征图;通过根据模式将特征图和内核中的至少一个选择的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔;对特征图与内核进行卷积,以产生第一卷积输出;至少基于第一卷积输出,产生输入图像的分类。在此还公开了产生输入图像的分类的计算机实现方法,所述方法由通过一个或多个计算机实现的卷积神经网络(CNN)系统执行,所述CNN系统包括神经网络层的序列。根据实施例,所述计算机实现方法包括:由神经网络层,至少基于输入图像获得特征图;由神经网络层,通过根据模式将特征图和内核中的至少一个选择的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔;由神经网络层,对特征图与内核进行卷积以产生第一卷积输出;由神经网络层,至少基于第一卷积输出产生输入图像的分类。附图说明作为本公开的部分包括的附图示出各种实施例,并与以上给出的总体描述和以下给出的各种实施例的详细描述一起用于解释和教导在此描述的原理。图1示出特征图和内核的示例卷积操作以说明这种操作的典型的计算成本。图2示出对未穿孔的特征图与未穿孔的内核进行卷积的示例图。图3示出根据本系统和方法的实施例的对穿孔的特征图与未穿孔的内核进行卷积的示例图。图4示出根据本系统和方法的实施例的对未穿孔的特征图与穿孔的内核进行卷积的示例图。图5示出根据本系统和方法的实施例的用于以规律的方式对特征图进行穿孔的示例特征图掩膜。图6示出根据本系统和方法的实施例的一系列的神经网络层的示例。图7示出根据本系统和方法的实施例的CNN系统的示例操作的流程图。附图中的示图不一定按比例绘制,并且贯穿示图,为了说明的目的,相似结构或功能的元件通常由相同的参考标号表示。附图仅旨在便于描述在此描述的各种实施例,并且不描述在此公开的教导的每一个方面且不限制权利要求的范围。具体实施方式在此公开的特征和教导中的每一个特征和教导可单独使用或者结合其他的特征和教导使用以提供本系统和方法。参照附图描述单独地和组合地利用这些特征和教导中的许多特征和教导的代表性示例。虽然在此的详细描述向本领域的普通技术人员示出用于实践本教导的各个方面的进一步的细节,但是它不限制权利要求的范围。因此,在具体实施方式中公开的特征的组合是本教导的代表性示例并且可不需要以更广泛的意义来实践教导。如前所述,训练和运行CNN系统通常计算昂贵。图1示出特征图101和内核102的示例卷积操作以说明这样的操作的典型的计算成本。特征图101被表示为具有C数量的输入通道的三维矩阵结构,每个输入通道的宽度为W和H,其中,C、W和H为正整数。因此,特征图101具有大小W×H×C。内核102被表示为具有大小M×R×S×C的四维矩阵结构,其中,M、R、C和S也是正整数。特征图101与内核102的卷积产生具有大小W×H×M的卷积输出103(即,输出具有M个通道)。图1的卷积可被表示为并且如下实现:可通过重复使用乘法累加(MAC)单元的阵列来执行卷积。MAC是计算两个接收的值的乘积并且在寄存器中将结果进行累加的普通时序电路。根据以上实施方式,针对每个输出通道o,以及针对输出Y中的每个元素(w,h,o),需要总共R×S次乘法,使得每个输出通道所需的乘法的数量为W×H×R×S。此外,由于每个乘法之后紧跟累加,所以针对所有的M个输出通道,标准算法所需的MAC运算的数量等于M×C×W×H×R×S,M×C×W×H×R×S根据具有该大小的值可能是相当大的。因此,本系统和方法意在通过对特征图的元素、内核的元素或者二者的元素进行穿孔(即,设置为零)从而跳过某些计算来降低CNN系统中的卷积运算的计算成本和复杂度。换句话说,本系统和方法利用内核和/或特征图中的冗余来降低针对硬件实现的计算复杂度,其中,本系统和方法允许跳过一些MAC运算。跳过MAC运算相当于将乘法中的操作数中的一个设置为零。为了说明,将输入特征图中的值(例如,像素)认为是第一操作数,并将内核中的加权元素认为是第二操作数。根据本系统和方法的示例实施例,存在至少三种用于降低计算复杂度的方法:(1)通过将一些值覆写(overwriting)为零来对输入特征图进行穿孔;(2)通过将一些值覆写为零来对内核进行穿孔;或者(3)通过均将输入特征图和内核中的一些值覆写为零来对输入特征图和内核二者进行穿孔。特征图的规律穿孔与子采样类似,用以避免重要特征的损失。根据实施例,本系统和方法提供特征图的规律穿孔而不是内核的规律穿孔,以降低计算和实现复杂度。本系统和方法还可通过对具有规律穿孔的特征图的网络的微调来恢复原始网络的准确性。根据另一实施例,本系统和方法提供内核的规律穿孔以降低计算复杂度。本系统和方法还可通过对具有规律穿孔的内核的网络的微调来恢复原始网络的准确性。根据另一实施例,本系统和方法提供特征图和内核二者的规律穿孔以降低计算复杂度。本系统还可通过对具有规律穿孔的特征图和内核二者的网络的微调来恢复原始网络的准确性。图2示出对未穿孔的特征图与未穿孔的内核进行卷积的示例图。图3示出根据示例实施例的对穿孔的特征图与未穿孔的内核进行卷积的示例图。图4示出根据示例实施例的对未穿孔的特征图与穿孔的内核进行卷积的示例图。在图2至图4的示例中的每一个示例中,为了简化说本文档来自技高网...

【技术保护点】
1.一种卷积神经网络系统,所述卷积神经网络系统包括:一系列的神经网络层,被配置为:至少基于输入图像获得特征图;通过根据模式将特征图和内核中的至少一个选择的多个行中的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的所述多个行中的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔;对特征图与内核进行卷积,以产生第一卷积输出;至少基于第一卷积输出,产生输入图像的分类。

【技术特征摘要】
2017.04.18 US 62/486,626;2017.06.27 US 15/634,5371.一种卷积神经网络系统,所述卷积神经网络系统包括:一系列的神经网络层,被配置为:至少基于输入图像获得特征图;通过根据模式将特征图和内核中的至少一个选择的多个行中的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的所述多个行中的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔;对特征图与内核进行卷积,以产生第一卷积输出;至少基于第一卷积输出,产生输入图像的分类。2.根据权利要求1所述的卷积神经网络系统,其中,对特征图和内核中的所述至少一个选择进行穿孔的步骤包括:当((w+h)modulod)-s=0时,将在所述至少一个选择的在索引(w,h)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。3.根据权利要求1所述的卷积神经网络系统,其中,对特征图和内核中的所述至少一个选择进行穿孔的步骤包括:执行所述至少一个选择与遮蔽矩阵的点积,其中,当((w+h)modulod)-s=0时,在遮蔽矩阵的索引(w,h)的元素的值为零,其中,当((w+h)modulod)-s≠0时,在遮蔽矩阵的索引(w,h)的元素的值为一,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。4.根据权利要求2所述的卷积神经网络系统,其中,所述卷积神经网络系统还被配置为通过以下步骤微调所述一系列的神经网络层:对未穿孔的特征图与未穿孔的内核进行卷积,以产生第二卷积输出,根据将第一卷积输出与第二卷积输出进行比较的误差成本函数来评价第一卷积输出的准确性。5.根据权利要求4所述的卷积神经网络系统,其中,所述卷积神经网络系统还被配置为:通过根据移位值s的变化对所述至少一个选择进行穿孔来微调所述一系列的神经网络层,以确定最小化误差成本函数的最优移位值。6.根据权利要求4所述的卷积神经网络系统,其中,所述卷积神经网络系统还被配置为:通过根据穿孔间隔值d的变化对所述至少一个选择进行穿孔来微调所述一系列的神经网络层,以确定最小化误差成本函数的最优穿孔间隔值。7.根据权利要求4所述的卷积神经网络系统,其中,所述卷积神经网络系统还被配置为:通过经由针对内核的元素计算误差成本函数的梯度并最小化误差成本函数来执行反向传播以调节内核的元素的值,来微调所述一系列的神经网络层。8.根据权利要求7所述的卷积神经网络系统,其中,所述至少一个选择包括内核,并且执行反向传播的步骤仅调节通过穿孔而未被设置为零的内核的元素的值。9.根据权利要求1所述的卷积神经网络系统,其中,所述一系列的神经网络层还被配置为:使用所述至少一个选择计算最大值以及与最大值对应的最大位置,使用所述至少一个选择的未穿孔的形式计算在最大位置的值。10.根据权利要求1所述的卷积神经网络系统,其中,循环移位的模式在第三维度中进行移位,使得对特征图和内核中的所述至少一个选择进行穿孔的步骤包括:当((w+h+c)modulod)-s=0时,将在所述至少一个选择的索引(w,h,c)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w、h和c为元素的索引值,modulo表示取模运算。11....

【专利技术属性】
技术研发人员:穆斯塔法·艾尔可哈米李正元崔柳真
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国,KR

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1