CN115470900A - 一种神经网络模型的剪枝方法、装置及设备 - Google Patents

一种神经网络模型的剪枝方法、装置及设备 Download PDF

Info

Publication number
CN115470900A
CN115470900A CN202211072113.3A CN202211072113A CN115470900A CN 115470900 A CN115470900 A CN 115470900A CN 202211072113 A CN202211072113 A CN 202211072113A CN 115470900 A CN115470900 A CN 115470900A
Authority
CN
China
Prior art keywords
pruning
neural network
network model
weight
preset
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
CN202211072113.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.)
Shenzhen Ouye Semiconductor Co ltd
Original Assignee
Shenzhen Ouye Semiconductor 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 Shenzhen Ouye Semiconductor Co ltd filed Critical Shenzhen Ouye Semiconductor Co ltd
Priority to CN202211072113.3A priority Critical patent/CN115470900A/zh
Publication of CN115470900A publication Critical patent/CN115470900A/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/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Feedback Control In General (AREA)

Abstract

本发明实施例提供了一种神经网络模型的剪枝方法、装置及设备,根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。通过该方案,可以减小已剪枝权重和未剪枝权重之间的数值差距,从而在保证模型压缩的情况下,避免模型精度的损失,保证模型的准确度。

Description

一种神经网络模型的剪枝方法、装置及设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种神经网络模型的剪枝方法、装置及设备。
背景技术
随着深度学习技术的不断发展,神经网络模型的网络表达能力虽然逐渐增强,但是其需要的资源消耗也越来越大,过大的资源消耗造成计算成本较大。为了解决这一问题提出了对神经网络模型进行剪枝的技术方案。
目前用于神经网络模型的剪枝技术通常是设定一个固定的裁剪阈值对神经网络模型中不重要的权重进行直接的删除。然而这种技术方案虽然能够减少参数空间终端的冗余,但是也会导致神经网络模型的精度损失。
基于此,如何在保证神经网络模型精度的情况下,对神经网络模型剪枝称为亟需解决的技术问题。
发明内容
本发明的主要目的在于提供一种神经网络模型的剪枝方法、装置及设备,旨在解决现有技术中对神经网络模型剪枝后神经网络模型精度损失的问题。
为了实现上述目的,本发明实施例提供了一种神经网络模型的剪枝方法,所述方法包括:
根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;
对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。
可选地,所述基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,具体包括:
根据所述已剪枝权重的权重值及预设调节参数,调整所述剪枝后的预设神经网络模型中各未剪枝权重的权重值。
可选地,所述对所述剪枝神经网络模型进行重训练,得到目标神经网络模型,具体包括:
将所述剪枝神经网络模型进行重训练得到对应的损失函数,以并根据所述损失函数调整所述预设调节参数;
根据调整后的预设调节参数以及所述已剪枝权重的权重值,再次调整所述未剪枝权重的权重值,并生成下一剪枝神经网络模型;
继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至所述剪枝神经网络模型满足第一预设条件,得到所述目标神经网络模型。
可选地,所述基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中各未剪枝权重的权重值,具体包括:
根据所述已剪枝权重的权重值,确定已剪枝权重的已剪枝权重标准差以及已剪枝权重均值;
根据所述已剪枝权重标准差、已剪枝权重均值以及所述预设调节参数,调整所述所述剪枝后的预设神经网络模型中各未剪枝权重的权重值。
可选地,所述根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,生成剪枝神经网络模型,具体包括:
根据预设剪枝阈值对所述预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到初始剪枝神经网络模型;
获取训练样本以及所述训练样本的原始标签;
通过所述初始剪枝神经网络模型,确定所述训练样本的生成标签;
基于所述生成标签以及所述原始标签,调整所述预设剪枝阈值,并继续执行根据所述调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络模型的步骤,直至所述新的剪枝神经网络模型满足预设条件,得到所述剪枝神经网络模型。
可选地,根据预设剪枝阈值对所述预设神经网络模型进行剪枝,具体包括:
将所述预设神经网络模型中各权重的初始权重值按照预设顺序排序,得到初始权重值序列;以及
根据预设剪枝比例和所述预设神经网络模型的总分支数量,确定剪枝数量;
通过所述剪枝数量和所述初始权重值序列,获取相应的所述预设剪枝阈值;
将所述预设神经网络模型中小于所述预设剪枝阈值的所述初始权重值置零。
为了实现上述目的,本发明实施例还提供了一种神经网络模型的剪枝装置,所述装置包括:
剪枝模块,用于根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;
重训练模块,用于对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。
可选地,所述重训练模块包括:
参数调整单元,用于将所述剪枝神经网络模型进行重训练得到对应的损失函数,以并根据所述损失函数调整所述预设调节参数;以及用于根据调整后的预设调节参数以及所述已剪枝权重的权重值,再次调整所述未剪枝权重的权重值,并生成下一剪枝神经网络模型;
重训练单元,用于继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至所述剪枝神经网络模型满足第一预设条件,得到所述目标神经网络模型。
可选地,所述剪枝模块包括:
剪枝单元,用于根据预设剪枝阈值对所述预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到初始剪枝神经网络模型;
获取单元,用于获取训练样本以及所述训练样本的原始标签;
确定单元,用于通过所述初始剪枝神经网络模型,确定所述训练样本的生成标签;
调整单元,用于基于所述生成标签以及所述原始标签,调整所述预设剪枝阈值,并继续执行根据所述调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络模型的步骤,直至所述新的剪枝神经网络模型满足预设条件,得到所述剪枝神经网络模型。
为了实现上述目的,本发明实施例还提供了一种神经网络模型的剪枝设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的神经网络模型的剪枝程序,所述神经网络模型的剪枝程序被所述处理器执行时实现如上任一项所述的神经网络模型的剪枝方法的步骤。
本发明通过根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整剪枝后的预设神经网络模型中未剪枝权重的权重值,以生成剪枝神经网络模型,并对生成的剪枝神经网络模型进行重训练,得到目标网络模型。也就是说,在本发明实施例中,通过已剪枝权重的权重值调整未剪枝权重的权重值,可以减小已剪枝权重和未剪枝权重之间的数值差距,从而避免模型精度的损失,以实现在保证模型压缩的情况下,保证模型的准确度。
附图说明
图1是本发明实施例提供的神经网络模型的剪枝方法的流程图;
图2是本发明实施例提供的神经网络模型的剪枝方法中步骤S101的流程图;
图3是本发明实施例提供的神经网络模型的剪枝方法中步骤S201的流程图;
图4是本发明实施例提供的神经网络模型的剪枝方法中步骤S102的流程图;
图5是本发明台实施例提供的神经网络模型的剪枝装置的结构示意图;
图6为本发明实施例提供的神经网络模型的剪枝设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
随着深度学习技术的发展,神经网络模型的网络表达能力逐步增强,但是其需要的资源消耗也愈来愈大。现有技术中往往通过模型剪枝的手段在不影响神经网络精度的基础上,减少神经网络模型的权重,只保留重要的权重,以实现对神经网络模型的压缩。但是目前对神经网络模型的剪枝往往是设定一个固定的阈值对模型中不重要的权重直接删除(置零),这样虽然能够减少模型中的权重的,暗示会导致神经网络模型中保留的权重和删除的权重之间的数值差距越来越大,导致神经网络模型的精度损失。
基于此,为解决上述问题,本发明实施例提供了一种神经网络模型的剪枝方法、装置及设备。
下面结合附图进行详细阐述。
图1为本发明实施例提供的一种神经网络模型的剪枝方法,如图1所示,本发明实施例的神经网络模型的剪枝方法的至少可以包括以下步骤:
S101,根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型。
其中,上述预设神经网络模型可以是已训练的神经网络模型,例如:图像识别模型、机器翻译模型等,在本发明实施例中不做限制。
图2为本发明实施例提供的神经网络模型的剪枝方法中步骤S101的流程图,如图2所示,步骤S101至少包括以下步骤:
S201,根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整剪枝后的预设神经网络模型中未剪枝权重的权重值,得到初始剪枝神经网络模型。
如图3所示中,步骤S201中的根据预设剪枝阈值对预设神经网络模型进行剪枝,可以通过以下步骤实现:
S301,将预设神经网络模型中各权重的初始权重值按照预设顺序排序,得到初始权重值序列。
具体地,获取预设神经网络模型中各权重的初始权重值,然后按照数值大小的顺序进行排序,得到初始权重值序列。
可以理解的是,预设顺序可以是数值从大到小的顺序,也可以是从小到大的顺序,在本发明实施例中不做具体限定。
S302,根据预设剪枝比例和预设神经网络模型的总分支数量,确定剪枝数量。
该预设剪枝比例可以是用户预先设置的。预设神经网络模型的总分支量是指预设神经网络模型中所有权重的数量,通过对预设神经网络模型进行查询即可获得。
举例说明,假设预设剪枝比例为10%,该预设神经网络模型的总分支量为100,则其剪枝数量为10。
S303,通过剪枝数量和初始权重值序列,获取相应的预设剪枝阈值。
在本发明实施例中,按照初始权重值从小到大的顺序,通过剪枝数量和初始权重值序列,获取相应的预设剪枝阈值。
例如,剪枝数量为10,在初始权重值序列中按照从小到大的顺序,选择第11位的初始权重值为预设剪枝阈值。
S304,将预设神经网络模型中小于预设剪枝阈值的初始权重值置零。
由于小于预设剪枝阈值的数量较多,因此剪枝后的模型中会有大量的稀疏,也就是说由预设神经网络模型中的初始权重值组成的模型权重矩阵中数值为0的元素数目远远多于非0的元素数目,并且非0元素分布没有规律,此时,可以将数据为0的权重直接删除,只保留非0的权重,从而实现对预设神经网络模型的剪枝。
在本发明实施例中,通过预设剪枝比例和预设神经网络模型的总分支量确定预设剪枝阈值,相对于直接设定一固定值来说,能够适用于不同的预设神经网络模型,对于不同的预设神经网络模型可以更精确的进行剪枝操作,避免漏剪或者多剪的情况存在,从而避免因预设剪枝阈值造成剪枝后的预设神经网络的精度损失的问题。
S202,获取训练样本以及训练样本的原始标签。
需要说明的是,获取的训练样本是适用于预设神经网络模型的样本,训练样本的原始标签可以是将训练样本输入至预设神经网络模型后得到的。
S203,通过初始剪枝神经网络模型,确定训练样本的生成标签。
将训练样本输入经过步骤S201得到的初始剪枝神经网络模型,以得到初始剪枝神经网络模型所输出的训练样本的生成标签。
S204,基于生成标签以及原始标签,调整预设剪枝阈值。
具体地,可以通过以下公式调整预设剪枝阈值:
Figure BDA0003830781130000091
其中,y1为训练样本的生成标签,y2为训练样本的原始标签,A为预设剪枝阈值。
Figure BDA0003830781130000092
是为了调整后的预设剪枝阈值更加平滑。
S205,继续执行根据调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络的步骤,直至新的剪枝神经网络模型满足对应的预设条件,得到上述剪枝神经网络模型。
在本发明实施例中,根据调整后的预设剪枝阈值继续执行步骤S201的步骤,以得到新的剪枝神经网络模型,并判断新的剪枝神经网络模型是否满足对应的预设条件,在满足对应的预设条件时,则认为该新的剪枝神经网络模型为最后要得到的剪枝神经网络模型。
其中,新的剪枝神经网络模型是否满足对应的预设条件,该预设条件可以是新的剪枝神经网络模型的损失函数值是否满足预设条件。
在本发明实施例中,由于预设剪枝阈值时基于预设神经网络模型所确定的一个固定值,该预设剪枝阈值可能出现漏剪或多剪的情况,因此为了进一步有效避免多剪或漏剪的情况,可以通过上述方式对预设剪枝阈值进行调整,以得到更适合的剪枝阈值,从而使得得到的剪枝神经网络模型在保证模型精度的情况下,较好的完成模型压缩。
在本发明的一些实施例中,步骤101中基于已剪枝权重的权重值调整剪枝后的预设神经网络模型中未剪枝权重的权重值,可以通过以下方法实现:根据所述已剪枝权重的权重值及预设调节参数,调整所述剪枝后的预设神经网络模型中各未剪枝权重的权重值。
在本发明实施例中,将已经置零的权重称为已剪枝权重(即低于预设剪枝阈值的权重),保留的权重称为未剪枝权重(即高于或等于预设剪枝阈值的权重)。
进一步地,可以根据已剪枝权重的权重值,确定已剪枝权重的标准差以及均值,分别作为已剪枝权重标准差和已剪枝权重均值。然后根据已剪枝权重标准差、已剪枝权重均值以及上述预设调节参数,调整第一剪枝神经网络模型中各未剪枝权重的权重值。
具体可以参考如下公式:
Figure BDA0003830781130000111
其中,a,b,c为预设调节参数,wh为未剪枝权重的权重值(即高于或等于预设剪枝阈值的权重值),wl为已剪枝权重的权重值(即低于预设剪枝阈值的权重值),
Figure BDA0003830781130000112
为已剪枝权重均值,sd(wl)为已剪枝权重均值。
根据已剪枝权重的权重值,调整模型中未剪枝权重的权重值,可以使得已剪枝权重与未剪枝权重之间的数值差距缩小。
S102,对剪枝神经网络模型进行重训练,得到目标神经网络模型。
在得到剪枝神经网络模型后,获取相应的训练样本对剪枝神经网络模型进行重训练,以得到目标神经网络模型。
在本发明实施例中,当通过预设剪枝阈值对预设神经网络模型进行剪枝,并已剪枝权重的权重值,对未剪枝权重的权重值进行调整后,得到剪枝神经网络模型,从而得到目标神经网络模型。通过根据已剪枝权重的权重值,对未剪枝权重的权重值进行调整,可以减小模型中已剪枝权重(即删除的权重)与未剪枝权重(即保留权重)之间的数值差距,使得最终得到的目标神经网络模型在保证模型压缩的情况下,有效避免模型的准确率损失,保证模型的准确率。
图4为本发明实施例提供的神经网络模型的剪枝方法中步骤S102的流程图,在本发明的一些实施例中,步骤S102还可以至少通过以下步骤实现:
S401,将剪枝神经网络模型进行重训练得到的损失函数,以根据该损失函数调整预设调节参数。
具体地,获取训练样本对剪枝神经网络模型进行重训练,并计算该剪枝神经网络模型的损失函数。在本发明实施例中,该损失函数可以是MSE损失函数,如下公式所示:
Figure BDA0003830781130000121
其中,x为输入特征,y为训练样本标签,f(whx)为第二剪枝神经网络模型的输出项,n为训练样本的数量。
在得到该损失函数后,可以根据该损失函数调整上述预设调节参数。
S402,根据调整后的预设调节参数以及已剪枝权重的权重值,再次调整剪枝神经网络模型中未剪枝权重的权重值,得到下一剪枝神经网络模型。
在本发明实施中,通过调整后的预设调节参数,可以再次调整剪枝神经网络模型中未剪枝权重的权重值,从而得到下一剪枝神经网络模型。
S403,继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至重训练后的剪枝神经网络模型满足预设条件,以得到目标神经网络模型。
上述预设条件可以包括损失函数值满足预设要求或者模型训练次数满足预设条件。预设要求可以根据目标神经网络模型的精度来确定,这里不做详细说明,预设次数可以是神经网络模型的最大训练次数。
在本发明实施例中,在重训练的剪枝神经网络模型满足预设条件之前,可以重复步骤S401和S402,不断地调整预设调节参数,从而不断的调整未剪枝权重的权重值,从而逐步调整未剪枝权重和已剪枝权重之间的数值差距,使得未剪枝权重和已剪枝权重之间的数值差距尽可能的减小,并且这个数字差距的缩小比例可以通过损失函数进行自动的调节,从而使得在实现模型压缩的情况下,进一步的保证模型的准确度。
基于本发明实施例提供的神经网络模型的剪枝方法,本发明实施例还提供了一种神经网络模型的剪枝装置,如图5所示,该神经网络模型的剪枝装置500可以包括:剪枝模块510、重训练模块520。
剪枝模块510用于根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;
重训练模块520用于对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。
在本发明的一些实施例中,重训练模块520具体包括:参数调整单元、重训练单元;其中:
所述参数调整单元用于将所述剪枝神经网络模型进行重训练得到对应的损失函数,以并根据所述损失函数调整所述预设调节参数;以及用于根据调整后的预设调节参数以及所述已剪枝权重的权重值,再次调整所述未剪枝权重的权重值,并生成下一剪枝神经网络模型;
所述重训练单元用于继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至所述剪枝神经网络模型满足第一预设条件,得到所述目标神经网络模型。
剪枝模块510包括:剪枝单元、获取单元、确定单元、调整单元。其中:
剪枝单元用于根据预设剪枝阈值对所述预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到初始剪枝神经网络模型;
获取单元用于获取训练样本以及所述训练样本的原始标签;
确定单元用于通过所述初始剪枝神经网络模型,确定所述训练样本的生成标签;
调整单元用于基于所述生成标签以及所述原始标签,调整所述预设剪枝阈值,并继续执行根据所述调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络模型的步骤,直至所述新的剪枝神经网络模型满足预设条件,得到所述剪枝神经网络模型。
基于本发明实施例提供的神经网络模型的剪枝方法,本发明实施例还提供了一种神经网络模型的剪枝设备,如图6所示,该神经网络模型的剪枝设备包括:处理器610、存储器620及显示器630。图6仅示出了该剪枝设备的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
存储器620在一些实施例中可以是该剪枝设备的内部存储单元,例如硬盘或内存。存储器620在另一些实施例中也可以是该剪枝设备的外部存储设备,例如该剪枝设备上配置插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器620还可以既包括所述剪枝设备的内部存储单元也包括外部存储设备。存储器620用于软件程序、计算机可执行程序。存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有神经网络模型的剪枝程序640,该神经网络模型的程序40可被处理器10所执行,从而实现本申请中神经网络模型的剪枝方法。
处理器610在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行存储器620中存储的程序代码或处理数据,例如执行所述神经网络模型的剪枝方法等。
显示器630在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。显示器630用于显示在所述剪枝设备的信息以及用于显示可视化的用户界面。所述神经网络模型的剪枝设备的部件610-630通过系统总线相互通信。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的计算机可读存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的计算机可读存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (10)

1.一种神经网络模型的剪枝方法,其特征在于,所述方法包括:
根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;
对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。
2.根据权利要求1所述的方法,其特征在于,所述基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,具体包括:
根据所述已剪枝权重的权重值及预设调节参数,调整所述剪枝后的预设神经网络模型中各未剪枝权重的权重值。
3.根据权利要求2所述的方法,其特征在于,所述对所述剪枝神经网络模型进行重训练,得到目标神经网络模型,具体包括:
将所述剪枝神经网络模型进行重训练得到对应的损失函数,以并根据所述损失函数调整所述预设调节参数;
根据调整后的预设调节参数以及所述已剪枝权重的权重值,再次调整所述未剪枝权重的权重值,并生成下一剪枝神经网络模型;
继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至所述剪枝神经网络模型满足第一预设条件,得到所述目标神经网络模型。
4.根据权利要求2所述的方法,其特征在于,所述基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中各未剪枝权重的权重值,具体包括:
根据所述已剪枝权重的权重值,确定已剪枝权重的已剪枝权重标准差以及已剪枝权重均值;
根据所述已剪枝权重标准差、已剪枝权重均值以及所述预设调节参数,调整所述所述剪枝后的预设神经网络模型中各未剪枝权重的权重值。
5.根据权利要求1所述的方法,其特征在于,所述根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,生成剪枝神经网络模型,具体包括:
根据预设剪枝阈值对所述预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到初始剪枝神经网络模型;
获取训练样本以及所述训练样本的原始标签;
通过所述初始剪枝神经网络模型,确定所述训练样本的生成标签;
基于所述生成标签以及所述原始标签,调整所述预设剪枝阈值,并继续执行根据所述调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络模型的步骤,直至所述新的剪枝神经网络模型满足预设条件,得到所述剪枝神经网络模型。
6.根据权利要求5所述的方法,其特征在于,根据预设剪枝阈值对所述预设神经网络模型进行剪枝,具体包括:
将所述预设神经网络模型中各权重的初始权重值按照预设顺序排序,得到初始权重值序列;以及
根据预设剪枝比例和所述预设神经网络模型的总分支数量,确定剪枝数量;
通过所述剪枝数量和所述初始权重值序列,获取相应的所述预设剪枝阈值;
将所述预设神经网络模型中小于所述预设剪枝阈值的所述初始权重值置零。
7.一种神经网络模型的剪枝装置,其特征在于,所述装置包括:
剪枝模块,用于根据预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整所述剪枝后的预设神经网络模型中未剪枝权重的权重值,生成剪枝神经网络模型;
重训练模块,用于对所述剪枝神经网络模型进行重训练,得到目标神经网络模型。
8.根据权利要求7所述的装置,其特征在于,所述重训练模块具体包括:参数调整单元、重训练单元;
所述参数调整单元用于将所述剪枝神经网络模型进行重训练得到对应的损失函数,以并根据所述损失函数调整所述预设调节参数;以及用于根据调整后的预设调节参数以及所述已剪枝权重的权重值,再次调整所述未剪枝权重的权重值,并生成下一剪枝神经网络模型;
所述重训练单元用于继续执行将下一剪枝神经网络模型进行重训练得到损失函数的步骤,直至所述剪枝神经网络模型满足第一预设条件,得到所述目标神经网络模型。
9.根据权利要求7所述的装置,其特征在于,所述剪枝模块包括:
剪枝单元,用于根据预设剪枝阈值对所述预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到初始剪枝神经网络模型;
获取单元,用于获取训练样本以及所述训练样本的原始标签;
确定单元,用于通过所述初始剪枝神经网络模型,确定所述训练样本的生成标签;
调整单元,用于基于所述生成标签以及所述原始标签,调整所述预设剪枝阈值,并继续执行根据所述调整后的预设剪枝阈值对预设神经网络模型进行剪枝,并基于已剪枝权重的权重值调整未剪枝权重的权重值,得到新的剪枝神经网络模型的步骤,直至所述新的剪枝神经网络模型满足预设条件,得到所述剪枝神经网络模型。
10.一种神经网络模型的剪枝设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的神经网络模型的剪枝程序,所述神经网络模型的剪枝程序被所述处理器执行时实现如权利要求1-6任一项所述的神经网络模型的剪枝方法的步骤。
CN202211072113.3A 2022-09-02 2022-09-02 一种神经网络模型的剪枝方法、装置及设备 Pending CN115470900A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211072113.3A CN115470900A (zh) 2022-09-02 2022-09-02 一种神经网络模型的剪枝方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211072113.3A CN115470900A (zh) 2022-09-02 2022-09-02 一种神经网络模型的剪枝方法、装置及设备

Publications (1)

Publication Number Publication Date
CN115470900A true CN115470900A (zh) 2022-12-13

Family

ID=84369964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211072113.3A Pending CN115470900A (zh) 2022-09-02 2022-09-02 一种神经网络模型的剪枝方法、装置及设备

Country Status (1)

Country Link
CN (1) CN115470900A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115879504A (zh) * 2022-12-30 2023-03-31 珠海市欧冶半导体有限公司 一种layernorm算子拆分量化装置及方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115879504A (zh) * 2022-12-30 2023-03-31 珠海市欧冶半导体有限公司 一种layernorm算子拆分量化装置及方法
CN115879504B (zh) * 2022-12-30 2023-08-29 珠海市欧冶半导体有限公司 一种layernorm算子拆分量化装置及方法

Similar Documents

Publication Publication Date Title
CN113326764B (zh) 训练图像识别模型和图像识别的方法和装置
CN114780727A (zh) 基于强化学习的文本分类方法、装置、计算机设备及介质
CN115063875B (zh) 模型训练方法、图像处理方法、装置和电子设备
US20230162477A1 (en) Method for training model based on knowledge distillation, and electronic device
CN111709428B (zh) 图像中关键点位置的识别方法、装置、电子设备及介质
CN114494784A (zh) 深度学习模型的训练方法、图像处理方法和对象识别方法
US20220374678A1 (en) Method for determining pre-training model, electronic device and storage medium
CN113947693A (zh) 获取目标对象识别模型的方法、装置及电子设备
CN114896067A (zh) 任务请求信息的自动生成方法、装置、计算机设备及介质
CN114495102A (zh) 文本识别方法、文本识别网络的训练方法及装置
CN114241411B (zh) 基于目标检测的计数模型处理方法、装置及计算机设备
CN117746186A (zh) 低秩自适应模型的训练方法、文本生成图像方法、系统
CN115470900A (zh) 一种神经网络模型的剪枝方法、装置及设备
CN112839185B (zh) 用于处理图像的方法、装置、设备和介质
CN114495101A (zh) 文本检测方法、文本检测网络的训练方法及装置
CN113327194A (zh) 图像风格迁移方法、装置、设备和存储介质
CN113806485B (zh) 一种基于小样本冷启动的意图识别方法、装置及可读介质
CN113408304B (zh) 文本翻译方法、装置、电子设备及存储介质
CN114881227A (zh) 模型压缩方法、图像处理方法、装置和电子设备
CN114120416A (zh) 模型训练方法、装置、电子设备及介质
CN115116080A (zh) 表格解析方法、装置、电子设备和存储介质
CN114707638A (zh) 模型训练、对象识别方法及装置、设备、介质和产品
CN114998649A (zh) 图像分类模型的训练方法、图像分类方法及装置
CN114332529A (zh) 图像分类模型的训练方法、装置、电子设备及存储介质
CN113408632A (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

Application publication date: 20221213

RJ01 Rejection of invention patent application after publication