CN108229679A - 卷积神经网络去冗余方法及装置、电子设备和存储介质 - Google Patents

卷积神经网络去冗余方法及装置、电子设备和存储介质 Download PDF

Info

Publication number
CN108229679A
CN108229679A CN201711183838.9A CN201711183838A CN108229679A CN 108229679 A CN108229679 A CN 108229679A CN 201711183838 A CN201711183838 A CN 201711183838A CN 108229679 A CN108229679 A CN 108229679A
Authority
CN
China
Prior art keywords
convolution kernel
neural networks
convolutional neural
beta pruning
similarity
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
CN201711183838.9A
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.)
Beijing Sensetime Technology Development Co Ltd
Original Assignee
Beijing Sensetime Technology Development 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 Beijing Sensetime Technology Development Co Ltd filed Critical Beijing Sensetime Technology Development Co Ltd
Priority to CN201711183838.9A priority Critical patent/CN108229679A/zh
Publication of CN108229679A publication Critical patent/CN108229679A/zh
Pending legal-status Critical Current

Links

Classifications

    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • 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

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)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

本发明实施例公开了一种卷积神经网络去冗余方法及装置、电子设备和存储介质,其中方法包括:针对所述初始卷积神经网络,确定各卷积核之间的相似度;根据各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。本发明实施例可以提高卷积神经网络的运行速度。

Description

卷积神经网络去冗余方法及装置、电子设备和存储介质
技术领域
本发明涉及深度学习技术领域,尤其是一种卷积神经网络去冗余方法及装置、电子设备和存储介质。
背景技术
卷积神经网络(Convolutional Neural Network,CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,尤其适合完成大型图像处理。
发明内容
本发明实施例提供一种卷积神经网络去冗余的技术方案。
根据本发明实施例一个方面,提供一种卷积神经网络去冗余方法,包括:针对初始卷积神经网络,确定各卷积核之间的相似度;根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
在一种可选方式中,还包括:训练得到所述初始卷积神经网络;所述训练得到所述初始卷积神经网络包括:确定满足预置准确度标准的网络结构;根据数据样本训练网络,得到满足所述网络结构的初始卷积神经网络。
在一种可选方式中,根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝,包括:将各卷积层的各卷积核之间的相似度与预设的剪枝相似度阈值进行比较;消除高于所述剪枝相似度阈值的相似度对应的卷积核。
在一种可选方式中,针对所述初始卷积神经网络,计算所述各卷积核之间的相似度,包括:针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离;通过各卷积核之间的欧式距离或余弦距离,确定各卷积核之间的相似度。
在一种可选方式中,所述消除高于所述剪枝相似度阈值的相似度对应的卷积核,包括:消除低于预设剪枝欧式距离阈值的欧式距离对应的卷积核,或者,消除低于预设剪枝余弦距离阈值的余弦距离对应的卷积核。
在一种可选方式中,所述针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离,包括:针对所述初始卷积神经网络中的每一个卷积层,根据卷积层的卷积核大小,确定特征图的输出通道数量;根据每个输出通道的参数构成M个向量;计算所述M个向量每两个向量之间的欧式距离为各卷积核之间的欧式距离,或者,计算所述M个向量每两个向量之间的余弦距离为各卷积核之间的余弦距离。
在一种可选方式中,所述根据各卷积核之间的相似度,对所述神经卷积网络的卷积层进行剪枝,包括:根据所述M个向量每两个向量之间的欧式距离得到第一矩阵;将所述第一矩阵中的欧式距离数值与预设的剪枝欧式距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝欧式距离阈值的位置设置为0,将小于所述剪枝欧式距离阈值的位置设置为1,得到第二矩阵;或者,根据所述M个向量每两个向量之间的余弦距离得到第一矩阵;将所述第一矩阵中的余弦距离数值与预设的剪枝余弦距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝余弦距离阈值的位置设置为0,将小于所述剪枝余弦距离阈值的位置设置为1,得到第二矩阵。
在一种可选方式中,所述对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络,包括:根据所述第二矩阵中每个元素的值,建立连接图;根据连接体算法,计算得到所述连接图中连接体的总数;将所述连接体的总数确定为对应的卷积层的输出通道数目,将连接体中所对应的向量求均值,作为所述卷积层新的参数;根据所述新的参数训练得到所述目标卷积神经网络。
在一种可选方式中,所述根据所述新的参数训练得到所述目标卷积神经网络包括:实时测试当前训练得到的卷积神经网络的速度和准确度;将所述测试得到的速度和/或准确度分别与目标速度阈值和/或目标准确度阈值进行比较,若达到目标速度和/或目标准确度要求,则确定训练完成并得到所述目标卷积神经网络。
根据本发明实施例一个方面,提供一种卷积神经网络去冗余装置,包括:相似度确定单元,用于针对初始卷积神经网络,确定各卷积核之间的相似度;剪枝单元,用于根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;目标训练单元,用于对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
在一种可选方式中,还包括:初始训练单元,用于训练得到所述初始卷积神经网络;所述初始训练单元具体用于:确定满足预置准确度标准的网络结构,以及,根据数据样本训练网络,得到满足所述网络结构的初始卷积神经网络。
在一种可选方式中,所述剪枝单元具体用于:将各卷积层的各卷积核之间的相似度与预设的剪枝相似度阈值进行比较,以及,消除高于所述剪枝相似度阈值的相似度对应的卷积核。
在一种可选方式中,所述相似度确定单元包括:距离计算子单元,用于针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离;相似度确定子单元,通过各卷积核之间的欧式距离或余弦距离,确定各卷积核之间的相似度。
在一种可选方式中,所述剪枝单元具体用于:消除低于预设剪枝欧式距离阈值的欧式距离对应的卷积核,或者,消除低于预设剪枝余弦距离阈值的余弦距离对应的卷积核。
在一种可选方式中,所述距离计算子单元具体用于:针对所述初始卷积神经网络中的每一个卷积层,根据卷积层的卷积核大小,确定特征图的输出通道数量;根据每个输出通道的参数构成M个向量;以及,计算所述M个向量每两个向量之间的欧式距离为各卷积核之间的欧式距离,或者,计算所述M个向量每两个向量之间的余弦距离为各卷积核之间的余弦距离。
在一种可选方式中,所述剪枝单元包括:第一矩阵子计算单元,用于根据所计算的M个向量每两个向量之间的欧式距离得到第一矩阵;第二矩阵子计算单元,用于将所述第一矩阵中的欧式距离数值与预设的剪枝欧式距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝欧式距离阈值的位置设置为0,将小于所述剪枝欧式距离阈值的位置设置为1,得到第二矩阵;或者,第一矩阵子计算单元,用于根据所述M个向量每两个向量之间的余弦距离得到第一矩阵;第二矩阵子计算单元,用于将所述第一矩阵中的余弦距离数值与预设的剪枝余弦距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝余弦距离阈值的位置设置为0,将小于所述剪枝余弦距离阈值的位置设置为1,得到第二矩阵。
在一种可选方式中,所述目标训练单元包括:连接图建立子单元,用于根据所述第二矩阵中每个元素的值,建立连接图;并根据连接体算法,计算得到所述连接图中连接体的总数;新参数确定子单元,用于将所述连接体的总数确定为对应的卷积层的输出通道数目,将连接体中所对应的向量求均值,作为所述卷积层新的参数;重新训练子单元,用于根据所述新的参数训练得到所述目标卷积神经网络。
在一种可选方式中,所述重新训练子单元具体用于:实时测试当前训练得到的卷积神经网络的速度和准确度;以及,将所述测试得到的速度和/或准确度分别与目标速度阈值和/或目标准确度阈值进行比较,若达到目标速度和/或目标准确度要求,则确定训练完成并得到所述目标卷积神经网络。
根据本发明实施例一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述卷积神经网络去冗余方法的步骤。
根据本发明实施例一个方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一项所述卷积神经网络去冗余方法的步骤。
基于本发明上述实施例提供的卷积神经网络去冗余方法,通过分析卷积神经网络中卷积核的相似度,去除相似度高的冗余卷积层进行剪枝处理,由于去除的是卷积神经网络中卷积核相似度较高的冗余卷积层,因此能够在不影响整个卷积神经网络的准确性的同时,缩小网络规模,提高网络的运行速度。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明卷积神经网络去冗余方法一个实施例的流程图。
图2为本发明卷积神经网络去冗余方法另一个实施例的流程图。
图3为本发明卷积神经网络去冗余方法原理示意图。
图4为本发明卷积神经网络去冗余装置一个实施例的结构示意图。
图5为本发明卷积神经网络去冗余装置另一个实施例的结构示意图。
图6为本发明电子设备一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
卷积神经网络一般计算量都比较巨大,如何在保持网络模型性能几乎不变的前提下,减少模型计算量,是卷积神经网络应用于实际情况上的重要问题。
简单的通过修改每个卷积层所输出的特征图(feature map)通道数量,即减少每层卷积核的数量,就能够降低已有网络的计算量。但是,对哪些卷积层减少、该减少多少、怎样减少才能不会大幅度降低模型性能是剪枝问题的关键。然而,很多现有方法只是盲目的减少通道数量,并没有对每层卷积进行足够的分析来确定减少的方法。
图1为本发明方法一个卷积神经网络去冗余方法实施例的流程图。如图1所示,该实施例方法包括S101-S103。
S101:针对初始卷积神经网络,确定各卷积核之间的相似度。
初始卷积神经网络是未经过剪枝前的卷积神经网络。例如,首先确定满足预置准确度标准的网络结构;根据数据样本训练网络,利用训练平台对网络进行训练,得到满足网络结构的初始卷积神经网络。在训练初始卷积神经网络时,往往是在不考虑计算量的情况下设计网络结构,因此训练得到的初始卷积神经网络准确度较高但是速度不够快。
卷积核之间的相似度可以理解为各个卷积核的参数数值的相关性。卷积核是卷积时使用到的权,用一个矩阵表示,该矩阵与使用的图像区域大小相同,其行、列都是奇数,是一个权矩阵。因此各个卷积核之间的相似度可以由各个权矩阵的参数数值的相关性表示。
S102:根据各卷积核之间的相似度,对初始卷积神经网络的卷积层进行剪枝。
可预先设定一个剪枝相似度阈值,通过将各卷积核之间的相似度与该剪枝相似度阈值进行比较确定是否对卷积层的卷积核进行剪枝。例如,将各卷积核之间的相似度与预设的剪枝相似度阈值进行比较;消除高于剪枝相似度阈值的相似度对应的卷积核;而保留低于剪枝相似度阈值的相似度对应的卷积核。
S103:对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
在经过根据卷积核相似度消除冗余卷积层的卷积核之后,由于已经删除了一部分卷积核,因此卷积核的数量减小了。据此再进行卷积神经网络训练,得到规模较小的目标卷积神经网络。由于规模缩小,目标卷积神经网络可以保证处理效率,并且由于消除的是冗余卷积核,因此可保持较高的准确率。
可见,本发明实施例提供的卷积神经网络去冗余方法中,通过分析卷积神经网络中卷积核的相似度,去除相似度高的冗余卷积层进行剪枝处理,由于去除的是卷积神经网络中卷积核相似度高的冗余卷积层,因此能够在不影响整个卷积神经网络的准确性的同时,缩小网络规模,提高网络运行速度。
参见图2为本发明卷积神经网络去冗余方法另一个实施例的流程图。该实施例中,具体示例性的介绍了通过卷积核之间的欧式距离或余弦距离确定卷积核之间的相似度的方式。
S201:针对初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离,通过各卷积核之间的欧式距离或余弦距离,确定各卷积核之间的相似度。
初始卷积神经网络是未经过剪枝前的卷积神经网络。例如,首先确定满足预置准确度标准的网络结构;根据数据样本训练网络,利用训练平台对网络进行训练,得到满足网络结构的初始卷积神经网络。在训练初始卷积神经网络时,往往是在不考虑计算量的情况下设计网络结构,因此训练得到的初始卷积神经网络准确度较高但是速度不够快。
在本实施例中,通过计算卷积核之间的欧式距离或余弦距离确定卷积核之间的相似度。可以理解,卷积核之间的欧式距离越大,则卷积核之间的相似度越低;类似的,卷积核之间的余弦距离距离越大,则卷积核之间的相似度越低。
欧氏距离(euclidean metric),也称欧几里得度量,是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。余弦距离,也称为余弦相似度,是用向量空间中两个向量夹角的余弦值作为衡量两个个体间差异的大小的度量。余弦距离使用两个向量夹角的余弦值作为衡量两个个体差异的大小。相比欧式距离,余弦距离更加注重两个向量在方向上的差异。
在一种实现方式中,通过如下步骤计算各卷积核之间的欧式距离或余弦距离:
S2011:针对初始卷积神经网络中的每一个卷积层,根据卷积层的卷积核大小,确定特征图的输出通道数量M;
S2012:根据每个输出通道的参数构成M个向量;
S2013:计算M个向量每两个向量之间的欧式距离为各卷积核之间的欧式距离,或者,计算M个向量每两个向量之间的余弦距离为各卷积核之间的余弦距离。
例如,对初始神经网络中的每一个卷积层,将其对应每个输出通道的N个参数组成M向量,其中N=(k*k*i+1);i为该卷积层输入的特征图(feature map)的通道数量,M为该层输出特征图(feature map)的通道数量,k为该卷积层卷积核的大小,N=(k*k*i+1)中“+1”是指该卷积层的额外一个偏差(bias)参数。计算这M个向量两两之间的欧式距离或余弦距离,得到一个M*M的第一矩阵(例如矩阵A)。
S202:根据各卷积核之间的欧式距离或余弦距离,对初始卷积神经网络的卷积层进行剪枝处理。
如前所述,卷积核之间的欧式距离或余弦距离越大,则对应的相似度越小;反之,卷积核之间的欧式距离或余弦距离越小,则对应的相似度越大。由于去冗余即是去除相似度高的卷积层的卷积核的过程,因此,也即去除欧式距离或余弦距离小的卷积层中卷积核的过程。
在一种实现方式中,通过如下步骤对初始卷积神经网络的卷积层进行剪枝处理:
S2021:根据所计算的所述通道数量个向量每两个向量之间的欧式距离(余弦距离)得到第一矩阵;
S2022:将第一矩阵中的欧式距离数值(余弦距离数值)与预设的剪枝欧式距离阈值(剪枝余弦距离阈值)进行比较;在第一矩阵中,将大于剪枝欧式距离阈值(剪枝余弦距离阈值)的位置设置为0,将小于剪枝欧式距离阈值(剪枝余弦距离阈值)的位置设置为1,得到第二矩阵。
例如:分析矩阵A中的数值,设定一个适当的距离阈值,将大于这个阈值对应的位置设置为0,小于这个值的位置设置为1,得到新的第二矩阵(矩阵B)。
S203:对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
在一种实现方式中,通过如下步骤训练得到目标卷积神经网络:
S2031:根据第二矩阵中每个元素的值,建立连接图;
S2032:根据连接体算法,计算得到连接图中连接体的总数;
S2033:将连接体的总数确定为对应的卷积层的输出通道数目,将连接体中所对应的向量求均值,作为该层卷积新的参数;
S2034:根据新的参数训练得到所述目标卷积神经网络。
如前描述的,在得到第二矩阵过程中,是将大于剪枝欧式距离阈值(余弦距离阈值)的权重设为0,即表示这两个节点之间的欧式距离(余弦距离)为0,表示这两个节点不相连;反之,小于剪枝欧式距离阈值(剪枝余弦距离阈值)的权重设为1,则意味着这两个节点相连。通过这样的设置可以把所有小于阈值的节点归置于同一个连接体中,即这个连接体中的所有节点都相似,所以只需要在这个对这个连接体中保留一个卷积核,从而减少冗余。
例如:将矩阵B可以看成是一个图的邻接矩阵,利用这个邻接矩阵,构建一个连接图。由于每个矩阵中的第x列第y行的元素w,表示节点x与节点y之间的边的权重为w;因此通过这样每个元素的值,可以建立一个完整的连接图。
使用连接体算法(包括但不限于:宽度优先搜索算法、深度优先搜索算法),求得该连接图中连接体的总数x。将这个x设为对应的这一层卷积的输出通道数,将连接体中所对应的向量求均值,作为该层卷积新的参数,放回到初始卷积神经网络中去。对这个带有新参数的较小网络进行优化训练得到目标卷积神经网络。
重新训练的过程例如是:重新使用同样的训练平台以及同样的数据训练网络,训练时将原网络结构中没有改变的层所对应的参数放入较小网络对应的位置进行训练。重复以上训练操作以达到模型大小和模型准确性的平衡点,例如,根据目标设计的模型大小、运算速度以及模型能力之间来判断是否达到需求。
在一种可选方式中,根据新的参数训练得到目标卷积神经网络的过程是:实时测试当前训练得到的卷积神经网络的速度和准确度;并且,将测试得到的速度和/或准确度分别与目标速度阈值和/或目标准确度阈值进行比较,若达到目标速度和/或目标准确度要求,则确定训练完成并得到目标卷积神经网络。
例如具体可有多种实现方式。
假设若重点关注卷积神经网络的运行速度,则将测试得到的速度与目标速度阈值进行比较,若确定已达到最低的目标速度阈值,则确认当前训练得到的卷积神经网络达到目标卷积神经网络的要求,训练过程结束。假设若重点关注卷积神经网络的准确度,则将测试得到的准确度与目标准确度阈值进行比较,若确定已达到最低的目标准确度阈值,则确认当前训练得到的卷积神经网络达到目标卷积神经网络的要求,训练过程结束。假设同时关注卷积神经网络的速度和准确度,则将测试得到的速度和准确度分别与目标速度阈值和目标准确度阈值进行比较,若确定同时达到最低的目标速度阈值及目标准确度阈值,则确认当前训练得到的卷积神经网络达到目标卷积神经网络的要求,训练过程结束。
参见图3,为本发明卷积神经网络去冗余方法实现示意图。图3示出了一个对卷积层中卷积核进行剪枝。假设,原卷积层的卷积核包括k1、k2、k3、k4……kn;经过剪枝后,消除了卷积层的卷积核k1、k3、k4等,保留卷积核k2等。通过确定卷积核相似度并对相似度高的卷积核进行剪枝处理,有效去除了冗余卷积核;根据保留下来的卷积核重新训练得到的网络规模缩小,可提高处理效率。
本发明实施例提供的卷积神经网络去冗余方法,由于是有目的性的去除相似度高的卷积核,因此相对于大模型教小模型的方式,占用的显存较小;相比于盲目设置小模型中卷积层的通道数量,通道数量设置上较为科学,可确保模型的准确性。例如在计算量较大的大模型应用中(双目景深应用中),可以本发明实施例方法,分析网络中冗余卷积层,剪去这些冗余卷积层的卷积核,来减小网络的通道数量,进一步减小网络大小和计算量,提高网络的运行速度。
图4为本发明卷积神经网络去冗余装置一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图4所示,该实施例的装置包括:
相似度确定单元401,用于针对所述初始卷积神经网络,确定各卷积核之间的相似度;
剪枝单元402,用于根据各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;
目标训练单元403,用于对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
在一种可选方式中,还包括:初始训练单元400,用于训练得到所述初始卷积神经网络;所述初始训练单元具体用于:确定满足预置准确度标准的网络结构,以及,根据数据样本训练网络,得到满足所述网络结构的初始卷积神经网络。
在一种可选方式中,所述剪枝单元402具体用于:将各卷积层的各卷积核之间的相似度与预设的剪枝相似度阈值进行比较,以及,消除高于所述剪枝相似度阈值的相似度对应的卷积核。
图5为本发明卷积神经网络去冗余装置另一个实施例的结构示意图。该实施例的装置可用于实现本发明上述各方法实施例。如图5所示,该实施例的装置包括:
相似度确定单元501,用于针对所述初始卷积神经网络,确定各卷积核之间的相似度;
剪枝单元502,用于根据各卷积核之间的相似度,对初始卷积神经网络的卷积层进行剪枝;
目标训练单元503,用于对剪枝后的卷积申请网络进行训练,得到目标卷积神经网络。
在一种可选方式中,还包括:初始训练单元500,用于训练得到所述初始卷积神经网络;所述初始训练单元500具体用于:确定满足预置准确度标准的网络结构,以及,根据数据样本训练网络,得到满足所述网络结构的初始卷积神经网络。
在一种可选方式中,所述相似度确定单元501包括:
距离计算子单元5011,用于针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离;
相似度确定子单元5012,通过各卷积核之间的欧式距离或余弦距离,确定各卷积核之间的相似度。
在一种可选方式中,所述剪枝单元502具体用于:消除低于预设剪枝欧式距离阈值的欧式距离对应的卷积核,或者,消除低于预设剪枝余弦距离阈值的余弦距离对应的卷积核。
在一种可选方式中,所述距离计算子单元5011具体用于:针对所述初始卷积神经网络中的每一个卷积层,根据卷积层的卷积核大小,确定特征图的输出通道数量;根据每个输出通道的参数构成M个向量;以及,计算所述M个向量每两个数值之间的欧式距离为各卷积核之间的欧式距离,或者,计算所述M个向量每两个向量之间的余弦距离为各卷积核之间的余弦距离。
在一种可选方式中,所述剪枝单元502包括:
第一矩阵子计算单元5021,用于根据所计算的M个向量每两个数值之间的欧式距离得到第一矩阵;
第二矩阵子计算单元5022,用于将所述第一矩阵中的欧式距离数值与预设的剪枝欧式距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝欧式距离阈值的位置设置为0,将小于所述剪枝欧式距离阈值的位置设置为1,得到第二矩阵;或者,
第一矩阵子计算单元,用于根据所述M个向量每两个向量之间的余弦距离得到第一矩阵;
第二矩阵子计算单元,用于将所述第一矩阵中的余弦距离数值与预设的剪枝余弦距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝余弦距离阈值的位置设置为0,将小于所述剪枝余弦距离阈值的位置设置为1,得到第二矩阵.
在一种可选方式中,所述目标训练单元503包括:
连接图建立子单元5031,用于根据所述第二矩阵中每个元素的值,建立连接图;并根据连接体算法,计算得到所述连接图中连接体的总数;
新参数确定子单元5032,用于将所述连接体的总数确定为对应的卷积层的输出通道数目,将连接体中所对应的向量求均值,作为该层卷积新的参数;
重新训练子单元5033,用于根据所述新的参数训练得到所述目标卷积神经网络。
在一种可选方式中,所述重新训练子单元5033具体用于:实时测试当前训练得到的卷积神经网络的速度和准确度;以及,将所述测试得到的速度和/或准确度分别与目标速度阈值和/或目标准确度阈值进行比较,若达到目标速度和/或目标准确度要求,则确定训练完成并得到所述目标卷积神经网络。
本发明实施例还提供了一种电子设备,例如可以是移动终端、个人计算机(PC)、平板电脑、服务器等。下面参考图6,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备600的结构示意图:如图6所示,计算机***600包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(CPU)601,和/或一个或多个图像处理器(GPU)613等,处理器可以根据存储在只读存储器(ROM)602中的可执行指令或者从存储部分608加载到随机访问存储器(RAM)603中的可执行指令而执行各种适当的动作和处理。通信部612可包括但不限于网卡,所述网卡可包括但不限于IB(Infiniband)网卡,
处理器可与只读存储器602和/或随机访问存储器630中通信以执行可执行指令,通过总线604与通信部612相连、并经通信部612与其他目标设备通信,从而完成本申请实施例提供的任一项方法对应的操作,例如,训练得到初始卷积神经网络;针对所述初始卷积神经网络,确定各卷积核之间的相似度;根据各卷积核之间的相似度,对卷积核进行剪枝;根据剪枝后的卷积核,训练得到目标卷积神经网络。
此外,在RAM 603中,还可存储有装置操作所需的各种程序和数据。CPU601、ROM602以及RAM603通过总线604彼此相连。在有RAM603的情况下,ROM602为可选模块。RAM603存储可执行指令,或在运行时向ROM602中写入可执行指令,可执行指令使处理器601执行上述通信方法对应的操作。输入/输出(I/O)接口605也连接至总线604。通信部612可以集成设置,也可以设置为具有多个子模块(例如多个IB网卡),并在总线链接上。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
需要说明的,如图6所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图6的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如GPU和CPU可分离设置或者可将GPU集成在CPU上,通信部可分离设置,也可集成设置在CPU或GPU上,等等。这些可替换的实施方式均落入本发明公开的保护范围。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请实施例提供的方法步骤对应的指令,例如,接收待检测证件的图片或视频;对待检测证件的图片或视频进行处理后,得到待检测证件图像;对待检测证件图像进行特征提取,得到多个类别的特征信息;根据所述多个类别的特征信息进行证件伪造识别,得到所述证件的识别结果。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (10)

1.一种卷积神经网络去冗余方法,其特征在于,包括:
针对初始卷积神经网络,确定各卷积核之间的相似度;
根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;
对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
2.根据权利要求1所述的方法,其特征在于,还包括:训练得到所述初始卷积神经网络;
所述训练得到所述初始卷积神经网络包括:确定满足预置准确度标准的网络结构;根据数据样本训练网络,得到满足所述网络结构的初始卷积神经网络。
3.根据权利要求1所述的方法,其特征在于,根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝,包括:
将各卷积层的各卷积核之间的相似度与预设的剪枝相似度阈值进行比较;
消除高于所述剪枝相似度阈值的相似度对应的卷积核。
4.根据权利要求3所述的方法,其特征在于,针对所述初始卷积神经网络,计算所述各卷积核之间的相似度,包括:
针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离;
通过各卷积核之间的欧式距离或余弦距离,确定各卷积核之间的相似度。
5.根据权利要求4所述的方法,其特征在于,所述消除高于所述剪枝相似度阈值的相似度对应的卷积核,包括:
消除低于预设剪枝欧式距离阈值的欧式距离对应的卷积核,或者,消除低于预设剪枝余弦距离阈值的余弦距离对应的卷积核。
6.根据权利要求4所述的方法,其特征在于,所述针对所述初始卷积神经网络,计算各卷积核之间的欧式距离或余弦距离,包括:
针对所述初始卷积神经网络中的每一个卷积层,根据卷积层的卷积核大小,确定特征图的输出通道数量;
根据每个输出通道的参数构成M个向量;
计算所述M个向量每两个向量之间的欧式距离为各卷积核之间的欧式距离,或者,计算所述M个向量每两个向量之间的余弦距离为各卷积核之间的余弦距离。
7.根据权利要求6所述的方法,其特征在于,所述根据各卷积核之间的相似度,对所述神经卷积网络的卷积层进行剪枝,包括:
根据所述M个向量每两个向量之间的欧式距离得到第一矩阵;将所述第一矩阵中的欧式距离数值与预设的剪枝欧式距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝欧式距离阈值的位置设置为0,将小于所述剪枝欧式距离阈值的位置设置为1,得到第二矩阵;
或者,根据所述M个向量每两个向量之间的余弦距离得到第一矩阵;将所述第一矩阵中的余弦距离数值与预设的剪枝余弦距离阈值进行比较;在所述第一矩阵中,将大于所述剪枝余弦距离阈值的位置设置为0,将小于所述剪枝余弦距离阈值的位置设置为1,得到第二矩阵。
8.一种卷积神经网络去冗余装置,其特征在于,包括:
相似度确定单元,用于针对初始卷积神经网络,确定各卷积核之间的相似度;
剪枝单元,用于根据所述各卷积核之间的相似度,对所述初始神经网络的卷积层进行剪枝处理;
目标训练单元,用于对剪枝后的卷积神经网络进行训练,得到目标卷积神经网络。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1-7任一项所述方法的步骤。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述方法的步骤。
CN201711183838.9A 2017-11-23 2017-11-23 卷积神经网络去冗余方法及装置、电子设备和存储介质 Pending CN108229679A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711183838.9A CN108229679A (zh) 2017-11-23 2017-11-23 卷积神经网络去冗余方法及装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711183838.9A CN108229679A (zh) 2017-11-23 2017-11-23 卷积神经网络去冗余方法及装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN108229679A true CN108229679A (zh) 2018-06-29

Family

ID=62652717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711183838.9A Pending CN108229679A (zh) 2017-11-23 2017-11-23 卷积神经网络去冗余方法及装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN108229679A (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109308444A (zh) * 2018-07-16 2019-02-05 重庆大学 一种室内环境下的异常行为识别方法
CN109522949A (zh) * 2018-11-07 2019-03-26 北京交通大学 目标识别模型建立方法及装置
CN109598340A (zh) * 2018-11-15 2019-04-09 北京知道创宇信息技术有限公司 卷积神经网络的裁剪方法、装置及存储介质
CN109671020A (zh) * 2018-12-17 2019-04-23 北京旷视科技有限公司 图像处理方法、装置、电子设备和计算机存储介质
CN109686440A (zh) * 2018-12-20 2019-04-26 深圳市新产业眼科新技术有限公司 一种在线智能诊断云平台及其运行方法和可读存储介质
CN109948717A (zh) * 2019-03-26 2019-06-28 江南大学 一种生成对抗网络的自生长训练方法
CN110188865A (zh) * 2019-05-21 2019-08-30 深圳市商汤科技有限公司 信息处理方法及装置、电子设备和存储介质
CN110826713A (zh) * 2019-10-25 2020-02-21 广州思德医疗科技有限公司 一种获取专用卷积核的方法及装置
WO2020042658A1 (zh) * 2018-08-31 2020-03-05 华为技术有限公司 数据处理方法、装置、设备和***
CN111079833A (zh) * 2019-12-16 2020-04-28 腾讯科技(深圳)有限公司 图像识别方法、装置以及计算机可读存储介质
CN111126501A (zh) * 2019-12-26 2020-05-08 厦门市美亚柏科信息股份有限公司 一种图像识别方法、终端设备及存储介质
CN111382839A (zh) * 2020-02-23 2020-07-07 华为技术有限公司 剪枝神经网络的方法和装置
CN111507203A (zh) * 2020-03-27 2020-08-07 北京百度网讯科技有限公司 可变车道检测模型的构建方法、电子设备及存储介质
CN112241789A (zh) * 2020-10-16 2021-01-19 广州云从凯风科技有限公司 用于轻量化神经网络的结构化剪枝方法、装置、介质及设备
CN113128660A (zh) * 2019-12-31 2021-07-16 深圳云天励飞技术有限公司 深度学习模型压缩方法及相关设备
CN113240085A (zh) * 2021-05-12 2021-08-10 平安科技(深圳)有限公司 模型剪枝方法、装置、设备及存储介质
WO2021164737A1 (zh) * 2020-02-20 2021-08-26 华为技术有限公司 神经网络压缩的方法、数据处理的方法及相关装置
CN113313694A (zh) * 2021-06-05 2021-08-27 西北工业大学 一种基于轻量型卷积神经网络的表面缺陷快速检测方法
CN113554104A (zh) * 2021-07-28 2021-10-26 哈尔滨工程大学 一种基于深度学习模型的图像分类方法
CN113762505A (zh) * 2021-08-13 2021-12-07 中国电子科技集团公司第三十八研究所 一种卷积神经网络的按通道l2范数聚类剪枝方法
CN114677545A (zh) * 2022-03-29 2022-06-28 电子科技大学 一种基于相似性剪枝和高效模块的轻量化图像分类方法
CN115035912A (zh) * 2022-06-08 2022-09-09 哈尔滨工程大学 基于moc模型的水声信号样本自动标注方法

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109308444A (zh) * 2018-07-16 2019-02-05 重庆大学 一种室内环境下的异常行为识别方法
WO2020042658A1 (zh) * 2018-08-31 2020-03-05 华为技术有限公司 数据处理方法、装置、设备和***
CN109522949A (zh) * 2018-11-07 2019-03-26 北京交通大学 目标识别模型建立方法及装置
CN109522949B (zh) * 2018-11-07 2021-01-26 北京交通大学 目标识别模型建立方法及装置
CN109598340A (zh) * 2018-11-15 2019-04-09 北京知道创宇信息技术有限公司 卷积神经网络的裁剪方法、装置及存储介质
CN109671020A (zh) * 2018-12-17 2019-04-23 北京旷视科技有限公司 图像处理方法、装置、电子设备和计算机存储介质
CN109671020B (zh) * 2018-12-17 2023-10-24 北京旷视科技有限公司 图像处理方法、装置、电子设备和计算机存储介质
CN109686440A (zh) * 2018-12-20 2019-04-26 深圳市新产业眼科新技术有限公司 一种在线智能诊断云平台及其运行方法和可读存储介质
CN109686440B (zh) * 2018-12-20 2023-12-05 深圳市新产业眼科新技术有限公司 一种在线智能诊断云平台及其运行方法和可读存储介质
CN109948717B (zh) * 2019-03-26 2023-08-18 江南大学 一种生成对抗网络的自生长训练方法
CN109948717A (zh) * 2019-03-26 2019-06-28 江南大学 一种生成对抗网络的自生长训练方法
CN110188865A (zh) * 2019-05-21 2019-08-30 深圳市商汤科技有限公司 信息处理方法及装置、电子设备和存储介质
CN110826713A (zh) * 2019-10-25 2020-02-21 广州思德医疗科技有限公司 一种获取专用卷积核的方法及装置
CN110826713B (zh) * 2019-10-25 2022-06-10 广州思德医疗科技有限公司 一种获取专用卷积核的方法及装置
CN111079833A (zh) * 2019-12-16 2020-04-28 腾讯科技(深圳)有限公司 图像识别方法、装置以及计算机可读存储介质
CN111079833B (zh) * 2019-12-16 2022-05-06 腾讯医疗健康(深圳)有限公司 图像识别方法、装置以及计算机可读存储介质
CN111126501A (zh) * 2019-12-26 2020-05-08 厦门市美亚柏科信息股份有限公司 一种图像识别方法、终端设备及存储介质
CN111126501B (zh) * 2019-12-26 2022-09-16 厦门市美亚柏科信息股份有限公司 一种图像识别方法、终端设备及存储介质
CN113128660A (zh) * 2019-12-31 2021-07-16 深圳云天励飞技术有限公司 深度学习模型压缩方法及相关设备
WO2021164737A1 (zh) * 2020-02-20 2021-08-26 华为技术有限公司 神经网络压缩的方法、数据处理的方法及相关装置
CN111382839B (zh) * 2020-02-23 2024-05-07 华为技术有限公司 剪枝神经网络的方法和装置
CN111382839A (zh) * 2020-02-23 2020-07-07 华为技术有限公司 剪枝神经网络的方法和装置
CN111507203A (zh) * 2020-03-27 2020-08-07 北京百度网讯科技有限公司 可变车道检测模型的构建方法、电子设备及存储介质
CN111507203B (zh) * 2020-03-27 2023-09-26 北京百度网讯科技有限公司 可变车道检测模型的构建方法、电子设备及存储介质
CN112241789A (zh) * 2020-10-16 2021-01-19 广州云从凯风科技有限公司 用于轻量化神经网络的结构化剪枝方法、装置、介质及设备
CN113240085A (zh) * 2021-05-12 2021-08-10 平安科技(深圳)有限公司 模型剪枝方法、装置、设备及存储介质
CN113240085B (zh) * 2021-05-12 2023-12-22 平安科技(深圳)有限公司 模型剪枝方法、装置、设备及存储介质
CN113313694A (zh) * 2021-06-05 2021-08-27 西北工业大学 一种基于轻量型卷积神经网络的表面缺陷快速检测方法
CN113554104A (zh) * 2021-07-28 2021-10-26 哈尔滨工程大学 一种基于深度学习模型的图像分类方法
CN113762505A (zh) * 2021-08-13 2021-12-07 中国电子科技集团公司第三十八研究所 一种卷积神经网络的按通道l2范数聚类剪枝方法
CN113762505B (zh) * 2021-08-13 2023-12-01 中国电子科技集团公司第三十八研究所 一种卷积神经网络的按通道l2范数聚类剪枝方法
CN114677545A (zh) * 2022-03-29 2022-06-28 电子科技大学 一种基于相似性剪枝和高效模块的轻量化图像分类方法
CN115035912A (zh) * 2022-06-08 2022-09-09 哈尔滨工程大学 基于moc模型的水声信号样本自动标注方法
CN115035912B (zh) * 2022-06-08 2024-04-26 哈尔滨工程大学 基于moc模型的水声信号样本自动标注方法

Similar Documents

Publication Publication Date Title
CN108229679A (zh) 卷积神经网络去冗余方法及装置、电子设备和存储介质
CN109922032B (zh) 用于确定登录账户的风险的方法、装置、设备及存储介质
CN109101919B (zh) 用于生成信息的方法和装置
CN110766080B (zh) 一种标注样本确定方法、装置、设备及存储介质
CN108229419A (zh) 用于聚类图像的方法和装置
CN109858445A (zh) 用于生成模型的方法和装置
CN109829432B (zh) 用于生成信息的方法和装置
CN108229479A (zh) 语义分割模型的训练方法和装置、电子设备、存储介质
CN108830235A (zh) 用于生成信息的方法和装置
CN108229489A (zh) 关键点预测、网络训练、图像处理方法、装置及电子设备
CN107679466B (zh) 信息输出方法和装置
CN108280477A (zh) 用于聚类图像的方法和装置
CN108805091A (zh) 用于生成模型的方法和装置
CN109389640A (zh) 图像处理方法和装置
CN108654091A (zh) 用于游戏中作弊校验的方法、介质、装置和计算设备
CN111553488A (zh) 一种针对用户行为的风险识别模型训练方法及***
CN111414953A (zh) 点云分类方法和装置
CN110245488A (zh) 密码强度检测方法、装置、终端和计算机可读存储介质
CN109710507A (zh) 一种自动化测试的方法和装置
CN109274639A (zh) 开放平台异常数据访问的识别方法和装置
CN108427941A (zh) 用于生成人脸检测模型的方法、人脸检测方法和装置
CN108205802A (zh) 深度神经网络模型训练、图片处理方法及装置和设备
CN107169769A (zh) 应用程序的刷量识别方法、装置
CN109033148A (zh) 一种面向多分类的不平衡数据预处理方法、装置及设备
CN108171208A (zh) 信息获取方法和装置

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