CN108229533A - 图像处理方法、模型剪枝方法、装置及设备 - Google Patents
图像处理方法、模型剪枝方法、装置及设备 Download PDFInfo
- Publication number
- CN108229533A CN108229533A CN201711175542.2A CN201711175542A CN108229533A CN 108229533 A CN108229533 A CN 108229533A CN 201711175542 A CN201711175542 A CN 201711175542A CN 108229533 A CN108229533 A CN 108229533A
- Authority
- CN
- China
- Prior art keywords
- network model
- neural network
- basic member
- basic
- image
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/28—Determining representative reference patterns, e.g. by averaging or distorting; Generating dictionaries
-
- 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/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computational Linguistics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Evolutionary Biology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本申请实施方式公开了图像处理方法、模型剪枝方法、装置及设备,其中的图像处理方法包括:将待处理图像提供给神经网络模型;经所述神经网络模型输出所述待处理图像的处理结果;其中,所述神经网络模型包括至少两中间层,每一中间层均包括多个基本元,所述神经网络模型是针对基础神经网络模型进行剪枝处理获得的,所述基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,所述基本元为基础神经网络模型中网络层的组成单元。
Description
技术领域
本申请涉及计算机视觉技术,尤其是涉及一种图像处理方法、图像处理装置、模型剪枝方法、模型剪枝装置、电子设备以及计算机可读存储介质。
背景技术
在行人检索、人脸识别、人脸位置检测(如人脸外接框检测)、人体关键点检测、人脸关键点检测以及活体检测等诸多应用中,往往需要由神经网络模型针对待处理图像提取图像特征。
出于对神经网络模型提取图像特征的效率以及神经网络模型所需内存空间等运行性能方面的考虑,一些时候会希望通过剪枝来提升神经网络模型的运行性能。然而,如何在提升神经网络模型的运行性能的同时,保证神经网络模型针对待处理图像的处理结果的准确性,是一个值得关注的技术问题。
发明内容
本申请实施方式提供一种图像处理技术方案。
根据本申请实施方式其中一个方面,提供了一种图像处理方法,该方法包括:将待处理图像提供给神经网络模型;经所述神经网络模型输出所述待处理图像的图像特征;其中,所述神经网络模型包括至少两中间层,每一中间层均包括多个基本元,所述神经网络模型是针对基础神经网络模型进行剪枝处理获得的,所述基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,所述基本元为基础神经网络模型中网络层的组成单元。
在本申请一实施方式中,所述基本元的全局重要性是根据基本元被剪除后基础神经网络模型的损失以及基本元未被剪除时基础神经网络模型的损失确定的。
在本申请又一实施方式中,所述基本元的全局重要性是通过下述方式确定的:将训练数据集中的图像样本输入基础神经网络模型,并获取基础神经网络模型中各中间层的多个基本元分别形成的特征图的激活值;在以所述图像样本的标注信息为指导信息,利用损失函数以及由各中间层的激活值形成的最后一层基本元的激活值,对基础神经网络模型进行监督学习的过程中,确定所述特征图的梯度;根据基本元形成的特征图的激活值和相应的特征图的梯度,计算多个基本元的全局重要性。
在本申请再一实施方式中,针对神经网络模型以及基础神经网络模型中的全连接层而言,所述基本元包括:神经元;针对神经网络模型以及基础神经网络模型中的卷积层而言,所述基本元包括:卷积核。
在本申请再一实施方式中,所述方法还包括:根据得到的所述图像特征进行以下至少之一处理:行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测。
在本申请再一实施方式中,所述针对基础神经网络模型进行剪枝处理,而获得神经网络模型的过程包括:确定基础神经网络模型至少两中间层的多个基本元的全局重要性;根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,并剪除;设置基础神经网络模型中未被剪除的基本元的网络参数,形成所述神经网络模型。
在本申请再一实施方式中,所述方法还包括:检测剪枝处理后获得的神经网络模型针对待处理图像的处理结果准确性以及网络模型运行性能;在检测出神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,而网络模型运行性能未达到预定运行性能要求的情况下,将本次剪枝处理获得的神经网络模型作为基础神经网络模型,更新所述剪枝比率,并再次执行所述针对基础神经网络模型进行剪枝处理,而获得神经网络模型的过程。
在本申请再一实施方式中,所述根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,并剪除包括:根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元;针对任一层而言,在属于该层的需要被剪除的基本元满足预定保留条件的情况下,将该层需要被剪除的基本元中的满足预定保留条件的基本元不再作为需要被剪除的基本元;针对当前需要被剪除的基本元,执行剪除操作。
在本申请再一实施方式中,所述预定保留条件包括:属于同一层的需要被剪除的基本元为该层中的所有基本元,或者,属于同一层的除了需要剪除的基本元之外的基本元的数量低于预定数量。
在本申请再一实施方式中,所述设置基础神经网络模型中未被剪除的基本元的网络参数包括:根据剪除基本元之前的基础神经网络模型中的基本元针对图像样本形成的特征图以及剪除基本元之后的基础神经网络模型中的基本元针对图像样本形成的特征图的差异,初始化剪除基本元之后的基础神经网络模型中的基本元的权重。
在本申请再一实施方式中,针对剪除基本元之后的基础神经网络模型中的第i-1层的基本元x而言,初始化基本元x的权重的过程包括:获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重,并设置。
在本申请再一实施方式中,所述设置基础神经网络模型中未被剪除的基本元的网络参数还包括:利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练,以调整基本元的权重。
在本申请再一实施方式中,所述利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练包括:将训练数据集中的图像样本分别提供给初始化权重之后的基础神经网络模型以及剪枝处理前的基础神经网络模型;以剪枝处理前的基础神经网络模型输出的图像特征为指导信息,对初始化权重之后的基础神经网络模型进行训练,以减小初始化权重之后的基础神经网络模型输出的图像特征与剪枝处理前的基础神经网络模型输出的图像特征之间的差异。
根据本申请实施方式其中另一个方面,提供了一种模型剪枝方法,用于在确定出基础神经网络模型中需要剪除的基本元,并剪除之后,对剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以形成神经网络模型,在本申请中,针对剪除基本元之后的基础神经网络模型中的第i-1层的基本元x而言,初始化权重的过程包括:获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。
在本申请一实施方式中,所述方法在初始化权重之后,还包括:利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练,以调整基本元的权重。
在本申请又一实施方式中,所述利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练包括:将训练数据集中的图像样本分别提供给初始化权重之后的基础神经网络模型以及剪枝处理前的基础神经网络模型;以剪枝处理前的基础神经网络模型输出的图像特征为指导信息,对初始化权重之后的基础神经网络模型进行训练,以减小初始化权重之后的基础神经网络模型输出的图像特征与剪枝处理前的基础神经网络模型输出的图像特征之间的差异。
根据本申请实施方式的其中再一个方面,提供了一种图像处理装置,该装置包括:神经网络模型;输入模块,用于将待处理图像提供给神经网络模型,经所述神经网络模型输出所述待处理图像的图像特征;其中,所述神经网络模型包括至少两中间层,每一中间层均包括多个基本元,所述神经网络模型是模型剪枝装置针对基础神经网络模型进行剪枝处理获得的,所述基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,所述基本元为基础神经网络模型中网络层的组成单元。
在本申请一实施方式中,所述基本元的全局重要性是模型剪枝装置根据基本元被剪除后神经网络的损失以及基本元未被剪除时神经网络的损失确定的。
在本申请又一实施方式中,所述图像处理装置还包括:处理模块,用于根据所述图像特征进行以下至少之一处理:行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测。
在本申请再一实施方式中,所述模型剪枝装置包括:确定全局重要性模块,用于确定基础神经网络模型至少两中间层的多个基本元的全局重要性;剪除基本元模块,用于根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,并剪除;设置网络参数模块,用于设置基础神经网络模型中未被剪除的基本元的网络参数,形成所述神经网络模型。
在本申请再一实施方式中,所述模型剪枝装置还包括:性能检测模块,用于检测剪枝处理后获得的神经网络模型针对待处理图像的处理结果准确性以及网络模型运行性能;更新模块,用于在检测出神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,而网络模型运行性能未达到预定运行性能要求的情况下,将本次剪枝处理获得的神经网络模型作为基础神经网络模型,更新所述剪枝比率,以便于再次执行所述针对基础神经网络模型进行剪枝处理,而获得神经网络模型的过程。
在本申请再一实施方式中,所述剪除基本元模块具体用于:根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元;针对任一层而言,在属于该层的需要被剪除的基本元满足预定保留条件的情况下,将该层需要被剪除的基本元中的满足预定保留条件的基本元不再作为需要被剪除的基本元;针对当前需要被剪除的基本元,执行剪除操作。
在本申请再一实施方式中,所述预定保留条件包括:属于同一层的需要被剪除的基本元为该层中的所有基本元,或者,属于同一层的除了需要剪除的基本元之外的基本元的数量低于预定数量。
在本申请再一实施方式中,所述设置网络参数模块具体用于:根据剪除基本元之前的基础神经网络模型中的基本元针对图像样本形成的特征图以及剪除基本元之后的基础神经网络模型中的基本元针对图像样本形成的特征图的差异,初始化剪除基本元之后的基础神经网络模型中的基本元的权重。
在本申请再一实施方式中,设置网络参数模块包括:第一获取模块、第二获取模块和初始化权重模块;针对剪除基本元之后的基础神经网络模型中的第i-1层的基本元x而言,初始化基本元x的权重的过程包括:第一获取模块,用于获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;第二获取模块,用于获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;初始化权重模块,用于根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。
在本申请再一实施方式中,所述设置网络参数模块还包括:微调模块,用于利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练,以调整基本元的权重。
在本申请再一实施方式中,所述微调模块具体用于:将训练数据集中的图像样本分别提供给初始化权重之后的基础神经网络模型以及剪枝处理前的基础神经网络模型;以剪枝处理前的基础神经网络模型输出的图像特征为指导信息,对初始化权重之后的基础神经网络模型进行训练,以减小初始化权重之后的基础神经网络模型输出的图像特征与剪枝处理前的基础神经网络模型输出的图像特征之间的差异。
根据本申请实施方式的其中再一个方面,提供了一种模型剪枝装置,用于在确定出基础神经网络模型中需要剪除的基本元,并剪除之后,对剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以形成神经网络模型,所述模型剪枝装置包括:第一获取模块,用于获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;第二获取模块,用于获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;初始化权重模块,用于根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。
在本申请一实施方式中,所述模型剪枝装置还包括:
微调模块,用于利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练,以调整基本元的权重。
在本申请又一实施方式中,所述微调模块具体用于:将训练数据集中的图像样本分别提供给初始化权重之后的基础神经网络模型以及剪枝处理前的基础神经网络模型;以剪枝处理前的基础神经网络模型输出的图像特征为指导信息,对初始化权重之后的基础神经网络模型进行训练,以减小初始化权重之后的基础神经网络模型输出的图像特征与剪枝处理前的基础神经网络模型输出的图像特征之间的差异。
根据本申请实施方式的再一个方面,提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述方法实施方式中的各步骤。
根据本申请实施方式的再一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现上述方法实施方式中的各步骤。
基于本申请提供的图像处理方法、装置、电子设备及计算机可读存储介质,本申请中对待处理图像进行提取图像特征处理的神经网络模型是针对基础神经网络模型进行剪枝处理获得的,由于在剪枝处理过程中从基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同层的基本元的全局重要性确定的,因此,本申请可以避免全局重要性较高的基本元被剪除的现象,从而可以避免全局重要性较高的基本元被剪除而对图像特征提取的准确性产生不良影响。由此可知,本申请提供的技术方案在提升神经网络模型的运行性能的同时,有利于保证神经网络模型针对待处理图像的处理结果的准确性。
下面通过附图和实施方式,对本申请的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本申请的实施方式,并且连同描述一起用于解释本申请的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本申请,其中:
图1为本申请的图像处理方法一个实施方式的流程图;
图2为本申请的模型剪枝方法的一个实施方式的流程图;
图3为本申请的模型剪枝方法的另一个实施方式的流程图;
图4为本申请的模型剪枝方法的再一个实施方式的流程图;
图5为本申请的图像处理装置一个实施方式的示意图;
图6为本申请的模型剪枝装置的一个实施方式的示意图;
图7为本申请的模型剪枝装置的另一个实施方式的示意图;
图8为实现本申请实施方式的一示例性设备的框图。
具体实施方式
现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或者使用的任何限制。
对于相关领域普通技术人员已知的技术、方法以及设备可能不作详细讨论,但在适当情况下,所述技术、方法及设备应当被视为说明书的一部分。
应注意到:相似的标号及字母在下面的附图中表示类似项,因此,一旦某一项在一附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本申请实施例可以应用于终端设备、计算机系统以及服务器等电子设备中,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统、大型计算机系统以及包括上述任何系统的分布式云计算技术环境等等。
终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
示例性实施例
下面结合图1至图8对本申请提供的图像处理的技术方案以及模型剪枝的技术方案进行说明。
在一个可选示例中,本申请的图像处理的技术方案通常可以适用于需要从图像中提取出图像特征的应用中,例如,本申请的图像处理的技术方案可以适用于行人检索、人脸识别结果、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测等应用中。由上述可知,行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测等多种应用都可以使用本申请的基于剪枝所形成的神经网络模型。本申请不限制图像处理的技术方案以及基于剪枝所形成的神经网络模型的具体应用场景。
图1为本申请的图像处理方法一个实施例的流程图。如图1所示,该实施例方法包括:步骤S100以及步骤S110。
S100、将待处理图像提供给神经网络模型。
在一个可选示例中,本申请中的待处理图像可以为呈现静态的图片或者照片等图像,也可以为呈现动态的视频中的视频帧等。在本申请的图像处理技术被用于行人检索、人脸识别、人脸位置检测(例如,人脸外接框检测)或者人脸关键点检测等与人脸相关的应用中的情况下,该待处理图像可以为包含有人脸的图像,待处理图像中的人脸可以为正脸,也可以为侧脸。在本申请的图像处理技术被用于行人检索、行人识别、人体关键点检测或者人体位置检测或者人体动作检测等与人体相关的应用中的情况下,该待处理图像可以为包含有人体的图像。在本申请的图像处理技术被用于手势检测或者手位置检测等与手相关的应用中的情况下,该待处理图像可以为包含有手的图像。在本申请的图像处理技术被用于车辆识别等于车辆相关的应用中的情况下,该待处理图像可以为包含车辆的图像。在本申请的图像处理技术被用于场景识别等于场景相关的应用中的情况下,该待处理图像可以为包含有场景的图像。在本申请的图像处理技术被用于活体检测等与活体相关的应用中的情况下,该待处理图像可以为包含活体(如活人、活猫、活狗等)的图像。
在一个可选示例中,本申请中的待处理图像可以为灰度图像,也可以为非灰度图像。非灰度图像可以为RGB(红绿蓝)图像等。当然,非灰度图像也可以为除了RGB图像之外其他形式的图像,如YUV(明亮度色度)图像等。本申请不限制待处理图像的具体表现形式。
在一个可选示例中,本申请的神经网络模型包括至少两中间层,每一中间层均包括多个基本元。该神经网络模型是针对基础神经网络模型进行剪枝而获得的神经网络模型。本申请中的基础神经网络模型可以称为待剪枝的神经网络模型。基础神经网络模型可以具体为卷积神经网络模型等。本申请中的基础神经网络模型的网络结构可以采用但不限于AlexNet、深度残差网络(Deep Residual Network,ResNet)或者VGGNet(VisualGeometry Group Network,视觉几何组网络)等神经网络所采用的网络结构。
在一个可选示例中,本申请的基础神经网络模型通常包括至少两个中间层,每一中间层均包括多个基本元。本申请中的中间层通常是指位于输入层和输出层之间的层,如隐藏层等。一个可选例子,该基础神经网络模型的中间层可以包括但不限于至少一卷积层以及至少一非线性ReLU(Rectified Linear Units,修正线性单元)层等,基础神经网络模型所包含的中间层的层数越多,则网络越深。该基础神经网络模型可以具体为深度神经网络。
在一个可选示例中,该基础神经网络模型通常为已经被成功训练的神经网络模型,其针对待处理图像提取图像特征的准确性通常可以满足预先设定的准确性要求。在针对该基础神经网络模型进行剪枝的过程中,从基础神经网络模型中被剪除的基本元通常是根据位于基础神经网络模型不同中间层的多个基本元的全局重要性而确定出的基本元,即本申请中的被剪除的基本元通常是全局重要性较低的基本元。一个可选例子,本申请可以对基础神经网络模型的所有中间层中的所有基本元的全局重要性按照从低到高的顺序进行排序,从而本申请可以按照该排序将全局重要性较低的基本元作为需要被剪除的基本元。由于全局重要性较高的基本元往往对图像特征提取处理的贡献较大,因此,本申请可以在一定程度上降低剪枝处理对神经网络模型的图像特征提取的影响。本申请的剪除基本元的操作,可以降低神经网络模型的规模,从而有利于提升神经网络模型提取图像特征的效率,并有利于降低神经网络模型所需内存空间,进而有利于提升神经网络模型的运行性能。
在一个可选示例中,本申请中的基本元是基础神经网络模型中网络层(包括中间层)的基本组成单元,例如,针对基础神经网络模型中的全连接层而言,一个基本元可以具体为一个神经元;再例如,针对基础神经网络模型中的卷积层而言,一个基本元可以具体为一个卷积核。下述描述中的基本元可以根据实际情况而使用卷积核或者神经元等基本组成单元来替换。本申请针对基础神经网络模型进行剪枝,从而形成神经网络模型的具体例子,可以参见下述针对图2的描述,在此不再详细说明。
S110、经神经网络模型输出待处理图像的图像特征。
在一个可选示例中,本申请剪枝处理后形成的神经网络模型通常包含有至少两中间层,每一中间层均通常包含有多个基本元,该神经网络模型中的每个基本元的网络参数(如权重)是在从基础神经网络模型剪除基本元之后设置的。通过设置神经网络模型中的每个基本元的网络参数(如权重),有利于保证神经网络模型提取图像特征的准确性。本申请设置神经网络模型中的基本元的网络参数的具体过程可以参见下述针对图3的描述,在此不再详细说明。待处理图像在经过神经网络模型各层的所有基本元的处理后,形成该待处理图像最终的图像特征(也可以称为待处理图像的特征图等),并输出。
在一个可选示例中,通过对本申请的神经网络模型输出的图像特征进行进一步的处理,例如,行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测等处理,可以实现相应的应用。本申请不限制针对图像特征进行进一步处理的具体表现形式。
图2为本申请的模型剪枝方法的一个实施例的流程图,即图2为针对基础神经网络模型进行剪枝处理,从而获得神经网络模型的方法的一个实施例的流程图。在利用图2所示的流程针对基础神经网络模型进行首次剪枝,从而首次形成神经网络模型的过程中,基础神经网络模型可以被认为是原始神经网络模型。在利用图2所示的流程进行第二次或者第三次等再次剪枝,从而再次形成神经网络模型的过程中,基础神经网络模型通常为前一次剪枝处理后所形成的神经网络模型。
如图2所示,本申请该实施例的方法包括:步骤S200、步骤S210以及步骤S220。
S200、确定基础神经网络模型不同中间层的多个基本元的全局重要性。
在一个可选示例中,本申请可以确定出基础神经网络模型中的所有中间层的所有基本元的全局重要性。本申请也可以确定出基础神经网络模型中的至少两中间层的所有/部分基本元的全局重要性,例如,本申请可以预先设置不允许剪枝的中间层的配置信息,从而本申请可以根据该配置信息确定出基础神经网络模型中不允许剪枝的中间层,进而本申请可以确定出基础神经网络模型中除了不允许剪枝的中间层之外的其他中间层(至少两中间层)中的所有基本元的全局重要性;再例如,本申请可以预先设置不允许剪枝的基本元的配置信息,从而本申请可以根据该配置信息确定出基础神经网络模型中不允许剪枝的基本元,进而本申请可以确定出基础神经网络模型中除了不允许剪枝的基本元之外的其他所有基本元(位于不同中间层)的全局重要性。
需要特别说明的是,本申请可以同时设置有不允许剪枝的中间层的配置信息以及不允许剪枝的基本元的配置信息,然而,基础神经网络模型中除了不允许剪枝的中间层的基本元以及不允许剪枝的基本元之外的所有基本元仍然应位于不同中间层(至少两中间层)。
在一个可选示例中,本申请中的基本元的全局重要性可以是根据基本元被剪除后基础神经网络模型的损失以及基本元未被剪除时基础神经网络模型的损失确定的,例如,本申请可以基于泰勒展开式对基本元被剪除后基础神经网络模型的损失与基本元未被剪除时基础神经网络模型的损失的差值进行展开,从而计算基础神经网络模型不同层的多个基本元的全局重要性。上述基础神经网络模型的损失通常是指利用相应的损失函数计算出的结果,也可以认为是利用损失函数估计出的基础神经网络模型输出的预测值与真实值(如标注信息)的不一致程度。
具体而言,首先,本申请可以将训练数据集中的图像样本输入至基础神经网络模型中,从而形成基础神经网络模型的一前向传播过程,在该前向传播过程中,基础神经网络模型中各层的所有基本元会分别针对输入的图像样本形成一特征图,由此,本申请可以获得各基本元分别形成的特征图的激活值(即神经元的激活值,神经元的激活值也即神经元的值,通常可以通过对神经元所在层的输入和其权重进行运算获得);其次,在基础神经网络模型针对输入的图像样本输出图像特征之后,本申请可以以图像样本的标注信息为指导信息,利用损失函数及由各中间层的激活值形成的最后一层基本元的激活值,对基础神经网络模型进行监督学习,例如,利用损失函数进行计算,以获得基础神经网络模型中的最后一层神经元的激活值与标注信息之间的差异,其中,最后一层神经元的激活值是由之前各层神经元的激活值逐层传递的;通过监督学习可以形成基础神经网络模型的一反向传播过程,在该反向传播过程中,本申请可以获得基础神经网络模型中各层的所有基本元所形成的特征图的梯度,该特征图的梯度可以称为基于损失函数的特征图的梯度或者激活值的梯度等;再次,本申请可以根据位于中间层的每一个基本元所形成的特征图的激活值以及相应特征图的梯度,计算出位于中间层的每一个基本元的全局重要性。
在一个具体的可选例子中,设定本申请获得的基础神经网络模型中的一基本元的特征图的激活值为h,而获得的该基本元的特征图的梯度为(L表示损失函数),则该基本元的全局重要性s可以通过下述公式(1)表示:
本申请可以利用上述公式(1)计算出基础神经网络模型中各中间层的所有基本元的全局重要性。当然,本申请也可以利用上述公式(1)仅计算出基础神经网络模型中的部分基本元的全局重要性,例如,仅计算出基础神经网络模型中的至少两个指定中间层中的多个指定基本元的全局重要性。
本申请通过利用前向传播过程中基本元形成的特征图的激活值以及反向传播过程中基本元形成的特征图的梯度,来计算基础神经网络模型不同中间层的多个基本元的全局重要性,可以使基本元的全局重要性的设置更为合理。
需要特别说明的是,本申请也可以采用其他方式来确定基础神经网络模型不同中间层的多个基本元的全局重要性,例如,成功训练的基础神经网络模型中的所有基本元均具有权重,本申请可以为基础神经网络模型中的不同中间层分别设置层权重,从而本申请可以将不同中间层中的各基本元的权重分别与基本元所在中间层的层权重的乘积,作为相应的基本元的全局重要性。本申请不限制基础神经网络模型不同中间层的多个基本元的全局重要性的具体实现方式。
S210、根据剪枝比率以及多个基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,并剪除。
在一个可选示例中,本申请中的剪枝比率通常是针对基础神经网络模型的所有基本元而设置的一个比率。针对基础神经网络模型进行首次剪枝处理所采用的剪枝比率,通常与第二次或者第三次等后续剪枝处理所采用的剪枝比率不相同,如剪枝比率逐次递减。当然,本申请也不排除首次剪枝处理与后续剪枝处理所采用的剪枝比率相同的可能性。
在一个可选示例中,本申请可以根据剪枝比率以及多个基本元的全局重要性,确定出基础神经网络模型中需要被剪除的基本元之后,直接剪除确定出的需要被剪除的基本元。本申请也可以根据预定保留条件,先针对基于剪枝比率以及多个基本元的全局重要性确定出的基础神经网络模型中需要被剪除的基本元进行过滤,然后,剪除过滤后的需要被剪除的基本元。本申请中的预定保留条件可以根据实际需求设置,一个可选的例子,预定保留条件可以为:如果属于同一中间层的需要被剪除的基本元为该中间层中的所有基本元,则保留该中间层中的所有基本元;另一个可选例子,预定保留条件可以为:如果属于同一中间层的除了需要剪除的基本元之外的基本元的数量低于预定数量,则保留该中间层中的预定数量的基本元。
需要特别说明的是,本申请的基础神经网络模型的不同中间层所对应的预定数量通常是相同的,当然,本申请也不排除基础神经网络模型的不同中间层所对应的预定数量不相同的可能性。另外,上述预定保留条件可以根据预定数量变换为保留比(一中间层中保留的基本元数量与该中间层基本元总数量的比值)而发生相应的变化,在此不再一一举例说明。
在预定保留条件为如果属于同一中间层的需要被剪除的基本元为该中间层中的所有基本元,则保留该中间层中的所有基本元的情况下,本步骤的一个具体实现过程为:根据剪枝比率以及多个基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,针对基础神经网络模型中的第一中间层而言,判断当前确定出的需要被剪除的基本元中属于第一中间层的所有基本元(下述称为第一中间层需要被剪除的基本元),如果第一中间层需要被剪除的基本元为基础神经网络模型的第一中间层中的所有基本元,则本次不再将第一中间层需要被剪除的基本元作为需要剪除的基本元;而如果第一中间层需要被剪除的基本元并不是基础神经网络模型的第一中间层中的所有基本元,则本次将第一中间层需要被剪除的基本元全部作为需要剪除的基本元,并剪除。根据上述针对第一中间层的处理方式,对基础神经网络模型中的第二中间层直至最后一中间层逐层进行处理。
在预定保留条件为如果属于同一中间层的除了需要剪除的基本元之外的基本元的数量低于预定数量,则保留该中间层中的预定数量的基本元的情况下,本步骤的一个具体实现过程为:根据剪枝比率以及多个基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,针对基础神经网络模型中的第一中间层而言,判断当前确定出的需要被剪除的基本元中属于第一中间层的所有基本元(下述称为第一中间层需要被剪除的基本元),如果基础神经网络模型的第一中间层中的所有基本元在去除了第一中间层需要被剪除的基本元之后,剩余的基本元的数量低于预定数量,则可以根据基本元的全局重要性从第一中间层需要被剪除的基本元中挑选出部分基本元作为需要剪除的基本元,并剪除;而如果基础神经网络模型的第一中间层中的所有基本元在去除了第一中间层需要被剪除的基本元之后,剩余的基本元的数量不低于预定数量,则将第一中间层需要被剪除的基本元全部作为需要剪除的基本元,并剪除。根据上述针对第一中间层的处理方式,对基础神经网络模型中的第二中间层直至最后一中间层逐层进行处理。
本申请通过根据基本元的全局重要性来确定需要剪除的基本元,可以在一定程度上避免对提取图像特征贡献比较大的基本元被剪除的现象,从而有利于保证神经网络模型提取图像特征的准确性。通过对需要剪除的基本元进行过滤,可以避免神经网络模型的一中间层中的所有基本元均被剪除或者一中间层中的基本元被剪除过多的现象,进一步有利于保证神经网络模型提取图像特征的准确性。
S220、设置基础神经网络模型中未被剪除的基本元的网络参数,形成神经网络模型。
在一个可选示例中,本申请可以采用多种方式来设置基础神经网络模型中未被剪除的基本元的网络参数。本申请中的基本元的网络参数通常为基本元的权重。下面以设置基本元的权重为例,例举三种设置基本元的网络参数的方式:
方式一、根据剪除基本元之前的基础神经网络模型中的基本元针对图像样本形成的特征图以及剪除基本元之后的基础神经网络模型中的基本元针对图像样本形成的特征图的差异,来调整剪除基本元之后的基础神经网络模型中的基本元的权重。也就是说,以剪除基本元之前的基础神经网络模型中的基本元形成的特征图为参照,对剪除基本元之后的基础神经网络模型中的基本元的权重进行调整,以实现对剪除基本元之后的基础神经网络模型中的基本元的权重进行初始化设置。方式一的具体实现过程可以参见下述针对图3的描述。
方式二、利用训练数据集中的图像样本对剪除了基本元之后的基础神经网络模型进行训练,以调整剪除了基本元之后的基础神经网络模型中的所有基本元的权重。特别的,在训练过程中,本申请可以以剪除基本元之前的基础神经网络模型所输出的图像特征作为指导信息,来对剪除了基本元之后的基础神经网络模型中的所有基本元的权重进行调整,从而有利于提升神经网络模型的提取图像特征的准确性。方式二的具体实现过程可以参见下述针对图4的描述。
方式三、先根据剪除基本元之前的基础神经网络模型中的基本元针对图像样本形成的特征图以及剪除基本元之后的基础神经网络模型中的基本元针对图像样本形成的特征图的差异,来设置剪除基本元之后的基础神经网络模型中的基本元的权重,以初始化权重;然后,再利用训练数据集中的图像样本对初始化基本元的权重之后的基础神经网络模型进行训练,以实现对初始化权重后的基本元进行权重微调。
在一个可选示例中,在依次执行了步骤S200、步骤S210以及步骤S220之后,可以对当前形成的神经网络模型的总体性能进行检测,例如,检测当前形成的神经网络模型针对待处理图像的处理结果准确性,并检测当前形成的神经网络模型的网络模型运行性能,如果检测的结果为:当前形成的神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,然而,网络模型运行性能未达到预定运行性能要求(例如,提取图像特征的时间过长或者所需占用的内存空间过大等)的情况下,本申请可以将当前形成的神经网络模型作为基础神经网络模型,更新剪枝比率,并再次执行步骤S200、步骤S210以及步骤S220,从而针对基础神经网络模型再次进行剪枝处理,并再次形成神经网络模型。如果检测的结果为:当前形成的神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,且网络模型运行性能达到预定运行性能要求,则可以不再执行剪枝处理,从而获得可以用于提取待处理图像的图像特征的神经网络模型。
图3为本申请的模型剪枝方法的一个实施例的流程图,具体的,图3为针剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以便于形成神经网络模型的方法的一个实施例的流程图。为方便描述,剪除了基本元之后的基础神经网络模型在下述称为待处理神经网络模型。针对待处理神经网络模型中的第i-1(i为大于1的整数)层的基本元x而言,调整该基本元x的权重的过程可以包括下述步骤:
S300、获取待处理神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi。
在一个可选示例中,本申请可以将训练数据集中的图像样本提供给待处理神经网络模型,待处理神经网络模型中的输入层中的所有基本元均会针对图像样本形成一特征图,输入层各基本元所形成的特征图作为第1中间层的输入提供给第1中间层,第1中间层中的所有基本元均会针对图像样本形成一特征图,第1中间层各基本元所形成的特征图作为第2中间层的输入提供给第2中间层,第2中间层中的所有基本元均会在其接收到的特征图的基础上形成新的特征图,第2中间层各基本元所形成的特征图作为第3中间层的输入提供给第3中间层,以此类推,直到待处理神经网络模型的最后一层(即输出层),最后一层中的所有基本元形成的特征图被作为待处理神经网络模型针对待处理图像而形成的图像特征。设定基本元x可以为待处理神经网络模型中的除输入层和输出层之外的任一中间层中的任一基本元,在本申请中使用Xi来表示第i-1层的基本元x针对图像样本形成的特征图。
S310、获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1。
在一个可选示例中,本申请可以将训练数据集中的图像样本提供给剪除基本元之前的基础神经网络模型(下述简称为基础神经网络模型)。基础神经网络模型中的输入层中的所有基本元均会针对图像样本形成一特征图,输入层中各基本元所形成的特征图作为第1中间层的输入提供给第1中间层,第1中间层中的所有基本元均会针对图像样本形成一特征图,第1中间层各基本元所形成的特征图作为第2中间层的输入提供给第2层,第2中间层中的所有基本元均会在其接收到的特征图的基础上形成新的特征图,第2中间层各基本元所形成的特征图作为第3中间层的输入提供给第3中间层,以此类推,直到基础神经网络模型的最后一层(即输出层),最后一层中的所有基本元形成的特征图被作为基础神经网络模型针对待处理图像而形成的图像特征。
设定第i-1中间层的基本元x为基础神经网络模型中第i中间层中的与待处理神经网络模型中的第i-1中间层的基本元x位置相对应的基本元,如基础神经网络模型中第1中间层和第2中间层分别包括100个基本元,分别为基本元1、基本元2、……以及基本元100,虽然待处理神经网络模型中的第1中间层被剪除了50个基本元,例如,第1中间层中的基本元1、基本元2、……以及基本元50被剪除,从而使待处理神经网络模型中的第1中间层中的基本元51、基本元52、……以及基本元100重新被编号而成为新的基本元1、基本元2、……以及基本元50,然而,新的基本元1与基础神经网络模型第2中间层中的基本元51位置相对应,新的基本元2与基础神经网络模型第2中间层中的基本元52位置相对应,……,新的基本元50与基础神经网络模型第2中间层中的基本元100位置相对应。在本申请中使用Xi+1来表示第i中间层的基本元x针对图像样本形成的特征图。
S320、根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1中间层的基本元x的权重。
在一个可选示例中,本申请中的回归模型可以如下述公式(2)所示:
Xi×Wi=Xi+1 公式(2)
通过对公式(2)进行求解即可获得Wi,Wi即为待处理神经网络模型中的第i-1中间层的基本元x的权重。
在一个可选示例中,采用步骤S300、步骤S310以及步骤S320可以逐层的对待处理神经网络模型中的所有中间层中的所有基本元的权重进行设置。该过程可以称为逐层恢复权重的过程,也可以称为逐层初始化权重的过程。
需要特别说明的是,本申请图3所示的逐层恢复权重的过程,不仅可以对利用图2中描述的剪除基本元的方式所形成的待处理神经网络模型中的基本元进行权重设置,在采用其他剪除基本元的方式而形成待处理神经网络模型的情况下,图3所示的逐层恢复权重的过程同样可以实现对待处理神经网络模型中的基本元的权重设置。
图4为本申请的模型剪枝方法的一个实施例的流程图,具体的,图4可以具体为:针对剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以便于形成神经网络模型的方法的一个实施例的流程图;图4也可以具体为:针对经过图3所示的步骤对待处理神经网络模型中的基本元进行权重初始化设置之后的待处理神经网络模型中的基本元进行权重设置,以便于形成神经网络模型的方法的一个实施例的流程图。为方便描述,剪除了基本元之后的基础神经网络模型或者权重初始化设置之后的待处理神经网络模型在下述均被称为待处理神经网络模型。
S400、将训练数据集中的图像样本分别提供给待处理神经网络模型以及剪枝处理前的基础神经网络模型。
S410、以剪枝处理前的基础神经网络模型针对图像样本而输出的图像特征为指导信息,对待处理神经网络模型进行训练,以减小待处理神经网络模型针对图像样本而输出的图像特征与剪枝处理前的基础神经网络模型针对图像样本而输出的图像特征之间的差异。
在一个可选示例中,在首次剪枝处理过程中,图4中的剪枝处理前的基础神经网络模型即为原始神经网络模型,而在第2次剪枝处理过程中,图4中的剪枝处理前的基础神经网络模型可以为首次剪枝处理后所形成的神经网络模型。同理,在第n(n为大于1的整数)次剪枝处理过程中,图4中的剪枝处理前的基础神经网络模型可以为第n-1次剪枝处理后所形成的神经网络模型。
图5为本申请图像处理装置一个实施例的结构示意图。如图5所示,该实施例的图像处理装置主要包括:神经网络模型500以及输入模块510。可选的,该实施例的图像处理装置还可以包括:处理模块520。另外,该图像处理装置还可以包括:模型剪枝装置。模型剪枝装置的结构如下述针对图6的描述。
神经网络模型500主要包括至少两中间层,每一中间层均包括多个基本元,神经网络模型500是模型剪枝装置针对基础神经网络模型进行剪枝处理获得的,基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,基本元为基础神经网络模型中网络层的组成单元。基本元的全局重要性是模型剪枝装置根据基本元被剪除后神经网络的损失以及基本元未被剪除时神经网络的损失确定的。
输入模块510主要用于将待处理图像提供给神经网络模型500,经神经网络模型500输出待处理图像的图像特征。
处理模块520主要用于根据神经网络模型500输出的图像特征进行以下至少之一处理:行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测。
图6为本申请模型剪枝装置一个实施例的结构示意图。如图6所示,该实施例的模型剪枝装置主要包括:确定全局重要性模块600、剪除基本元模块610以及设置网络参数模块620。该实施例的模型剪枝装置还可以可选的包括:性能检测模块630以及更新模块640。
确定全局重要性模块600主要用于确定基础神经网络模型至少两中间层的多个基本元的全局重要性。确定全局重要性模块600所执行的具体操作可以参见上述针对步骤S200的描述。
剪除基本元模块610主要用于根据剪枝比率以及所述基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元,并剪除。剪除基本元模块610可以根据剪枝比率以及基本元的全局重要性,确定基础神经网络模型中需要被剪除的基本元;针对任一层而言,在属于该层的需要被剪除的基本元满足预定保留条件的情况下,剪除基本元模块610将该层需要被剪除的基本元中的满足预定保留条件的基本元不再作为需要被剪除的基本元;剪除基本元模块610针对当前需要被剪除的基本元,执行剪除操作。上述预定保留条件包括:属于同一层的需要被剪除的基本元为该层中的所有基本元,也可以包括:属于同一层的除了需要剪除的基本元之外的基本元的数量低于预定数量。剪除基本元模块610所执行的具体操作可以参见上述针对步骤S210的描述。
设置网络参数模块620主要用于设置基础神经网络模型中未被剪除的基本元的网络参数,形成神经网络模型。
在一个可选示例中,设置网络参数模块620可以具体用于:根据剪除基本元之前的基础神经网络模型中的基本元针对图像样本形成的特征图及剪除基本元之后的基础神经网络模型中的基本元针对图像样本形成的特征图的差异,初始化剪除基本元之后的基础神经网络模型中的基本元的权重。设置网络参数模块620所执行的具体操作可以参见上述针对步骤S220的描述。
在一个可选示例中,设置网络参数模块620可以包括:第一获取模块700、第二获取模块710、初始化权重模块720以及微调模块730;第一获取模块700、第二获取模块710、初始化权重模块720以及微调模块730所执行的操作可以参见下述针对图7的说明。
性能检测模块630主要用于检测剪枝处理后获得的神经网络模型针对待处理图像的处理结果准确性以及网络模型运行性能。
更新模块640主要用于在检测出神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,而网络模型运行性能未达到预定运行性能要求的情况下,将本次剪枝处理获得的神经网络模型作为基础神经网络模型,更新剪枝比率,以便于再次执行针对基础神经网络模型进行剪枝处理,而获得神经网络模型的过程。
在一个可选示例中,性能检测模块630检测当前形成的神经网络模型针对待处理图像的处理结果准确性,并检测当前形成的神经网络模型的网络模型运行性能,如果性能检测模块630的检测结果为:当前形成的神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,然而,网络模型运行性能未达到预定运行性能要求(例如,提取图像特征的时间过长或者所需占用的内存空间过大等)的情况下,更新模块640可以将当前形成的神经网络模型作为基础神经网络模型,更新剪枝比率,以便于使确定全局重要性模块600、剪除基本元模块610以及设置网络参数模块620针对基础神经网络模型再次进行剪枝处理,从而再次形成神经网络模型。如果性能检测模块630的检测结果为:当前形成的神经网络模型针对待处理图像的处理结果准确性满足预定准确性要求,且网络模型运行性能达到预定运行性能要求,则可以不再执行剪枝处理,从而获得可以用于提取待处理图像的图像特征的神经网络模型。
图7为本申请模型剪枝装置一个实施例的结构示意图。如图7所示,该实施例的模型剪枝装置主要用于针对剪除基本元之后的基础神经网络模型中的第i-1层的基本元x而言,初始化基本元x的权重。该实施例的模型剪枝装置主要包括:第一获取模块700、第二获取模块710以及初始化权重模块720。可选的,该模型剪枝装置还可以包括:微调模块730。
第一获取模块700主要用于获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi。第一获取模块700具体执行的操作可以参见上述针对图3中的S300的描述。在此不再详细说明。
第二获取模块710主要用于获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1。第二获取模块710具体执行的操作可以参见上述针对图3中的S310的描述。在此不再详细说明。
初始化权重模块720主要用于根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。初始化权重模块720具体执行的操作可以参见上述针对图3中的S320的描述。在此不再详细说明。
微调模块730主要用于利用训练数据集中的图像样本对初始化权重之后的基础神经网络模型进行训练,以调整基本元的权重。微调模块730可以具体用于:将训练数据集中的图像样本分别提供给初始化权重之后的基础神经网络模型以及剪枝处理前的基础神经网络模型;以剪枝处理前的基础神经网络模型输出的图像特征为指导信息,对初始化权重之后的基础神经网络模型进行训练,以减小初始化权重之后的基础神经网络模型输出的图像特征与剪枝处理前的基础神经网络模型输出的图像特征之间的差异。微调模块730执行的操作可以参见上述针对图4的描述。
示例性设备
图8示出了适于实现本申请的示例性设备800,设备800可以是汽车中配置的控制系统/电子系统、移动终端(例如,智能移动电话等)、个人计算机(PC,例如,台式计算机或者笔记型计算机等)、平板电脑以及服务器等。图8中,设备800包括一个或者多个处理器、通信部等,所述一个或者多个处理器可以为:一个或者多个中央处理单元(CPU)801,和/或,一个或者多个图像处理器(GPU)813等,处理器可以根据存储在只读存储器(ROM)802中的可执行指令或者从存储部分808加载到随机访问存储器(RAM)803中的可执行指令而执行各种适当的动作和处理。通信部812可以包括但不限于网卡,所述网卡可以包括但不限于IB(Infiniband)网卡。处理器可以与只读存储器802和/或随机访问存储器830中通信以执行可执行指令,通过总线804与通信部812的相连、并经通信部812与其他目标设备通信,从而完成本申请中的相应步骤。各指令所执行的具体操作可以参见上述方法实施例中的相关描述,在此不再详细说明。
此外,在RAM 803中,还可以存储有装置操作所需的各种程序以及数据。CPU801、ROM802以及RAM803通过总线804彼此相连。在有RAM803的情况下,ROM802为可选模块。RAM803存储可执行指令,或在运行时向ROM802中写入可执行指令,可执行指令使中央处理单元801执行上述物体分割方法所包括的步骤。输入/输出(I/O)接口805也连接至总线804。通信部812可以集成设置,也可以设置为具有多个子模块(例如,多个IB网卡),并分别与总线连接。
以下部件连接至I/O接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装在存储部分808中。
需要特别说明的是,如图8所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图8的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如,GPU和CPU可分离设置,再如理,可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上等。这些可替换的实施方式均落入本申请的保护范围。
特别地,根据本申请的实施方式,下文参考流程图描述的过程可以被实现为计算机软件程序,例如,本申请实施方式包括一种计算机程序产品,其包含有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的步骤的程序代码,程序代码可包括对应执行本申请提供的步骤对应的指令,从而实现本申请方法实施方式中的相应步骤。
在这样的实施方式中,该计算机程序可以通过通信部分809从网络上被下载及安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本申请中记载的上述指令。
可能以许多方式来实现本申请的方法和装置、电子设备以及计算机可读存储介质。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本申请的方法和装置、电子设备以及计算机可读存储介质。用于方法的步骤的上述顺序仅是为了进行说明,本申请的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施方式中,还可将本申请实施为记录在记录介质中的程序,这些程序包括用于实现根据本申请的方法的机器可读指令。因而,本申请还覆盖存储用于执行根据本申请的方法的程序的记录介质。
本申请的描述是为了示例以及描述起见而给出的,而并不是无遗漏的或者将本申请限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施方式是为了更好说明本申请的原理和实际应用,并且使本领域的普通技术人员能够理解本申请从而设计适于特定用途的带有各种修改的各种实施方式。
Claims (10)
1.一种图像处理方法,其特征在于,所述方法包括:
将待处理图像提供给神经网络模型;
经所述神经网络模型输出所述待处理图像的图像特征;
其中,所述神经网络模型包括至少两中间层,每一中间层均包括多个基本元,所述神经网络模型是针对基础神经网络模型进行剪枝处理获得的,所述基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,所述基本元为基础神经网络模型中网络层的组成单元。
2.根据权利要求1所述的图像处理方法,其特征在于,所述基本元的全局重要性是根据基本元被剪除后基础神经网络模型的损失以及基本元未被剪除时基础神经网络模型的损失确定的。
3.根据权利要求2所述的图像处理方法,其特征在于,所述基本元的全局重要性是通过下述方式确定的:
将训练数据集中的图像样本输入基础神经网络模型,并获取基础神经网络模型中各中间层的多个基本元分别形成的特征图的激活值;
在以所述图像样本的标注信息为指导信息,利用损失函数以及由各中间层的激活值形成的最后一层基本元的激活值,对基础神经网络模型进行监督学习的过程中,确定所述特征图的梯度;
根据基本元形成的特征图的激活值和相应的特征图的梯度,计算多个基本元的全局重要性。
4.根据权利要求1至3任一项所述的图像处理方法,其特征在于,
针对神经网络模型以及基础神经网络模型中的全连接层而言,所述基本元包括:神经元;
针对神经网络模型以及基础神经网络模型中的卷积层而言,所述基本元包括:卷积核。
5.根据权利要求1至4任一项所述的图像处理方法,其特征在于,所述图像处理方法还包括:
根据得到的所述图像特征进行以下至少之一处理:行人检索、人脸识别、人脸位置检测、人脸关键点检测、人体位置检测、人体动作检测、人体关键点检测、手势识别、手位置检测、行人识别、车辆识别、场景识别以及活体检测。
6.一种模型剪枝方法,用于在确定出基础神经网络模型中需要剪除的基本元,并剪除之后,对剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以形成神经网络模型,其特征在于,针对剪除基本元之后的基础神经网络模型中的第i-1层的基本元x而言,初始化权重的过程包括:
获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;
获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;
根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。
7.一种图像处理装置,其特征在于,包括:
神经网络模型;
输入模块,用于将待处理图像提供给神经网络模型,经所述神经网络模型输出所述待处理图像的图像特征;
其中,所述神经网络模型包括至少两中间层,每一中间层均包括多个基本元,所述神经网络模型是模型剪枝装置针对基础神经网络模型进行剪枝处理获得的,所述基础神经网络模型中被剪除的基本元是根据位于基础神经网络模型不同中间层的基本元的全局重要性确定的,所述基本元为基础神经网络模型中网络层的组成单元。
8.一种模型剪枝装置,用于在确定出基础神经网络模型中需要剪除的基本元,并剪除之后,对剪除了基本元之后的基础神经网络模型中的基本元进行权重设置,以形成神经网络模型,其特征在于,所述装置包括:
第一获取模块,用于获取剪除基本元之后的基础神经网络模型中的第i-1层的基本元x针对图像样本形成的特征图Xi;
第二获取模块,用于获取剪除基本元之前的基础神经网络模型中的第i层的基本元x针对图像样本形成的特征图Xi+1;
初始化权重模块,用于根据特征图Xi和特征图Xi+1,采用回归模型的方式,确定剪除基本元之后的基础神经网络模型中的第i-1层的基本元x的初始化权重。
9.一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现权利要求1-6任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现权利要求1-6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711175542.2A CN108229533A (zh) | 2017-11-22 | 2017-11-22 | 图像处理方法、模型剪枝方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711175542.2A CN108229533A (zh) | 2017-11-22 | 2017-11-22 | 图像处理方法、模型剪枝方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108229533A true CN108229533A (zh) | 2018-06-29 |
Family
ID=62652726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711175542.2A Pending CN108229533A (zh) | 2017-11-22 | 2017-11-22 | 图像处理方法、模型剪枝方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108229533A (zh) |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109242092A (zh) * | 2018-09-29 | 2019-01-18 | 深圳市商汤科技有限公司 | 网络获取及图像处理方法和装置、电子设备、存储介质 |
CN109543529A (zh) * | 2018-10-19 | 2019-03-29 | 北京陌上花科技有限公司 | 活体检测方法及装置 |
CN109671020A (zh) * | 2018-12-17 | 2019-04-23 | 北京旷视科技有限公司 | 图像处理方法、装置、电子设备和计算机存储介质 |
CN109871942A (zh) * | 2019-02-19 | 2019-06-11 | 上海商汤智能科技有限公司 | 神经网络的训练方法和装置、系统、存储介质 |
WO2020042658A1 (zh) * | 2018-08-31 | 2020-03-05 | 华为技术有限公司 | 数据处理方法、装置、设备和系统 |
CN110929839A (zh) * | 2018-09-20 | 2020-03-27 | 深圳市商汤科技有限公司 | 训练神经网络的方法和装置、电子设备和计算机存储介质 |
CN111311786A (zh) * | 2018-11-23 | 2020-06-19 | 杭州眼云智家科技有限公司 | 智能门锁系统及其智能门锁控制方法 |
CN111325311A (zh) * | 2018-12-14 | 2020-06-23 | 深圳云天励飞技术有限公司 | 神经网络模型生成方法、装置、电子设备及存储介质 |
CN111488986A (zh) * | 2020-04-13 | 2020-08-04 | 商汤集团有限公司 | 一种模型压缩方法、图像处理方法以及装置 |
CN111516640A (zh) * | 2020-04-24 | 2020-08-11 | 上海商汤临港智能科技有限公司 | 车门控制方法、车辆、系统、电子设备和存储介质 |
CN111553477A (zh) * | 2020-04-30 | 2020-08-18 | 深圳市商汤科技有限公司 | 图像处理方法、装置及存储介质 |
CN111898591A (zh) * | 2020-08-28 | 2020-11-06 | 电子科技大学 | 一种基于剪枝残差网络的调制信号识别方法 |
CN112560881A (zh) * | 2019-09-25 | 2021-03-26 | 北京四维图新科技股份有限公司 | 对象识别方法和装置、数据处理方法 |
CN113901904A (zh) * | 2021-09-29 | 2022-01-07 | 北京百度网讯科技有限公司 | 图像处理方法、人脸识别模型训练方法、装置及设备 |
TWI799191B (zh) * | 2021-03-16 | 2023-04-11 | 香港商墨子國際有限公司 | 用於知識保存類神經網絡剪除之系統及方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5636326A (en) * | 1992-09-04 | 1997-06-03 | Ricoh Corporation | Method for operating an optimal weight pruning apparatus for designing artificial neural networks |
CN1945602A (zh) * | 2006-07-07 | 2007-04-11 | 华中科技大学 | 一种基于人工神经网络的特征选择方法 |
CN105389599A (zh) * | 2015-10-12 | 2016-03-09 | 上海电机学院 | 基于神经模糊网络的特征选择方法 |
CN106203376A (zh) * | 2016-07-19 | 2016-12-07 | 北京旷视科技有限公司 | 人脸关键点定位方法及装置 |
CN106548234A (zh) * | 2016-11-17 | 2017-03-29 | 北京图森互联科技有限责任公司 | 一种神经网络剪枝方法及装置 |
CN106779068A (zh) * | 2016-12-05 | 2017-05-31 | 北京深鉴智能科技有限公司 | 调整人工神经网络的方法和装置 |
CN106779075A (zh) * | 2017-02-16 | 2017-05-31 | 南京大学 | 一种计算机中采用剪枝方法改进的神经网络 |
-
2017
- 2017-11-22 CN CN201711175542.2A patent/CN108229533A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5636326A (en) * | 1992-09-04 | 1997-06-03 | Ricoh Corporation | Method for operating an optimal weight pruning apparatus for designing artificial neural networks |
CN1945602A (zh) * | 2006-07-07 | 2007-04-11 | 华中科技大学 | 一种基于人工神经网络的特征选择方法 |
CN105389599A (zh) * | 2015-10-12 | 2016-03-09 | 上海电机学院 | 基于神经模糊网络的特征选择方法 |
CN106203376A (zh) * | 2016-07-19 | 2016-12-07 | 北京旷视科技有限公司 | 人脸关键点定位方法及装置 |
CN106548234A (zh) * | 2016-11-17 | 2017-03-29 | 北京图森互联科技有限责任公司 | 一种神经网络剪枝方法及装置 |
CN106779068A (zh) * | 2016-12-05 | 2017-05-31 | 北京深鉴智能科技有限公司 | 调整人工神经网络的方法和装置 |
CN106779075A (zh) * | 2017-02-16 | 2017-05-31 | 南京大学 | 一种计算机中采用剪枝方法改进的神经网络 |
Non-Patent Citations (1)
Title |
---|
PAVLO MOLCHANOV等: "Pruning Convolutional Neural Networks for Resource Efficient Transfer Learning", 《EPRINT ARXIV》 * |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020042658A1 (zh) * | 2018-08-31 | 2020-03-05 | 华为技术有限公司 | 数据处理方法、装置、设备和系统 |
CN110874550A (zh) * | 2018-08-31 | 2020-03-10 | 华为技术有限公司 | 数据处理方法、装置、设备和系统 |
CN110929839B (zh) * | 2018-09-20 | 2024-04-16 | 深圳市商汤科技有限公司 | 训练神经网络的方法和装置、电子设备和计算机存储介质 |
CN110929839A (zh) * | 2018-09-20 | 2020-03-27 | 深圳市商汤科技有限公司 | 训练神经网络的方法和装置、电子设备和计算机存储介质 |
CN109242092A (zh) * | 2018-09-29 | 2019-01-18 | 深圳市商汤科技有限公司 | 网络获取及图像处理方法和装置、电子设备、存储介质 |
CN109242092B (zh) * | 2018-09-29 | 2021-02-12 | 深圳市商汤科技有限公司 | 图像处理方法和装置、电子设备、存储介质 |
CN109543529A (zh) * | 2018-10-19 | 2019-03-29 | 北京陌上花科技有限公司 | 活体检测方法及装置 |
CN111311786A (zh) * | 2018-11-23 | 2020-06-19 | 杭州眼云智家科技有限公司 | 智能门锁系统及其智能门锁控制方法 |
CN111325311A (zh) * | 2018-12-14 | 2020-06-23 | 深圳云天励飞技术有限公司 | 神经网络模型生成方法、装置、电子设备及存储介质 |
CN109671020B (zh) * | 2018-12-17 | 2023-10-24 | 北京旷视科技有限公司 | 图像处理方法、装置、电子设备和计算机存储介质 |
CN109671020A (zh) * | 2018-12-17 | 2019-04-23 | 北京旷视科技有限公司 | 图像处理方法、装置、电子设备和计算机存储介质 |
CN109871942A (zh) * | 2019-02-19 | 2019-06-11 | 上海商汤智能科技有限公司 | 神经网络的训练方法和装置、系统、存储介质 |
CN109871942B (zh) * | 2019-02-19 | 2021-06-11 | 上海商汤智能科技有限公司 | 神经网络的训练方法和装置、系统、存储介质 |
CN112560881B (zh) * | 2019-09-25 | 2024-04-19 | 北京四维图新科技股份有限公司 | 对象识别方法和装置、数据处理方法 |
CN112560881A (zh) * | 2019-09-25 | 2021-03-26 | 北京四维图新科技股份有限公司 | 对象识别方法和装置、数据处理方法 |
CN111488986A (zh) * | 2020-04-13 | 2020-08-04 | 商汤集团有限公司 | 一种模型压缩方法、图像处理方法以及装置 |
CN111516640B (zh) * | 2020-04-24 | 2022-01-04 | 上海商汤临港智能科技有限公司 | 车门控制方法、车辆、系统、电子设备和存储介质 |
WO2021212860A1 (zh) * | 2020-04-24 | 2021-10-28 | 上海商汤临港智能科技有限公司 | 车门控制方法、车辆、系统、电子设备和存储介质 |
CN111516640A (zh) * | 2020-04-24 | 2020-08-11 | 上海商汤临港智能科技有限公司 | 车门控制方法、车辆、系统、电子设备和存储介质 |
WO2021218095A1 (zh) * | 2020-04-30 | 2021-11-04 | 深圳市商汤科技有限公司 | 图像处理方法及装置、电子设备和存储介质 |
JP2022534890A (ja) * | 2020-04-30 | 2022-08-04 | シェンチェン センスタイム テクノロジー カンパニー リミテッド | 画像処理方法及び装置、電子機器並びに記憶媒体 |
CN111553477A (zh) * | 2020-04-30 | 2020-08-18 | 深圳市商汤科技有限公司 | 图像处理方法、装置及存储介质 |
CN111898591B (zh) * | 2020-08-28 | 2022-06-24 | 电子科技大学 | 一种基于剪枝残差网络的调制信号识别方法 |
CN111898591A (zh) * | 2020-08-28 | 2020-11-06 | 电子科技大学 | 一种基于剪枝残差网络的调制信号识别方法 |
TWI799191B (zh) * | 2021-03-16 | 2023-04-11 | 香港商墨子國際有限公司 | 用於知識保存類神經網絡剪除之系統及方法 |
TWI832679B (zh) * | 2021-03-16 | 2024-02-11 | 香港商墨子國際有限公司 | 用於知識保存類神經網絡剪除之電腦系統及電腦實施方法,以及其非暫時性電腦可讀儲存媒體 |
CN113901904A (zh) * | 2021-09-29 | 2022-01-07 | 北京百度网讯科技有限公司 | 图像处理方法、人脸识别模型训练方法、装置及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229533A (zh) | 图像处理方法、模型剪枝方法、装置及设备 | |
US20210183022A1 (en) | Image inpainting method and apparatus, computer device, and storage medium | |
CN108229343B (zh) | 目标对象关键点检测方法、深度学习神经网络及装置 | |
CN108229531B (zh) | 对象特征提取方法、装置、存储介质和电子设备 | |
US20190279014A1 (en) | Method and apparatus for detecting object keypoint, and electronic device | |
CN108229591B (zh) | 神经网络自适应训练方法和装置、设备、程序和存储介质 | |
CN108280477B (zh) | 用于聚类图像的方法和装置 | |
CN108154222B (zh) | 深度神经网络训练方法和系统、电子设备 | |
CN108229479A (zh) | 语义分割模型的训练方法和装置、电子设备、存储介质 | |
TW202139183A (zh) | 基於人工智慧的物體檢測方法、裝置、設備及儲存媒體 | |
CN110097086A (zh) | 图像生成模型训练方法、图像生成方法、装置、设备及存储介质 | |
CN110163171B (zh) | 用于识别人脸属性的方法和装置 | |
US10891471B2 (en) | Method and system for pose estimation | |
CN112115900B (zh) | 图像处理方法、装置、设备及存储介质 | |
EP4113376A1 (en) | Image classification model training method and apparatus, computer device, and storage medium | |
CN114495006A (zh) | 遗留物体的检测方法、装置及存储介质 | |
CN106446844B (zh) | 姿势估计方法和装置、计算机系统 | |
CN108734718B (zh) | 用于图像分割的处理方法、装置、存储介质及设备 | |
CN117894038A (zh) | 一种图像中对象姿态生成方法和装置 | |
CN113052143A (zh) | 手写数字生成方法和装置 | |
CN113887535B (zh) | 模型训练方法、文本识别方法、装置、设备和介质 | |
US11526967B2 (en) | System and method for precise image inpainting to remove unwanted content from digital images | |
CN115082624A (zh) | 一种人体模型构建方法、装置、电子设备及存储介质 | |
WO2020207294A1 (zh) | 服务处理方法、装置、存储介质及电子设备 | |
CN116543425A (zh) | 基于YOLOv4的手掌检测方法、装置、计算机设备及存储介质 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |