首页 / 专利库 / 视听技术与设备 / / 一种基于双流网络的剪枝方法

一种基于双流网络的剪枝方法

阅读:732发布:2021-06-15

专利汇可以提供一种基于双流网络的剪枝方法专利检索,专利查询,专利分析的服务。并且本 发明 提出一种基于双流网络的 剪枝 方法,包括:预设第一神经网络和第二神经网络,将训练样本分别输入所述第一神经网络和所述第二神经网络,通过两神经网络的输出结果之间进行比对,进而调整所述第一神经网络的权重参数,获取神经网络模型;根据所述权重参数对所述神经网络模型进行剪枝处理,并对剪枝后的模型进行训练获取最终模型;本发明通过双流网络结构丰富知识学习深度,可有效提高模型的识别效率。,下面是一种基于双流网络的剪枝方法专利的具体信息内容。

1.一种基于双流网络的剪枝方法,其特征在于,包括:
预设第一神经网络和第二神经网络,将训练样本分别输入所述第一神经网络和所述第二神经网络,将两神经网络的输出结果之间进行比对,进而调整所述第一神经网络的权重参数,获取神经网络模型;
根据所述权重参数对所述神经网络模型进行剪枝处理,并对剪枝后的模型进行训练获取最终模型。
2.根据权利要求1所述的基于双流网络的剪枝方法,其特征在于,所述第一神经网络的网络层数小于所述第二神经网络的网络层数。
3.根据权利要求1所述的基于双流网络的剪枝方法,其特征在于,所述第一神经网络设置有通道重要性选择模,所述通道重要性选择模块根据调整后的所述权重参数对各通道的特征进行重新分配组合。
4.根据权利要求2所述的基于双流网络的剪枝方法,其特征在于,所述第一神经网络和/或所述第二神经网络采用残差网络。
5.根据权利要求1所述的基于双流网络的剪枝方法,其特征在于,设置剪枝比例,并根据所述权重参数的大小按所述剪枝比例进行筛选。
6.根据权利要求1所述的基于双流网络的剪枝方法,其特征在于,分别获取所述第一神经网络和所述第二神经网络的输出概率分布,根据二者概率分布的散度调整所述第一神经网络的权重参数。
7.根据权利要求6所述的基于双流网络的剪枝方法,其特征在于,采用相对熵或交叉熵获取所述第一神经网络与所述第二神经网络输出概率分布之间的散度。
8.根据权利要求6所述的基于双流网络的剪枝方法,其特征在于,设置散度阈值,当所述概率分布的散度未达到所述散度阈值时,采用梯度下降法更新所述第一神经网络的所述权重参数。
9.根据权利要求3所述的基于双流网络的剪枝方法,其特征在于,通过所述第一神经网络将所述训练样本的输入特征进行全局池化,获取输入特征表示;
将所述输入特征表示接入全连接层并通过激活函数获取每个输入特征对应的权重值;
通过所述通道重要性选择模块将所述权重值馈入对应的所述输入特征,比较每个所述输入特征,获取每个所述输入特征的重要性,并根据所述重要性将对应的所述输入特征进行重新分配组合。
10.根据权利要求5所述的基于双流网络的剪枝方法,其特征在于,剪枝比例采用0.1-
0.5。

说明书全文

一种基于双流网络的剪枝方法

技术领域

[0001] 本发明涉及智能识别领域,尤其涉及一种基于双流网络的剪枝方法。

背景技术

[0002] 近年来,由于深度学习的浪潮,卷积神经网络被广泛应用于各种图像识别领域。这些工作的进展皆得益于深度卷积网络模型在特征提取上的能,但传统的深度学习模型通常体积巨大,动辄几百M甚至上G。这使得其应用落地时受到很多硬件设备关于存储大小或者计算资源方面的限制。网络剪枝技术可以在满足一定识别率的前提下,得到体积更小的网络模型,对硬件设备有限的场景有着很好的应用前景。在满足一定剪枝率的同时,如何有效的选择更加重要的结构进行保留,从而提升最终网络结构识别率的方法研究就显得十分重要。

发明内容

[0003] 鉴于以上现有技术存在的问题,本发明提出一种基于双流网络的剪枝方法,主要解决现有神经网络模型复杂度高,应用受限的问题。
[0004] 为了实现上述目的及其他目的,本发明采用的技术方案如下。
[0005] 一种基于双流网络的剪枝方法,包括:
[0006] 预设第一神经网络和第二神经网络,将训练样本分别输入所述第一神经网络和所述第二神经网络,通过两神经网络的输出结果之间进行比对,进而调整所述第一神经网络的权重参数,获取神经网络模型;
[0007] 根据所述权重参数对所述神经网络模型进行剪枝处理,并对剪枝后的模型进行训练获取最终模型。
[0008] 可选地,所述第一神经网络的网络层数小于所述第二神经网络的网络层数。
[0009] 可选地,所述第一神经网络设置有通道重要性选择模,所述通道重要性选择模块根据调整后的所述权重参数对各通道的特征进行重新分配组合。
[0010] 可选地,所述第一神经网络和/或所述第二神经网络采用残差网络。
[0011] 可选地,设置剪枝比例,并根据所述权重参数的大小按所述剪枝比例进行筛选。
[0012] 可选地,分别获取所述第一神经网络和所述第二神经网络的输出概率分布,根据二者概率分布的散度调整所述第一神经网络的权重参数。
[0013] 可选地,采用相对熵或交叉熵获取所述第一神经网络与所述第二神经网络输出概率分布之间的散度。
[0014] 可选地,设置散度阈值,当所述概率分布的散度未达到所述散度阈值时,采用梯度下降法更新所述第一神经网络的所述权重参数。
[0015] 可选地,通过所述第一神经网络将所述训练样本的输入特征进行全局池化,获取输入特征表示;
[0016] 将所述输入特征表示接入全连接层并通过激活函数获取每个输入特征对应的权重值;
[0017] 通过所述通道重要性选择模块将所述权重值馈入对应的所述输入特征,比较每个所述输入特征,获取每个所述输入特征的重要性,并根据所述重要性将对应的所述输入特征进行重新分配组合。
[0018] 可选地,剪枝比例采用0.1-0.5。
[0019] 如上所述,本发明一种基于双流网络的剪枝方法,具有以下有益效果。
[0020] 通过两个神经网络同步训练,并根据结果调整权重参数,提高模型识别的正确性。附图说明
[0021] 图1为本发明一实施例中基于双流网络的剪枝方法的流程图

具体实施方式

[0022] 以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0023] 需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0024] 请参阅图1,本发明提供一种基于双流网络的剪枝方法,包括步骤S01-S02。
[0025] 在步骤S01中,预设第一神经网络和第二神经网络,将训练样本分别输入第一神经网络和第二神经网络,两神经网络的输出结果之间进行比对,进而调整第一神经网络的权重参数,获取神经网络模型:
[0026] 在一实施例中,训练样本可采用cifar数据集中的训练图片,CIFAR是由Alex Krizhevsky、Vinod Nair和Geoffrey Hinton收集而来,起初的数据集共分10类,分别为飞机、汽车、猫、鹿、狗、青蛙、、船、卡车,所以CIFAR数据集常以CIFAR-10命名。CIFAR共包含60000张32*32的彩色图像,其中,包含50000张训练图片,10000张测试图片。也可采集人脸图像创建数据集,通过第一神经网络和第二神经网络进行人脸识别或行人识别。
[0027] 第一神经网络和第二神经网络均可采用残差网络resnet,将训练样本分别输入第一神经网络和第二神经网络,进行模型训练。
[0028] 可设置第一神经网络的网络层数小于第二神经网络的网络层数。通过第二神经网络进行深层学习,通过第一神经网络的输出结果向第二神经网络的输出逼近,可学习到深层网络的信息。具体地,第一神经网络可采用resnet20,第二神经网络可采用resnet56。
[0029] 在一实施例中,resnet20和resnet56的输出分别为一概率分布。可通过两个神经网络的输出之间的散度来构造resnet20的损失函数。通过训练损失函数进而调整resnet的权重参数。
[0030] 在一实施例中,散度可采用相对熵或交叉熵进行计算。通过散度创建损失函数,当resnet20和resnet56的输出概率分布之间的散度未达到设定的散度阈值时,可采用梯度下降法,对损失函数求偏导,进而逐层更新resnet20网络中的权重参数;当散度达到设定散度阈值时,则模型训练完成。
[0031] 在一实施例中,resnet20网络中设置有通道重要性选择模块。以人脸识别为例,对于resnet20网络的每一层,将人脸图像的每个通道的特征做一个全局池化,得到每个通道对应的人脸特征值,将所有通道对应的特征值表示为一个C维向量,其中人脸特征值的个数即为向量的维度。将C维向量通过全连接层和激活函数计算出每个人脸特征值对应的权重值。激活函数可采用sigmoid激活函数。通道重要性选择模块以每个人脸特征值对应的权重值作为尺度在反馈入对应的人脸特征。具体地,可将权重值乘以人脸特征值,并将计算得到的值进行比较排序。值越大说明对应的人脸特征的重要程度越高,以此评估每个人脸特征的重要性。
[0032] 在一实施例中,将resnet20和resnet56连接起来构成双流网络结构,经过反复的输入训练样本进行多次训练,直到resnet20网络的损失函数收敛,获取神经网络模型。在另一实施例中,双流网络训练模块在构造好了双流网络结构之后,固定resnet20和resnet56的原始结构部分参数不变,只训练添加的通道重要性选择模块部分的参数,从而使得通道重要性选择模块部分能够学习到resnet20网络结构中各个通道之间的重要性程度。训练损失函数使用resnet56输出的概率分布和resnet20输出的概率分布之间的KL距离,使得训练收敛后该双流网络的resnet20部分的通道重要性选择模块会趋向于学习到resnet56模型的信息,并对resnet20的各个通道特征根据不同重要性进行重新分配组合上。
[0033] 在步骤S02中,根据权重参数对神经网络模型进行剪枝处理,并对剪枝后的模型进行训练获取最终模型:
[0034] 在一实施例中,剪枝处理主要是根据步骤S01中获取的神经网络模型中的人脸输入特征的重要性,对神经网络模型的网络连接关系进行修剪。人脸输入特征的重要性删除某一层网络中的几个不重要的网络节点,获取将前一层网络中的某一节点以下一层网络中的多个节点的连接权重置零。可按一定的比例进行剪枝处理,如可设置剪枝比例为0.1-0.5之间。
[0035] 对神经网络模型进行剪枝处理后获取精简的模型结构,可进一步对精简的模型结构进行调优训练,获取最终模型,以保证精简的模型结构的识别精度
[0036] 在一实施例中,resnet20的网络结构中主要包含3层网络单元结构,表1、表2、表3分别是在cifar图像识别应用场景下进行训练测试,对resnet20的3个网络结构单元中设置0.1~0.9的剪枝率并和传统的使用卷积核的l1 norm的剪枝方式进行比较的实验结果,从表中可以看出,设置相同剪枝率的条件下,采用本专利的方案得到结果识别率比采用l1 norm的剪枝方案得到模型识别率普遍要高,尤其是剪枝率设为0.5以下时,识别率100%高于l1 norm的剪枝方案,剪枝率设置过大(大于0.6)的时候,由于保留的信息太少,导致系统噪声太大,偶尔会出现噪声影响大于剪枝敏感度的影响(l1 norm的剪枝方案的识别率大于本专利的方案得到的识别率),但总体上来看,还是本专利的方法得到的识别率更高。
[0037] 另外,从实验结果可以看出,当剪枝率设置较小时(小于0.4),剪枝之后的识别率比原始结构的resnet20的识别率(90.76)更高。
[0038] 表1
[0039]
[0040] 表2
[0041]
[0042] 表3
[0043]
[0044]
[0045] 综上所述,本发明一种基于双流网络的剪枝方法,通过双流结构的神经网络进行模型训练得到网络通道重要性选择权重,并隐式的进行了模型信息融合,与传统的直接使用l1 norm的剪枝方法相比,同等剪枝率的条件下,通常可以得到更高的识别率;另外,在单层剪枝率低于0.5时,通常可以取得比剪枝前的模型更高的识别率。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
[0046] 上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈