一种深度神经网络运算方法及装置制造方法及图纸

技术编号:24123835 阅读:21 留言:0更新日期:2020-05-13 03:55
本申请实施例提供了一种深度神经网络运算方法及装置,深度神经网络运算方法包括:获取网络层输入特征图;按照预设位移参数,将网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,其中,预设位移参数包括每个通道在各轴向上的位移量;利用1×1卷积核,对位移特征图进行卷积运算,得到网络层输出特征图。通过本方案,可以提高DNN的运行效率。

【技术实现步骤摘要】
一种深度神经网络运算方法及装置
本申请涉及机器学习
,特别是涉及一种深度神经网络运算方法及装置。
技术介绍
DNN(DeepNeuralNetwork,深度神经网络)作为机器学习研究中的一个新兴领域,通过模仿人脑的机制来解析数据,是一种通过建立和模拟人脑进行分析学习的智能模型。目前,例如CNN(ConvolutionalNeuralNetwork,卷积神经网络)、RNN(RecurrentNeuralNetwork,循环神经网络)、LSTM(LongShortTermMemory,长短期记忆网络)等DNN已在目标检测与分割、行为检测与识别、语音识别等方面得到了很好的应用。随着数据量的不断增加,DNN的计算复杂度不断提高。为了降低DNN的计算复杂度,目前DNN多采用轻量化神经网络结构,例如移动端卷积神经网络MobileNet和ShuffleNet等,这些轻量化神经网络结构通过DWConv(DepthwiseConvolution,通道分离卷积)实现卷积运算。具体的,对输入特征图每个通道分别进行卷积运算,再利用1×1卷积核对每个通道的卷积结果进行卷积运算,实现通道维度上的信息聚合。DWConv将复杂的卷积运算拆分开来,先对一个通道的特征图进行卷积,再利用1×1卷积核进行通道维度上的信息聚合,降低了每一次进行卷积运算的复杂度。然而如上述,DWConv运算需要进行多次的卷积运算,多次的卷积运算过程会导致DNN的实际运行效率较低。
技术实现思路
本申请实施例的目的在于提供一种深度神经网络运算方法及装置,以提高DNN的运行效率。具体技术方案如下:第一方面,本申请实施例提供了一种深度神经网络运算方法,所述方法包括:获取网络层输入特征图;按照预设位移参数,将所述网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,其中,所述预设位移参数包括每个通道在各轴向上的位移量;利用1×1卷积核,对所述位移特征图进行卷积运算,得到网络层输出特征图。可选的,所述位移量为预设的多个不同偏移量的平均分布。可选的,所述预设位移参数经过预先学习得到;所述预设位移参数的学习方式,包括:获取初始的位移参数;将所述位移参数中的位移量转化为浮点位移量;根据所述网络层输入特征图以及所述浮点位移量,利用双线性插值算法,得到网络层输出函数;根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,确定所述深度神经网络的网络损失值;根据所述网络层输出函数,计算所述网络损失值对所述位移参数的梯度,并利用梯度下降法,对位移参数进行多次迭代更新,得到预设位移参数。可选的,所述根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,确定所述深度神经网络的网络损失值,包括:根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,计算所述深度神经网络的网络损失函数;根据所述1×1卷积核,计算第一正则项;根据所述位移参数,计算第二正则项;对所述网络损失函数、所述第一正则项及所述第二正则项进行加权,得到所述深度神经网络的网络损失值。可选的,所述按照预设位移参数,将所述输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,包括:对所述预设位移参数中的浮点位移量进行四舍五入取整操作,得到整型位移量;按照所述预设位移参数中的整型位移量,将所述输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图。第二方面,本申请实施例提供了一种深度神经网络运算装置,所述装置包括:获取模块,用于获取网络层输入特征图;位移模块,用于按照预设位移参数,将所述网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,其中,所述预设位移参数包括每个通道在各轴向上的位移量;运算模块,用于利用1×1卷积核,对所述位移特征图进行卷积运算,得到网络层输出特征图。可选的,所述位移量为预设的多个不同偏移量的平均分布。可选的,所述预设位移参数经过预先学习得到;所述装置还包括:学习模块;所述学习模块,用于:获取初始的位移参数;将所述位移参数中的位移量转化为浮点位移量;根据所述网络层输入特征图以及所述浮点位移量,利用双线性插值算法,得到网络层输出函数;根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,确定所述深度神经网络的网络损失值;根据所述网络层输出函数,计算所述网络损失值对所述位移参数的梯度,并利用梯度下降法,对位移参数进行多次迭代更新,得到预设位移参数。可选的,所述学习模块,具体用于:根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,计算所述深度神经网络的网络损失函数;根据所述1×1卷积核,计算第一正则项;根据所述位移参数,计算第二正则项;对所述网络损失函数、所述第一正则项及所述第二正则项进行加权,得到所述深度神经网络的网络损失值。可选的,所述位移模块,具体用于:对所述预设位移参数中的浮点位移量进行四舍五入取整操作,得到整型位移量;按照所述预设位移参数中的整型位移量,将所述输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图。本申请实施例提供的一种深度神经网络运算方法及装置,获取网络层输入特征图,按照预设位移参数,将网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,利用1×1卷积核,对位移特征图进行卷积运算,得到网络层输出特征图。通过将网络层输入特征图的每个通道分别沿各轴向进行位移,利用网络层输入特征图的错位,沟通感受野内的信息,这样,使得后续1×1卷积核不但可以进行通道维度上的信息聚合,同时也可以进行空域维度上的信息聚合,整个过程只需要进行一次1×1卷积,有效的提高了DNN的运行效率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例的深度神经网络运算方法的流程示意图;图2为本申请实施例的通道位移示意图;图3a为本申请一实施例的深度神经网络结构示意图;图3b为本申请另一实施例的深度神经网络结构示意图;图4为本申请实施例的深度神经网络运算装置的结构示意图;图5为本申请实施例的电子设备的结构示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申本文档来自技高网...

【技术保护点】
1.一种深度神经网络运算方法,其特征在于,所述方法包括:/n获取网络层输入特征图;/n按照预设位移参数,将所述网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,其中,所述预设位移参数包括每个通道在各轴向上的位移量;/n利用1×1卷积核,对所述位移特征图进行卷积运算,得到网络层输出特征图。/n

【技术特征摘要】
1.一种深度神经网络运算方法,其特征在于,所述方法包括:
获取网络层输入特征图;
按照预设位移参数,将所述网络层输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,其中,所述预设位移参数包括每个通道在各轴向上的位移量;
利用1×1卷积核,对所述位移特征图进行卷积运算,得到网络层输出特征图。


2.根据权利要求1所述的方法,其特征在于,所述位移量为预设的多个不同偏移量的平均分布。


3.根据权利要求1所述的方法,其特征在于,所述预设位移参数经过预先学习得到;
所述预设位移参数的学习方式,包括:
获取初始的位移参数;
将所述位移参数中的位移量转化为浮点位移量;
根据所述网络层输入特征图以及所述浮点位移量,利用双线性插值算法,得到网络层输出函数;
根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,确定所述深度神经网络的网络损失值;
根据所述网络层输出函数,计算所述网络损失值对所述位移参数的梯度,并利用梯度下降法,对位移参数进行多次迭代更新,得到预设位移参数。


4.根据权利要求3所述的方法,其特征在于,所述根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,确定所述深度神经网络的网络损失值,包括:
根据所述深度神经网络的输入数据、所述1×1卷积核、所述位移参数以及所述输入数据对应的标签,计算所述深度神经网络的网络损失函数;
根据所述1×1卷积核,计算第一正则项;
根据所述位移参数,计算第二正则项;
对所述网络损失函数、所述第一正则项及所述第二正则项进行加权,得到所述深度神经网络的网络损失值。


5.根据权利要求3所述的方法,其特征在于,所述按照预设位移参数,将所述输入特征图的每个通道分别沿各轴向进行位移,得到位移特征图,包括:
对所述预设位移参数中的浮点位移量进行四舍五入取整操作,得到整型位移量;
按照所述预设位移参数中的整型位移量,将所述输入特征...

【专利技术属性】
技术研发人员:陈伟杰张渊谢迪浦世亮
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:浙江;33

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

1