本发明实施例涉及人工神经网络技术领域,尤其涉及一种神经网络的优化方法及装置。
背景技术:
目前,通常基于训练好的神经网络模型(如深度卷积神经网络模型)进行人脸识别。在使用神经网络模型进行人脸识别时,存在的问题如下:1、对图像数据处理计算的复杂度较高,影响运算时间(如,在配置有酷睿i7处理器的电子设备上处理人脸图像时往往要耗费1秒以上的时间);2、在处理过程中需要占用较大的内存空间或显卡显存空间;3、还需要占用较大存储空间来存放整个神经网络模型。
现有的神经网络模型的优化方法,并不能完全解决上述存在的问题,如,采用霍夫曼编码的形式进行的优化,能够保证优化后神经网络模型的处理计算精度,并有效的降低深度神经网络模型的存储空间,但不能降低处理运算的复杂度,缩短运行时间,同时也不能降低处理过程中对内存或显存的空间占用。
技术实现要素:
本发明实施例提供了一种神经网络的优化方法及装置,能够实现神经网络的优化,达到缩短运行时间、降低装置资源空间占用的目的。
一方面,本发明实施例提供了一种神经网络的优化方法,包括:
获取符合设定精度条件的初始神经网络,确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵;
根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点;
删除所述单元节点形成优化后的目标神经网络。
另一方面,本发明实施例提供了一种神经网络的优化装置,包括:
参数矩阵确定模块,用于获取符合设定精度条件的初始神经网络,确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵;
待删除节点确定模块,用于根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点;
目标网络确定模块,用于删除所述单元节点形成优化后的目标神经网络。
本发明实施例中提供了一种神经网络的优化方法及装置,该方法首先获取符合设定精度条件的初始神经网络,并确定初始神经网络中相邻两层节点间的权重参数矩阵;之后根据设定的删除阈值处于所确定的权重参数矩阵,由此确定初始神经网络中待删除的单元节点;最终在初始神经网络中删除所确定的单元节点形成优化后的目标神经网络。利用该方法,能够简单高效的对神经网络进行压缩,实现神经网络的优化,由此在基于优化的后神经网络进行人脸识别时,能够达到加快识别处理速度,缩短识别处理时间,降低存储、运行内存以及显存等空间占用的目的。
附图说明
图1为本发明实施例一提供的一种神经网络的优化方法的流程示意图;
图2a为本发明实施例二提供的一种神经网络的优化方法的流程示意图;
图2b为本发明实施例二提供的一个训练后的初始神经网络的结构图;
图2c为本发明实施例二中对初始神经网络优化后所形成目标神经网络的结构图;
图3a为本发明实施例三提供的一种神经网络的优化方法的流程示意图;
图3b为本发明实施例三中对原目标神经网络深度优化形成的目标神经网络的结构图;
图4为本发明实施例四提供的一种神经网络的优化装置的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种神经网络的优化方法的流程示意图,该方法适用于对训练学习后的神经网络进行压缩优化的情况,该方法可以由神经网络的优化装置执行,其中该装置可由软件和/或硬件实现,并一般集成在神经网络模型所在的终端设备或服务器平台上。
一般地,神经网络主要指人工神经网络,具体可看作一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。神经网络中所具有的单元节点至少分为三层,包括了输入层、隐藏层以及输出层,其中,输入层以及输出层均只包含一层单元节点,而隐藏层则至少包含一层单元节点,此外,各层所包含单元节点的个数都可根据不同应用情况设定。具体而言,神经网络的输入层负责接收输入的数据并分发到隐藏层,隐藏层负责对所接收的数据进行计算并将计算结果传递给输出层,输出层负责计算结果的输出,可以理解的是,神经网络中数据的传递及处理主要基于相邻两层单元节点间的连线及连线对应的权重参数值实现。
目前,可以基于神经网络进行模式识别(如人脸识别)处理,而在进行模式识别前需要对所创建的神经网络进行训练学习,只有确定神经网络所具有的处理精度满足应用需求时,才可以进行模式识别。需要说明的是,在实际的模式识别处理中,所采用的训练好的神经网络所具有规模一般都很大,由此不仅影响识别处理的运行时间,还占用了更多的存储空间、运行内存以及显存空间,因此可以基于本实施例提供的神经网络的优化方法对训练好的神经网络进行优化,来解决上述问题。
如图1所示,本发明实施例一提供的一种神经网络的优化方法,包括如下操作:
S101、获取符合设定精度条件的初始神经网络,确定初始神经网络中相邻两层单元节点间的权重参数矩阵。
在本实施例中,设定精度条件具体可理解为对神经网络进行训练学习后,实际进行应用处理时,神经网络需要达到的处理精度范围。一般地,该设定精度条件可以是系统默认的范围,也可以是人为设置的范围。在本实施例中,被训练学习的神经网络可以通过对标准测试集中所包含样本数据的处理来确定当前能够达到的处理精度,并在当前确定的处理精度符合设定精度条件时,认为神经网络可以进行实际应用处理,同时可将该神经网络称为初始神经网络。
一般地,对神经网络的训练学习主要通过设定的训练学习算法实现,由于训练学习算法已经是成熟的技术,这里不再详述。可以理解的是,神经网络的训练学习过程,实际就是神经网络中相邻两层单元节点连线对应的权重参数值不断变更并最终确定的过程。在本实施例中,在获取初始神经网络后,可以根据相邻两层单元节点连线对应的权重参数值来确定相邻两层单元节点间的权重参数矩阵。
在本实施例中,对于相邻两层的单元节点而言,如果其中一层的任一单元节点到另一层的任一单元节点间只存在一条连线,则可认为两单元节点间只存在一个权重参数值,此时相邻两层单元节点间可以确定一个二维权重参数矩阵;如果其中一层的任一单元节点到另一层的任一单元节点间至少存在两条连线,或两单元节点间的连线关系需要用函数表示,则可认为两单元节点间对应存在一个权重参数数组(可能是一维数组或二维数组),此时相邻两层单元节点间可以确定一个多维权重参数矩阵。
S102、根据设定的删除阈值处理权重参数矩阵,确定初始神经网络中待删除的单元节点。
在本实施例中,可以采用删除初始神经网络中单元节点的方式来实现初始神经网络的优化,由此需要确定初始神经网络中待删除的单元节点。具体地,首先获取设定的删除阈值,然后确定权重参数矩阵中各元素值的绝对值与删除阈值的大小关系;最终可根据元素值的绝对值与删除阈值的大小关系来确定初始神经网络中待删除的单元节点。
在本实施例中,可以基于权重参数矩阵中元素值的基本分布规律来设定删除阈值,且所设定的删除阈值为大于0的实数。示例性地,经实际分析发现,权重参数矩阵中的元素值基本分布在数值0的左右两侧,并且值域范围一般为(-0.05,0.05),此时可优选的将删除阈值设置为0.001。需要说明的是,本实施例只需在首次进行神经网络优化时进行删除阈值的设定,当循环进行神经网络优化时,可保持设定的删除阈值不变或基于其他规则自动变更删除阈值的值;此外,对于不同维度的权重参数矩阵而言,其删除阈值的设定存在不同,由此删除阈值还需基于具体情况进行具体设定。
S103、删除所述单元节点形成优化后的目标神经网络。
在本实施例中,确定待删除的单元节点后,可以在初始神经网络中删除该单元节点,此外,在删除该单元节点的同时,与该单元节点存在的关系或连线也一并删除,最终形成优化后的神经网络,称为目标神经网络。
本发明实施例一提供的一种神经网络的优化方法,首先获取符合设定精度条件的初始神经网络,并确定初始神经网络中相邻两层节点间的权重参数矩阵;之后根据设定的删除阈值处于所确定的权重参数矩阵,由此确定初始神经网络中待删除的单元节点;最终在初始神经网络中删除所确定的单元节点形成优化后的目标神经网络。利用该方法,能够简单高效的对神经网络进行压缩,实现神经网络的优化,由此在基于优化的后神经网络进行人脸识别时,能够达到加快识别处理速度,缩短识别处理时间,降低存储、运行内存以及显存等空间占用的目的。
实施例二
图2为本发明实施例二提供的一种神经网络的优化方法的流程示意图。本发明实施例以上述实施例为基础进行优化,在本实施例中,将确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵,进一步优化为:如果所述初始神经网络中相邻两层单元节点间的连接为全连接,则基于单元节点间连线对应的权重参数值形成二维权重参数矩阵;如果所述初始神经网络中相邻两层单元节点间的连接为卷积连接,则基于单元节点间连线对应的权重参数数组形成多维权重参数矩阵。
进一步地,将根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点,具体优化为:如果所述权重参数矩阵为二维权重参数矩阵,则基于所述二维权重参数矩阵中的列向量确定所述初始神经网络中待删除的单元节点;如果所述权重参数矩阵为多维权重参数矩阵,则基于降维后的多维权重参数矩阵确定所述初始神经网络中待删除的单元节点。
如图2a所示,本发明实施例二提供的一种神经网络的优化方法,具体包括如下操作:
S201、获取符合设定精度条件的初始神经网络。
示例性地,在对所创建的神经网络进行训练学习后,如果神经网络的当前处理精度符合设定精度条件,则可将该神经网络确定为待获取的初始神经网络。
S202、如果初始神经网络中相邻两层单元节点间的连接为全连接,则基于单元节点间连线对应的权重参数值形成二维权重参数矩阵,之后执行步骤S204。
在本实施例中,当相邻两层单元节点间的连接仅为单线连接时,可将该相邻两层单元节点间的连接称为全连接,此时,其中一层的任一单元节点到另一层的任一单元节点间只存在一个权重参数值,由此可以根据相邻两层单元节点间连线对应的权重参数值来构建二维权重参数矩阵。
示例性地,图2b为本发明实施例二提供的一个训练后的初始神经网络的结构图,如图2b所示,该初始神经网络共有4层单元节点,其中,第1层作为输入层,第2层和第3层作为隐藏层,第4层作为输出层,同时可以确定该初始神经网络中相邻两层单元节点间的连接为全连接。以第1层和第2层单元节点间的连接为例,首先将第1层中第m个单元节点与第2层中第n个单元节点的连线对应的权重参数值用wmn表示,其中,1≤m≤5,1≤n≤4;则第1层和第2层中单元节点间可以形成一个5×4阶的二维权重参数矩阵,该二维权重参数矩阵W5×4可以表示为:
S203、如果初始神经网络中相邻两层单元节点间的连接为卷积连接,则基于单元节点间连线对应的权重参数数组形成多维权重参数矩阵,之后执行步骤S205。
在本实施例中,当相邻两层单元节点间的连接为多线连接(至少存在两条连线)或用函数表示连接关系时,可将该相邻两层单元节点间的连接称为卷积连接。此时,其中一层的任一单元节点到另一层的任一单元节点间可能存在一个权重参数数组(一般为一维数组或二维数组),由此可以根据相邻两层单元节点间连线对应的权重参数数组来构建多维权重参数矩阵,其中,当权重参数数组为一维数组时,可以形成一个三维权重参数矩阵,当权重参数数组为二维数组时,可以形成一个四维权重参数矩阵。
S204、基于二维权重参数矩阵中的列向量确定初始神经网络中待删除的单元节点。
具体地,基于所述二维权重参数矩阵中的列向量确定所述初始神经网络中待删除的单元节点包括:获取所述二维权重参数矩阵中第i列的列向量;如果所述第i列的列向量中包括的权重参数值均小于设定的第一删除阈值,则将相邻两层中第二层的第i个单元节点确定为所述初始神经网络中待删除的单元节点。
在本实施例中,对于全连接的相邻两层单元节点而言,假设所形成的二维权重参数矩阵为g×h阶,则可确定该二维权重参数矩阵共有h列的列向量,且可确定该二维权重参数矩阵中的第i列中的权重参数值均与该相邻两层中第二层的第i个单元节点相关。具体地,待删除的单元节点的确定过程可表述为:获取所设定的第一删除阈值,在该二维权重参数矩阵中选取第i列的列向量,并确定第i列列向量中所包含的g个权重参数值是否均小于第一设定阈值,如果全部小于第一设定阈值,则可以将相邻两层中第二层的第i个单元节点确定为所述初始神经网络中待删除的单元节点。
在本实施例中,假设g×h阶的二维权重参数矩阵中的权重参数值表示为wai,所获取的第一删除阈值为t1,其中,1≤a≤g,1≤i≤h,则判定第i列列向量中所包含的g个权重参数值是否均小于第一设定阈值t1的过程可以具体描述为:如果第i列列向量中的权重参数值wai小于第一删除阈值t1,则确定函数f(wai)=0,否则,确定函数f(wai)=1,之后判定的值是否等于0,如果等于0,则可认为第i列列向量中所包含的g个权重参数值均小于第一设定阈值t1。需要说明的是,在首次设定第一删除阈值时,该第一删除阈值可以优选的基于二维权重参数矩阵中权重参数值的基本分布规律设定。
S205、基于降维后的多维权重参数矩阵确定初始神经网络中待删除的单元节点。
在本实施例中,对于卷积连接的相邻两层单元节点而言,则可以形成一个多维权重参数矩阵,此时需要对该多维权重参数矩阵进行降维处理,且在降维处理后形成一个二维的目标权重参数矩阵,之后可以根据该目标权重参数矩阵来确定待删除的单元节点。
进一步地,基于降维后的多维权重参数矩阵确定所述初始神经网络中待删除的单元节点包括:对所述多维权重参数矩阵进行降维处理,形成二维的目标权重参数矩阵;获取所述目标权重参数矩阵中第j列的列向量;如果所述第j列的列向量中包括的元素值均小于设定的第二删除阈值,则将相邻两层中第二层的第j个单元节点确定为所述初始神经网络中待删除的单元节点。
在本实施例中,对多维权重参数矩阵进行降维处理,形成二维的目标权重参数矩阵的过程可描述为:确定多维权重参数矩阵的维度以及矩阵中的元素值,如果多维权重参数矩阵为三维权重参数矩阵,则该矩阵中每个元素值通常为一维数组,此时可直接对一维数组中的数据进行求和计算,最终可以将计算所得的数据和或数据和的平均值作为降维后目标权重参数矩阵对应的元素值;如果多维权重参数矩阵为四维权重参数矩阵,则该矩阵中每个元素值通常为二维数组,此时先对二维数组中各列的列数据进行求和计算,得到相应的列数据和,然后再对列数据和进行求和计算,最终可以将计算所得的数据和或数据和的平均值作为降维后目标权重参数矩阵对应的元素值。
在本实施例中,对多维权重参数矩阵进行降维处理获得目标权重参数矩阵后,可以在所形成目标权重参数矩阵中进行待删除的单元节点的确定,由于后续确定待删除的单元节点的操作过程与基于步骤S204进行单元节点确定的操作过程相同,这里不再赘述。需要说明的是,在首次设定第二删除阈值时,该第二删除阈值可以优选的基于目标权重参数矩阵中元素值的基本分布规律设定。
S206、删除神经网络中确定的单元节点,形成优化后的目标神经网络。
在本实施例中,基于上述步骤S201至步骤S205的操作,可以确定出初始神经网络中所有待删除的单元节点,由此可以在初始神经网络中删除所有确定出的单元节点,并同时删除与该单元节点存在关系的连线。
示例性地,图2c为本发明实施例二中对初始神经网络优化后所形成目标神经网络的结构图。接上述步骤S202中的示例,如图2c所示,与图2b中的初始神经网络相比,在第2层中减少了一个单元节点,由此可知,基于本发明实施例二提供的神经网络的优化方法,实现了对图2b中初始神经网络第2层的第2个单元节点进行删除的优化。
本发明实施例二提供的一种神经网络的优化方法,具体描述了神经网络中相邻两层单元节点间具有不同连接方式时所对应权重参数矩阵的确定过程;还具体描述了不同权重参数矩阵下对待删除的单元节点的确定过程。利用该方法,能够对具有不同单元节点连接方式的神经网络进行压缩优化,由此在基于优化的后神经网络进行人脸识别时,能够达到加快识别处理速度,缩短识别处理时间,降低存储、运行内存以及显存等空间占用的目的。
实施例三
图3a为本发明实施例三提供的一种神经网络的优化方法的流程示意图。本发明实施例以上述实施例为基础进行优化,在本实施例中,还优化增加了:确定所述目标神经网络的当前处理精度是否符合所述设定精度条件,基于确定结果对所述目标神经网络进行训练学习或深度优化。
在上述优化的基础上,将基于确定结果对所述目标神经网络进行训练学习或深度优化,进一步优化为:如果所述当前处理精度不符合所述设定精度条件,则对所述目标神经网络进行训练学习直至符合所述设定精度条件或达到设定训练次数;否则,对所述删除阈值进行自增加操作,并将所述目标神经网络作为新的初始神经网络,重新执行神经网络的优化操作,其中,所述删除阈值为第一删除阈值或第二删除阈值。
在上述优化的基础上,还优化包括了另一种情况的操作,即,如果训练学习后的目标神经网络符合所述设定精度条件且训练次数不大于所述设定训练次数,则对所述删除阈值进行自增加操作,并将所述目标神经网络作为新的初始神经网络,重新执行神经网络的优化操作。
如图3所示,本发明实施例三提供的一种神经网络的优化方法,具体包括如下操作:
S301、获取符合设定精度条件的初始神经网络,确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵。
在本实施例中,可以认为所获取的初始神经网络具体用来进行人脸识别,则设定精度条件就可认为是人脸识别时神经网络所要求达到的处理精度。
S302、根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点。
S303、删除所述单元节点形成优化后的目标神经网络。
S304、确定目标神经网络的当前处理精度是否符合设定精度条件,若否,则执行步骤S305;若是,则执行步骤S307。
在本实施例中,还可以认为优化后的目标神经网络也具体用于进行人脸识别,因此,也需要测试目标神经网络的当前处理精度是否符合设定精度条件。
具体地,对目标神经网络的当前处理精度的测试过程可描述为:首先依据国际标准人脸验证测试集的规则来选取目标神经网络测试所需的样本图像,优选地,可选取3000对正样本图像(一对正样本图像为两张具有相同人脸的图像)和3000对负样本图像(一对负样本图像为两张具有不同人脸的图像);然后,分别将正样本图像对和负样本图像对作为目标神经网络的输入数据;最终,可根据人脸识别的输出结果X的值以及当前处理精度的计算公式,来确定目标神经网络的当前处理精度。
示例性地,当目标神经网络将正样本图像对中的两个图像判定为同一人时,输出结果X的值为1,否则输出结果X的值为0;当目标神经网络将负样本图像对中的两个图像判定为非同一人时,输出结果X的值为1,否则输出结果X的值为0。其中,当前处理精度的计算公式可表示为:
在本实施例中,如果所确定的当前处理精度符合了设定精度条件,则可直接执行步骤S307的操作,否则,需要执行步骤S305的操作。
S305、对目标神经网络进行训练学习,之后执行步骤S306。
在本实施例中,当所确定的当前处理精度不符合设定精度条件,可以基于设定的训练学习方法对目标神经网络进行训练学习。这里不再详述训练学习所采用的训练学习方法。
S306、确定对目标神经网络进行训练学习的训练次数是否达到设定训练次数,若否,则返回执行步骤S304;若是,则执行步骤S308。
在本实施例中,对目标神经网络进行训练学习后,需要判定对其进行训练学习的训练次数是否达到设定训练次数,然后基于判定结果执行不同的操作步骤。
S307、对删除阈值进行自增加操作,并将目标神经网络作为新的初始神经网络,返回执行步骤S301。
在本实施例中,如果目标神经网络的当前处理精度符合了设定精度条件,则可对当前的目标神经网络继续基于步骤S301至步骤S303进行深度优化。
在对目标神经网络进行深度优化之前,可以对删除阈值进行自增加操作,然后再将目标神经网络作为初始神经网络,之后返回步骤S301重新开始进行神经网络的优化。需要说明的是,由于本实施例中删除阈值为为第一删除阈值或第二删除阈值,因此,删除阈值自增加操作所依据的增量值主要基于具体情况设定。可以理解的是,基于增加后的删除阈值进行神经网络优化时,可以确定出更多的待删除的单元节点,从而可以更快的确定出最终适合人脸识别的目标神经网络。
示例性地,图3b为本发明实施例三中对原目标神经网络深度优化形成的目标神经网络的结构图,接上述实施例二中步骤S206中的示例,可以认为图3b中所示的目标神经网络是对图2c中所示目标神经网络的进一步深度优化,如图3b所示,与图2c中提供的目标神经网络相比,在第3层中有减少了一个单元节点,由此可知,基于本发明实施例三提供的神经网络的优化方法,实现了对图2c中提供的目标神经网络第3层的第2个单元节点进行删除的深度优化。
S308、结束对目标神经网络的训练学习。
在本实施例中,如果对目标神经网络进行训练学习的训练次数达到了设定训练次数,且此时对应的当前处理精度仍不符合设定精度条件,则可以结束对目标神经网络的训练学习,同时,可以优选的确定上一次作为初始神经网络进行深度优化的目标神经网络为人脸识别所需的神经网络。
本发明实施例三提供的一种神经网络的优化方法,进一步增加了对优化后神经网络再次进行训练学习或深度优化的操作,由此来保持优化后神经网络的处理计算精度,与现有优化方法相比,能够在不降低神经网络处理计算精度的情况下,实现神经网络的压缩优化,从而在基于优化的后神经网络进行人脸识别时,达到加快人脸识别处理速度,缩短人脸识别处理时间,降低存储、运行内存以及显存等空间占用的目的。
实施例四
图4为本发明实施例四提供的一种神经网络的优化装置的结构框图。该装置适用于对训练学习后的神经网络进行压缩优化的情况,其中该装置可由软件和/或硬件实现,并一般集成在神经网络模型所在的终端设备或服务器平台上。如图4所示,该优化装置包括:参数矩阵确定模块41、待删除节点确定模块42以及目标网络确定模块43。
其中,参数矩阵确定模块41,用于获取符合设定精度条件的初始神经网络,确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵;
待删除节点确定模块42,用于根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点;
目标网络确定模块43,用于删除所述单元节点形成优化后的目标神经网络。
在本实施例中,该优化装置首先通过参数矩阵确定模块41获取符合设定精度条件的初始神经网络,确定所述初始神经网络中相邻两层单元节点间的权重参数矩阵;然后通过待删除节点确定模块42根据设定的删除阈值处理所述权重参数矩阵,确定所述初始神经网络中待删除的单元节点;最终通过目标网络确定模块43删除所述单元节点形成优化后的目标神经网络。
本发明实施例四提供的一种神经网络的优化装置,能够简单高效的对神经网络进行压缩,实现神经网络的优化,由此在基于优化的后神经网络进行人脸识别时,能够达到加快识别处理速度,缩短识别处理时间,降低存储、运行内存以及显存等空间占用的目的。
进一步地,参数矩阵确定模块41具体用于:
在获取符合设定精度条件的初始神经网络后,如果所述初始神经网络中相邻两层单元节点间的连接为全连接,则基于单元节点间连线对应的权重参数值形成二维权重参数矩阵;如果所述初始神经网络中相邻两层单元节点间的连接为卷积连接,则基于单元节点间连线对应的权重参数数组形成多维权重参数矩阵。
进一步地,待删除节点确定模块42包括:
第一确定单元,用于当所述权重参数矩阵为二维权重参数矩阵时,基于所述二维权重参数矩阵中的列向量确定所述初始神经网络中待删除的单元节点;
第二确定单元,用于当所述权重参数矩阵为多维权重参数矩阵时,基于降维后的多维权重参数矩阵确定所述初始神经网络中待删除的单元节点。
在上述优化的基础上,第一确定单元具体用于:
当所述权重参数矩阵为二维权重参数矩阵时,获取所述二维权重参数矩阵中第i列的列向量;如果所述第i列的列向量中包括的权重参数值均小于设定的第一删除阈值,则将相邻两层中第二层的第i个单元节点确定为所述初始神经网络中待删除的单元节点。
进一步地,第二确定单元具体用于:
当所述权重参数矩阵为二维权重参数矩阵时,对所述多维权重参数矩阵进行降维处理,形成二维的目标权重参数矩阵;获取所述目标权重参数矩阵中第j列的列向量;如果所述第j列的列向量中包括的元素值均小于设定的第二删除阈值,则将相邻两层中第二层的第j个单元节点确定为所述初始神经网络中待删除的单元节点。
进一步地,该优化装置还包括:目标网络处理模块44,用于确定所述目标神经网络的当前处理精度是否符合所述设定精度条件,基于确定结果对所述目标神经网络进行训练学习或深度优化。
在上述优化的基础上,目标网络处理模块44具体用于:
确定所述目标神经网络的当前处理精度是否符合所述设定精度条件;如果所述当前处理精度不符合所述设定精度条件,则对所述目标神经网络进行训练学习直至符合所述设定精度条件或达到设定训练次数;否则,对所述删除阈值进行自增加操作,并将所述目标神经网络作为新的初始神经网络,重新执行神经网络的优化操作,其中,所述删除阈值为第一删除阈值或第二删除阈值。
进一步地,如果训练学习后的目标神经网络符合所述设定精度条件且训练次数不大于所述设定训练次数,则对所述删除阈值进行自增加操作,并将所述目标神经网络作为新的初始神经网络,重新执行神经网络的优化操作。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。