CN112313674A - 神经网络模型部署方法、装置及设备 - Google Patents

神经网络模型部署方法、装置及设备 Download PDF

Info

Publication number
CN112313674A
CN112313674A CN201980039593.3A CN201980039593A CN112313674A CN 112313674 A CN112313674 A CN 112313674A CN 201980039593 A CN201980039593 A CN 201980039593A CN 112313674 A CN112313674 A CN 112313674A
Authority
CN
China
Prior art keywords
convolutional
layer
summation
neural network
network model
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
Application number
CN201980039593.3A
Other languages
English (en)
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.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology 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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Publication of CN112313674A publication Critical patent/CN112313674A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Abstract

一种神经网络模型部署方法、装置及设备,该方法包括:获得已训练好的卷积神经网络模型(201);对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果(202);根据所述知阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型(203);对所述压缩后模型进行部署(204)。本方法减少了对原始训练数据的依赖。

Description

神经网络模型部署方法、装置及设备
技术领域
本申请涉及神经网络技术领域,尤其涉及一种神经网络模型部署方法、装置及设备。
背景技术
随着神经网络技术的不断发展,卷积神经网络模型的应用越来越广泛。
通常,在对训练好的卷积神经网络模型进行部署之前可以通过如下两种方式对已训练好的卷积神经网络模型进行压缩,以减少已训练好的卷积神经网络模型的大小、降低计算量。一种方式,可以通过减少已训练好的卷积神经网络模型的通道数的方式进行模型压缩。另一种方式,可以通过将已训练好的神经网络模型的权重参数由浮点型权重参数转换为定点型权重参数的方式进行模型压缩。
然而,上述模型部署方式存在对原始训练数据依赖性较大的问题。
发明内容
本申请实施例提供一种神经网络模型部署方法、装置及设备,用以解决现有技术中模型部署方式存在对原始训练数据依赖性较大的问题。
第一方面,本申请实施例提供一种神经网络模型部署方法,包括:获得已训练好的卷积神经网络模型;所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果;根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型;对所述压缩后模型进行部署。
第二方面,本申请实施例提供一种神经网络模型部署装置,包括:处理器和存储器;所述存储器,用于存储程序代码;所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
获得已训练好的卷积神经网络模型;对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果;根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型;对所述压缩后模型进行部署。
第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行上述第一方面任一项所述的方法。
第四方面,本申请实施例提供一种计算机程序,当所述计算机程序被计算机执行时,用于实现上述第一方面任一项所述的方法。
第五方面,本申请实施例提供一种移动平台,包括存储器和处理器,所述存储器中存储有根据第一方面任一项所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动平台获得的传感器数据。
第六方面,本申请实施例提供一种云台设备,包括存储器和处理器,所述存储器中存储有根据第一方面任一项所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述云台设备获得的传感器数据。
第七方面,本申请实施例提供一种移动终端,包括存储器和处理器,所述存储器中存储有根据第一方面任一项所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动终端获得的传感器数据。
本申请实施例提供一种神经网络模型部署方法、装置及设备,通过对已训练好的卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得卷积层的矩阵分解结果,根据矩阵分解结果,调整卷积神经网络模型的结构,以对卷积神经网络模型进行压缩,并对压缩后模型进行部署,实现了通过对权重参数进行矩阵分解并根据矩阵分解结果调整卷积神经网络模型的结构,获得压缩后模型,由于矩阵分解所得到的矩阵分解结果中可以保留矩阵的特征,即保留原卷积层的权重参数的特征,因此根据矩阵分解结果调整卷积神经网络模型的结构所获得的压缩后模型能够保留原卷积层的卷积特征,进而能够保留模型的输入输出特性,从而减少了对原始训练数据的依赖。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的神经网络模型部署方法的应用场景示意图;
图2为本申请一实施例提供的神经网络模型部署方法的流程示意图;
图3为本申请另一实施例提供的神经网络模型部署方法的流程示意图;
图4为本申请又一实施例提供的神经网络模型部署方法的流程示意图;
图5为本申请一实施例提供的对卷积层的权重参数进行矩阵分解的示意图;
图6为本申请一实施例提供的卷积层与其替代层的输入输出关系的示意图;
图7为本申请又一实施例提供的神经网络模型部署方法的流程示意图;
图8为本申请另一实施例提供的对卷积层的权重参数进行矩阵分解的示意图;
图9为本申请另一实施例提供的卷积层与其替代层的输入输出关系的示意图;
图10为本申请又一实施例提供的神经网络模型部署方法的流程示意图;
图11为本申请又一实施例提供的卷积层与其替代层的输入输出关系的示意图;
图12为本申请一实施例提供的神经网络模型部署装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供的神经网络模型部署方法可以应用于任何需要部署卷积神经网络模型的场景中。该神经网络模型部署方法具体可以由神经网络模型部署装置执行。本申请实施例提供的神经网络模型部署方法的应用场景示意图可以如图1所示,具体的,神经网络模型部署装置11可以从其他装置/设备12获得已训练好的卷积神经网络模型,并对获得的卷积神经网络模型采用本申请实施例提供的神经网络模型部署方法进行处理。对于神经网络模型部署装置11与其他装置/设备12通讯连接的具体方式,本申请可以不做限定,例如可以基于蓝牙接口实现无线通讯连接,或者基于RS232接口实现有线通讯连接。
其中,包括神经网络模型部署装置的设备,具体可以为计算能力较强的计算机设备。
需要说明的是,图1中以基于神经网络模型部署装置从其他装置或设备获得卷积神经网络模型为例,可替换的,神经网络模型部署装置可以通过其他方式获得卷积神经网络模型,示例性的,神经网络模型部署装置可以通过训练初始的卷积神经网络模型获得卷积神经网络模型。
本申请实施例提供的神经网络模型部署方法,通过对已训练好的卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得卷积层的矩阵分解结果,根据矩阵分解结果,调整卷积神经网络模型的结构,以对卷积神经网络模型进行压缩,并对压缩后模型进行部署,减少了对原始训练数据的依赖。
下面结合附图,对本申请的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。
图2为本申请一实施例提供的神经网络模型部署方法的流程示意图,本实施例的执行主体可以为神经网络模型部署装置,具体可以为神经网络模型部署装置的处理器。如图2所示,本实施例的方法可以包括:
步骤201,获得已训练好的卷积神经网络模型。
本步骤中,对于获得已训练好的卷积神经网络模型的具体方式,本申请可以不做限定。例如,可以接收其他装置/设备发送的已训练好的卷积神经网络模型。又例如,可以从其他装置/设备的存储设备中读取已训练好的卷积神经网络模型。
步骤202,对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果。
本步骤中,对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解的矩阵分解方式可以为满足条件1的方式。其中,条件1为能够将矩阵分解为多个求和项之和。
可选的,所述矩阵分解方式进一步还可以满足条件2。条件2为将矩阵分解所得到的多个求和项中存在能量大于第一阈值的求和项A以及能量小于第二阈值的求和项B。其中,多个求和项中存在能量大于第一阈值的求和项A以及能量小于第二阈值的求和项B可以表示不同求和项的能量差异程度较大。其中,第一阈值例如可以为80%,第二阈值例如可以为5%。一个求和项的能量可以用于该求和项的在矩阵分解结果中的重要程度,能量越大可以表示重要程度越大。
通过满足条件2,使得矩阵分解结果中的少量求和项的能量之和,在所有求和项的能量之和中可以占较大比例,因此根据少量求和项能够近似卷积层的权重参数,从而能够提高压缩效果。示例性的,矩阵分解方式可以为奇异值分解(Singular ValueDecomposition,SVD),相应的,能量可以理解为奇异值。
示例性的,可以对卷积神经网络模型中部分或全部卷积层中各卷积层的权重参数分别进行矩阵分解,获得各卷积层的矩阵分解结果。
步骤203,根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型。
本步骤中,由于矩阵分解结果改变了权重参数的结构,而权重参数的结构是与模型的结构对应,因此需要根据矩阵分解结果调整卷积神经网络模型的结构。
示例性的,当矩阵分解结果的全部求和项对应模型结构的权重参数量小于已训练好的卷积神经网络模型时,可以根据全部求和项调整卷积神经网络模型的结果,或者,可以从全部求和项中选择部分求和项,并根据部分求和项调整卷积神经网络模型的结构。
当矩阵分解结果的全部求和项对应模型结构的权重参数量大于或等于已训练好的卷积神经网络模型时,可以从全部求和项中选择部分求和项,并根据部分求和项调整卷积神经网络模型的结构。
步骤204,对所述压缩后模型进行部署。
本步骤中,示例性的,可以直接将压缩后模型直接部署到执行模型计算的设备;或者,可以由执行模型计算的设备从神经网络模型部署装置的存储设备中读取压缩后模型。
示例性的,可以将压缩后模型发送至其他装置/设备,例如其他装置/设备12,由其他装置/设备将压缩后模型部署到执行模型计算的设备,或者由执行模型计算的设备从其他装置/设备的存储设备中读取压缩后模型。
其中,执行模型计算的设备,具体可以为需要部署卷积神经网络模型的任意类型设备。示例性的,执行模型计算的设备可以包括可移动平台,例如无人机。
本实施例中,通过对已训练好的卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得卷积层的矩阵分解结果,根据矩阵分解结果,调整卷积神经网络模型的结构,以对卷积神经网络模型进行压缩,并对压缩后模型进行部署,实现了通过对权重参数进行矩阵分解并根据矩阵分解结果调整卷积神经网络模型的结构,获得压缩后模型,由于矩阵分解所得到的矩阵分解结果中可以保留矩阵的特征,即保留原卷积层的权重参数的特征,因此根据矩阵分解结果调整卷积神经网络模型的结构所获得的压缩后模型能够保留原卷积层的卷积特征,进而能够保留模型的输入输出特性,从而减少了对原始训练数据的依赖。
图3为本申请另一实施例提供的神经网络模型部署方法的流程示意图。本实施例在图2所示实施例的基础上,主要描述了根据所述矩阵分解结果,调整所述卷积神经网络模型的结构的一种可选实现方式。如图3所示,本实施例的方法可以包括:
步骤301,获得已训练好的卷积神经网络模型。
需要说明的是,步骤301与步骤201类似,在此不再赘述。
步骤302,对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果。
需要说明的是,步骤302与步骤202类似,在此不再赘述。
步骤303,根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,所述替代层的权重参数的数量少于所述卷积层的权重参数的数量。
本步骤中,卷积神经网络模型中一个卷积层的替代层用于替换卷积神经网络模型中的该卷积层。通过替代层的权重参数的数量少于卷积层的权重参数的数量,可以实现对模型的压缩。
需要说明的是,一个卷积层的替换层的结构以及该替换层的权重参数与该卷积层的矩阵分解结果中的全部或部分求和项对应。
示例性的,所述矩阵分解结果包括多个求和项;所述根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,具体可以包括:根据所述多个求和项中的部分求和项,确定用于替换所述卷积层的替代层。此时,替换层的结构以及该替换层的权重参数与矩阵分解结构中的部分求和项对应。
为了补偿由于替代层的权重参数中未考虑多个求和项中部分求和项之外的其他求和项所带来的误差,可选的,本实施例的方法还可以包括:根据所述多个求和项中所述部分求和项之外的其他求和项,确定所述替代层的偏置(bias)参数。通过根据其他求和项确定替代层的偏置参数,实现了通过替代层的偏置参数补偿替代层的权重参数中未考虑其他求和项所带来的误差,有利于提高压缩后模型的准确度。
由于一个卷积层的输入通常源于上一层卷积经批量归一化(BatchNormalization,BN)的输出,满足符合BN统计的正态分布,因此可以基于替代层的输入通道的正态分布特性,确定替代层的偏置参数。假定替代层的各输入通道独立同分布,且同一通道中各个位置的值对应其所属通道的均值,与其他求和项进行卷积,得到对应的压缩方式下的分解压缩损失。此方法计算得到的损失误差可以合入到偏置项中。示例性的,所述根据所述多个求和项中所述部分求和项之外的其他求和项,确定所述替代层的偏置参数,具体可以包括:将所述其他求和项的求和结果,与所述替代层中各输入通道的正态分布的均值分别进行卷积,获得各输入通道的卷积结果;将各输入通道的卷积结果,合入其偏置参数,以得到所述替代层的偏置参数。
步骤304,采用所述替代层替换所述卷积神经网络模型中的所述卷积层。
本步骤中,由于替换层的权重参数的结构相对于卷积层的权重参数的结构发生变化,因此替换层的结构相对于卷积层的结构发生变化,从而通过采用卷积神经网络模型中卷积层的替换层替换卷积神经网络模型中的该卷积层,实现了对卷积神经网络模型的结构的调整。
本实施例中,通过对已训练好的卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得卷积层的矩阵分解结果,根据矩阵分解结果确定用于替换所述卷积层的替代层,采用替代层替换卷积神经网络模型中的卷积层,实现了对卷积神经网络的结构的调整,并且由于替代层的权重参数的数量少于卷积层的权重参数的数量,因此实现了通过调整卷积神经网络的结构对卷积神经网络模型进行压缩。
图4为本申请又一实施例提供的神经网络模型部署方法的流程示意图,本实施例在图3所示实施例的基础上,主要描述了对卷积神经网络模型中卷积层的权重参数进行矩阵分解的一种可选的实现方式。如图4所示,本实施例的方法可以包括:
步骤401,获得已训练好的卷积神经网络模型。
需要说明的是,步骤401与步骤201类似,在此不再赘述。
步骤402,按照所述卷积神经网络模型中卷积层的输入通道,对所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第一矩阵分解结果。
本步骤中,假设卷积层的输入通道数为C,卷积层的输出通道数为N,卷积核大小为k*k,该卷积层的权重参数数量N×C×k2。如图5所示,可以根据输入通道将该卷积层的权重参数分成C组,每组大小为N×k2的二维矩阵。进一步的,以矩阵分解方式为SVD为例,二维矩阵
Figure BDA0002830882180000081
经SVD分解,
Figure BDA0002830882180000082
其中Ui∈RN
Figure BDA0002830882180000083
k2<<N。
其中,每组权重参数的所述第一矩阵分解结果包括多个第一求和项,各第一求和项均对应一个用于表征其重要程度的能量。
步骤403,按照能量由大至小的顺序,对每组权重参数的所述多个第一求和项进行排序,并选择排序靠前的部分求和项作为第一目标求和项。
本步骤中,示例性的,所述选择排序靠前的部分求和项作为第一目标求和项,具体可以包括:选择排序靠前且能量之和大于或等于能量阈值的部分求和项作为第一目标求和项。例如,假设能量阈值为0.9,一组的第一矩阵分解结果包括5个求和项,分别为求和项1至求和项5,且求和项1的能量为0.8,求和项2的能量为0.1,求和项3的能量为0.07,求和项4的能量为0.02,求和项5的能量为0.01,则可以选择5个求和项中的求和项1和求和项2作为第一目标求和项。
需要说明的是,能量阈值可以根据需求灵活实现。能量阈值越大,第一目标求和项越接近组权重参数。
示例性的,所述选择排序靠前的部分求和项作为第一目标求和项,具体可以包括:选择排序靠前且求和项个数小于或等于个数阈值的部分求和项作为第一目标求和项。例如,假设个数阈值为3,一组的第一矩阵分解结果包括5个求和项,分别为求和项1至求和项5,且求和项1至求和项5的能量依次减小,则可以选择5个求和项中的求和项1至求和项3作为第一目标求和项。
需要说明的是,个数阈值可以根据需求灵活实现。个数阈值越大,第一目标求和项越接近组权重参数。
步骤404,根据每组权重参数的所述第一目标求和项,确定用于替换所述卷积层的替代层。
本步骤中,示例性的,步骤404具体可以包括:根据不同组权重参数的排序位次相同的第一目标求和项对应同一分支,且不同分支并联的策略,确定用于替换所述卷积层的替代层。
例如,假设卷积层的输入通道数等于5,即该卷积层的权重参数共分为5组,每组中第一目标求和项的个数均为4,且第一组的4个第一目标求和项按照能量由大至小的顺序分别为求和项1a至求和项1d,第二组的4个第一目标求和项按照能量由大至小的顺序分别为求和项2a至求和项2d,第三组的4个第一目标求和项按照能量由大至小的顺序分别为求和项3a至求和项3d,第四组的4个第一目标求和项按照能量由大至小的顺序分别为求和项4a至求和项4d,第五组的4个第一目标求和项按照能量由大至小的顺序分别为求和项5a至求和项5d,则替代层可以包括并联的4个分支,分别为求和项1a、2a、3a、4a和5a对应的分支1,求和项1b、2b、3b、4b和5b对应的分支2,求和项1c、2c、3c、4c和5c对应的分支3,以及求和项1d、2d、3d、4d和5d对应的分支4。
示例性的,一个分支可以包括串联的第一卷积层和第二卷积层。其中,第一卷积层的输入可以为所替代的卷积层的输入,第一卷积层的输出可以为第二卷积层的输入。
示例性的,所述第一卷积层用于对所替代的所述卷积层的输入进行逐点卷积(pointwise convolution)运算。
示例性的,所述第一卷积层的输入通道的个数为C,C等于所替代的所述卷积层的输入通道的个数,所述第一卷积层的输出通道的个数为N,N等于所替代的所述卷积层的输出通道的个数,所述第一卷积层的卷积核大小为12。可以看出,第一卷积层的参数量具体可以为NC。
示例性的,所述第二卷积层用于对所述第一卷积层的输出进行逐层卷积(depthwise convolution)运算。
示例性的,所述第二卷积层的输入通道和输出通道的个数均为N,N等于所替代的所述卷积层的输入通道个数,所述第二卷积层的卷积核大小为K2,K2等于所替代的所述卷积层的卷积核大小。可以看出,第二卷积层的参数量具体可以为Nk2
替代层所替代的卷积层的参数量NCk2,在第一卷积层进行逐点卷积,第二卷积层进行逐层卷积时,替代层的一个分支的参数为NC+Nk2,通常,C≤N,k2<<C。假设输入特征图的高为H,宽为W,则卷积层的计算量为NCk2HW,替代层的一个分支的计算量为(NC+Nk2)HW。因此,对于k=3的卷积,替代层一个分支的参数和计算量约为卷积层的1/9。
在部分求和项的数量大于1时,为了避免更新替代层的下一层,可选的,所述替代层可以包括用于对不同分支的输出进行累加的求和层。
以替代层的分支数等于3,第一卷积层进行逐点卷积,第二卷积层进行逐层卷积为例,卷积层与其替代层的输入输出关系可以如图6所示。参照图6,替代层各分支的逐点卷积的输入即为其所替代的卷积层的输入,各分支的逐点卷积的输出作为与其串联的逐层卷积的输入,各分支的逐层卷积的输出经求和层累加之后,相当于其所替代的卷积层的输出。
需要说明的是,对于前述步骤402的SVD分解,一个分支的第一卷积层与该分支对应的所有第一目标求和项中的U矩阵对应,该分支的第二卷积层与该分支对应的所有第一目标求和项中的V矩阵对应。
具体的,图6中从左至右第一个分支的逐点卷积可以与对C组权重参数分别进行SVD分解所得到C个
Figure BDA0002830882180000101
中的U1对应,第一个分支的逐层卷积可以与该C个
Figure BDA0002830882180000102
中的V1对应,第二个分支的逐点卷积可以与该C个
Figure BDA0002830882180000103
中的U2对应,第二个分支的逐层卷积可以与该C个
Figure BDA0002830882180000104
中的V2对应,第三个分支的逐点卷积可以与该C个
Figure BDA0002830882180000105
中的U3对应,第三个分支的逐层卷积可以与该C个
Figure BDA0002830882180000106
中的V3对应。
步骤405,采用所述替代层替换所述卷积神经网络模型中的所述卷积层。
需要说明的是,步骤405与步骤304类似,在此不再赘述。
本实施例中,通过按照卷积神经网络模型中卷积层的输入通道,对卷积层的权重参数进行分组,确定每组权重参数的第一目标求和项,并根据每组权重参数的第一目标求和项确定用于替换卷积层的替代层,并采用替代层替换所述卷积神经网络模型中的卷积层,实现了按照卷积层的输入通道对卷积层的权重参数进行分组,并对每组权重参数进行矩阵分解的方式,调整卷积神经网络的结构。
图7为本申请又一实施例提供的神经网络模型部署方法的流程示意图,本实施例在图3所示实施例的基础上,主要描述了对卷积神经网络模型中卷积层的权重参数进行矩阵分解的一种可选的实现方式。如图7所示,本实施例的方法可以包括:
步骤701,获得已训练好的卷积神经网络模型。
需要说明的是,步骤701与步骤201类似,在此不再赘述。
步骤702,按照所述卷积神经网络模型中卷积层的输出通道,将所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第二矩阵分解结果。
本步骤中,假设卷积层的输入通道数为C,卷积层的输出通道数为N,卷积核大小为k*k,该卷积层的权重参数数量N×C×k2。如图8所示,可以根据输出通道将该卷积层的权重参数分成N组,每组大小为C×k2的二维矩阵。进一步的,以矩阵分解方式为SVD为例,二维矩阵
Figure BDA0002830882180000111
经SVD分解,
Figure BDA0002830882180000112
其中Ui∈RC
Figure BDA0002830882180000113
k2<<C。
其中,每组权重参数的所述第二矩阵分解结果包括多个第二求和项,各第二求和项均对应一个用于表征其重要程度的能量;
步骤703,按照能量由大至小的顺序,对每组权重参数的所述多个第二求和项进行排序,并选择排序靠前的部分求和项作为第二目标求和项。
本步骤中,示例性的,所述选择排序靠前的部分求和项作为第二目标求和项,具体可以包括:选择排序靠前且能量之和大于或等于能量阈值的部分求和项作为第二目标求和项。例如,假设能量阈值为0.9,一组的第二矩阵分解结果包括6个求和项,分别为求和项a至求和项g,且求和项a的能量为0.7,求和项b的能量为0.1,求和项c的能量为0.08,求和项d的能量为0.06,求和项e的能量为0.04,求和项f的能量为0.02,则可以选择6个求和项中的求和项a至求和项d作为第二目标求和项。
需要说明的是,能量阈值可以根据需求灵活实现。能量阈值越大,第二目标求和项越接近组权重参数。
示例性的,所述选择排序靠前的部分求和项作为第二目标求和项,具体可以包括:选择排序靠前且求和项个数小于或等于个数阈值的部分求和项作为第二目标求和项。例如,假设个数阈值为3,一组的第一矩阵分解结果包括6个求和项,分别为求和项a至求和项f,且求和项a至求和项f的能量依次减小,则可以选择6个求和项中的求和项a至求和项c作为第二目标求和项。
需要说明的是,个数阈值可以根据需求灵活实现。个数阈值越大,第二目标求和项越接近组权重参数。
需要说明的是,步骤703中的个数阈值和能量阈值,可以分别与步骤403中的个数阈值和能量阈值相同。
步骤704,根据每组权重参数的所述第二目标求和项,确定用于替换所述卷积层的替代层。
示例性的,步骤704具体可以包括:根据不同组权重参数的排序位次相同的第二目标求和项对应同一分支,且不同分支并联的策略,确定用于替换所述卷积层的替代层。
例如,假设卷积层的输出通道数等于6,即该卷积层的权重参数共分为6组,每组中第二目标求和项的个数均为4,且第一组的4个第二目标求和项按照能量由大至小的顺序分别为求和项aa至求和项af,第二组的4个第二目标求和项按照能量由大至小的顺序分别为求和项ba至求和项bf,第三组的4个第二目标求和项按照能量由大至小的顺序分别为求和项ca至求和项cf,第四组的4个第二目标求和项按照能量由大至小的顺序分别为求和项da至求和项df,第五组的4个第二目标求和项按照能量由大至小的顺序分别为求和项ea至求和项ef,第六组的4个第二目标求和项按照能量由大至小的顺序分别为求和项fa至求和项ff,则替代层可以包括并联的4个分支,分别为求和项aa、ba、ca、da、ea和fa对应的分支1,求和项ab、bb、cb、db、eb和fb对应的分支2,求和项ac、bc、cc、dc、ec和fc对应的分支3,以及求和项ad、bd、cd、dd、ed和fd对应的分支4。
示例性的,一个分支包括串联的第三卷积层和第四卷积层。其中,第三卷积层的输入可以为所替代的卷积层的输入,第三卷积层的输出可以为第四卷积层的输入。
示例性的,所述第三卷积层用于对所替代的所述卷积层的输入进行逐层卷积(depthwise convolution)运算。
示例性的,所述第三卷积层的输入通道和输出通道的个数均为C,C等于所替代的所述卷积层的输入通道的个数,所述第三卷积层的卷积核大小为K2,K2等于所替代的所述卷积层的卷积核大小。可以看出,第三卷积层的参数量具体可以为Ck2
示例性的,所述第四卷积层用于对所述第三卷积层的输出进行逐点卷积(pointwise convolution)运算。
示例性的,所述第四卷积层的输入通道的个数为C,C等于所替代的所述卷积层的输入通道的个数,第四卷积层的输出通道的个数为N,N等于所替代的所述卷积层的输出通道的个数,第四卷积层的卷积核大小为12。可以看出,第四卷积层的参数量具体可以为NC。
替代层所替代的卷积层的参数量NCk2,在第三卷积层进行逐层卷积,第四卷积层进行逐点卷积时,替代层的一个分支的参数为NC+Ck2,通常,C≤N,k2<<C。假设输入特征图的高为H,宽为W,则卷积层的计算量为NCk2HW,替代层的一个分支的计算量为(NC+Ck2)HW。因此,对于k=3的卷积,替代层一个分支的参数和计算量约为卷积层的1/9。
在部分求和项的数量大于1时,为了避免更新替代层的下一层,可选的所述替代层包括用于对不同分支的输出进行累加的求和层。
以替代层的分支数等于3,第三卷积层进行逐层卷积,第四卷积层进行逐点卷积为例,卷积层与其替代层的输入输出关系可以如图9所示。参照图9,替代层各分支的逐层卷积的输入即为其所替代的卷积层的输入,各分支的逐层卷积的输出作为与其串联的逐点卷积的输入,各分支的逐点卷积的输出经求和层累加之后,相当于其所替代的卷积层的输出。
需要说明的是,对于前述步骤702的SVD分解,一个分支的第三卷积层与该分支对应的所有第二目标求和项中的U矩阵对应,该分支的第四卷积层与该分支对应的所有第二目标求和项中的V矩阵对应。
具体的,图9中从左至右第一个分支的逐层卷积可以与对N组权重参数分别进行SVD分解所得到N个
Figure BDA0002830882180000131
中的U1对应,第一个分支的逐点卷积可以与该N个
Figure BDA0002830882180000132
中的V1对应,第二个分支的逐层卷积可以与该N个
Figure BDA0002830882180000133
中的U2对应,第二个分支的逐点卷积可以与该N个
Figure BDA0002830882180000134
中的V2对应,第三个分支的逐层卷积可以与该N个
Figure BDA0002830882180000135
中的U3对应,第三个分支的逐点卷积可以与该N个
Figure BDA0002830882180000136
中的V3对应。
步骤705,采用所述替代层替换所述卷积神经网络模型中的所述卷积层。
需要说明的是,步骤705与步骤304类似,在此不再赘述。
本实施例中,通过按照卷积神经网络模型中卷积层的输出通道,对卷积层的权重参数进行分组,确定每组权重参数的第二目标求和项,并根据每组权重参数的第二目标求和项确定用于替换卷积层的替代层,并采用替代层替换所述卷积神经网络模型中的卷积层,实现了按照卷积层的输出通道对卷积层的权重参数进行分组,并对每组权重参数进行矩阵分解的方式,调整卷积神经网络的结构。
需要说明的是,可以采用图4或图7所示实施例提供的矩阵分解方式,调整卷积神经网络模型的结构。或者,还可以如图10所示实施例,结合两种矩阵分解方式,调整卷积神经网络模型的结构。
图10为本申请又一实施例提供的神经网络模型部署方法的流程示意图,本实施例在图4或图7所示实施例的基础上,主要描述了对卷积神经网络模型中卷积层的权重参数进行矩阵分解的一种可选的实现方式。如图10所示,本实施例的方法可以包括:
步骤1001,获得已训练好的卷积神经网络模型。
步骤1002,按照所述卷积神经网络模型中卷积层的输入通道,对所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第一矩阵分解结果。
需要说明的是,步骤1002与步骤402类似,在此不再赘述。
步骤1003,按照能量由大至小的顺序,对每组权重参数的所述多个第一求和项进行排序,并选择排序靠前的部分求和项作为第一目标求和项。
需要说明的是,步骤1003与步骤403类似,在此不再赘述。
步骤1004,按照所述卷积神经网络模型中卷积层的输出通道数,将所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第二矩阵分解结果。
需要说明的是,步骤1004与步骤702类似,在此不再赘述。
步骤1005,按照能量由大至小的顺序,对每组权重参数的所述多个第二求和项进行排序,并选择排序靠前的部分求和项作为第二目标求和项。
需要说明的是,步骤1005与步骤703类似,在此不再赘述。
需要说明的是,步骤1004-步骤1005与步骤1002-步骤1003之间没有先后顺序的限制。
步骤1006,基于目标策略,选择所述第一目标求和项或所述第二目标求和项作为特定目标求和项,并根据特定目标求和项确定用于替换所述卷积层的替代层。
本步骤中,所述目标策略具体为能够用于从第一目标求和项和第二目标求和项中选择更优求和项的任意类型策略,具体可以根据需求灵活实现。示例性的,所述目标策略包括据求和项数最小策略或能量最大策略。
以求和项数最小策略为例,假设卷积层各组的第一目标求和项的个数均为2个,且该卷积层各组的第二目标求和项数的个数均为4个为例,由于第一目标求和项的数量小于第二目标求和项的数量,因此根据求和项最小策略可以选择第一目标求和项作为特定目标求和项,从而选择基于图4所示的方式,调整卷积神经网络模型的结构。由于求和项数量越少,参数越少,因此通过目标策略为求和项数最小策略,可以尽量缩小压缩后模型的大小。
以能量最大策略为例,假设卷积层各组的第一目标求和项的能量之和为0.9,且该卷积层各组的第二目标求和项数的能量之和为0.95,由于第一目标求和项的能量之和小于第二目标求和项的能量之和,因此根据能量最大策略可以选择第二目标求和项作为特定目标求和项,从而选择基于图5所示的方式,调整卷积神经网络模型的结构。由于部分求和项之和的能量越大,求和项所表示的权重参数越接近卷积层的权重参数,因此通过目标策略为能量最大策略,可以尽量减少由于压缩对模型带来的误差。
需要说明的是,所述特定目标求和项具体为第一目标求和项或第二目标求和项。当特定目标求和项为第一求和项时,步骤1005根据第一目标求和项确定用于替换所述卷积层的替代层的具体说明可以参见步骤404的相关描述,在此不再赘述。当特定目标求和项为第二求和项时,步骤1005根据第二目标求和项确定用于替换所述卷积层的替代层的具体说明可以参见步骤704的相关描述,在此不再赘述。
步骤1007,采用所述替代层替换所述卷积神经网络模型中的所述卷积层。
需要说明的是,步骤1007与步骤304类似,在此不再赘述。
本实施例中,通过基于目标策略,选择按照卷积神经网络模型中卷积层的输入通道,对卷积层的权重参数进行分组所确定的第二目标求和项,或者,按照卷积神经网络模型中卷积层的输出通道,对卷积层的权重参数进行分组所确定的第二目标求和项作为特定目标求和项,并根据特定目标求和项确定用于替换所述卷积层的替代层,实现了根据需求从第一目标求和项和第二目标求和项中选择更优求和项的用于确定替代层,使得模型压缩结果能够最大程度符合需求。
在上述实施例的基础上,所述部分求和项的个数大于或等于1。以第二目标求和项为例,当部分求和项的个数等于1时,卷积层与其替代层的输入输出关系可以如图11所示。参照图11,替代层的分支数为1,替代层的逐层卷积的输入即为其所替代的卷积层的输入,替代层的逐层卷积的输出作为与其串联的逐点卷积的输入,逐点卷积的输出相当于其所替代的卷积层的输出。通过所述部分求和项的个数等于1,可以最大程度实现对卷积神经网络模型的压缩。
在上述方法实施例的基础上,可选的,还可以包括如下步骤:采用所述卷积神经网络模型的原始训练数据,对所述压缩后模型进行重训练。其中,所述原始训练数据是指通过对初始的卷积神经网络模型进行训练得到所述已训练好的卷积神经网络模型的训练数据。由于压缩后模型相比于所述已训练好的卷积神经网络模型,结构发生了变化,通过采用已训练好的卷积神经网络模型(以下称为原卷积神经网络模型)的原始数据,对压缩后模型进行重训练,使得压缩后模型能够学习到原卷积神经网络模型未学习到的输入输出特性,从而使得重训练后的压缩后模型的表达能力能够超越原卷积神经网络模型,有利于提高模型性能。
图12为本申请一实施例提供的神经网络模型部署装置的结构示意图,如图12所示,该装置1200可以包括:处理器1201和存储器1202。
所述存储器1202,用于存储程序代码;
所述处理器1201,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
获得已训练好的卷积神经网络模型;
对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果;
根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型;
对所述压缩后模型进行部署。
本实施例提供的神经网络模型部署装置,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果与方法实施例类似,在此不再赘述。
另外,本申请实施例还提供一种移动平台,包括存储器和处理器,所述存储器中存储有根据前述方法实施例所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动平台获得的传感器数据。
示例性的,所述传感器数据包括视觉传感器数据。
示例性的,所述移动平台包括无人飞行器。
本申请实施例还提供一种云台设备,包括存储器和处理器,所述存储器中存储有根据前述方法实施例所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述云台设备获得的传感器数据。
示例性的,所述传感器数据包括视觉传感器数据。
示例性的,所述云台设备为手持云台设备。
本申请实施例还提供一种移动终端,包括存储器和处理器,所述存储器中存储有根据前述方法实施例所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动终端获得的传感器数据。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。

Claims (41)

1.一种神经网络模型部署方法,其特征在于,包括:
获得已训练好的卷积神经网络模型;
对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果;
根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型;
对所述压缩后模型进行部署。
2.根据权利要求1所述的方法,其特征在于,所述根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,包括:
根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,所述替代层的权重参数的数量少于所述卷积层的权重参数的数量;
采用所述替代层替换所述卷积神经网络模型中的所述卷积层。
3.根据权利要求2所述的方法,其特征在于,所述矩阵分解结果包括多个求和项;
所述根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,包括:
根据所述多个求和项中的部分求和项,确定用于替换所述卷积层的替代层。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
根据所述多个求和项中所述部分求和项之外的其他求和项,确定所述替代层的偏置参数。
5.根据权利要求2所述的方法,其特征在于,所述对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,包括:
按照所述卷积神经网络模型中卷积层的输入通道,对所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第一矩阵分解结果;和/或,
按照所述卷积神经网络模型中卷积层的输出通道,将所述卷积层的权重参数进行分组,并将每组权重参数作为二维矩阵进行矩阵分解,得到每组权重参数的第二矩阵分解结果。
6.根据权利要求5所述的方法,其特征在于,每组权重参数的所述第一矩阵分解结果包括多个第一求和项,各第一求和项均对应一个用于表征其重要程度的能量;
所述根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,包括:
按照能量由大至小的顺序,对每组权重参数的所述多个第一求和项进行排序,并选择排序靠前的部分求和项作为第一目标求和项;
根据每组权重参数的所述第一目标求和项,确定用于替换所述卷积层的替代层。
7.根据权利要求5所述的方法,其特征在于,每组权重参数的所述第二矩阵分解结果包括多个第二求和项,各第二求和项均对应一个用于表征其重要程度的能量;
所述根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,包括:
按照能量由大至小的顺序,对每组权重参数的所述多个第二求和项进行排序,并选择排序靠前的部分求和项作为第二目标求和项;
根据每组权重参数的所述第二目标求和项,确定用于替换所述卷积层的替代层。
8.根据权利要求5所述的方法,其特征在于,每组权重参数的所述第一矩阵分解结果包括多个第一求和项,各第一求和项均对应一个用于表征其重要程度的能量;每组权重参数的所述第二矩阵分解结果包括多个第二求和项,各第二求和项均对应一个用于表征其重要程度的能量;
所述根据所述矩阵分解结果,确定用于替换所述卷积层的替代层,包括:
按照能量由大至小的顺序,对每组权重参数的所述多个第一求和项进行排序,并选择排序靠前的部分求和项作为第一目标求和项;
按照能量由大至小的顺序,对每组权重参数的所述多个第二求和项进行排序,并选择排序靠前的部分求和项作为第二目标求和项;
基于目标策略,选择所述第一目标求和项或所述第二目标求和项作为特定目标求和项,并根据特定目标求和项确定用于替换所述卷积层的替代层。
9.根据权利要求8所述的方法,其特征在于,所述目标策略包括求和项最少策略或能量最大策略。
10.根据权利要求6或8所述的方法,其特征在于,所述选择排序靠前的部分求和项作为第一目标求和项,包括:
选择排序靠前且能量之和大于或等于能量阈值的部分求和项作为第一目标求和项。
11.根据权利要求6或8所述的方法,其特征在于,所述选择排序靠前的部分求和项作为第一目标求和项,包括:
选择排序靠前且求和项个数小于或等于个数阈值的部分求和项作为第一目标求和项。
12.根据权利要求7或8所述的方法,其特征在于,所述选择排序靠前的部分求和项作为第二目标求和项,包括:
选择排序靠前且能量之和大于或等于能量阈值的部分求和项作为第二目标求和项。
13.根据权利要求7或8所述的方法,其特征在于,所述选择排序靠前的部分求和项作为第二目标求和项,包括:
选择排序靠前且求和项个数小于或等于个数阈值的部分求和项作为第二目标求和项。
14.根据权利要求6或8所述的方法,其特征在于,所述根据每组权重参数的所述第一目标求和项,确定用于替换所述卷积层的替代层,包括:
根据不同组权重参数的排序位次相同的第一目标求和项对应同一分支,且不同分支并联的策略,确定用于替换所述卷积层的替代层。
15.根据权利要求14所述的方法,其特征在于,所述替代层包括用于对不同分支的输出进行累加的求和层。
16.根据权利要求14所述的方法,其特征在于,一个分支包括串联的第一卷积层和第二卷积层。
17.根据权利要求16所述的方法,其特征在于,所述第一卷积层用于对所替代的所述卷积层的输入进行逐点卷积运算。
18.根据权利要求16所述的方法,其特征在于,所述第二卷积层用于对所述第一卷积层的输出进行逐层卷积运算。
19.根据权利要求17所述的方法,其特征在于,所述第一卷积层的输入通道的个数为C,C等于所替代的所述卷积层的输入通道的个数,所述第一卷积层的输出通道的个数为N,N等于所替代的所述卷积层的输出通道的个数,所述第一卷积层的卷积核大小为12
20.根据权利要求18所述的方法,其特征在于,所述第二卷积层的输入通道和输出通道的个数均为N,N等于所替代的所述卷积层的输入通道个数,所述第二卷积层的卷积核大小为K2,K2等于所替代的所述卷积层的卷积核大小。
21.根据权利要求7或8所述的方法,其特征在于,所述根据每组权重参数的所述第一目标求和项,确定用于替换所述卷积层的替代层,包括:
根据不同组权重参数的排序位次相同的第二目标求和项对应同一分支,且不同分支并联的策略,确定用于替换所述卷积层的替代层。
22.根据权利要求21所述的方法,其特征在于,所述替代层包括用于对不同分支的输出进行累加的求和层。
23.根据权利要求21所述的方法,其特征在于,一个分支包括串联的第三卷积层和第四卷积层。
24.根据权利要求23所述的方法,其特征在于,所述第三卷积层用于对所替代的所述卷积层的输入进行逐层卷积运算。
25.根据权利要求23所述的方法,其特征在于,所述第四卷积层用于对所述第三卷积层的输出进行逐点卷积运算。
26.根据权利要求24所述的方法,其特征在于,所述第三卷积层的输入通道和输出通道的个数均为C,C等于所替代的所述卷积层的输入通道的个数,所述第三卷积层的卷积核大小为K2,K2等于所替代的所述卷积层的卷积核大小。
27.根据权利要求25所述的方法,其特征在于,所述第四卷积层的输入通道的个数为C,C等于所替代的所述卷积层的输入通道的个数,第四卷积层的输出通道的个数为N,N等于所替代的所述卷积层的输出通道的个数,第四卷积层的卷积核大小为12
28.根据权利要求3-4、6-8任一项所述的方法,其特征在于,所述部分求和项的个数大于或等于1。
29.根据权利要求4所述的方法,其特征在于,所述根据所述多个求和项中所述部分求和项之外的其他求和项,确定所述替代层的偏置参数,包括:
将所述其他求和项的求和结果,与所述替代层中各输入通道的正态分布的均值分别进行卷积,获得各输入通道的卷积结果;
将各输入通道的卷积结果,合入其偏置参数,以得到所述替代层的偏置参数。
30.根据权利要求1所述的方法,其特征在于,所述对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果,包括:
对所述卷积神经网络模型中卷积层的权重参数进行奇异值分解,获得所述卷积层的矩阵分解结果。
31.根据权利要求1所述的方法,其特征在于,所述方法还包括:
采用所述卷积神经网络模型的原始训练数据,对所述压缩后模型进行重训练。
32.一种神经网络模型部署装置,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序代码;
所述处理器,调用所述程序代码,当程序代码被执行时,用于执行以下操作:
获得已训练好的卷积神经网络模型;
对所述卷积神经网络模型中卷积层的权重参数进行矩阵分解,获得所述卷积层的矩阵分解结果;
根据所述矩阵分解结果,调整所述卷积神经网络模型的结构,以对所述卷积神经网络模型进行压缩,得到所述卷积神经网络模型的压缩后模型;
对所述压缩后模型进行部署。
33.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包含至少一段代码,所述至少一段代码可由计算机执行,以控制所述计算机执行如权利要求1-31任一项所述的方法。
34.一种计算机程序,其特征在于,当所述计算机程序被计算机执行时,用于实现如权利要求1-31任一项所述的方法。
35.一种移动平台,包括存储器和处理器,所述存储器中存储有根据权利要求1-31之一所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动平台获得的传感器数据。
36.根据权利要求35所述的移动平台,其特征在于,所述传感器数据包括视觉传感器数据。
37.根据权利要求35所述的移动平台,其特征在于,所述移动平台包括无人飞行器。
38.一种云台设备,包括存储器和处理器,所述存储器中存储有根据权利要求1-31之一所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述云台设备获得的传感器数据。
39.根据权利要求38所述的云台设备,其特征在于,所述传感器数据包括视觉传感器数据。
40.根据权利要求38所述的云台设备,其特征在于,所述云台设备为手持云台设备。
41.一种移动终端,包括存储器和处理器,所述存储器中存储有根据权利要求1-31之一所述方法部署的卷积神经网络模型;
当所述卷积神经网络模型被所述处理器调用并加载时,用于处理所述移动终端获得的传感器数据。
CN201980039593.3A 2019-11-13 2019-11-13 神经网络模型部署方法、装置及设备 Pending CN112313674A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/118043 WO2021092796A1 (zh) 2019-11-13 2019-11-13 神经网络模型部署方法、装置及设备

Publications (1)

Publication Number Publication Date
CN112313674A true CN112313674A (zh) 2021-02-02

Family

ID=74336685

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980039593.3A Pending CN112313674A (zh) 2019-11-13 2019-11-13 神经网络模型部署方法、装置及设备

Country Status (2)

Country Link
CN (1) CN112313674A (zh)
WO (1) WO2021092796A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112836804A (zh) * 2021-02-08 2021-05-25 北京迈格威科技有限公司 图像处理方法、装置、电子设备及存储介质
CN114186697A (zh) * 2021-12-10 2022-03-15 北京百度网讯科技有限公司 基于深度学习框架生成和应用深度学习模型的方法及装置
CN112836804B (zh) * 2021-02-08 2024-05-10 北京迈格威科技有限公司 图像处理方法、装置、电子设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113688931B (zh) * 2021-09-01 2024-03-29 什维新智医疗科技(上海)有限公司 一种基于深度学习的超声图像筛选方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106127297B (zh) * 2016-06-02 2019-07-12 中国科学院自动化研究所 基于张量分解的深度卷积神经网络的加速与压缩方法
CN106326985A (zh) * 2016-08-18 2017-01-11 北京旷视科技有限公司 神经网络训练方法和装置及数据处理方法和装置
US10303979B2 (en) * 2016-11-16 2019-05-28 Phenomic Ai Inc. System and method for classifying and segmenting microscopy images with deep multiple instance learning
CN107507250B (zh) * 2017-06-02 2020-08-21 北京工业大学 一种基于卷积神经网络的面色舌色图像颜色校正方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112836804A (zh) * 2021-02-08 2021-05-25 北京迈格威科技有限公司 图像处理方法、装置、电子设备及存储介质
CN112836804B (zh) * 2021-02-08 2024-05-10 北京迈格威科技有限公司 图像处理方法、装置、电子设备及存储介质
CN114186697A (zh) * 2021-12-10 2022-03-15 北京百度网讯科技有限公司 基于深度学习框架生成和应用深度学习模型的方法及装置
CN114186697B (zh) * 2021-12-10 2023-03-14 北京百度网讯科技有限公司 基于深度学习框架生成和应用深度学习模型的方法及装置

Also Published As

Publication number Publication date
WO2021092796A1 (zh) 2021-05-20

Similar Documents

Publication Publication Date Title
CN109978142B (zh) 神经网络模型的压缩方法和装置
CN108809723B (zh) 一种边缘服务器联合任务卸载及卷积神经网络层调度方法
CN108764317B (zh) 一种基于多路特征加权的残差卷积神经网络图像分类方法
CN111738401A (zh) 模型优化方法、分组压缩方法、相应的装置、设备
JP6561004B2 (ja) ニューラルネットワークシステム、端末装置、管理装置およびニューラルネットワークにおける重みパラメータの学習方法
KR20180073118A (ko) 컨볼루션 신경망 처리 방법 및 장치
CN112313674A (zh) 神经网络模型部署方法、装置及设备
CN111199740B (zh) 一种基于边缘计算加速自动语音识别任务的卸载方法
KR102214837B1 (ko) 컨벌루션 신경망 파라미터 최적화 방법, 컨벌루션 신경망 연산방법 및 그 장치
CN110298446B (zh) 面向嵌入式系统的深度神经网络压缩和加速方法及系统
KR102247896B1 (ko) 학습된 파라미터의 형태변환을 이용한 컨벌루션 신경망 파라미터 최적화 방법, 컨벌루션 신경망 연산방법 및 그 장치
EP3767549A1 (en) Delivery of compressed neural networks
CN107748913A (zh) 一种深度神经网络的通用小型化方法
CN114511042A (zh) 一种模型的训练方法、装置、存储介质及电子装置
Gao et al. Resource allocation via graph neural networks in free space optical fronthaul networks
JP6935868B2 (ja) 画像認識装置、画像認識方法、およびプログラム
CN113610192A (zh) 一种基于连续性剪枝的神经网络轻量化方法及系统
CN113194031A (zh) 雾无线接入网内结合干扰抑制的用户聚类方法及系统
CN113312183A (zh) 面向深度神经网络的边缘计算方法
CN107872255B (zh) 适用于大规模mimo蜂窝移动通信网络的导频调度方法
CN102845028A (zh) 一种资源分配的方法及装置
CN116033159A (zh) 特征处理方法、图像编码方法及装置
JP2023076839A (ja) 機械学習装置およびプルーニング方法
CN110191472B (zh) 一种基于改进多目标混沌pso优化的目标信道访问方法
KR102083635B1 (ko) 심층 신경망 시스템

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