CN108734269B - 产生输入图像的分类的卷积神经网络及计算机实现方法 - Google Patents

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

Info

Publication number
CN108734269B
CN108734269B CN201711090079.1A CN201711090079A CN108734269B CN 108734269 B CN108734269 B CN 108734269B CN 201711090079 A CN201711090079 A CN 201711090079A CN 108734269 B CN108734269 B CN 108734269B
Authority
CN
China
Prior art keywords
kernel
feature map
neural network
value
puncturing
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
Application number
CN201711090079.1A
Other languages
English (en)
Other versions
CN108734269A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN108734269A publication Critical patent/CN108734269A/zh
Application granted granted Critical
Publication of CN108734269B publication Critical patent/CN108734269B/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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4818Threshold devices
    • G06F2207/4824Neural 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

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 Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Image Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)

Abstract

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

Description

产生输入图像的分类的卷积神经网络及计算机实现方法
本申请要求于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的示例中的每一个示例中,为了简化说明,使用二维特征图和二维内核;然而,对特征图和/或内核进行穿孔的构思和优点可应用于各种维度的特征图和内核。
如图2所示,对未穿孔的特征图201与未穿孔的内核202进行卷积需要36次乘法运算。相比之下,如图3和图4所示,对穿孔的特征图301与未穿孔的内核302进行卷积仅需要18次乘法运算,类似地,对未穿孔的特征图401与穿孔的内核402进行卷积仅需要18次乘法运算。因此,在图3和图4的示例中的每一个示例中,在执行卷积之前对特征图和内核中的至少一个进行穿孔显著地降低了卷积运算的计算复杂度。
卷积输出(例如,203、303和403)可用作输入到后续的神经网络层的特征图或者可用于获得输入到后续的神经网络层的特征图。例如,在图2至图4的情况下,在卷积输出(例如,203、303和403)被用作输入到后续的神经网络层的特征图之前,可将2×2最大池化层应用于卷积输出以减小它们的大小。2×2最大池化层通过在卷积输出的局部2×2子集中选择最大值来减小卷积输出的大小。根据实施例,在已经使用穿孔的特征图识别最大值的位置之后,可重新计算在该位置的实际值(即,使用未穿孔的特征图的值)以降低最大池化的计算复杂度。
根据本系统和方法的实施例,CNN系统可基于特征图和/或内核的元素的索引对特征图和/或内核进行穿孔。例如,如果由P_X表示穿孔的输入特征图中的索引的列表以及由P_K表示穿孔的内核中的索引的列表,则卷积运算可被更新如下:
如果P_X表示特征图的索引的A%,则可通过对特征图进行穿孔来节省大约A%的乘法。类似地,如果P_K表示内核的索引的B%,则可通过对内核进行穿孔来节省另外的B%的MAC。然而,为了速度,MAC运算可被并行或批量执行,其中,每个处理器可处理设定数量的MAC。因此,对特征图和/或内核进行随机穿孔可能无法使用批量处理提供计算复杂度的实际降低。
对于一些卷积神经网络,内核可在输入特征图上以一定步长进行操作。这相当于在输入特征图上跳过一些卷积运算。例如,使用步长p,算法可被修改如下,并且复杂度(即,MAC运算的数量)可被降低到M×C×W×H×R×S/p^2。
如果步长大于1,则计算复杂度降低p^2。在一些情况下,例如,可通过设计来实现步长p,以达到特定的接收域大小并且不一定降低复杂度。
根据实施例,不论步长为1还是更大,本系统和方法提供特征图的规律穿孔以降低计算复杂度。考虑特征图掩膜T,如图5所示,特征图掩膜T被定义为使得使用虚线框内指示的模式以规律的方式对d个元素行式外的一个元素行式进行穿孔。可通过使用点积运算将掩膜T应用到特征图X来对特征图X进行穿孔。可选择地,可使用下面的实施方式对特征图X进行穿孔,其中,穿孔间隔d=4以及由移位值s=2表示穿孔掩膜的循环移位s:
类似地,可使用类似的过程如下实现第o内核的规律的穿孔:
如果内核大小S>=d并且R>=d,则对于特征图上的内核的每一个步长,计算复杂度降低约1/d。例如,如上面的示例所示,考虑S=R=d=4。针对这个步长p所需的MAC的数量为12×C。因此,这个卷积层所需的总的MAC的数量等于(d-1)/d×M×C×W×H×R×S/p^2。
根据实施例,同一掩膜被应用到所有的C个输入特征图。并行处理的一种形式是在同一(w,h)位置批量处理MAC。下面的实施方式检查掩膜T以确定是否应针对特定位置(w+x,h+y)执行MAC运算:
通过使用规律穿孔模式对特征图进行穿孔,CNN系统的处理器能够在宽度和高度维度中每d个增量跳过C个MAC运算,而不是检查位置T[w+x][h+y]是否被遮蔽。因此,利用规律穿孔模式将会导致并行(批量)处理器所需的时钟周期实际减少1/d。
在一些情况下,通过目测或者通过实验或者通过测量特征图的绝对值之和,可确定在每一层的特定特征图太重要而不能跳过。在这种情况下,针对这个特征图,可完全跳过遮蔽。在对C个特征图批量处理之后,由于非遮蔽的特征图导致的剩余的MAC运算可被处理并添加到在输出位置[w][h][o]的和。这样的运算也可被并行处理。
可看出,在将会实现批量处理计算复杂度的相同实际减少的考虑之下,针对卷积层上面存在掩膜T的d个可能的循环移位。根据实施例,本系统和方法测试已经使用所有的d个不同的移位训练的CNN的准确性,而所有的剩余的层保持不变。然后,选择实现最佳准确性的移位。
例如,当将所有的行循环移位cyclic_idx时,将T(cyclic_idx)作为遮蔽矩阵。根据实施例,本系统和方法可如下以迭代的逐层方式在每一层选择最佳遮蔽矩阵,其中,d_layer_idx为在由layer_idx索引的层选择的d的值。
在第一次迭代,第一层的最佳循环移位可不考虑在连续的层执行的任何遮蔽。然而,在后续的迭代中,第一层的最佳循环移位可考虑已经针对其他连续的层选择的所有的掩膜。如果整体网络准确性没有提高,则可停止迭代。
通常在选择穿孔间隔d中存在折衷。例如,更大的d值意味着计算复杂度降低的更少,但是由于对特征图穿孔更少从而具有更好的准确性。不同的CNN层可具有不同的d值,其中,d=1意味着计算复杂度降低最多。可在每一层从m个不同的d值中选择最优的d值之后进行迭代的过程(诸如,上面描述的一个迭代的过程)。也就是说,在每一层,可假设m个不同的遮蔽矩阵的第一循环移位来测试m个不同的遮蔽矩阵。然后,一旦针对每一层选择d值(d_layer_idx),则可通过以上过程针对每一层选出最优循环移位(例如,最小化误差成本函数的循环移位)。
即使在每一层选择最佳循环移位之后,与具有未穿孔的特征图的原始网络相比,也可能存在准确性的损失。根据实施例,本系统和方法通过在每一个遮蔽的特征图之后增加遮蔽层重新定义网络层以恢复原始的准确性。在可用于降低计算复杂度方面,遮蔽层与池化层类似。然而,与池化层相比,遮蔽层不会减小特征图大小;而是执行特征图和/或内核与掩膜(例如,如先前讨论的掩膜T)的点积并且保持特征图和/或内核的大小不变,同时用零覆写特征图和/或内核元素的一些值。然后,可通过反向传播微调网络,其中,梯度被计算并用于修改内核值或权重以减少误差成本函数或等同地增加客观准确性。
根据移位s、内核大小R×S,可在步长p上施加额外条件以确保所有的内核权重被激活。例如,如果特征图和内核二者具有彼此相反的穿孔模式,d=2,shift=1以及另一个shift=2,卷积的步长p=2,则来自卷积的输出将总为零。因此,根据实施例,本系统和方法可针对特征图和内核的穿孔间隔d设置不同的值以确保来自卷积的输出不为零。
根据本系统和方法的实施例,可如下修改用于第o输出特征图的批量卷积处理器以跳过所有的MAC运算,其中,内核操作数为零:
根据实施例,通过条件‘if mod(x+y,d)-s=0’,可将规律穿孔模式(还被称为权重修剪模式)设置为在第三维度中循环,并且CNN系统的批量处理器可考虑第三维度中的循环移位。根据另一个实施例,在‘if mod(x+y,d)-s≠0’的情况下,第三维度中的所有的内核可使用如上的同一穿孔模式。
根据实施例,为了针对每一层中的内核选择最佳掩膜,本系统和方法可在穿孔之后选择导致内核的最大均方根值的掩膜。本系统和方法可在将穿孔模式约束为在所有的内核大小中为规律的同时,有效地选择具有最小权重值的内核的穿孔位置。
在对内核穿孔之后,为了恢复原始的准确性,可在对每一个内核施加已经选择的规律的穿孔模式的同时,通过训练示例来微调网络以最小化误差成本函数。因此,微调可仅改变在还没有被规律的模式遮蔽的内核中的权重值,并使穿孔的位置为零。
根据实施例,本系统和方法对特征图和内核二者进行规律地穿孔。因此,在批量卷积处理期间,如果特征图和内核二者均为非零(即,if[mod(x+y,d_kernel)-2≠0]AND[T[w+x][h+y]≠0]),则仅可执行批量操作,这可导致计算复杂度的复合降低。根据实施例,重新训练具有微调的内核穿孔和特征图穿孔二者的网络提高穿孔的网络的准确性。
根据实施例,包括执行对特征图进行穿孔(设置为零)和对内核进行穿孔中的一个或多个的本系统和方法降低CNN的计算复杂度,其中,对特征图进行穿孔和对内核进行穿孔的包括根据预定模式将一行的一个或多个元素设置为零并且以预定间隔对该行进行循环移位。本系统和方法还实现了CNN中的遮蔽层以允许微调穿孔的特征图并恢复准确性。
根据实施例,可通过用于产生由卷积神经网络(CNN)系统接收的输入图像的分类的一个或多个计算机实现CNN系统。CNN系统可包括一系列的神经网络层,诸如,图6中示出的一系列的神经网络层。例如,神经网络层可包括遮蔽层601、第一卷积层602、最大池化层603、第二卷积层604和其他层。
CNN系统的一系列的神经网络层和/或其他元素可被配置为执行图7的流程图中概述的操作。CNN系统至少基于输入图像获得特征图(701)。CNN系统通过根据模式将特征图和内核中的至少一个选择的一行的一个或多个元素的值设置为零,并且将模式每行循环移位预定间隔以根据循环移位的模式将所述至少一个选择的剩余的行的一个或多个元素的值设置为零,来对所述至少一个选择进行穿孔(702)。CNN系统对特征图与内核进行卷积以产生第一卷积输出(703)。CNN系统至少基于第一卷积输出产生输入图像的分类(704)。
可在图3的穿孔的特征图301的上下文中解释702的处理。穿孔的特征图301的第一行根据模式“_0_0”将其特定元素设置为零。穿孔的特征图301的第二行也将其特定元素设置为零,但是是根据模式“_0_0”的循环移位版本,其中,当模式“_0_0”被循环移位一的预定间隔时,循环移位版本为“0_0_”。通过在保持相同方向(即,左或者右)的移位的同时对模式进行不断移位,以相同的方式对剩余的行(第三行和第四行)进行穿孔。
根据实施例,对特征图和内核中的至少一个选择进行穿孔的步骤包括:当((w+h)modulo d)–s=0时,将在所述至少一个选择的索引(w,h)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。
根据实施例,对特征图和内核中的至少一个选择进行穿孔的步骤包括:执行所述至少一个选择与遮蔽矩阵的点积,其中,当((w+h)modulo d)–s=0时,在遮蔽矩阵的索引(w,h)的元素的值为零;其中,当((w+h)modulo d)–s≠0时,在遮蔽矩阵的索引(w,h)的元素的值为一,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。
根据实施例,CNN系统还可被配置为通过以下步骤微调所述一系列的神经网络层:将未穿孔的特征图与未穿孔的内核进行卷积,以产生第二卷积输出;根据将第一卷积输出和第二卷积输出进行比较的误差成本函数来评价第一卷积输出的准确性。
根据实施例,CNN系统还可被配置为:通过根据移位值s的变化对所述至少一个选择进行穿孔来微调所述一系列的神经网络层,以确定最小化误差成本函数的最优移位值。
根据实施例,CNN系统还可被配置为:通过根据穿孔间隔值d的变化对至少一个选择进行穿孔来微调神经网络层的序列,以确定最小化误差成本函数的最优穿孔间隔值。
根据实施例,CNN系统还可被配置为:通过经由针对内核的元素计算误差成本函数的梯度并最小化误差成本函数来执行反向传播以调节内核的元素的值,来微调所述一系列的神经网络层。如果所述至少一个选择包括内核,则执行反向传播的步骤可仅调节通过穿孔而未被设置为零的内核的元素的值。
根据实施例,如果所述至少一个选择包括特征图和内核二者(即,特征图和内核二者均被穿孔),则所述一系列的神经网络层可被配置为使用不同的穿孔间隔值分别对特征图和内核进行穿孔。
根据实施例,所述一系列的神经网络层还可被配置为:使用所述至少一个选择计算最大值以及与最大值对应的最大位置,并且使用所述至少一个选择的未穿孔形式计算在最大位置的值。
根据实施例,循环移位模式可在第三维度中进行移位,使得对特征图和内核中的至少一个选择进行穿孔的步骤包括:当((w+h+c)modulo d)–s=0时,将在所述至少一个选择的索引(w,h,c)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w、h和c为元素的索引值,modulo表示取模运算。
可使用硬件元件、软件元件或二者的组合来实现本系统和方法的各种实施例。硬件元件的示例可包括处理器、微处理器、电路、电路元件(例如,晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑装置(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片组等。软件的示例可包括软件组件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、进程、子进程、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号或它们的任意组合。确定是否使用硬件元件和/或软件元件来实现实施例可根据任意数量的因素(诸如,所期望的计算速率、功率电平、热容差、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度及其他设计或性能约束)而变化。
可通过表示处理器内的各种逻辑的存储在机器可读介质上的代表性指令来实现至少一个实施例的一个或多个方面,其中,当被机器读取时,代表性指令使得机器制造用于行在此描述的技术的逻辑。称为“IP核”的这种表示可被存储在有形的机器可读介质上,并被供应给各种客户或制造设备以载入到实际制造逻辑或处理器的制造机器中。
虽然已经参照各种实施方式描述在此阐述的特定特征,但是该描述并不旨在被解释为限制性的意义。因此,对于本公开所属的领域中的技术人员将清楚的是,在此描述的实施方式以及其他实施方式被认为在本公开的范围内。

Claims (20)

1.一种卷积神经网络系统,所述卷积神经网络系统包括:
一系列的神经网络层,被配置为:
至少基于输入图像获得特征图;
通过以下步骤对特征图和内核中的至少一个进行穿孔:根据模式将特征图和内核中的所述至少一个的多个行中的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将特征图和内核中的所述至少一个的所述多个行中的剩余的行的一个或多个元素的值设置为零;
对特征图与内核进行卷积,以产生第一卷积输出;
至少基于第一卷积输出,产生输入图像的分类。
2.根据权利要求1所述的卷积神经网络系统,其中,对特征图和内核中的所述至少一个进行穿孔的步骤包括:当((w+h)modulod)-s=0时,将在特征图和内核中的所述至少一个的在索引(w,h)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。
3.根据权利要求1所述的卷积神经网络系统,其中,对特征图和内核中的所述至少一个进行穿孔的步骤包括:执行特征图和内核中的所述至少一个与遮蔽矩阵的点积,
其中,当((w+h)modulo d)-s=0时,在遮蔽矩阵的索引(w,h)的元素的值为零,
其中,当((w+h)modulo d)-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.一种产生输入图像的分类的计算机实现方法,所述方法由通过一个或多个计算机实现的卷积神经网络系统执行,所述卷积神经网络系统包括一系列的神经网络层,所述方法包括:
由一系列的神经网络层,至少基于输入图像获得特征图;
由一系列的神经网络层,通过以下步骤对特征图和内核中的至少一个进行穿孔:根据模式将特征图和内核中的至少一个的多个行中的一行的一个或多个元素的值设置为零,并且将所述模式每行循环移位预定间隔以根据循环移位的模式将特征图和内核中的所述至少一个的所述多个行中的剩余的行的一个或多个元素的值设置为零;
由一系列的神经网络层,对特征图与内核进行卷积以产生第一卷积输出;
由一系列的神经网络层,至少基于第一卷积输出产生输入图像的分类。
12.根据权利要求11所述的产生输入图像的分类的计算机实现方法,其中,对特征图和内核中的所述至少一个进行穿孔的步骤包括:当((w+h)modulod)-s=0时,将在特征图和内核中的所述至少一个的索引(w,h)的元素的值设置为零,其中,s为整数的移位值,d为整数的大于1的穿孔间隔值;w和h为元素的索引值,modulo表示取模运算。
13.根据权利要求11所述的产生输入图像的分类的计算机实现方法,其中,对特征图和内核中的所述至少一个进行穿孔的步骤包括:执行特征图和内核中的所述至少一个与遮蔽矩阵的点积,
其中,当((w+h)modulod)-s=0时,在遮蔽矩阵的在索引(w,h)的元素的值为零,
其中,当((w+h)modulod)-s≠0时,在遮蔽矩阵的在索引(w,h)的元素的值为一,
其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w和h为元素的索引值,modulo表示取模运算。
14.根据权利要求12所述的产生输入图像的分类的计算机实现方法,还包括通过以下步骤微调所述一系列的神经网络层:
对未穿孔的特征图与未穿孔的内核进行卷积以产生第二卷积输出,
根据将第一卷积输出与第二卷积输出进行比较的误差成本函数,评价第一卷积输出的准确性。
15.根据权利要求14所述的产生输入图像的分类的计算机实现方法,还包括:通过根据移位值s的变化对特征图和内核中的所述至少一个进行穿孔来微调所述一系列的神经网络层,以确定最小化误差成本函数的最优移位值。
16.根据权利要求14所述的产生输入图像的分类的计算机实现方法,还包括:通过根据穿孔间隔值d的变化对特征图和内核中的所述至少一个进行穿孔来微调所述一系列的神经网络层,以确定最小化误差成本函数的最优穿孔间隔值。
17.根据权利要求14所述的产生输入图像的分类的计算机实现方法,还包括:通过经由针对内核的元素计算误差成本函数的梯度并最小化误差成本函数来执行反向传播以调节内核的元素的值,来微调所述一系列的神经网络层。
18.根据权利要求17所述的产生输入图像的分类的计算机实现方法,其中,特征图和内核中的所述至少一个包括内核,并且执行反向传播的步骤仅调节通过穿孔而未被设置为零的内核的元素的值。
19.根据权利要求11所述的产生输入图像的分类的计算机实现方法,还包括:
使用特征图和内核中的所述至少一个计算最大值以及与最大值对应的最大位置,
使用特征图和内核中的所述至少一个的未穿孔的形式计算在最大位置的值。
20.根据权利要求11所述的产生输入图像的分类的计算机实现方法,其中,循环移位的模式在第三维度中进行移位,使得对特征图和内核中的所述至少一个进行穿孔的步骤包括:当((w+h+c)modulod)-s=0时,将在特征图和内核中的所述至少一个的索引(w,h,c)的元素的值设置为零,
其中,s为整数的移位值,d为整数的大于1的穿孔间隔值,w、h和c为元素的索引值,modulo表示取模运算。
CN201711090079.1A 2017-04-18 2017-11-08 产生输入图像的分类的卷积神经网络及计算机实现方法 Active CN108734269B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762486626P 2017-04-18 2017-04-18
US62/486,626 2017-04-18
US15/634,537 US11164071B2 (en) 2017-04-18 2017-06-27 Method and apparatus for reducing computational complexity of convolutional neural networks
US15/634,537 2017-06-27

Publications (2)

Publication Number Publication Date
CN108734269A CN108734269A (zh) 2018-11-02
CN108734269B true CN108734269B (zh) 2024-01-09

Family

ID=63790163

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711090079.1A Active CN108734269B (zh) 2017-04-18 2017-11-08 产生输入图像的分类的卷积神经网络及计算机实现方法

Country Status (4)

Country Link
US (2) US11164071B2 (zh)
KR (1) KR102415576B1 (zh)
CN (1) CN108734269B (zh)
TW (1) TWI754682B (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10360163B2 (en) 2016-10-27 2019-07-23 Google Llc Exploiting input data sparsity in neural network compute units
US9959498B1 (en) 2016-10-27 2018-05-01 Google Llc Neural network instruction set architecture
US10175980B2 (en) * 2016-10-27 2019-01-08 Google Llc Neural network compute tile
US11164071B2 (en) * 2017-04-18 2021-11-02 Samsung Electronics Co., Ltd. Method and apparatus for reducing computational complexity of convolutional neural networks
KR102548718B1 (ko) * 2017-06-07 2023-06-28 삼성전자주식회사 전자 장치 및 그 제어 방법
CN109684901B (zh) * 2017-10-19 2023-06-06 富士通株式会社 图像处理装置和图像处理方法
US20190295228A1 (en) * 2018-03-21 2019-09-26 Nvidia Corporation Image in-painting for irregular holes using partial convolutions
TWI717655B (zh) * 2018-11-09 2021-02-01 財團法人資訊工業策進會 適應多物件尺寸之特徵決定裝置及方法
US10878292B2 (en) * 2018-12-07 2020-12-29 Goodrich Corporation Automatic generation of a new class in a classification system
KR102178932B1 (ko) * 2018-12-19 2020-11-18 고려대학교 산학협력단 출력 특징 맵의 0에 대한 연산을 스킵할 수 있는 합성곱 신경망의 연산 장치 및 그 동작 방법
EP3678088B1 (en) * 2019-01-03 2023-08-09 Samsung Electronics Co., Ltd. Method and system of convolution in neural network with variable dilation rate
US10410352B1 (en) * 2019-01-25 2019-09-10 StradVision, Inc. Learning method and learning device for improving segmentation performance to be used for detecting events including pedestrian event, vehicle event, falling event and fallen event using edge loss and test method and test device using the same
US10402977B1 (en) * 2019-01-25 2019-09-03 StradVision, Inc. Learning method and learning device for improving segmentation performance in road obstacle detection required to satisfy level 4 and level 5 of autonomous vehicles using laplacian pyramid network and testing method and testing device using the same
US11410016B2 (en) 2019-04-26 2022-08-09 Alibaba Group Holding Limited Selective performance of deterministic computations for neural networks
US11593637B2 (en) 2019-04-30 2023-02-28 Samsung Electronics Co., Ltd. Convolution streaming engine for deep neural networks
JP2021047711A (ja) * 2019-09-19 2021-03-25 キオクシア株式会社 演算装置、演算方法、及び学習方法
KR102442988B1 (ko) * 2020-07-29 2022-09-13 백석대학교산학협력단 Cnn 학습 방식을 이용한 사용자 경험 기반 취향관계망 생성 시스템
CN113435309B (zh) * 2021-06-24 2022-04-26 农业农村部南京农业机械化研究所 一种基于行向量网格分类的水稻秧苗行识别方法
CN113537482B (zh) * 2021-09-14 2021-12-28 绍兴埃瓦科技有限公司 神经网络计算模块、方法和通信设备
KR20230115765A (ko) * 2022-01-27 2023-08-03 한국과학기술연구원 인공 지능을 이용하여 의료 영상에서 병변을 판단하는 방법 및 이를 수행하는 인공 지능 신경망 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794527A (zh) * 2014-01-20 2015-07-22 富士通株式会社 基于卷积神经网络的分类模型构建方法和设备
CN105528638A (zh) * 2016-01-22 2016-04-27 沈阳工业大学 灰色关联分析法确定卷积神经网络隐层特征图个数的方法
WO2016090520A1 (en) * 2014-12-10 2016-06-16 Xiaogang Wang A method and a system for image classification
CN105701507A (zh) * 2016-01-13 2016-06-22 吉林大学 基于动态随机池化卷积神经网络的图像分类方法
CN106033594A (zh) * 2015-03-11 2016-10-19 日本电气株式会社 基于卷积神经网络所获得特征的空间信息恢复方法及装置

Family Cites Families (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7747070B2 (en) * 2005-08-31 2010-06-29 Microsoft Corporation Training convolutional neural networks on graphics processing units
US9811775B2 (en) * 2012-12-24 2017-11-07 Google Inc. Parallelizing neural networks during training
US9202144B2 (en) * 2013-10-30 2015-12-01 Nec Laboratories America, Inc. Regionlets with shift invariant neural patterns for object detection
US9274036B2 (en) 2013-12-13 2016-03-01 King Fahd University Of Petroleum And Minerals Method and apparatus for characterizing composite materials using an artificial neural network
US9225879B2 (en) * 2013-12-27 2015-12-29 TCL Research America Inc. Method and apparatus for video sequential alignment
US10417554B2 (en) 2014-05-22 2019-09-17 Lee J. Scheffler Methods and systems for neural and cognitive processing
FR3025344B1 (fr) * 2014-08-28 2017-11-24 Commissariat Energie Atomique Reseau de neurones convolutionnels
US10650508B2 (en) * 2014-12-03 2020-05-12 Kla-Tencor Corporation Automatic defect classification without sampling and feature selection
AU2014277853A1 (en) * 2014-12-22 2016-07-07 Canon Kabushiki Kaisha Object re-identification using self-dissimilarity
US9576224B2 (en) * 2014-12-31 2017-02-21 TCL Research America Inc. Robust error correction with multi-model representation for face recognition
US10223635B2 (en) * 2015-01-22 2019-03-05 Qualcomm Incorporated Model compression and fine-tuning
ES2872724T3 (es) * 2015-02-19 2021-11-02 Magic Pony Tech Limited Mejora de los datos visuales mediante el uso de redes neuronales actualizadas
US10410118B2 (en) 2015-03-13 2019-09-10 Deep Genomics Incorporated System and method for training neural networks
GB201603144D0 (en) * 2016-02-23 2016-04-06 Magic Pony Technology Ltd Training end-to-end video processes
US9514391B2 (en) * 2015-04-20 2016-12-06 Xerox Corporation Fisher vectors meet neural networks: a hybrid visual classification architecture
US9786036B2 (en) * 2015-04-28 2017-10-10 Qualcomm Incorporated Reducing image resolution in deep convolutional networks
US10460230B2 (en) 2015-06-04 2019-10-29 Samsung Electronics Co., Ltd. Reducing computations in a neural network
NL2015087B1 (en) * 2015-06-05 2016-09-09 Univ Amsterdam Deep receptive field networks.
US9430697B1 (en) * 2015-07-03 2016-08-30 TCL Research America Inc. Method and system for face recognition using deep collaborative representation-based classification
US11244225B2 (en) 2015-07-10 2022-02-08 Samsung Electronics Co., Ltd. Neural network processor configurable using macro instructions
US9805305B2 (en) 2015-08-07 2017-10-31 Yahoo Holdings, Inc. Boosted deep convolutional neural networks (CNNs)
US11074492B2 (en) * 2015-10-07 2021-07-27 Altera Corporation Method and apparatus for performing different types of convolution operations with the same processing elements
US10380479B2 (en) * 2015-10-08 2019-08-13 International Business Machines Corporation Acceleration of convolutional neural network training using stochastic perforation
US10115032B2 (en) * 2015-11-04 2018-10-30 Nec Corporation Universal correspondence network
US10534994B1 (en) * 2015-11-11 2020-01-14 Cadence Design Systems, Inc. System and method for hyper-parameter analysis for multi-layer computational structures
CN105550699B (zh) * 2015-12-08 2019-02-12 北京工业大学 一种基于cnn融合时空显著信息的视频识别分类方法
US11170294B2 (en) * 2016-01-07 2021-11-09 Intel Corporation Hardware accelerated machine learning
US10402700B2 (en) * 2016-01-25 2019-09-03 Deepmind Technologies Limited Generating images using neural networks
WO2017129325A1 (en) * 2016-01-29 2017-08-03 Fotonation Limited A convolutional neural network
WO2017132830A1 (en) * 2016-02-02 2017-08-10 Xiaogang Wang Methods and systems for cnn network adaption and object online tracking
US9916522B2 (en) * 2016-03-11 2018-03-13 Kabushiki Kaisha Toshiba Training constrained deconvolutional networks for road scene semantic segmentation
US10565207B2 (en) * 2016-04-12 2020-02-18 Hsilin Huang Method, system and program product for mask-based compression of a sparse matrix
US10311342B1 (en) * 2016-04-14 2019-06-04 XNOR.ai, Inc. System and methods for efficiently implementing a convolutional neural network incorporating binarized filter and convolution operation for performing image classification
FR3050846B1 (fr) * 2016-04-27 2019-05-03 Commissariat A L'energie Atomique Et Aux Energies Alternatives Dispositif et procede de distribution de donnees de convolution d'un reseau de neurones convolutionnel
AU2016203619A1 (en) * 2016-05-31 2017-12-14 Canon Kabushiki Kaisha Layer-based operations scheduling to optimise memory for CNN applications
US10462445B2 (en) * 2016-07-19 2019-10-29 Fotonation Limited Systems and methods for estimating and refining depth maps
US10242311B2 (en) * 2016-08-11 2019-03-26 Vivante Corporation Zero coefficient skipping convolution neural network engine
US10997496B2 (en) * 2016-08-11 2021-05-04 Nvidia Corporation Sparse convolutional neural network accelerator
US10621486B2 (en) * 2016-08-12 2020-04-14 Beijing Deephi Intelligent Technology Co., Ltd. Method for optimizing an artificial neural network (ANN)
US10509952B2 (en) * 2016-08-30 2019-12-17 Irida Labs S.A. Fast, embedded, hybrid video face recognition system
US10019655B2 (en) * 2016-08-31 2018-07-10 Adobe Systems Incorporated Deep-learning network architecture for object detection
IL281321B (en) * 2016-10-04 2022-07-01 Magic Leap Inc Efficient data layouts for convolutional neural networks
US10339445B2 (en) * 2016-10-10 2019-07-02 Gyrfalcon Technology Inc. Implementation of ResNet in a CNN based digital integrated circuit
US10360470B2 (en) * 2016-10-10 2019-07-23 Gyrfalcon Technology Inc. Implementation of MobileNet in a CNN based digital integrated circuit
WO2018073975A1 (en) * 2016-10-21 2018-04-26 Nec Corporation Improved sparse convolution neural network
US9779786B1 (en) * 2016-10-26 2017-10-03 Xilinx, Inc. Tensor operations and acceleration
US11003985B2 (en) * 2016-11-07 2021-05-11 Electronics And Telecommunications Research Institute Convolutional neural network system and operation method thereof
US11157814B2 (en) * 2016-11-15 2021-10-26 Google Llc Efficient convolutional neural networks and techniques to reduce associated computational costs
US11321613B2 (en) * 2016-11-17 2022-05-03 Irida Labs S.A. Parsimonious inference on convolutional neural networks
US10985777B2 (en) * 2016-12-09 2021-04-20 William Marsh Rice University Signal recovery via deep convolutional networks
US20180164866A1 (en) * 2016-12-13 2018-06-14 Qualcomm Incorporated Low-power architecture for sparse neural network
US20180181864A1 (en) * 2016-12-27 2018-06-28 Texas Instruments Incorporated Sparsified Training of Convolutional Neural Networks
US10482155B2 (en) * 2016-12-30 2019-11-19 Intel Corporation Winograd algorithm on a matrix processing architecture
EP3998539A1 (en) * 2016-12-30 2022-05-18 INTEL Corporation Deep learning hardware
US10140574B2 (en) * 2016-12-31 2018-11-27 Via Alliance Semiconductor Co., Ltd Neural network unit with segmentable array width rotator and re-shapeable weight memory to match segment width to provide common weights to multiple rotator segments
US20180189641A1 (en) * 2017-01-04 2018-07-05 Stmicroelectronics S.R.L. Hardware accelerator engine
KR102457463B1 (ko) * 2017-01-16 2022-10-21 한국전자통신연구원 희소 파라미터를 사용하는 압축 신경망 시스템 및 그것의 설계 방법
WO2018133034A1 (en) * 2017-01-20 2018-07-26 Intel Corporation Dynamic emotion recognition in unconstrained scenarios
IT201700008949A1 (it) * 2017-01-27 2018-07-27 St Microelectronics Srl Procedimento di funzionamento di reti neurali, rete, apparecchiatura e prodotto informatico corrispondenti
US10546237B2 (en) * 2017-03-30 2020-01-28 Atomwise Inc. Systems and methods for correcting error in a first classifier by evaluating classifier output in parallel
US20180285734A1 (en) * 2017-04-01 2018-10-04 Intel Corporation Neural network calibration mechanism
US10387298B2 (en) * 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
US10346944B2 (en) * 2017-04-09 2019-07-09 Intel Corporation Machine learning sparse computation mechanism
US10795836B2 (en) * 2017-04-17 2020-10-06 Microsoft Technology Licensing, Llc Data processing performance enhancement for neural networks using a virtualized data iterator
US11164071B2 (en) * 2017-04-18 2021-11-02 Samsung Electronics Co., Ltd. Method and apparatus for reducing computational complexity of convolutional neural networks
US10691975B2 (en) * 2017-07-19 2020-06-23 XNOR.ai, Inc. Lookup-based convolutional neural network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104794527A (zh) * 2014-01-20 2015-07-22 富士通株式会社 基于卷积神经网络的分类模型构建方法和设备
WO2016090520A1 (en) * 2014-12-10 2016-06-16 Xiaogang Wang A method and a system for image classification
CN106033594A (zh) * 2015-03-11 2016-10-19 日本电气株式会社 基于卷积神经网络所获得特征的空间信息恢复方法及装置
CN105701507A (zh) * 2016-01-13 2016-06-22 吉林大学 基于动态随机池化卷积神经网络的图像分类方法
CN105528638A (zh) * 2016-01-22 2016-04-27 沈阳工业大学 灰色关联分析法确定卷积神经网络隐层特征图个数的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Sajid Anwar.Structured Pruning of Deep Convolutional Neural Networks.《ACM Journal on Emerging Technologies in Comouting Systems》.2017,第2章. *
Wenzhe Shi.Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network.《2016 IEEE Conference on Computer Vision and Pattern Recognition》.2016,摘要,第1-4节. *

Also Published As

Publication number Publication date
US20180300624A1 (en) 2018-10-18
US11164071B2 (en) 2021-11-02
KR20180117017A (ko) 2018-10-26
KR102415576B1 (ko) 2022-06-30
TW201839675A (zh) 2018-11-01
TWI754682B (zh) 2022-02-11
CN108734269A (zh) 2018-11-02
US20210406647A1 (en) 2021-12-30

Similar Documents

Publication Publication Date Title
CN108734269B (zh) 产生输入图像的分类的卷积神经网络及计算机实现方法
US20220383067A1 (en) Buffer Addressing for a Convolutional Neural Network
EP3480689B1 (en) Hierarchical mantissa bit length selection for hardware implementation of deep neural network
EP4033379A1 (en) Implementing dilated convolution in hardware
CN110109646A (zh) 数据处理方法、装置和乘加器及存储介质
CN111709415B (zh) 目标检测方法、装置、计算机设备和存储介质
CN116075821A (zh) 表格卷积和加速
EP4060564A1 (en) Methods and systems for generating the gradients of a loss function with respect to the weights of a convolution layer
KR101989793B1 (ko) 컨볼루션 신경망을 위한 가속기 인식 가지 치기 방법 및 기록 매체
CN116109481A (zh) 缩放方法、芯片、存储介质及电子设备
CN114037054A (zh) 一种数据处理方法、装置、芯片、设备及介质
GB2585810A (en) Buffer addressing for a convolutional neural network
CN117456562B (zh) 姿态估计方法及装置
EP4345691A1 (en) Methods and systems for performing channel equalisation on a convolution layer in a neural network
EP4361892A1 (en) Methods and systems for performing a per channel affine transformation using a neural network accelerator
US20240192918A1 (en) Sorting
EP4361890A1 (en) Implementing a scatter function on a neural network accelerator
CN117252244A (zh) 基于注意力的神经网络的硬件实施
Karthik et al. Design and implementation of adaptive Gaussian filters for the removal of salt and pepper noise on FPGA
CN106411324A (zh) 信息处理方法及存储设备
CN117952156A (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