CN113762472A - 一种神经网络的指令序列生成方法及装置 - Google Patents
一种神经网络的指令序列生成方法及装置 Download PDFInfo
- Publication number
- CN113762472A CN113762472A CN202110975892.7A CN202110975892A CN113762472A CN 113762472 A CN113762472 A CN 113762472A CN 202110975892 A CN202110975892 A CN 202110975892A CN 113762472 A CN113762472 A CN 113762472A
- Authority
- CN
- China
- Prior art keywords
- feature map
- convolution
- convolution kernel
- 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.)
- Pending
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 91
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000011176 pooling Methods 0.000 claims abstract description 128
- 238000010586 diagram Methods 0.000 claims abstract description 39
- 238000004590 computer program Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 description 17
- 230000008569 process Effects 0.000 description 13
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000003042 antagnostic effect Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7817—Specially adapted for signal processing, e.g. Harvard architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Signal Processing (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Neurology (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种神经网络的指令序列生成方法及装置,首先根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度。再根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度。然后根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列。可见,本发明根据全局平均池化层的特征图维度确定深度可分离卷积的特征图维度和卷积核的维度,并生成对应的指令序列。故在遇到全局平均池化层的操作时可执行上述指令序列能够使用深度可分离卷积来替代实现全局平均池化层的操作,进而避免改变芯片硬件结构。
Description
技术领域
本申请涉及人工智能技术领域,尤其涉及一种神经网络的指令序列生成方法及装置。
背景技术
通常,大部分的神经网络中会用到池化操作。但是对于芯片来说,支持的池化操作越多,由此带来的芯片面积、功耗的代价也就越大。若在本身不支持池化操作的芯片结构上增加池化操作,就会在芯片中增加额外的硬件逻辑,进而改变芯片的硬件结构。
故,如何在不改变芯片硬件结构的基础上实现池化操作是目前亟需解决的问题。
发明内容
为了解决上述技术问题,提出了本申请。
根据本申请的一个方面,提供了一种神经网络的指令序列生成方法,所述方法包括:根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度;根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度;根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列,所述指令序列中包含所述神经网络的全局平均池化层的操作指令。
根据本申请的另一方面,提供了一种神经网络运行的方法,所述神经网络中包括根据上述权项生成的指令序列;所述方法包括:获得经过所述神经网络中卷积层处理后的输入特征图;其中,所述输入特征图至少包括通道数;根据所述输入特征图的通道数确定卷积核的个数;其中,一个通道对应一个卷积核;在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值;其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。
根据本申请的另一方面,提供了一种神经网络的指令序列生成装置,包括:第一确定模块,用于根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度;第二确定模块,用于根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度;生成模块,用于根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列,所述指令序列中包含所述神经网络的全局平均池化层的操作指令。
根据本申请的另一方面,提供了一种神经网络运行的装置,所述神经网络中包括根据上述权项生成的指令序列;所述装置包括:获得单元,用于获得经过所述神经网络中卷积层处理后的输入特征图;其中,所述输入特征图至少包括通道数;确定单元,用于根据所述输入特征图的通道数确定卷积核的个数;其中,一个通道对应一个卷积核;卷积单元,用于在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值;其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。
根据本申请的再一方面,提供了一种电子设备,包括:处理器;以及,存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如上所述的方法。
根据本申请的又一方面,提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行如上所述的方法。
与现有技术相比,本申请首先根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度。再根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度。然后根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列。该硬件指令序列中包含所述神经网络的全局平均池化层的操作指令,也就是说,在本发明根据全局平均池化层的特征图维度确定深度可分离卷积的特征图维度和卷积核的维度,并生成对应的指令序列。故在遇到全局平均池化层的操作时,可执行上述指令序列能够使用深度可分离卷积来替代实现全局平均池化层的操作,进而避免改变芯片硬件结构。
本申请获得经过所述神经网络中卷积层处理后的输入特征图,然后根据所述输入特征图的通道数确定卷积核的个数,在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值。可见,本申请是利用深度可分离卷积来处理原本从卷积层处理后要进入池化操作的输入特征图,能够使用深度可分离卷积来替代实现全局平均池化层的操作,进而避免改变芯片硬件结构。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过结合附图对本申请实施例进行更详细的描述,本申请的上述以及其他目的、特征和优势将变得更加明显。附图用来提供对本申请实施例的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中,相同的参考标号通常代表相同部件或步骤。
图1是本申请一示例性实施例提供的神经网络的指令序列生成方法的流程示意图。
图2是本申请另一示例性实施例提供的全局平均池化层的输入特征图的示意图。
图3是本申请一示例性实施例提供的卷积核的示意图。
图4A是本申请一示例性实施例提供的确定用于深度可分离卷积的卷积核的维度的流程示意图。
图4B是本申请一示例性实施例提供的深度可分离卷积操作的示意图。
图5是本申请一示例性实施例提供的神经网络运行的方法的流程示意图。
图6是本申请一示例性实施例提供的神经网络的指令序列生成装置的示例框图。
图7是本申请一示例性实施例提供的第二确定模块602的一个示例框图。
图8是本申请一示例性实施例提供的神经网络运行的装置的示例框图。
图9是本申请一示例性实施例提供的电子设备的结构图。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
如上文所述,芯片在硬件结构上支持的操作有限,若增加额外操作则会改变芯片本身的硬件结构。以深度可分离卷积为例,芯片在支持深度可分离卷积操作的基础上,若再额外支持全局平均池化操作,则必然会增加芯片的硬件逻辑,改变芯片的硬件结构。
考虑到上述问题,本申请研究出一种神经网络的指令序列生成方法,旨在芯片原本支持深度可分离卷积但不支持全局平均池化操作的基础上,以不改变芯片硬件结构为前提使用深度可分离卷积替换全局平均池化操作,由于深度可分离卷积操作的结果和全局平均池化操作的结果相同,所以在全局平均池化操作时可以使用深度可分离卷积来替换计算,进而能够在不改变芯片硬件结构的前提下使芯片支持任意尺寸的全局平均池化计算。
值得注意的是,本实施例所指支持任意尺寸的全局平均池化计算,指的是针对任意高度、任意宽度和任意通道数的输入特征图,均能够使用深度可分离卷积对其进行计算来替代全局平均池化操作。
示例性方法
图1是本申请一示例性实施例提供的神经网络的指令序列生成方法的流程示意图。本实施例可应用在AI芯片上,可以在不增加额外硬件成本的条件下使AI芯片支持全局平均池化操作,完成分类任务。进而可应用在自动驾驶、智慧零售、工业机器人等众多领域中。本实施例AI芯片指包含了神经网络运算加速器的SOC芯片。
本申请中的一个或者多个实施例中描述的神经网络的指令序列生成方法如图1所示,包括如下步骤:
步骤101,根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度。
其中,本实施例的神经网络包括:深度神经网络(DDN)、卷积神经网络(CNN)、循环神经网络(RNN)、对抗神经网络(GAN)等。
在神经网络中,全局平均池化层的主要作用是将一个有若干通道的特征图压缩成只有一个像素点的特征向量。以卷积神经网络为例,在卷积神经网络中使用全局平均池化层可以有效减小参数量,使模型更加健壮,抗过拟合效果更佳。目前很多用于分类的神经网络都会使用全局平均池化层。
全局平均池化层的特征图包括:输入特征图、输出特征图。而特征图维度包括:特征图高度、特征图宽度和特征图通道数。若以输入特征图为例,输入特征图维度包括:输入特征图高度、输入特征图宽度、输入特征图通道数。若以输出特征图为例,输出特征图维度包括:输出特征图高度、输出特征图宽度、输出特征图通道数。
举例来说,参看图2,全局平均池化层的输入特征图的高度、宽度、通道数分别为:Hin、Win、Cin。输入特征图中的每一层表示一个通道,全局平均池化就是计算每一层的算术平均值,将一个通道的所有像素点变成结果的一个点。在每个通道中,单独的像素点构成了一个高度和宽度都是1的特征图。故全局平均池化的输出特征图高度、宽度,通道数分别为:1、1、Cin。
以上是关于全局平均池化层及其特征图维度的介绍,而对于深度可分离卷积来说,其也包括输入特征图和输出特征图。相似的,深度可分离卷积的输入特征图维度包括:输入特征图高度、输入特征图宽度、输入特征图通道数。深度可分离卷积的输出特征图维度包括:输出特征图高度、输出特征图宽度、输出特征图通道数。
而对于如何确定深度可分离卷积的特征图维度在后续会有详细的介绍,故在此不再赘述。
步骤102,根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度。
具体来说,全局平均池化层的输入特征图维度在上述实施例已经介绍。而对于本实施例的卷积核,其作用是和深度可分离卷积的输入特征图进行卷积计算,使卷积计算的结果和全局平均池化操作的结果相同。故在全局平均池化操作时,可使用深度可分离卷积来替换计算,以避免改变芯片硬件结构,能够在不改变芯片硬件结构的前提下使芯片支持任意尺寸的全局平均池化计算。
针对用于深度可分离卷积的卷积核来说,卷积核的维度包括:卷积核的高度、卷积核的宽度、卷积核的通道数、卷积核的数值和卷积核的个数。其中,卷积核的通道数为1,卷积核的数值指的是卷积核的张量数据的数值,由于卷积核可以看作一个按照特定形状组成的多维张量,则卷积核的数值是指这个多维张量里的每个张量数据。若将卷积核看作是一张具有高度和宽度的图,则卷积核的数值指的是该图中的各像素点的值。参看图3,卷积核的高度、宽度、通道数、数值分别为:Hin、Win、1、kernel[Ck][h][w]。
步骤103,根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列。
其中,所述指令序列是根据深度可分离卷积的特征图维度和所述卷积核的维度得到的,以作为所述神经网络的全局平均池化层的操作指令。故,在进行全局平均池化层操作时,执行该指令序列就可以将全局平均池化层操作转化为深度可分离卷积操作。
在上述图1所示实施例的基础上,作为本实施例一种可选的实施方式,由于要将全局平均池化替换为深度可分离卷积计算,需要保证深度可分离卷积的输入、输出特征图维度和全局平均池化的输入、输出特征图维度相同。故在步骤101根据神经网络中的池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度的实施过程中,将全局平均池化层的输入特征图维度确定为所述深度可分离卷积的输入特征图维度。将全局平均池化层的输出特征图维度确定为所述深度可分离卷积的输出特征图维度。
具体来说,将全局平均池化层的输入特征图的高度、宽度、通道数确定为所述深度可分离卷积的输入特征图的高度、宽度、通道数。同理,将全局平均池化层的输出特征图的高度、宽度、通道数确定为所述深度可分离卷积的输出特征图的高度、宽度、通道数。举例来说,假设全局平均池化层的输入特征图的高度、宽度、通道数分别为Hin、Win、Cin。全局平均池化层的输出特征图的高度、宽度,通道数分别为1,1,Cin。则将全局平均池化层替换为深度可分离卷积。深度可分离卷积的输入、输出特征图的高度、宽度、通道数与全局平均池化层一致。则深度可分离卷积的输入特征图的高度、宽度、通道数分别为Hin、Win、Cin。深度可分离卷积的输出特征图的高度、宽度,通道数分别为1,1,Cin。
在上述图1所示实施例的基础上,作为本实施例一种可选的实施方式,由于所述卷积核的维度包括:卷积核的高度、卷积核的宽度、卷积核的通道数、卷积核的数值和卷积核的个数。故在步骤102根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度的实施过程中,参看图4A中罗列的各步骤,各步骤的先后顺序不做限制。
步骤401,基于所述全局平均池化层的输入特征图高度、输入特征图宽度分别确定所述卷积核的高度、宽度。
具体来说,将全局平均池化层的输入特征图高度、输入特征图宽度分别确定为所述卷积核的高度、宽度,以使所述卷积核的高度、宽度分别和全局平均池化层的输入特征图高度、输入特征图宽度保持一致。
步骤402,根据所述全局平均池化层的输入特征图通道数确定所述卷积核的个数,以使所述卷积核的个数和所述输入特征图通道数相同。
由于卷积核用于深度可分离卷积计算,故其通道数为1。而卷积核的个数由全局平均池化层的输入特征图通道数决定。
步骤403,根据所述全局平均池化层的输入特征图高度、输入特征图宽度确定所述卷积核的数值。
进一步的,确定所述全局平均池化层的输入特征图高度和输入特征图宽度之间的乘积。基于所述乘积的倒数确定所述卷积核的数值。举例来说,假设全局平均池化层的输入特征图的高度、宽度分别为Hin、Win。则卷积核的数值kernel[Ck][h][w]=1/(Hin*Win)。值得注意的是,所有卷积核的数值都相等。该方式确定出的卷积核的值,能够在深度可分离卷积的操作中,和对应的输入特征图进行卷积计算,并能够使得卷积计算后的输出结果和全局平均池化的输出结果保持一致。
作为一种可选的实施例,若确定出卷积核的高度、宽度,还可以使用卷积核的高度、宽度确定出卷积核的数值。由于卷积核的高度、宽度分别和全局平均池化层的输入特征图高度、输入特征图宽度保持一致,故得到的数值和上述实施例确定的数值一致,都为1/(Hin*Win)。
以上是基于全局平均池化层的输入特征图高度、输入特征图宽度确定得到卷积核的数值的实施例,由于卷积核的数值和目标硬件支持的精度相关,故在得到卷积核的数值之后,还可通过目标硬件支持的精度调整卷积核的数值。具体可通过下述步骤确定:首先,确定目标硬件(也即目标芯片,指运行该方法的芯片)支持的精度。其次,根据所述目标硬件支持的精度调整所述卷积核的数值。在调整的过程中,先确定卷积核的数值和精度的比值;再对该比值进行四舍五入,再将四舍五入之后得到的数值和精度相乘得到乘积,将该乘积作为调整后的卷积核的数值。若精度为J,调整后的卷积核的数值为k'。则根据公式得到调整后的卷积核的数值。例如市场上很多深度学习加速芯片只持8比特推理,8比特的表示精度为卷积核数值等于则调整后的卷积核的数值该方法适合神经网络模型为定点模型或者目标硬件支持定点推理的场景。
在上述图1所示实施例的基础上,作为本实施例一种可选的实施方式,由于输入特征图的通道数和卷积核的个数相等,且每个通道对应有各自的卷积核,故在步骤103根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列的实施过程中,根据所述深度可分离卷积的输入特征图及其特征图维度、卷积核及其维度、卷积运算过程、深度可分离卷积的输出特征图及其特征图维度,生成指令序列。
而在卷积运算过程中,根据所述深度可分离卷积的输入特征图及其特征图维度、所述卷积核及其维度,对深度可分离卷积的输入特征图进行卷积运算,得到深度可分离卷积的输出特征图。具体来说,在深度可分离卷积的输入特征图的每个通道中,都会进行如下处理:对该通道及其卷积核进行卷积运算,得到该通道的输出值。其中,该输出值和该通道经过全局平均池化操作得到的输出值相同。也即,经过卷积计算之后,该通道的所有像素点变成结果的一个点,且该通道的输出值等于该通道的所有像素点的平均值。由此可知,在输入特征图的每个通道都进行卷积运算之后,转变成了高度和宽度都是1的输出特征图,且输出特征图在每个通道中的像素值,就是每个通道通过上述卷积运算得到的输出值,且和每个通道经过全局平均池化操作得到的输出值相同。进一步的,会将输出特征图输入到全连接层中进行处理。
具体来说,针对所述每个通道的卷积处理,在高度方向上,根据该通道中的每一行和对应的卷积核移动时高度方向的步长确定每一行在高度方向的乘积;将每一行在高度方向的乘积和每一行在当前高度方向的坐标值合并,得到每一行在高度方向上的第一输入参数;在宽度方向上,根据该通道中的每一列和对应的卷积核移动时宽度方向的步长确定每一列在宽度方向的乘积;将每一列在宽度方向的乘积和每一行在当前宽度方向的坐标值合并,得到每一行在宽度方向上的第二输入参数;根据所述第一输入参数、所述第二输入参数和对应的卷积核加权求和,得到所述该通道的输出值。若以公式来表达,则通过公式 进行卷积运算。其中,Hi表示高度方向的第Hi行(0<=Hi<=H),Wj表示第Wj列(0<=Wj<W),Ck表示第Ck个通道(0<=Ck<C),output[Hi][Wj][Ck]表示第Ck个通道的输出值。h,w分别表示求和时高度,宽度方向的坐标值,Sh表示卷积核移动时高度方向的步长,Sw表示卷积核移动时宽度方向的步长。input[Hi*Sh+h][Wj*Sw+w][Ck]表示第Hi*Sh+h行的第Wj*Sw+w列的第Ck个通道的数值。kernel[Ck][h][w]表示第Ck个卷积核的第h行的第w列的数值,kernel[Ck][h][w]=1/(Hin*Win),为常数。 表示对局部输入特征图按照卷积核加权求和。
下面请参看图4B,深度可分离卷积的输入特征图的长、宽、通道数分别为:Hin=Win=12,Cin=3。而该卷积核的长、宽、通道数、数值分别为:Hin=Win=12,通道数=1,kernel[Ck][h][w]=1/(Hin*Win)=0.028。使用3个通道数为1的卷积核与输入特征图中的每一个通道的数据进行卷积,得到每个通道的输出值,且,每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。由此,在输入特征图的每个通道都进行卷积运算之后,转变成了高度和宽度都是1的输出特征图,通道数和输入特征图的通道数相同。
以上是使用深度可分离卷积实现全局平均池化操作,并生成指令序列的具体实施过程。根据该指令序列,生成执行神经网络的参数文件。值得注意的是,该指令序列只是神经网络在编译过程中的部分指令序列,作为编译过程中的一层中间表示。在此基础上结合在此指令序列前后编译产生的其他指令序列,一并生成执行神经网络所需的硬件指令序列即参数文件。
值得说明的是,本发明实施例的神经网络的结构并未发生改变,仍旧包括:卷积层、池化层、全连接层。只是在池化层中操作时,复用了卷积层的处理逻辑,使用深度可分离卷积实现全局平均池化操作,神经网络本身并没有发生任何变化,替换的深度可分离卷积在数学上与全局平均池化等价,模型推理结果也没有差异。
而正是由于使用深度可分离卷积替换全局平均池化操作,故而该方法可以应用在支持深度可分离卷积但不支持全局平均池化操作的芯片上,并且可以在不增加额外硬件的条件下使芯片支持任意尺寸的全局平均池化计算。
以实际应用举例来说,例如分类任务中常用的Resnet模型,为了提高运算速度,在实际应用中经常在最后一层使用全局平均池化操作。而对于一些不支持全局平均池化的芯片,Resnet模型就无法在上面运行。而使用本申请实施例中的技术方案,可以在Resnet模型的编译过程中构造卷积核,使用深度可分离卷积替代全局平均池化,同时不改变模型的运算结果,即:深度可分离卷积和全局平均池化的运算结果相同。
基于和上述一个或者多个实施例相同的发明构思及有益效果,下述实施例公开了一种神经网络运行的方法,所述神经网络中包括根据上述任一实施例生成的指令序列。
图5是本申请一示例性实施例提供的在AI芯片上实施的神经网络运行的方法的流程示意图。该方法可以应用于自动驾驶、智慧零售、工业机器人等众多领域中。
本申请中的一个或者多个实施例中描述的神经网络运行的方法如图5所示,包括如下步骤:
步骤501,获得经过所述神经网络中卷积层处理后的输入特征图。
其中,神经网络包括:卷积层,池化层,全连接层。在神经网络中的卷积层处理后,得到输入特征图可以看作是全局平均池化层的输入特征图,并对其进行池化操作。而在本发明实施例中,会构建卷积核对该输入特征图进行卷积处理,且处理结果和全局平均池化的处理结果相同,以替代全局平均池化操作。后续会对此进行详细的描述,在此不再赘述。
所述输入特征图的维度至少包括:宽度、高度、通道数。
步骤502,根据所述输入特征图的通道数确定卷积核的个数。
其中,由于在池化层中需要对输入特征图进行深度可分离卷积,卷积核的个数取决于输入特征图的通道数,一个通道对应一个卷积核。
而对于卷积核来说,参看图3,卷积核的维度包括:卷积核的高度、卷积核的宽度、卷积核的通道数、卷积核的数值和卷积核的个数。其中,卷积核的通道数为1,卷积核的数值指的是卷积核的张量数据的数值,由于卷积核可以看作一个按照特定形状组成的多维张量,这里说的参数是指这个多维张量里的每个张量数据。
由于卷积核的维度包括:卷积核的高度、卷积核的宽度、卷积核的通道数、卷积核的数值和卷积核的个数。故在需要确定卷积核的高度、卷积核的宽度、卷积核的数值。具体来说,根据输入特征的图高度、宽度分别确定所述卷积核的高度、宽度,以使所述卷积核的高度、宽度分别和输入特征图高度、输入特征图宽度保持一致。根据输入特征图的高度、宽度确定所述卷积核的数值。进一步的,所述每个通道对应的卷积核的数值相同,其中,所述数值为一乘积的倒数,所述乘积为卷积核的高度、宽度相乘得到;所述卷积核的高度、宽度和所述输入特征图的高度、宽度相同。而确定卷积核的数值的具体实施方式在前述实施例已经详细说明,故在此不再赘述。当前,卷积核的数值可以根据目标硬件的精度调整,而具体的调整方式在前述实施例也已经详细说明,故在此也不再赘述。值得注意的是,一般来说,确定卷积核的高度、宽度、数值、个数的相关步骤没有先后顺序之分。而若卷积核的数值的确定方式跟卷积核的高度、宽度相关,则需要先确定出卷积核的高度、宽度,再据此确定卷积核的数值。
步骤503,在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值。
其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。也即,经过卷积计算之后,该通道的所有像素点变成结果的一个点,且该通道的输出值等于该通道的所有像素点的平均值。由此可知,在输入特征图的每个通道都进行卷积运算之后,转变成了高度和宽度都是1的输出特征图,且输出特征图在每个通道中的像素值就是上述卷积运算得到的输出值。进一步的,会将输出特征图输入到softmax层中进行处理。
而针对所述每个通道的卷积处理,在高度方向上,根据该通道中的每一行和对应的卷积核移动时高度方向的步长确定每一行在高度方向的乘积;将每一行在高度方向的乘积和每一行在当前高度方向的坐标值合并,得到每一行在高度方向上的第一输入参数;在宽度方向上,根据该通道中的每一列和对应的卷积核移动时宽度方向的步长确定每一列在宽度方向的乘积;将每一列在宽度方向的乘积和每一行在当前宽度方向的坐标值合并,得到每一行在宽度方向上的第二输入参数;根据所述第一输入参数、所述第二输入参数和对应的卷积核加权求和,得到所述该通道的输出值。若以公式来表达,则通过公式 进行卷积运算。其中,Hi表示高度方向的第Hi行(0<=Hi<=H),Wj表示第Wj列(0<=Wj<W),Ck表示第Ck个通道(0<=Ck<C),output[Hi][Wj][Ck]表示第Ck个通道的输出值。h,w分别表示求和时高度,宽度方向的坐标值,Sh表示卷积核移动时高度方向的步长,Sw表示卷积核移动时宽度方向的步长。input[Hi*Sh+h][Wj*Sw+w][Ck]表示第Hi*Sh+h行的第Wj*Sw+w列的第Ck个通道的数值。kernel[Ck][h][w]表示第Ck个卷积核的第h行的第w列的数值,kernel[Ck][h][w]=1/(Hin*Win),为常数。表示对局部输入特征图按照卷积核加权求和。
作为一种可选的实施例,由于上述输入特征图看作是全局平均池化的输入特征图,故在获得经过所述神经网络中卷积层处理后的输入特征图之后,根据该输入特征图确定出深度可分离卷积的输入特征图。具体的确定方案在前述实施例已经有详细的介绍,故在此不再赘述。而在得到深度可分离卷积的输入特征图的基础上,在深度可分离卷积的输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值。由于深度可分离卷积的输入特征图和全局平均池化的输入特征图是相同的,故卷积计算过程可参照上述卷积计算过程,在此则不再赘述。
以上是在神经网络的池化层中,使用深度可分离卷积实现全局平均池化操作的具体实施过程,能够使支持深度可分离卷积但不支持全局平均池化操作的芯片,在不增加额外硬件的条件下支持任意尺寸的全局平均池化计算。
示例性装置
图6图示了根据本申请实施例的神经网络的指令序列生成装置600的框图。
如图6所示,本申请实施例的神经网络的指令序列生成装置600包括:第一确定模块601,用于根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度;第二确定模块602,用于根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度;生成模块603,用于根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列,所述指令序列中包含所述神经网络的全局平均池化层的操作指令。
在一个示例中,所述特征图维度包括:特征图高度、特征图宽度和特征图通道数;所述第一确定模块,具体用于:将全局平均池化层的输入特征图维度确定为所述深度可分离卷积的输入特征图维度;将全局平均池化层的输出特征图维度确定为所述深度可分离卷积的输出特征图维度。
图7图示了根据本申请实施例在第二确定模块602的一个示例框图。如图7所示,在一个示例中,所述第二确定模块602包括:第一确定子模块701,用于基于所述全局平均池化层的输入特征图高度、输入特征图宽度分别确定所述卷积核的高度、宽度;第二确定子模块702,用于根据所述全局平均池化层的输入特征图通道数确定所述卷积核的个数,以使所述卷积核的个数和所述输入特征图通道数相同;第三确定子模块703,用于根据所述全局平均池化层的输入特征图高度、输入特征图宽度确定所述卷积核的数值。
在一个示例中,第三确定模块,具体用于确定所述全局平均池化层的输入特征图高度和输入特征图宽度之间的乘积;基于所述乘积的倒数确定所述卷积核的数值。
在一个示例中,所述装置还包括:第四确定模块,用于确定目标硬件支持的精度;调整模块,用于根据所述目标硬件支持的精度调整所述卷积核的数值。
在一个示例中,所述生成模块603还用于:根据所述指令序列生成执行所述神经网络的参数文件。
基于和前述一个或者多个实施例相同的发明构思和有益效果,图8图示了根据本申请实施例的神经网络运行的装置800的框图,其中,神经网络中包括根据前述一个或者多个实施例生成的指令序列。
如图8所示,本申请实施例的神经网络运行的装置800包括:获得单元801,用于获得经过所述神经网络中卷积层处理后的输入特征图;其中,所述输入特征图至少包括通道数;确定单元802,用于根据所述输入特征图的通道数确定卷积核的个数;其中,一个通道对应一个卷积核;卷积单元803,用于在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值;其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。
在一个示例中,所述每个通道对应的卷积核的数值相同,其中,所述数值为一乘积的倒数,所述乘积为卷积核的高度、宽度相乘得到;所述卷积核的高度、宽度和所述输入特征图的高度、宽度相同。
在一个示例中,所述卷积单元803,具体用于针对所述每个通道,在高度方向上,根据该通道中的每一行和对应的卷积核移动时高度方向的步长确定每一行在高度方向的乘积;将每一行在高度方向的乘积和每一行在当前高度方向的坐标值合并,得到每一行在高度方向上的第一输入参数;在宽度方向上,根据该通道中的每一列和对应的卷积核移动时宽度方向的步长确定每一列在宽度方向的乘积;将每一列在宽度方向的乘积和每一行在当前宽度方向的坐标值合并,得到每一行在宽度方向上的第二输入参数;根据所述第一输入参数、所述第二输入参数和对应的卷积核加权求和,得到所述该通道的输出值。
示例性可移动设备设备
图9图示了根据本申请实施例的可移动设备的框图。
如图9所示,可移动设备(电子设备10)包括一个或多个处理器11和存储器12。
处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制可移动设备中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行程序指令,以实现上文的本申请的各个实施例的目标对象的测距方法以及/或者其他期望的功能。在计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,可移动设备还可以包括:输入装置13和输出装置14,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
例如,在该可移动设备是第一设备或第二设备时,该输入装置13可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置13可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。
此外,该输入设备13还可以包括例如键盘、鼠标等等。
该输出装置14可以向外部输出各种信息,包括确定的距离信息、方向信息等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图9中仅示出了该可移动设备中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,可移动设备还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的神经网络的指令序列生成方法中的步骤。
计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令在被处理器运行时使得处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的神经网络的指令序列生成方法中的步骤。
计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (11)
1.一种神经网络的指令序列生成方法,所述方法包括:
根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度;
根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度;
根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列,所述指令序列中包含所述神经网络的全局平均池化层的操作指令。
2.如权利要求1所述的方法,其中,所述特征图维度包括:特征图高度、特征图宽度和特征图通道数;
所述根据神经网络中的池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度,包括:
将全局平均池化层的输入特征图维度确定为所述深度可分离卷积的输入特征图维度;
将全局平均池化层的输出特征图维度确定为所述深度可分离卷积的输出特征图维度。
3.如权利要求2所述的方法,所述卷积核的维度包括:卷积核的高度、卷积核的宽度、卷积核的通道数、卷积核的数值和卷积核的个数;
所述根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度,包括:
基于所述全局平均池化层的输入特征图高度、输入特征图宽度分别确定所述卷积核的高度、宽度;
根据所述全局平均池化层的输入特征图通道数确定所述卷积核的个数,以使所述卷积核的个数和所述输入特征图通道数相同;
根据所述全局平均池化层的输入特征图高度、输入特征图宽度确定所述卷积核的数值。
4.如权利要求3所述的方法,所述根据所述全局平均池化层的输入特征图高度、输入特征图宽度确定所述卷积核的数值,具体包括:
确定所述全局平均池化层的输入特征图高度和输入特征图宽度之间的乘积;
基于所述乘积的倒数确定所述卷积核的数值。
5.如权利要求3或4所述的方法,所述方法还包括:
确定目标硬件支持的精度;
根据所述目标硬件支持的精度调整所述卷积核的数值。
6.一种神经网络运行的方法,所述神经网络中包括根据权利要求1-5任一权项生成的指令序列;所述方法包括:
获得经过所述神经网络中卷积层处理后的输入特征图;其中,所述输入特征图至少包括通道数;
根据所述输入特征图的通道数确定卷积核的个数;其中,一个通道对应一个卷积核;
在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值;其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。
7.如权利要求6所述的方法,其中,所述根据所述每个通道各自的卷积核对所述每个通道进行迭代,获得所述每个通道的输出值,包括:
针对所述每个通道,在高度方向上,根据该通道中的每一行和对应的卷积核移动时高度方向的步长确定每一行在高度方向的乘积;将每一行在高度方向的乘积和每一行在当前高度方向的坐标值合并,得到每一行在高度方向上的第一输入参数;
在宽度方向上,根据该通道中的每一列和对应的卷积核移动时宽度方向的步长确定每一列在宽度方向的乘积;将每一列在宽度方向的乘积和每一行在当前宽度方向的坐标值合并,得到每一行在宽度方向上的第二输入参数;
根据所述第一输入参数、所述第二输入参数和对应的卷积核加权求和,得到所述该通道的输出值。
8.一种神经网络的指令序列生成装置,包括:
第一确定模块,用于根据神经网络中的全局平均池化层的特征图维度,确定所述神经网络中的深度可分离卷积的特征图维度;
第二确定模块,用于根据所述全局平均池化层的输入特征图维度,确定用于深度可分离卷积的卷积核的维度;
生成模块,用于根据所述深度可分离卷积的特征图维度和所述卷积核的维度,生成用于执行所述神经网络对应的指令序列,所述指令序列中包含所述神经网络的全局平均池化层的操作指令。
9.一种神经网络运行的装置,所述神经网络中包括根据权利要求1-5任一权项生成的指令序列;包括:
获得单元,用于获得经过所述神经网络中卷积层处理后的输入特征图;其中,所述输入特征图至少包括通道数;
确定单元,用于根据所述输入特征图的通道数确定卷积核的个数;其中,一个通道对应一个卷积核;
卷积单元,用于在所述输入特征图的每个通道中,根据所述每个通道各自的卷积核对所述每个通道进行卷积,获得所述每个通道的输出值;其中,所述每个通道的输出值和该通道经过全局平均池化操作得到的输出值相同。
10.一种电子设备,包括:
处理器;以及
存储器,在所述存储器中存储有计算机程序指令,所述计算机程序指令在被所述处理器运行时使得所述处理器执行如权利要求1-7中任一权项所述的方法。
11.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-7中任一权项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110975892.7A CN113762472A (zh) | 2021-08-24 | 2021-08-24 | 一种神经网络的指令序列生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110975892.7A CN113762472A (zh) | 2021-08-24 | 2021-08-24 | 一种神经网络的指令序列生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113762472A true CN113762472A (zh) | 2021-12-07 |
Family
ID=78791049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110975892.7A Pending CN113762472A (zh) | 2021-08-24 | 2021-08-24 | 一种神经网络的指令序列生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113762472A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024119952A1 (zh) * | 2022-12-06 | 2024-06-13 | 北京地平线信息技术有限公司 | 神经网络模型的编译方法、装置、存储介质及电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358068A1 (en) * | 2015-06-04 | 2016-12-08 | Samsung Electronics Co., Ltd. | Reducing computations in a neural network |
CN109102070A (zh) * | 2018-08-22 | 2018-12-28 | 地平线(上海)人工智能技术有限公司 | 卷积神经网络数据的预处理方法和装置 |
CN109656623A (zh) * | 2019-03-13 | 2019-04-19 | 北京地平线机器人技术研发有限公司 | 执行卷积运算操作的方法及装置、生成指令的方法及装置 |
CN109919311A (zh) * | 2019-03-13 | 2019-06-21 | 北京地平线机器人技术研发有限公司 | 生成指令序列的方法、执行神经网络运算的方法和装置 |
CN110188865A (zh) * | 2019-05-21 | 2019-08-30 | 深圳市商汤科技有限公司 | 信息处理方法及装置、电子设备和存储介质 |
CN110309906A (zh) * | 2019-05-23 | 2019-10-08 | 北京百度网讯科技有限公司 | 图像处理方法、装置、机器可读存储介质及处理器 |
CN112598110A (zh) * | 2020-12-04 | 2021-04-02 | 北京迈格威科技有限公司 | 神经网络构建方法、装置、设备及介质 |
-
2021
- 2021-08-24 CN CN202110975892.7A patent/CN113762472A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358068A1 (en) * | 2015-06-04 | 2016-12-08 | Samsung Electronics Co., Ltd. | Reducing computations in a neural network |
CN109102070A (zh) * | 2018-08-22 | 2018-12-28 | 地平线(上海)人工智能技术有限公司 | 卷积神经网络数据的预处理方法和装置 |
CN109656623A (zh) * | 2019-03-13 | 2019-04-19 | 北京地平线机器人技术研发有限公司 | 执行卷积运算操作的方法及装置、生成指令的方法及装置 |
CN109919311A (zh) * | 2019-03-13 | 2019-06-21 | 北京地平线机器人技术研发有限公司 | 生成指令序列的方法、执行神经网络运算的方法和装置 |
CN110188865A (zh) * | 2019-05-21 | 2019-08-30 | 深圳市商汤科技有限公司 | 信息处理方法及装置、电子设备和存储介质 |
CN110309906A (zh) * | 2019-05-23 | 2019-10-08 | 北京百度网讯科技有限公司 | 图像处理方法、装置、机器可读存储介质及处理器 |
CN112598110A (zh) * | 2020-12-04 | 2021-04-02 | 北京迈格威科技有限公司 | 神经网络构建方法、装置、设备及介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024119952A1 (zh) * | 2022-12-06 | 2024-06-13 | 北京地平线信息技术有限公司 | 神经网络模型的编译方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109919311B (zh) | 生成指令序列的方法、执行神经网络运算的方法和装置 | |
JP2022550730A (ja) | 高速なスパースニューラルネットワーク | |
US20210406646A1 (en) | Method, accelerator, and electronic device with tensor processing | |
EP4318313A1 (en) | Data processing method, training method for neural network model, and apparatus | |
CN111709415B (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
CN113762472A (zh) | 一种神经网络的指令序列生成方法及装置 | |
CN113449840A (zh) | 神经网络训练方法及装置、图像分类的方法及装置 | |
JP2022165395A (ja) | ニューラルネットワークモデルの最適化方法及びニューラルネットワークモデルに関するグラフィックユーザインターフェースを提供する方法 | |
CN114492730A (zh) | 神经网络模型的编译方法和装置、电子设备和存储介质 | |
CN111598093A (zh) | 图片中文字的结构化信息生成方法、装置、设备及介质 | |
JP2022538759A (ja) | 構成可能なニューラルネットワークカーネル | |
CN112561050A (zh) | 一种神经网络模型训练方法及装置 | |
EP3926543A1 (en) | Method, accelerator, and electronic device with tensor processing | |
CN114239803B (zh) | 神经网络模型的编译方法和装置、电子设备和存储介质 | |
CN115756493A (zh) | 神经网络模型的编译方法、装置、存储介质及电子设备 | |
CN112819021A (zh) | 图像检测方法及装置、电子设备和存储介质 | |
CN111587441B (zh) | 使用以比特值为条件的回归神经网络生成输出示例 | |
CN113298248B (zh) | 一种针对神经网络模型的处理方法、装置以及电子设备 | |
US20230058095A1 (en) | Method and apparatus with calculation | |
US20230259579A1 (en) | Runtime predictors for computation reduction in dependent computations | |
KR102435447B1 (ko) | 뉴럴 네트워크 시스템 및 이의 동작 방법 | |
WO2022163548A1 (ja) | 情報処理システム及び情報処理方法 | |
CN117215757A (zh) | 一种多维张量数据获取的方法和装置 | |
CN116542325A (zh) | 神经网络模型的编译方法、推理方法、装置、设备和介质 | |
JP7000586B2 (ja) | データ処理システムおよびデータ処理方法 |
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 |