CN110728351A - 数据处理方法、相关设备及计算机存储介质 - Google Patents
数据处理方法、相关设备及计算机存储介质 Download PDFInfo
- Publication number
- CN110728351A CN110728351A CN201810786519.5A CN201810786519A CN110728351A CN 110728351 A CN110728351 A CN 110728351A CN 201810786519 A CN201810786519 A CN 201810786519A CN 110728351 A CN110728351 A CN 110728351A
- Authority
- CN
- China
- Prior art keywords
- data
- convolution kernel
- dimensional
- processed
- neural network
- 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
- 238000003672 processing method Methods 0.000 title abstract description 9
- 238000003062 neural network model Methods 0.000 claims abstract description 121
- 238000012545 processing Methods 0.000 claims abstract description 104
- 229910052739 hydrogen Inorganic materials 0.000 claims abstract description 7
- 238000011176 pooling Methods 0.000 claims description 62
- 238000000034 method Methods 0.000 claims description 52
- 238000000605 extraction Methods 0.000 claims description 36
- 230000015654 memory Effects 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 25
- 230000002776 aggregation Effects 0.000 claims description 12
- 238000004220 aggregation Methods 0.000 claims description 12
- 230000004931 aggregating effect Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 abstract description 26
- 238000013528 artificial neural network Methods 0.000 abstract description 13
- 238000010586 diagram Methods 0.000 description 29
- 230000008569 process Effects 0.000 description 26
- 238000012549 training Methods 0.000 description 16
- 238000013527 convolutional neural network Methods 0.000 description 12
- 230000001133 acceleration Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 210000002569 neuron Anatomy 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000004927 fusion Effects 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 2
- 239000000126 substance Substances 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000014616 translation Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000006403 short-term memory Effects 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例公开了数据处理方法,包括:计算设备接收待处理数据,将所述待处理数据输入神经网络模型;根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。采用本发明实施例,能够解决现有神经网络中进行卷积运算时存在的计算量较大、计算复杂度较高等问题。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及数据处理方法、相关设备及计算机存储介质。
背景技术
近年来,深度卷积神经网络(deep convolutional neural network)已广泛应用在图像、视频、语音、翻译等诸多领域中。深度卷积神经网络主要由卷积层、池化层以及全连接层级联而成,其中卷积层的卷积操作(运算)在神经网络中的计算量较大,将无法满足设备低时延、低功耗以及低存储等业务需求。
因此,如何设计出计算速度快、内存消耗低以及功耗低的卷积神经网络,是一个亟需解决的问题。
发明内容
本发明实施例公开了数据处理方法、相关设备及计算机存储介质,能够解决现有神经网络中卷积运算时存在的计算量较大的问题。
第一方面,本发明实施例公开提供了一种数据处理方法,所述方法包括:
计算设备接收待处理数据,将所述待处理数据输入神经网络模型;
所述计算设备根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;
其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。
通过实施本发明实施例,通过在神经网络模型中设计至少一个二维卷积核来实现数据的卷积运算,可解决现有神经网络中进行卷积运算时存在的计算量较大、计算复杂度较高等问题。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:所述计算设备根据所述神经网络模型中的深度卷积核对所述待处理数据的D个通道中每个通道的二维数据采用k1×k1的感受野进行特征提取,以获得第一特征数据;根据所述第一特征数据获得所述结果数据。其中,所述第一特征数据包括所述D个通道中每个通道的大小为H×W的二维数据,k1为正整数。
通过实施上述步骤,可沿着深度(通道)方向采用深度卷积核对待处理数据进行卷积运算(即特征提取)。相比于三维卷积核而言,可减少数据计算量。同时,随着卷积层的递增,还能增大深度方向上的感受野。
在一种可能的实施方式中,所述至少一个二维卷积核包括高度卷积核,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:所述计算设备根据所述神经网络模型中的高度卷积核,对所述待处理数据中的H个行数据采用k2×k2的感受野进行特征提取,以获得第二特征数据;根据所述第二特征数据获得所述结果数据。其中,每个行数据为大小为D×W的二维数据,第i个行数据包括所述待处理数据的D个通道中每个通道的第i行数据,i为小于或等于H的正整数,所述第二特征数据包括H个大小为D×W的二维数据,k2为正整数。
通过实施上述步骤,可沿着高度方向采用高度卷积核对待处理数据进行卷积运算(特征提取)。相比于三维卷积核而言,可减少数据计算量。同时,随着卷积层的递增,还能增大高度方向上的感受野。
在一种可能的实施方式中,所述至少一个二维卷积核包括宽度卷积核,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:所述计算设备根据所述神经网络模型中的宽度卷积核,对所述待处理数据中的W个列数据采用k3×k3的感受野进行特征提取,以获得第三特征数据;根据所述第三特征数据获得所述结果数据。其中,每个列数据为大小为D×H的二维数据,第j个列数据包括所述待处理数据的D个通道中每个通道的第j列数据,j为小于或等于W的正整数,所述第三特征数据包括W个大小为D×H的二维数据,k3为正整数。
通过实施上述步骤,可沿着宽度方向采用宽度卷积核对待处理数据进行卷积运算(特征提取)。相比于三维卷积核而言,可减少数据计算量。同时,随着卷积层的递增,还能增大宽度方向上的感受野。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:所述计算设备将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,以获得第四特征数据;将所述第四特征数据输入所述至少一个二维卷积核中的第二二维卷积核,以获得第五特征数据;根据所述第五特征数据获得所述结果数据。即是,所述至少一个二维卷积核呈串行连接。以第一二维卷积核和第二二维卷积核为例,第一二维卷积核的输出数据为第二二维卷积核的输入数据。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:所述计算设备将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,获得第六特征数据;将所述待处理数据输入所述至少一个二维卷积核中的第二二维卷积核,获得第七特征数据;将所述第六特征数据和所述第七特征数据聚合;根据所述聚合的结果获得所述结果数据。即是,所述至少一个二维卷积核呈并行连接,且并行连接后还与融合模块串连。以第一二维卷积核和第二二维卷积核为例,它们具有相同的输入数据,将它们各自处理后的输出数据(特征数据)输入融合模块进行融合。
在一种可能的实施方式中,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:计算设备根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,获得第八特征数据;根据所述神经网络模型中的三维池化参数对所述第八特征数据进行特征提取,以获得第九特征数据;根据所述第九特征数据获得所述结果数据。其中,所述三维池化参数包括C个通道,所述C个通道中每个通道包括大小为K4×K4的二维池化参数,K4为正整数。
通过实施上述步骤,能在深度方向上实现数据的池化处理(特征提取),有利于提高神经网络模型的计算精度。
第二方面,本发明实施例提供了一种数据处理装置,所述装置包括用于执行如上第一方面或第一方面的任意可能的实施方式中所描述的方法的至少一个功能模块或至少一个功能单元。示例性地,本申请提供的数据处理装置包括通信模块以及处理模块;其中,
所述通信模块,用于接收待处理数据,将所述待处理数据输入神经网络模型;
所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;
其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核,
所述处理模块,用于根据所述神经网络模型中的深度卷积核对所述待处理数据的D个通道中每个通道的二维数据采用k1×k1的感受野进行特征提取,以获得第一特征数据;其中,所述第一特征数据包括所述D个通道中每个通道的大小为H×W的二维数据,k1为正整数;根据所述第一特征数据获得所述结果数据。
在一种可能的实施方式中,所述至少一个二维卷积核包括高度卷积核,
所述处理模块,用于根据所述神经网络模型中的高度卷积核,对所述待处理数据中的H个行数据采用k2×k2的感受野进行特征提取,以获得第二特征数据;其中,每个行数据为大小为D×W的二维数据,第i个行数据包括所述待处理数据的D个通道中每个通道的第i行数据,i为小于或等于H的正整数,所述第二特征数据包括H个大小为D×W的二维数据,k2为正整数;根据所述第二特征数据获得所述结果数据。
在一种可能的实施方式中,所述至少一个二维卷积核包括宽度卷积核,
所述处理模块,用于根据所述神经网络模型中的宽度卷积核,对所述待处理数据中的W个列数据采用k3×k3的感受野进行特征提取,以获得第三特征数据;其中,每个列数据为大小为D×H的二维数据,第j个列数据包括所述待处理数据的D个通道中每个通道的第j列数据,j为小于或等于W的正整数,所述第三特征数据包括W个大小为D×H的二维数据,k3为正整数;根据所述第三特征数据获得所述结果数据。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,以获得第四特征数据;将所述第四特征数据输入所述至少一个二维卷积核中的第二二维卷积核,以获得第五特征数据;根据所述第五特征数据获得所述结果数据。
在一种可能的实施方式中,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,获得第六特征数据;将所述待处理数据输入所述至少一个二维卷积核中的第二二维卷积核,获得第七特征数据;将所述第六特征数据和所述第七特征数据聚合;根据所述聚合的结果获得所述结果数据。
在一种可能的实施方式中,所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,获得第八特征数据;根据所述神经网络模型中的三维池化参数对第八特征数据进行特征提取,以获得第九特征数据;其中,所述三维池化参数包括C个通道,所述C个通道中每个通道包括大小为K4×K4的二维池化参数;根据所述第九特征数据获得所述结果数据。
第三方面,本发明实施例提供了一种数据处理***,包括至少一个计算设备(例如物理主机、服务器等),每个计算设备包括:处理器,存储器,通信接口和总线;处理器、通信接口、存储器通过总线相互通信;通信接口,用于接收和发送数据;存储器,用于存储指令;这至少一个计算设备的处理器,用于调用存储器中的指令,执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法。
第四方面,提供了一种计算机非瞬态(non-transitory)存储介质,所述计算机非瞬态存储介质存储了用于数据处理的程序代码。所述程序代码包括用于执行上述第一方面或第一方面的任意可能的实施方式中所描述的方法的指令。第五方面,提供了一种芯片产品,以执行上述第一方面或第一方面的任意可能的实施方式中的方法。
通过实施本发明实施例,能够解决现有神经网络中卷积运算时存在的计算量较大、计算复杂度较高等问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是现有技术提供的一种卷积层的卷积运算示意图。
图2是现有技术提供的另一种卷积层的卷积运算示意图。
图3是本发明实施例提供的一种网络框架示意图。
图4A-4C是本发明实施例提供的几种基于二维卷积核的卷积运算示意图。
图5A-图5B是本发明实施例提供的两种神经网络模型的结构示意图。
图6是本发明实施例提供的一种数据处理方法的流程示意图。
图7A-图7B是本发明实施例提供的两种数据处理***的结构示意图。
图8是本发明实施例提供的在深度方向上进行特征扰乱的示意图。
图9是本发明实施例提供的一种数据处理***的结构示意图。
图10是本发明实施例提供的另一种数据处理***的结构示意图。
具体实施方式
下面将结合本发明的附图,对本发明实施例中的技术方案进行详细描述。
首先,介绍本申请涉及的一些技术术语。
卷积核:也名kernel。在数据处理中,给定输入数据,在输出数据中每个元素是输入数据中某个小区域中各元素的加权平均,其中权重由一个函数定义,该函数被称为卷积核。所述数据处理的应用场景包括但不限于图像处理、语音处理、文本翻译处理等,本申请这里不做限定和详述。
三维卷积核:指在通道(channel)、高度(high)以及宽度(wise)三个维度上来定义卷积核。在实际应用中,现有神经网络中涉及的卷积核通常为三维卷积核,如下图1示例中三维卷积核的尺寸为k0×k0×p。
二维卷积核:指在通道、高度以及宽度中的任意两个维度上来定义卷积核。所述二维卷积核包括以下中的任一项或多项的组合:深度卷积核、高度卷积核以及宽度卷积核,关于具体在本申请下文进行详述。
深度卷积核:指在除通道维度外的另两个维度(高度维度和宽度维度)上定义的卷积核。利用该深度卷积核可在通道(即深度)维度上来实现数据的特征提取。
高度卷积核:指在除高度维度外的另两个维度(通道维度和宽度维度)上定义的卷积核。利用该高度卷积核可在高度维度上实现数据的特征提取。
宽度卷积核:指在除宽度维度外的另两个维度(通道维度和高度维度)上定义的卷积核。利用该宽度卷积核可在宽度维度上实现数据的特征提取。关于所述深度卷积核、所述高度卷积核以及所述宽度卷积核具体将在本申请下文进行详述。
感受野:也名receptive field。指在卷积神经网络中,决定某一层输出结果中一个元素所对应的输入层的区域大小。例如图1中示出的阴影部分,第m个卷积层中的某个输出元素(神经元)对应第m-1个卷积层的阴影区域k0×k0。即第m个卷积层中区域k0×k0所包括的数据共同决定或影响第m个卷积层中某个输出元素的数值大小,这里不做详述。
池化参数:指神经网络中池化层的参数。通常,池化层往往在卷积层的后面,通过池化层的池化参数来降低卷积层输出的特征数据的维度,减少特征数据量,从而减少数据计算量以及数据计算复杂度,提升数据计算速率。
申请人在提出本申请的过程中发现:目前存在以下两种方案,能设计出计算速度快、内存消耗低以及功能低的卷积神经网络。第一种,如图1示出一种经典卷积神经网络中涉及的卷积层的卷积运算示意图。如图1,给出诸如深度残差网络Resnet以及vggnet等经典卷积神经网络中,第m-1个(层)以及第m个卷积层的卷积运算示意图。其中,第m-1个卷积层的通道数(深度)值为p,第m个卷积层的通道数值为q。每个卷积层的输入数据(如上一卷积层输出的特征图像)的高度和宽度分别为h和w。如图所示,第m层中每个神经元和第m-1层中k0×k0的局域感受野内的所有神经元连接。卷积层中卷积核的尺寸大小为k0×k0×p。相应地,在对第m-1层的输入数据进行卷积运算过程中(即输出获得第m层所有神经元的数值时),数据进行乘加的计算规模为:q×w×h×k0×k0×p。
第二种,如图2示出另一种经典卷积神经网络中涉及卷积层的卷积运算示意图。如图2,给出诸如Resnext以及mobilenet V1等经典卷积神经网络中,第m-1个、第m个以及第m+1个卷积层的卷积运算示意图。其中,第m-1个卷积层的通道数(深度)值为p,第m个卷积层的通道数值为q,第m+1个卷积层的通道数值为t。图示中每个卷积层的输入数据的高度和宽度分别为h和w。如图所示,第m层中每个神经元和第m-1层中k0×k0的局部感受野内的单层神经元连接,第m+1层中每个神经元和第m层中1×1的局部感受野内的所有神经元连接。相应地,在获得第m+1层中所有神经元的数据时,第m-1层以及第m层的输入数据进行乘加的计算规模为:q×w×h×k0×k0×p+q×1×1×t×w×h=q×w×h×(k0×k0+t)。
然而在实践中发现,上述两种方案中仍存在计算量和计算复杂度较大的问题。在设备计算能力有限的情况下,难以支持较大数据量的计算,将产生比较大的时延。
为解决现有神经网络中卷积运算存在的计算量较大、计算复杂度较高等问题,本申请提出一种数据处理方法、所述方法适用的网络框架以及相关设备。首先,参见图3是本发明实施例提供的一种深度学习平台的网络框架示意图。如图3所示的网络框架示意图300包括算法层102、算子层104、用户接口层106、并行机制层108、基础加速层110以及基础设施层112。其中,
所述算法层102,包括深度学习模型(或算法),具体可包括但不限于神经网络模型(或算法)或其他用户或***自定义设置的深度学习模型等,本申请不做限定。所述神经网络模型包括但不限于卷积神经网络(convolutional neural network,CNN)模型、循环神经网络(recurrent neural networks,RNN)模型、长短期记忆神经元(long short termmemory cells,LSTM)模型、深度神经网络(deep neural networks,DNN)模型等。
所述算子层104,包括用于构建模型或算法的基本组件。以神经网络模型为例,图示中算子层可包括构建神经网络模型的基本组件,例如卷积层中的三维卷积核(3Dconvolution)和二维卷积核(2D convolution)、池化层(pooling)以及全连接层等,本申请不做限定和详述。所述二维卷积核包括但不限于深度卷积核、高度卷积核以及宽度卷积核等,具体在本申请下文进行详细阐述。
所述用户接口层106,指用户编程机制,用户为构建模型的基本组件可对应选择不同的编程模式,其可包括但不限于符号编程模式、命令编程模式以及混合编程模式等,所述混合编程模式包括符号编程模式和命令编程模式,即是由符号和命令编程模式混合形成的编程模式。关于所述编程机制(编程模式)本申请这里不做详述。
所述并行机制层108,是一种在分布式深度学习平台中的加速手段,其具体可通过数据并行、模型并行以及负载均衡等方式来实现神经网络模型的加速运算或加速训练,本申请这里不做详述。
所述基础加速层110,实现神经网络模型训练过程或运算过程的加速,其可包括但不限于图形处理器(graphics processing unit,GPU)加速、异构部署、分布式矩阵计算等计算加速,模型同步、延迟同步模型(staleness synchronous parallel,SSP)等通信加速等,本申请不做限定和详述。
所述基础设施层112,包括硬件资源,为深度学习平台提供底层基础支撑。所述硬件资源包括但限于中央处理器(central processing unit,CPU)、GPU、现场可编程门阵列(field programmable gate array,FPGA)、数据存储***、资源调度***等,本申请这里不做限定和详述。
在实际应用中,所述深度学习平台可根据实际需求部署在物理端或云端的计算设备中,所述计算设备包括但不限于服务器、交换机、物理主机等等,本申请不做限定和详述。
接着,介绍本申请涉及的二维卷积核的相关实施例。具体的,本申请中涉及的神经网络模型中包括一个或多个卷积块(block)。每个卷积块中包括有一个或多个卷积层。每个卷积层中包括有至少一个(一个或多个)二维卷积核。关于所述神经网络模型的具体结构示意图将在下文举例说明,这里不做详述。下面以所述神经网络模型包括一个卷积块,即具体包括一个或多个二维卷积核为例进行相关说明。
在利用所述神经网络模型进行数据处理时,所述神经网络模型的输入数据(即下文阐述的待处理数据)包括有D个通道中每个通道的二维数据,该二维数据的尺寸大小为H×W。即该二维数据包括有H行W列的数据。换句话说,所述神经网络模型的输入数据可为D×H×W的三维数据。其中,D为通道数,H为高度,W为宽度。D、H以及W均为正整数。
相应地,在利用所述神经网络模型中的一个或多个二维卷积核进行数据处理(卷积运算)时,具体存在以下几种实施方式。
第一种实施方式中,所述神经网络模型中包括深度二维卷积核。具体的,在神经网络模型内部,可按照第一预设步长滑动深度二维卷积核,以对待处理数据中D个通道中每个通道的二维数据采用k1×k1的感受野进行卷积运算(即特征提取),以获得第一特征数据。所述第一特征数据包括D个通道中每个通道的第一输出数据,该第一输出数据的尺寸大小为H×W。所述深度二维卷积核的尺寸大小为k1×k1。其中,k1为正整数,通常k1为3或5。
即是,在数据处理过程中,沿着通道方向将所述待处理数据视(划分)为D个通道的数据,每个通道的数据为H×W的二维数据。进一步地,利用深度二维卷积核按照第一预设步长进行滑动,对D个通道中每个通道的H×W的二维数据进行卷积运算。
所述第一预设步长为利用二维卷积核进行卷积运算的步长,其可以是用户或***自定义设置的,本申请不做详述和限定。
可选地,计算设备后续可根据第一特征数据获得所述待处理数据对应的结果数据,例如计算设备利用神经网络模型内部中的池化层以及全连接层等对第一特征数据进行处理,以获得相应地结果数据,本申请这里不做详述。
举例来说,如图4A示出一种基于深度二维卷积核的卷积运算示意图。如图4A中,输入神经网络模型的待处理数据的尺寸为6×28×28,即包括6个通道,每个通道中包括28×28的二维数据。图示中的矩形方块表示深度二维卷积核,矩形方块的尺寸大小即为深度二维卷积核的感受野。
在卷积运算过程中,沿着通道方向可将所述待处理数据视为(划分为)6个通道的二维数据,每个通道的二维数据的尺寸均为28×28。相应地,在利用深度二维卷积核进行运算时,按照第一预设步长滑动深度二维卷积核,对6个通道中每个通道的28×28的二维数据进行卷积运算,以获得第一特征数据。图示中第一特征数据的尺寸同样为6×28×28。
其中,图4A具体示出利用深度二维卷积核对所述待处理数据中第一个通道的二维数据进行一次卷积运算后,对应获得第一特征数据中第一个通道的某个输出数据,本申请这里不做详述。
第二种实施方式中,所述神经网络模型中包括高度二维卷积核。具体的,在神经网络模型内部,可按照第二预设步长滑动高度二维卷积核,以对待处理数据中H个行数据采用k2×k2的感受野进行卷积运算(即特征提取),以获得第二特征数据。所述H个行数据中每个行数据的尺寸大小为D×W。所述第二特征数据包括H个第二输出数据,该第二输出数据的尺寸大小为D×W。所述高度二维卷积核的尺寸大小为k2×k2。其中,关于第二预设步长以及k2可参见前述实施例中的相关阐述。
即是,在卷积运算过程中,沿着高度方向可将所述待处理数据视(划分)为H个行数据,每个行数据为D×W的二维数据。进一步地,利用高度二维卷积核按照第二预设步长进行滑动,分别对H个D×W的二维数据进行卷积运算。
可选地,计算设备后续可根据第二特征数据获得所述待处理数据对应的结果数据,例如计算设备利用神经网络模型内部中的池化层以及全连接层等对第二特征数据进行处理,以获得相应地结果数据,本申请这里不做详述。
举例来说,如图4B示出一种基于高度二维卷积核的卷积运算示意图。如图4B中,输入神经网络模型的待处理数据为6×28×28的三维数据,即包括包括6个通道,每个通道中包括28×28的二维数据。图示中的矩形方块表示高度二维卷积核,矩形方块的尺寸大小即为高度二维卷积核的感受野。
在卷积运算过程中,沿着高度方向可将所述待处理数据视(划分)为28个行数据,每个行数据的尺寸为6×28。相应地,在利用高度二维卷积核进行运算时,按照第二预设步长滑动高度二维卷积核,对28个6×28的行数据分别进行卷积运算,以获得第二特征数据。图示中第二特征数据的尺寸同样为6×28×28,即包括28个6×28的行数据。
其中,图4B中具体示出利用高度卷积核对待处理数据中第一个行数据进行一次卷积运算时,可对应获得第二特征数据中第一个行数据中的某个输出数据,本申请这里不做详述。
第三种实施方式中,所述神经网络模型中包括宽度二维卷积核。具体的,在神经网络模型内部,可按照第三预设步长滑动宽度二维卷积核,以对待处理数据中W个列数据采用k3×k3的感受野进行卷积运算(即特征提取),以获得第三特征数据。所述W个列数据中每个列数据的尺寸大小为H×W。所述第三特征数据包括W个第三输出数据,该第三输出数据的尺寸大小为D×H。所述宽度二维卷积核的尺寸大小为k3×k3。其中,关于第三预设步长以及k3可参见前述实施例中的相关阐述。
即是,在卷积运算过程中,沿着宽度方向可将所述待处理数据视(划分)为W个列数据,每个列数据为D×H的二维数据。进一步地,利用宽度二维卷积核按照第三预设步长进行滑动,分别对W个D×H的二维数据进行卷积运算。
可选地,本申请中涉及的第一预设步长、第二预设步长以及第三预设步长可为用户或***自定义设置的,它们可以相同,也可不相同,本申请不做限定。本申请上述的k1、k2以及k3,具体也可为用户或***预先设置的,它们可以相同,也可不相同,本申请不做限定。
可选地,计算设备后续可根据第三特征数据获得所述待处理数据对应的结果数据,例如计算设备利用神经网络模型内部中的池化层以及全连接层等对第三特征数据进行处理,以获得相应地结果数据,本申请这里不做详述。
举例来说,如图4C示出一种基于宽度二维卷积核的卷积运算示意图。如图4C中,输入神经网络模型的待处理数据为6×28×28的三维数据,即包括包括6个通道,每个通道中包括28×28的二维数据。图示中的矩形方块表示宽度二维卷积核,矩形方块的尺寸大小即为宽度二维卷积核的感受野。
在卷积运算过程中,沿着宽度方向可将所述待处理数据视(划分)为28个列数据,每个列数据的尺寸为6×28。相应地,在利用宽度二维卷积核进行运算时,按照第三预设步长滑动宽度二维卷积核,对28个6×28的列数据分别进行卷积运算,以获得第三特征数据。图示中第三特征数据的尺寸同样为6×28×28,即包括28个6×28的列数据。
其中,图4B中具体示出利用宽度卷积核对待处理数据中第一个列数据进行一次卷积运算时,可对应获得第三特征数据中第一个列数据中的某个输出数据,本申请这里不做详述。
以上三种实施方式中介绍的二维卷积核即可以单独使用,也可以配合使用。这三种二维卷积核中的任意一种可以组成神经网络模型,且该神经网络模型中可以重复使用该二维卷积核。这三种二维卷积核中的任意二种可以组成神经网络模型,且该神经网络模型中可以重复使用这两种中的任意一种二维卷积核或重复使用这两种二维卷积核。这三种二维卷积核可以一起组成神经网络模型,且该神经网络模型中可以重复使用这三种中的任意一种或多种二维卷积核。当神经网络模型中包括两个或两个以上二维卷积核时,二维卷积核之间的组成方式有以下两种。
第四种实施方式中,所述神经网络模型中包括相互级联的至少两个二维卷积核。具体的,神经网络模型中的至少两个二维卷积核呈串行连接,所述至少两个二维卷积核具体可为深度二维卷积核、高度二维卷积核以及宽度二维卷积核中的任意两个或多个。其中,相互串联的至少两个二维卷积核中,前一个二维卷积核的输出数据为后一个二维卷积核的输入数据。
以所述至少两个二维卷积核包括第一二维卷积核和第二二维卷积核为例,阐述卷积运算的具体实现。具体的,如图5A示出一种神经网络模型的局域结构示意图。如图5A,第一二维卷积核和第二二维卷积级联(串连)。相应地,计算设备在利用图5A所示的两个二维卷积核进行卷积运算的具体实现过程为:计算设备将待处理数据输入神经网络模型中的第一二维卷积核进行卷积运算(特征提取),获得第四特征数据。可选地,所述第四特征数据与所述待处理数据具有相同的尺寸大小。进一步地,所述计算设备将所述第一特征数据输入第二二维卷积核中进行卷积运算(特征提取),以获得第五特征数据。可选地,所述第五特征数据与所述待处理数据具有相同的尺寸大小,即所述第五特征数据同样包括D个通道,每个通道包括H×W的二维数据。
可选地,计算设备后续可根据第五特征数据获得所述待处理数据对应的结果数据,例如计算设备利用神经网络模型内部中的池化层以及全连接层等对第五特征数据进行处理,以获得相应地结果数据,本申请这里不做详述。
第五种实施方式中,所述神经网络模型中包括相互并联的至少两个二维卷积核。具体的,神经网络模型中的至少两个二维卷积核呈并行连接,所述至少两个二维卷积核具体可为深度二维卷积核、高度二维卷积核以及宽度二维卷积核中的任意两个或多个。其中,相互并联的至少两个二维卷积核中,每个二维卷积核具有相同的输入数据(待处理数据)。
以所述至少两个二维卷积核包括第一二维卷积核和第二二维卷积核为例,阐述卷积运算的具体实现。具体的,如图5B示出一种神经网络模型的局域结构示意图。如图5B,第一二维卷积核和第二二维卷积并联。相应地,计算设备在利用图5B所示的两个二维卷积核进行卷积运算的具体实现过程为:计算设备将待处理数据输入神经网络模型中的第一二维卷积核进行卷积运算(特征提取),获得第六特征数据。可选地,所述第六特征数据与所述待处理数据具有相同的尺寸大小。同时,所述计算设备将所述待处理特征数据输入第二二维卷积核中进行卷积运算(特征提取),以获得第七特征数据。可选地,所述第七特征数据与所述待处理数据具有相同的尺寸大小,即所述第七特征数据同样包括D个通道,每个通道包括H×W的二维数据。进一步地,计算设备还可将第六特征数据和第七特征数据进行聚合(contact),便于后续根据所述聚合的结果获得所述待处理数据对应的结果数据。
接着,请参见图6是本发明实施例提供的一种数据处理方法的流程示意图。如图6所示的方法包括如下实施步骤:
步骤S102、计算设备接收待处理数据,将所述待处理数据输入神经网络模型中。
所述待处理数据可为用户或***根据业务需求或自身需求输入所述计算设备的神经网络模型的。所述计算设备预先配置(部署)有神经网络模型,所述神经网络模型可为预先根据训练样本训练好的,也可为未(待)训练的模型,本申请不做限定。
所述待处理数据包括但不限于图像数据、文本数据、语音数据以及视频数据等等,本发明实施例不做限定和详述。
步骤S104、所述计算设备根据所述神经网络模型中的至少一个二维卷积核,对所述待处理数据进行处理,以获得结果数据。所述至少一个二维卷积核包括以下中的至少一项:深度卷积核、高度卷积核以及宽度卷积核。
下面阐述本申请适用的两种应用场景以及本申请涉及的一些具体实施例。
首先阐述本申请适用的两种应用场景。第一种,训练场景。在训练场景中,神经网络模型为用户或***自定义设置的初始网络模型(待训练的网络模型)。所述待处理数据可为训练样本数据。S102-S104均为模型训练的实施步骤,所述结果数据可包括但不限于模型训练过程产生的中间数据或结果数据。以图像识别为例,所述待处理数据为训练图像。计算设备可将训练图像输入神经网络模型中进行训练,可获得所述训练图像对应的识别结果。所述识别结果具体可为所述神经网络模型计算的图像类型和预先标定的图像类型之间的差值;可选地,所述识别结果也可用于指示所述训练图像是否为指定图像等,本申请不做详述。
第二种,推理场景。在推理场景中,神经网络模型为预先使用训练样本数据训练好的模型。S102-S104均为模型推理(或使用)的实施步骤,所述结果数据为所述神经网络模型对所述待处理数据进行预测和处理后获得的结果。以图像分类为例,将待处理图像输入神经网络模型后可获得相应地结果数据,该结果数据用于指示所述待处理图像是否为指定类型的图像等,本申请不做详述。
下面阐述步骤S102-S104涉及的一些具体实施例。
步骤S102中,用户将待处理数据输入计算设备中,以利用计算设备中部署的神经网络模型进行处理。相应地,所述计算设备可接收用户输入的待处理数据,并将该待处理数据输入神经网络中。
步骤S104中,计算设备可利用神经网络模型中的一个或多个二维卷积核对所述待处理数据进行处理,以获得相应地结果数据。具体的,神经网络模型中包括m个卷积块,m为正整数。每个卷积块中包括有n个卷积层(卷积模块),n为正整数。每个卷积层中包括至少一个二维卷积核。所述至少一个二维卷积核具体可呈并联或串联,所述二维卷积核包括但不限于以下中的任一种:深度卷积核、高度卷积核以及深度卷积核。关于如何利用二维卷积核进行数据的处理,具体可参见前述实施例所述,这里不再赘述。
可选地,每个卷积块中除了包括卷积层外,还可包括以下中的任一项或多项的组合:聚合模块、池化模块(池化层)以及扰乱模块。具体的,所述聚合模块用于将所述n个卷积层中每个卷积层的输出结果进行聚合,以获得聚合特征数据。所述池化模块用于对输入所述池化模块的输入特征数据进行池化处理,以获得池化特征数据,这里的输入特征数据具体可为卷积层的输出结果,也可为聚合特征数据等等,本申请不做限定。所述扰乱模块用于对输入所述扰乱模块的输入特征数据进行扰乱(shuffle),以获得更具有表达能力的扰乱特征数据,便于后续依据该扰乱特征数据进行模型的训练或推理,以获得相应地结果数据,本申请这里不做详述。
以所述神经网络模型还包括池化层(模块)为例,详细阐述池化处理的具体过程。所述神经网络模型中的池化层的数量本申请不做限定,具体可为一个或多个。在卷积层的卷积运算后,可将特征数据输入池化层中进行特征提取,以获得相应地池化特征数据。本申请中池化层采用的池化参数为三维池化参数,其包括在深度方向上的池化参数,具体用于在深度方向进行数据的特征提取。
具体的,当计算设备利用神经网络中卷积层的至少一个二维卷积核对待处理数据进行处理后,获得第八特征数据。进一步地,将第八特征数据输入池化层中,利用池化层中的三维池化参数对第八特征数据进行特征提取,以获得第九特征数据。然后,根据第九特征数据获得结果数据,例如利用全连接层对第九特征数据进行处理等等,本申请不做限定。
所述三维池化参数可包括C个通道,每个通道包括k4×k4的感受野(即大小为k4×k4的二维池化参数)。所述第八特征数据和所述待处理数据具有相同的尺寸大小,即所述第八特征数据包括D个通道,每个通道包括H×W的二维数据。
下面举两个例子对以上方案进行详细阐述。
第一个例子:每个卷积层中的至少一个二维卷积核呈串联
如图7A示出一种神经网络模型的结构示意图。如图所示的神经网络模型包括5个卷积块以及全连接层,每个卷积块相互级联,例如第一个卷积块的输出数据作为第二个卷积块的输入数据,以输入到第二个卷积块中进行处理。每个卷积块中包括4个级联的卷积层,每个卷积层中包括有相互级联的三种二维卷积核,具体可为深度卷积核、高度卷积核以及宽度卷积核,它们具体的排列顺序(摆放位置)本申请不做限定。且每个卷积块中的二维卷积核支持跳层连接,以获得更多的特征数据,如图中第一个卷积层中的宽度卷积核和第二个卷积层中的高度卷积核连接。可选地,图7A中每个卷积块还可包括聚合模块、池化模块以及扰乱模块。
下面阐述图7A所示神经网络模型涉及的一些具体实施例。具体的,本例中待处理数据(待处理图像)的尺寸可为3×32×32,即包括3个通道,每个通道包括32×32的二维数据。计算设备可将待处理数据3×32×32输入神经网络模型中,首先利用神经网络模型中的传统卷积核(传统卷积算子,例如三维卷积核)进行预设次数的卷积运算,例如完成一个卷积运算,可获得6×32×32的第一特征图像。进一步地,将第一特征图像输入图7A所示的结构中,利用卷积块中3个级联的二维卷积核进行卷积运算,然后利用聚合模块将每个卷积层输出的特征图像进行聚合,以获得聚合特征图像。此时,聚合特征图像的通道数已扩充了4倍,聚合特征图像的宽度和高度不发生变化,即聚合特征图像的尺寸为24×32×32。
接着,计算设备将聚合特征图像输入池化层中进行池化处理。具体的,本例中池化层的池化参数可为2×2×2。相应地,聚合特征图像经过池化层分别沿着高度、宽度以及深度方向上进行特征提取(池化处理)后,可获得大小为12×14×14的池化特征图像。此时池化特征图像的通道数相比于待处理图像而言,通道数扩充了1倍,池化特征图像的高度和宽度均没发生变化。进一步地,计算设备将池化特征图像输入扰乱模块,以在预设方向上对所述池化特征图像进行特征扰乱,以对应获得更具表达能力的扰乱特征图像,该扰乱特征图像的尺寸和池化特征图像的尺寸相同。所述预设方向包括但不限于以下中的任一项:高度方向、宽度方向以及深度方向。
举例来说,如图8示出在深度方向上进行特征扰乱的示意图。如图8所示,输入扰乱模块的输入数据包括24个通道,每个通道包括大小相同的二维数据。相应地,扰乱模块按照通道,对24个通道中各自的二维数据进行特征扰乱,以获得通道乱序的扰乱特征数据。可选地,可记录扰乱顺序,在模型训练过程中可按照扰乱顺序对特征进行重组,以获得扰乱特征数据(或扰乱特征图像)。具体如图8所示,本申请这里不做详述。
同样地,计算设备可按照上述原理利用每个卷积块中的卷积层、池化层、聚合模块以及扰乱模块对数据进行处理,将最后一个卷积块输出的特征数据(图像)输入全连接层进行处理,以最终获得所述神经网络模型输出的结果数据,本申请这里不做详述。
第二个例子:每个卷积层中的至少一个二维卷积核呈并联
如图7B示出另一种神经网络模型的结构示意图。如图所示的神经网络模型包括5个卷积块以及全连接层,每个卷积块相互级联,例如第一个卷积块的输出数据作为第二个卷积块的输入数据,以输入到第二个卷积块中进行处理。每个卷积块中包括4个级联的卷积层,每个卷积层中包括有相互并联的三种二维卷积核,具体可为深度卷积核、高度卷积核以及宽度卷积核,它们具体的排列顺序(摆放位置)本申请不做限定。且每个卷积块中的二维卷积核支持跳层连接,以获得更多的特征数据,如图中第一个卷积层中的宽度卷积核和第二个卷积层中的高度卷积核连接。可选地,图7B中每个卷积块还可包括聚合模块、池化模块以及扰乱模块。
下面阐述图7B所示神经网络模型涉及的一些具体实施例。具体的,本例中待处理数据(待处理图像)的尺寸可为3×32×32,即包括3个通道,每个通道包括32×32的二维数据。计算设备可将待处理数据3×32×32输入神经网络模型中,首先利用神经网络模型中的传统卷积核(传统卷积算子,例如三维卷积核)进行预设次数的卷积运算,例如完成一个卷积运算,可获得6×32×32的第一特征图像。进一步地,将第一特征图像输入图7B所示的结构中,利用卷积块中3个并联的二维卷积核进行卷积运算,然后利用聚合模块将每个二维卷积核输出的特征图像进行聚合,以获得聚合特征图像。此时,聚合特征图像的通道数呈几何倍数增长,聚合特征图像的宽度和高度不发生变化。例如图示中聚合特征图像的尺寸为24×32×32。
接着,计算设备将聚合特征图像输入池化层中进行池化处理。具体的,本例中池化层的池化参数可为2×2×2。相应地,聚合特征图像经过池化层分别沿着高度、宽度以及深度方向上进行特征提取(池化处理)后,可获得大小为12×14×14的池化特征图像。此时池化特征图像的通道数相比于待处理图像而言,通道数扩充了1倍,池化特征图像的高度和宽度均没发生变化。进一步地,计算设备将池化特征图像输入扰乱模块,以在预设方向上对所述池化特征图像进行特征扰乱,以对应获得更具表达能力的扰乱特征图像,该扰乱特征图像的尺寸和池化特征图像的尺寸相同。所述预设方向包括但不限于以下中的任一项:高度方向、宽度方向以及深度方向。关于特征扰乱具体可参见前述实施例中的相关阐述,这里不再赘述。
同样地,计算设备可按照上述原理利用神经网络中的每个卷积块对数据进行处理,将最后一个卷积块输出的特征数据(图像)输入全连接层进行处理,以获得最终该神经网络模型输出的结果数据,本申请这里不做详述。
需要说明的是,如果本申请中卷积层中包括三个二维卷积核,具体可为深度卷积核、高度卷积核以及宽度卷积核,每个卷积核的感受野假设均为k×k。则相应地,本申请采用二维卷积核实现卷积运算时进行乘加的计算规模具体为q×w×h×(k×k×3)。由此可见,相比于现有方案一中卷积运算的计算量能够下降2个数量级(下降2倍),相比于现有方案二中卷积运算的计算量能够下降1个数量级(下降1倍)。
通过实施本发明实施例,采样二维卷积核来实现卷积运算,能够解决现有技术中存在的计算量大、计算复杂度高等问题。
图9是本发明实施例提供的一种数据处理***的结构示意图。如图9所示的***90包括一个或多个数据处理装置,每个数据处理装置900可包括通信模块902以及处理模块904。其中,这些处理装置的处理模块904可共同或单独用于对数据处理***90的动作进行控制管理。示例性地,这些数据处理装置的处理模块904可共同或单独用于执行图6中步骤S104,和/或用于执行本文所描述的技术的其它步骤。例如,每个数据处理装置的处理模块904可用于支持数据处理装置900执行图6中步骤S104等。
这些处理装置的通信模块902可共同或单独用于与其它模块或设备的通信,例如,每个通信模块902用于支持数据处理装置900执行图6中步骤S102,和/或用于执行本文所描述的技术的其它步骤。
可选地,每个数据处理装置还可包括存储模块906。所述存储模块用于存储所述数据处理装置900的程序代码和数据。
其中,处理模块904可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本发明公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块902可以是通信接口、收发器、收发电路等,其中,通信接口是统称,可以包括一个或多个接口,例如通信模块与处理模块之间的接口、计算设备与其他设备之间的接口等。存储模块906可以是存储器,或者其他用于提供存储功能的服务或模块。
当处理模块904为处理器,通信模块902为通信接口,存储模块906为存储器时,本发明实施例所涉及数据处理***可以为图10所示的数据处理***。
参阅图10所示,该数据处理***100包括至少一个计算设备1000,每个计算设备1000都可以包括:处理器1001、通信接口1001、存储器1003。可选地,每个计算设备1000还可以包括总线1004。其中,通信接口1003、处理器1002以及存储器1001可以通过总线1004相互连接;总线1004可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。所述总线1004可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中:
处理器1001可以由一个或者多个通用处理器构成,例如中央处理器(CentralProcessing Unit,CPU)。处理器1001可用于运行相关的程序代码中处理功能的程序。也就是说,处理器1001执行程序代码可以实现处理模块的功能。其中,关于处理模块具体可参见前述实施例中的相关阐述。
在一种可能的实施方式中,所述至少一个计算设备910的处理器共同用于运行相关的程序代码,以实现本申请上述处理模块的功能,或以实现本申请上述图6示出的S104的步骤,和/或实现本文所描述的技术的其它步骤等,本申请这里不做详述和限定。
在另一种可能的实施方式中,每个计算设备910的处理器可单独用于运行相关的程序代码,以实现本申请上述处理模块的功能,或实现本申请上述图6示出的S104的步骤,和/或实现本文所描述的技术的其它步骤等,本申请这里不做详述和限定。
通信接口1002可以为有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他模块/设备进行通信。例如,本申请实施例中通信接口602具体可用于接收其他设备或用户发送的待处理数据等。
存储器1003可以包括易失性存储器(Volatile Memory),例如随机存取存储器(Random Access Memory,RAM);存储器也可以包括非易失性存储器(Non-VolatileMemory),例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);存储器1003还可以包括上述种类的存储器的组合。存储器1003可用于存储一组程序代码,以便于处理器601调用存储器1003中存储的程序代码以实现本发明实施例中涉及的通信模块和/或处理模块的功能。
需要说明的,图9或图10仅仅是本申请实施例的一种可能的实现方式,实际应用中,数据处理***还可以包括更多或更少的部件,这里不作限制。关于本申请实施例中未示出或未描述的内容,可参见前述图6所述实施例中的相关阐述,这里不再赘述。
本发明实施例还提供一种计算机非瞬态存储介质,所述计算机非瞬态存储介质中存储有指令,当其在处理器上运行时,图6所示的方法流程得以实现。
本发明实施例还提供一种计算机程序产品,当所述计算机程序产品在处理器上运行时,图6所示的方法流程得以实现。
结合本发明实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(Random Access Memory,RAM)、闪存、只读存储器(Read Only Memory,ROM)、可擦除可编程只读存储器(Erasable Programmable ROM,EPROM)、电可擦可编程只读存储器(Electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于计算设备中。当然,处理器和存储介质也可以作为分立组件存在于计算设备中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (22)
1.一种数据处理方法,其特征在于,所述方法包括:
接收待处理数据,将所述待处理数据输入神经网络模型;
根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;
其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。
2.根据权利要求1所述的方法,其特征在于,所述至少一个二维卷积核包括深度卷积核,
所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
根据所述神经网络模型中的深度卷积核对所述待处理数据的D个通道中每个通道的二维数据采用k1×k1的感受野进行特征提取,以获得第一特征数据;其中,所述第一特征数据包括所述D个通道中每个通道的大小为H×W的二维数据,k1为正整数;
根据所述第一特征数据获得所述结果数据。
3.根据权利要求1或2所述的方法,其特征在于,所述至少一个二维卷积核包括高度卷积核,
所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
根据所述神经网络模型中的高度卷积核,对所述待处理数据中的H个行数据采用k2×k2的感受野进行特征提取,以获得第二特征数据;其中,每个行数据为大小为D×W的二维数据,第i个行数据包括所述待处理数据的D个通道中每个通道的第i行数据,i为小于或等于H的正整数,所述第二特征数据包括H个大小为D×W的二维数据,k2为正整数;
根据所述第二特征数据获得所述结果数据。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述至少一个二维卷积核包括宽度卷积核,
所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
根据所述神经网络模型中的宽度卷积核,对所述待处理数据中的W个列数据采用k3×k3的感受野进行特征提取,以获得第三特征数据;其中,每个列数据为大小为D×H的二维数据,第j个列数据包括所述待处理数据的D个通道中每个通道的第j列数据,j为小于或等于W的正整数,所述第三特征数据包括W个大小为D×H的二维数据,k3为正整数;
根据所述第三特征数据获得所述结果数据。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,以获得第四特征数据;
将所述第四特征数据输入所述至少一个二维卷积核中的第二二维卷积核,以获得第五特征数据;
根据所述第五特征数据获得所述结果数据。
6.根据权利要求1-4中任一项所述的方法,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,获得第六特征数据;
将所述待处理数据输入所述至少一个二维卷积核中的第二二维卷积核,获得第七特征数据;
将所述第六特征数据和所述第七特征数据聚合;
根据所述聚合的结果获得所述结果数据。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据包括:
根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,获得第八特征数据;
根据所述神经网络模型中的三维池化参数对所述第八特征数据进行特征提取,以获得第九特征数据;其中,所述三维池化参数包括C个通道,所述C个通道中每个通道包括大小为K4×K4的二维池化参数,K4为正整数;
根据所述第九特征数据获得所述结果数据。
8.一种数据处理装置,其特征在于,所述数据处理装置包括通信模块以及处理模块;
所述通信模块,用于接收待处理数据,将所述待处理数据输入神经网络模型;
所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;
其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。
9.根据权利要求8所述的装置,其特征在于,所述至少一个二维卷积核包括深度卷积核,
所述处理模块,用于根据所述神经网络模型中的深度卷积核对所述待处理数据的D个通道中每个通道的二维数据采用k1×k1的感受野进行特征提取,以获得第一特征数据;其中,所述第一特征数据包括所述D个通道中每个通道的大小为H×W的二维数据,k1为正整数;根据所述第一特征数据获得所述结果数据。
10.根据权利要求8或9所述的装置,其特征在于,所述至少一个二维卷积核包括高度卷积核,
所述处理模块,用于根据所述神经网络模型中的高度卷积核,对所述待处理数据中的H个行数据采用k2×k2的感受野进行特征提取,以获得第二特征数据;其中,每个行数据为大小为D×W的二维数据,第i个行数据包括所述待处理数据的D个通道中每个通道的第i行数据,i为小于或等于H的正整数,所述第二特征数据包括H个大小为D×W的二维数据,k2为正整数;根据所述第二特征数据获得所述结果数据。
11.根据权利要求8-10中任一项所述的装置,其特征在于,所述至少一个二维卷积核包括宽度卷积核,
所述处理模块,用于根据所述神经网络模型中的宽度卷积核,对所述待处理数据中的W个列数据采用k3×k3的感受野进行特征提取,以获得第三特征数据;其中,每个列数据为大小为D×H的二维数据,第j个列数据包括所述待处理数据的D个通道中每个通道的第j列数据,j为小于或等于W的正整数,所述第三特征数据包括W个大小为D×H的二维数据,k3为正整数;根据所述第三特征数据获得所述结果数据。
12.根据权利要求8-11中任一项所述的装置,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,以获得第四特征数据;将所述第四特征数据输入所述至少一个二维卷积核中的第二二维卷积核,以获得第五特征数据;根据所述第五特征数据获得所述结果数据。
13.根据权利要求8-11中任一项所述的装置,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,获得第六特征数据;将所述待处理数据输入所述至少一个二维卷积核中的第二二维卷积核,获得第七特征数据;将所述第六特征数据和所述第七特征数据聚合;根据所述聚合的结果获得所述结果数据。
14.根据权利要求8-13中任一项所述的装置,其特征在于,
所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,获得第八特征数据;根据所述神经网络模型中的三维池化参数对第八特征数据进行特征提取,以获得第九特征数据;其中,所述三维池化参数包括C个通道,所述C个通道中每个通道包括大小为K4×K4的二维池化参数;根据所述第九特征数据获得所述结果数据。
15.一种数据处理***,其特征在于,所述数据处理***包括至少一个计算设备,每个计算设备包括处理器和存储器,其中:
所述存储器,用于存储程序代码;
所述处理器,用于执行所述存储器中的代码,以实现通信模块以及处理模块,其中,
所述通信模块,用于接收待处理数据,将所述待处理数据输入神经网络模型;
所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,以获得结果数据;
其中,所述待处理数据包括D个通道,所述D个通道中的每个通道包括大小为H×W的二维数据,D、H以及W均为正整数。
16.根据权利要求15所述的***,其特征在于,所述至少一个二维卷积核包括深度卷积核,
所述处理模块,用于根据所述神经网络模型中的深度卷积核对所述待处理数据的D个通道中每个通道的二维数据采用k1×k1的感受野进行特征提取,以获得第一特征数据;其中,所述第一特征数据包括所述D个通道中每个通道的大小为H×W的二维数据,k1为正整数;根据所述第一特征数据获得所述结果数据。
17.根据权利要求15或16所述的***,其特征在于,所述至少一个二维卷积核包括高度卷积核,
所述处理模块,用于根据所述神经网络模型中的高度卷积核,对所述待处理数据中的H个行数据采用k2×k2的感受野进行特征提取,以获得第二特征数据;其中,每个行数据为大小为D×W的二维数据,第i个行数据包括所述待处理数据的D个通道中每个通道的第i行数据,i为小于或等于H的正整数,所述第二特征数据包括H个大小为D×W的二维数据,k2为正整数;根据所述第二特征数据获得所述结果数据。
18.根据权利要求15-17中任一项所述的***,其特征在于,所述至少一个二维卷积核包括宽度卷积核,
所述处理模块,用于根据所述神经网络模型中的宽度卷积核,对所述待处理数据中的W个列数据采用k3×k3的感受野进行特征提取,以获得第三特征数据;其中,每个列数据为大小为D×H的二维数据,第j个列数据包括所述待处理数据的D个通道中每个通道的第j列数据,j为小于或等于W的正整数,所述第三特征数据包括W个大小为D×H的二维数据,k3为正整数;根据所述第三特征数据获得所述结果数据。
19.根据权利要求15-18中任一项所述的***,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,以获得第四特征数据;将所述第四特征数据输入所述至少一个二维卷积核中的第二二维卷积核,以获得第五特征数据;根据所述第五特征数据获得所述结果数据。
20.根据权利要求15-18中任一项所述的***,其特征在于,所述至少一个二维卷积核包括深度卷积核、高度卷积核以及宽度卷积核中的任意两个或多个,
所述处理模块,用于将所述待处理数据输入所述至少一个二维卷积核中的第一二维卷积核,获得第六特征数据;将所述待处理数据输入所述至少一个二维卷积核中的第二二维卷积核,获得第七特征数据;将所述第六特征数据和所述第七特征数据聚合;根据所述聚合的结果获得所述结果数据。
21.根据权利要求15-20中任一项所述的***,其特征在于,
所述处理模块,用于根据所述神经网络模型中的至少一个二维卷积核对所述待处理数据进行处理,获得第八特征数据;根据所述神经网络模型中的三维池化参数对第八特征数据进行特征提取,以获得第九特征数据;其中,所述三维池化参数包括C个通道,所述C个通道中每个通道包括大小为K4×K4的二维池化参数;根据所述第九特征数据获得所述结果数据。
22.一种计算机非瞬态存储介质,所述计算机非瞬态存储介质存储有计算机程序,其特征在于,所述计算机程序被计算设备执行时实现如权利要求1至7任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810786519.5A CN110728351A (zh) | 2018-07-17 | 2018-07-17 | 数据处理方法、相关设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810786519.5A CN110728351A (zh) | 2018-07-17 | 2018-07-17 | 数据处理方法、相关设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110728351A true CN110728351A (zh) | 2020-01-24 |
Family
ID=69217613
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810786519.5A Pending CN110728351A (zh) | 2018-07-17 | 2018-07-17 | 数据处理方法、相关设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110728351A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111858036A (zh) * | 2020-06-29 | 2020-10-30 | 浪潮电子信息产业股份有限公司 | 基于FPGA设备的TensorFlow***加速方法、装置、设备及存储介质 |
CN113592059A (zh) * | 2020-04-30 | 2021-11-02 | 伊姆西Ip控股有限责任公司 | 用于处理数据的方法、设备和计算机程序产品 |
CN113919405A (zh) * | 2020-07-07 | 2022-01-11 | 华为技术有限公司 | 数据处理方法、装置与相关设备 |
-
2018
- 2018-07-17 CN CN201810786519.5A patent/CN110728351A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113592059A (zh) * | 2020-04-30 | 2021-11-02 | 伊姆西Ip控股有限责任公司 | 用于处理数据的方法、设备和计算机程序产品 |
US11888705B2 (en) | 2020-04-30 | 2024-01-30 | EMC IP Holding Company LLC | Method, device, and computer program product for processing data |
CN111858036A (zh) * | 2020-06-29 | 2020-10-30 | 浪潮电子信息产业股份有限公司 | 基于FPGA设备的TensorFlow***加速方法、装置、设备及存储介质 |
CN111858036B (zh) * | 2020-06-29 | 2022-06-10 | 浪潮电子信息产业股份有限公司 | 基于FPGA设备的TensorFlow***加速方法、装置、设备及存储介质 |
CN113919405A (zh) * | 2020-07-07 | 2022-01-11 | 华为技术有限公司 | 数据处理方法、装置与相关设备 |
CN113919405B (zh) * | 2020-07-07 | 2024-01-19 | 华为技术有限公司 | 数据处理方法、装置与相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11462035B2 (en) | Processing images using deep neural networks | |
US11062181B2 (en) | Image classification neural networks | |
US10474430B2 (en) | Mixed-precision processing elements, systems, and methods for computational models | |
EP3349153A1 (en) | Convolutional neural network (cnn) processing method and apparatus | |
EP3483791A1 (en) | Computation system using hierarchical network | |
US20170193368A1 (en) | Conditional parallel processing in fully-connected neural networks | |
US11144782B2 (en) | Generating video frames using neural networks | |
CN113222150B (zh) | 一种量子态的变换方法及装置 | |
CN107610146A (zh) | 图像场景分割方法、装置、计算设备及计算机存储介质 | |
CN110728351A (zh) | 数据处理方法、相关设备及计算机存储介质 | |
CN114207625A (zh) | 用于性能优化的分布式深度学习的***感知选择性量化 | |
KR20190140841A (ko) | 확률 적응적 자원 할당을 통한 신경망 하드웨어 가속 | |
CN111738276A (zh) | 基于多核卷积神经网络的图像处理方法、装置及设备 | |
CN113222151B (zh) | 一种量子态的变换方法及装置 | |
US11049000B2 (en) | Distributed state via cascades of tensor decompositions and neuron activation binding on neuromorphic hardware | |
CN112561050A (zh) | 一种神经网络模型训练方法及装置 | |
CN112132272B (zh) | 神经网络的计算装置、处理器和电子设备 | |
CN113159297A (zh) | 一种神经网络压缩方法、装置、计算机设备及存储介质 | |
CN113055666A (zh) | 一种视频质量评估方法及装置 | |
CN114360003A (zh) | 一种人脸表情识别方法及装置 | |
CN114692879A (zh) | 一种基于稀疏线性***的量子预处理方法及装置 | |
CN118016070A (zh) | 语音识别方法、装置、电子设备及存储介质 | |
CN114764618A (zh) | 一种针对线性***的量子预处理方法及装置 | |
CN113516237A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220216 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Applicant after: Huawei Cloud Computing Technologies Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Applicant before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200124 |