CN109472357A - 用于卷积神经网络的修剪和再训练方法 - Google Patents
用于卷积神经网络的修剪和再训练方法 Download PDFInfo
- Publication number
- CN109472357A CN109472357A CN201811051626.XA CN201811051626A CN109472357A CN 109472357 A CN109472357 A CN 109472357A CN 201811051626 A CN201811051626 A CN 201811051626A CN 109472357 A CN109472357 A CN 109472357A
- Authority
- CN
- China
- Prior art keywords
- trimming
- neural network
- ratio
- processing units
- training
- 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
- 238000000034 method Methods 0.000 title claims abstract description 69
- 238000009966 trimming Methods 0.000 title claims abstract description 60
- 238000013527 convolutional neural network Methods 0.000 title claims abstract description 55
- 238000012549 training Methods 0.000 claims abstract description 25
- 238000013528 artificial neural network Methods 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 15
- 210000004218 nerve net Anatomy 0.000 claims 2
- 230000008569 process Effects 0.000 abstract description 10
- 238000010008 shearing Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 11
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000033228 biological regulation Effects 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013138 pruning Methods 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 210000003733 optic disk Anatomy 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Classifications
-
- 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
-
- 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/04—Architecture, e.g. interconnection topology
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
训练卷积神经网络(CNN)模型并以修剪比对其进行修剪。然后对所述模型进行一次或多次训练和修剪,而不根据任何先前的修剪步骤约束所述模型。可以在每次迭代增加所述修剪比,直到达到修剪目标。然后可以再次训练所述模型,其中经修剪连接被掩蔽。修剪、再训练和调整所述修剪比的过程也可以用不同的修剪目标来重复一次或多次。
Description
技术领域
本发明涉及用于执行对神经网络的训练的系统和方法,所述神经网络诸如卷积神经网络。
背景技术
使用卷积神经网络(CNN)的许多机器学习应用程序需要非常高的计算和存储带宽。一种用于减少计算负荷的方法是对系数进行零修剪并且在系数为零时跳过计算。各种现有的软件和硬件优化技术利用零值系数。一个示例是稀疏卷积神经网络(Baoyuan Liu,Min Wang1,Hassan Foroosh1,Marshall Tappen,and Marianna Penksy)和深度神经网络 压缩和效率推理机(Song Han CVA group,Stanford University)中描述的稀疏矩阵乘法技术,这两篇文献都通过引用以其整体并入本文。
可以通过将弱于阈值的某些连接权重钳位到零来修剪CNN。修剪会显著地影响准确度。需要专用的再训练方法来恢复经修剪模型的准确度,同时保持经修剪的连接。在先前的修剪方法中,在再训练时将禁用掩码应用于经修剪的连接权重。多次迭代修剪和再训练通常可以帮助进一步提高准确度。但是对于每次迭代,禁用掩码在再训练前是固定的。
发明内容
本文公开的系统和方法提供了一种用于修剪CNN以便增加零系数的数量,同时仍然实现高水平的准确度的改进方法。
附图说明
为了容易理解本发明的优点,将通过参考附图所示的特定实施例来呈现以上简要描述的本发明的更具体描述。应当理解,这些附图仅描绘了本发明的典型实施例并且因此不应当视为限制其范围,通过使用附图将以附加的特征和细节来描述和解释本发明,其中:
图1是根据本发明的一个实施例的用于修剪神经网络的方法的过程流程图;以及
图2是根据本发明的一个实施例的用于迭代地执行图2的方法的方法的过程流程图;以及
图3是说明图1的修剪方法的曲线图;以及
图4是用于实现本发明方法的计算装置的示意性框图。
具体实施例
容易理解的是,如本文附图中大体描述和说明的,本发明的部件可能以各种不同的配置来布置和设计。因此,如附图所表示的,本发明的实施例的以下更详细描述并非旨在限制所要求保护的本发明的范围,而是仅表示根据本发明的目前设想的实施例的某些示例。通过参考附图将最好地理解目前描述的实施例,其中相似的部分始终由相似的数字表示。
根据本发明的实施例可以体现为设备、方法或计算机程序产品。因此,本发明可以采用以下形式:完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或将软件与硬件方面组合的实施例,所述实施例在本文中一般都可以称为“电路”、“模块”或“系统”。此外,本发明可以采用体现在任何有形表达介质中的计算机程序产品的形式,所述计算机程序产品具有体现在介质中的计算机可用程序代码。
可以利用一个或多个计算机可使用或计算机可读介质的任何组合,包括非瞬态介质。例如,计算机可读介质可以包括以下中的一个或多个:便携式计算机磁盘、硬盘、随机存取存储器(RAM)装置、只读存储器(ROM)装置、可擦除可编程只读存储器(EPROM或闪存)装置、便携式光盘只读存储器(CDROM)、光存储装置和磁存储装置。在选定的实施例中,计算机可读介质可以包括可包含、存储、传送、传播或传输程序以供指令执行系统、设备或装置使用或与其结合使用的任何非瞬态介质。
用于进行本发明的操作的计算机程序代码可以用一种或多种编程语言的任何组合来编写,所述编程语言包括面向对象的编程语言(诸如Java、Smalltalk、C++等)以及常规程序性编程语言(诸如“C”编程语言或类似的编程语言)。程序代码可以作为独立软件包完全在计算机系统上执行,在独立硬件单元上执行,部分地在与计算机相距一定距离的远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种场景中,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))来连接到计算机,或者可以连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。
下文中参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图图解和/或框图来描述本发明。应当理解的是,流程图图解和/或框图的每一个框以及流程图图解和/或框图中的框的组合可以通过计算机程序指令或代码来实现。可以将这些计算机程序指令提供给通用计算机、专用计算机、或其他可编程数据处理设备的处理器来产生一种机器,使得通过计算机或其他可编程数据处理装置的处理器来执行的指令创建用于实现在流程图和/或框图的一个或多个框中指定的功能/动作的装置。
这些计算机程序指令还可以存储在非瞬态计算机可读介质中,其可以引导计算机或其他可编程数据处理设备以特定方式起作用,使得存储在计算机可读介质中的指令产生一种包括实现在流程图和/或框图的一个或多个框中指定的功能/动作的指令装置的制品。
计算机程序指令也可以加载到计算机或其他可编程数据处理设备上以致使在计算机或其他可编程设备上执行一系列操作步骤产生一种计算机实现的过程,使得在计算机或其他可编程设备上执行的指令提供用于实现在流程图和/或框图的一个或多个框中指定的功能/动作的过程。
参考图1,本文公开的系统和方法提供了一种用于将修剪合并到卷积神经网络(CNN)的训练中以便增加零系数的数量,同时仍然实现高准确度的改进方法。
在以下中描述了CNN的示例性应用:2016年8月11日提交并且标题为零系数跳转卷积神经网络引擎(ZERO COEFFICIENT SKIPPING CONVOLUTION NEURAL NETWORK ENGINE)的美国申请序列号62/373,518;2017年8月8日提交并且标题为零系数跳转卷积神经网络引擎(ZERO COEFFICIENT SKIPPING CONVOLUTION NEURAL NETWORK ENGINE)的美国申请序列号15/671,829;以及2017年8月8日提交并且标题为零系数跳转卷积神经网络引擎(ZEROCOEFFICIENT SKIPPING CONVOLUTION NEURAL NETWORK ENGINE)的美国申请序列号15/671,860,所述专利申请全部都通过引用以其整体并入本文。
所示方法100可以用于训练CNN、其他类型的神经网络或其他类型的机器学习模型,同时还修剪CNN的连接以便增加零系数的数量。在以下描述中,参引CNN。然而,所公开的方法应当被理解为可适用于任何类型的神经网络。
方法100可以包括执行102对CNN模型的完整训练。完整训练可以包括本领域已知的针对CNN的任何训练方法。如本领域中已知的,训练102可以包括将训练数据作为输入并应用训练算法以便设置CNN模型的连接的权重。在完整训练期间,可以改变CNN模型的任何连接的权重以便基于训练数据产生针对给定输入数据的准确输出。如本领域中已知的,训练数据包括各自包括一个或多个输入和一个或多个期望输出的条目。训练算法为CNN的连接选择权重,使得模型在接收到一个或多个输入时给出一个或多个期望的输出。步骤102可以包括一个或多个完整再训练迭代,诸如通过重复训练算法直到CNN模型的准确度稳定,例如相对于先前的迭代,变化小于阈值百分比(例如介于0.01%与2%之间的值,例如1%是可接受值)。
方法100可以包括修剪104所述CNN模型。这可以包括将接近零的连接的权重钳位为零。可以用预定修剪比来执行修剪步骤104。修剪比是设置为零的连接的百分比。修剪比P可以被设置为初始值,例如介于50%与60%之间的值。因此,修剪步骤104可以包括针对在步骤102之后具有最低权重的P%的连接将权重钳位为零。换句话说,所保留的1-P%的连接各自具有的权重高于被钳位到零的所有P%的连接的预修剪权重。
方法100可以包括在修剪之后执行106对CNN模型的完整再训练。根据修剪步骤,完整再训练不会约束CNN模型。然而,步骤106开始时的CNN模型是来自步骤104的经修剪模型。这提供了朝向经修剪模型的偏置,而没有保持在经修剪状态的约束。因此,在再训练106期间,将允许经修剪连接的权重增加。
可以重复步骤106,直到发现108要恢复CNN模型的准确度,即在步骤102之后已经实现CNN模型准确度的某个阈值百分比(Δ1)内的准确度。
方法100可以包括评估修剪比P是否等于目标修剪比PT。示例性目标修剪比可以在50%至90%的范围内。然而,何为合理的目标修剪比很大程度上取决于应用。如果否,则修剪比P可以增加到P+ΔP(其中ΔP作为增量)或者设置为PT,取较小者。增量ΔP可以是常数或者可以根据非线性函数随着步骤112的每次迭代而变化。然后,方法100可以通过再次修剪CNN模型在步骤104处继续,其中P等于在步骤112处设置的值。然后,方法可以如上所述那样从步骤104继续。
一旦CNN模型已经被修剪104到目标修剪比PT并且再训练106到阈值准确度内,方法可以继续步骤114、116和118,其中CNN模型被再训练114和修剪118一次或多次直到发现116其准确度是稳定的。当步骤114的一次迭代之后的准确度处于与先前迭代的阈值差异内时(例如,介于0.01%与2%之间的值,例如1%的值通常是可接受的),可以确定实现了稳定性。
然后,方法100可以包括执行120对CNN模型的掩蔽式再训练。在掩蔽式再训练中,只允许非零连接的值改变。换句话说,在步骤120处仅允许选定连接改变,即在最后修剪(步骤104或118)期间未被修剪的那些。
掩蔽式再训练120可以包括根据本领域已知的任何掩蔽式CNN再训练方法使用禁用掩码来进行训练。步骤120可以重复一次或多次,直到发现122所述CNN模型的准确度是稳定的。可以以与步骤116相同的方式确定稳定性。
方法100然后可以结束,并且然后可以使用CNN模型来处理生产数据。
参考图2,在一些实施例中,可以在所示方法200的中重复方法100(在本文中称为(修剪、完整再训练、修剪和选定连接再训练(PFP-S))。
方法200可以包括执行202所述PFP-S方法100,直到发现204要稳定化CNN模型(参见步骤116)。在重复PFP-S方法100之前,可以增加修剪目标PT,诸如通过某个固定或可变的减量。可以将修剪比P的初始值设置为来自PFP-S方法100的先前执行的PT的值或某个较小值。
然后,可以使用来自方法200的迭代的CNN模型。这可以是通过方法200的最后迭代来产生的CNN模型。如果修剪目标PT的增加使CNN模型的准确度降低了不可接受的量,则可以在步骤208处恢复先前版本的CNN模型并使用其来处理生产数据,而不是最新版本的CNN模型。
图3示出了方法100如何操作的示例。水平轴线表示修剪比P。垂直轴线表示CNN模型的准确度。点300表示在方法100的初始训练步骤102之后具有峰值准确度(“峰值%”)的CNN模型的状态。如图3所示,修剪CNN模型,从而导致修剪比增加并且准确度降低了一定百分比(峰值-Δ0)。然后重复地训练106和修剪104所述CNN模型,使得在每次训练之后准确度达到峰值-Δ1。应当注意的是,在训练步骤106期间,修剪比减小,因为允许经修剪连接改变为非零值。
点302示出了在P到达修剪目标PT之后的CNN模型的状态。然后,可以再训练114并修剪118所述CNN模型,直到发现116其准确度要稳定化在以下点:CNN模型在步骤118的最后一次迭代之后将处于点304所示的状态。然后用掩码再训练120所述CNN模型,这增加了模型的准确度并同时将修剪比保持在修剪目标PT。然后,CNN模型将处于点306处。然后,可以根据方法200以不同的修剪目标PT重复方法100,或者可以使用CNN模型来处理生产数据。
图4是说明示例性计算装置400的框图。计算装置400可以用于执行各种规程(诸如本文所讨论的那些规程)。计算装置400可以是各种计算装置中的任何一种,诸如台式计算机、笔记本计算机、服务器计算机、手持计算机、平板计算机等。
计算装置400包括:一个或多个处理器402、一个或多个存储器装置404、一个或多个接口406、一个或多个大容量存储装置408、一个或多个输入/输出(I/O)装置410和显示装置430,其全部联接到总线412。处理器402包括执行存储在存储器装置404和/或大容量存储装置408中的指令的处理器或控制器。处理器402还可以包括各种类型的计算机可读介质(诸如高速缓冲存储器)。
装置404包括各种计算机可读介质,诸如易失性存储器(例如,随机存取存储器(RAM)414)和/或非易失性存储器(例如,只读存储器(ROM)416)。存储器装置404还可以包括可重写ROM(诸如闪存)。
大容量存储装置408包括各种计算机可读介质,诸如磁带、磁盘、光盘、固态存储器(例如,闪存)等。如图4所示,特定的大容量存储装置是硬盘驱动器424。在大容量存储装置408中也可以包括各种驱动器,以使得能够从各种计算机可读介质进行读取和/或对其进行写入。大容量存储装置408包括可移除介质426和/或不可移除介质。
I/O装置410包括允许将数据和/或其他信息输入到计算装置400或从计算装置400检索数据和/或其他信息的各种装置。一个或多个示例性I/O装置410包括:光标控制装置、键盘、小键盘、麦克风、监视器或其他显示装置、扬声器、打印机、网络接口卡、调制解调器、镜头、CCD或其他图像捕获装置等。
显示装置430包括能够向计算装置400的一个或多个用户显示信息的任何类型的装置。显示装置430的示例包括监视器、显示终端、视频投影装置等。
图形处理单元(GPU)432可以联接到一个或多个处理器402和/或显示装置430。GPU可以进行操作以便呈现计算机生成的图像并执行其他图形处理。GPU可以包括通用处理器(诸如一个或多个处理器402)的一些或全部功能。GPU还可以包括特定于图形处理的附加功能。GPU可以包括与坐标变换、阴影化、纹理化、光栅化以及有助于呈现计算机生成的图像的其他功能相关的硬编码和/或硬连线图形功能。
接口406包括允许计算装置400与其他系统、装置或计算环境交互的各种接口。一个或多个示例性接口406包括任何数量的不同网络接口420,诸如与局域网(LAN)、广域网(WAN)、无线网络和互联网的接口。一个或多个其他接口包括用户接口418和外围装置接口422。一个或多个接口406还可以包括一个或多个用户接口元件418。一个或多个接口406还可以包括一个或多个外围接口,诸如用于打印机、定点装置(鼠标、轨迹板等)、键盘等的接口。
总线412允许处理器402、存储器装置404、接口406、大容量存储装置408和I/O装置410彼此通信,以及与联接到总线412的其他装置或部件通信。总线412表示若干种类型的总线结构中的一种或多种,例如系统总线、PCI总线、IEEE 1394总线、USB总线等。
出于说明的目的,程序和其他可执行程序部件在本文中被示为离散块,但应当理解的是,此类程序和部件可以在不同时间驻留在计算装置400的不同存储部件中并由一个或多个处理器402执行。可替代地,本文描述的系统和规程可能以硬件、或者硬件、软件和/或固件的组合来实现。例如,一个或多个专用集成电路(ASIC)可以被编程以执行本文中描述的一个或多个系统和规程。
本发明可以在不偏离其精神或必要特征的情况下以其他具体形式体现。所描述的实施例在所有方面都被认为仅是说明性的而不是限制性的。因此,本发明的范围由所附权利要求指示,而不是由以上描述指示。处于权利要求的等效意义和范围内的所有改变都应涵盖在权利要求的范围中。
Claims (20)
1.一种方法,其包括:
(a)通过计算装置训练神经网络;
(b)通过所述计算装置修剪所述神经网络;以及
(c)在执行(b)之后,通过所述计算装置再训练所述神经网络,在所述再训练期间不会基于(b)的所述修剪施加任何约束。
2.根据权利要求1所述的方法,其还包括:
(d)通过所述计算装置重复(b)和(c)一次或多次,使得在后续迭代中执行(c)的所述再训练,而没有基于先前迭代中的(b)的所述修剪的约束。
3.根据权利要求1所述的方法,其中(b)包括通过所述计算装置,通过移除所述神经网络中的具有比所述神经网络中的未被移除的剩余连接更低权重的连接来修剪所述神经网络,使得所述剩余连接的数量相对于所述神经网络内的可能连接的数量处于一定修剪比,所述修剪比是预定值。
4.根据权利要求3所述的方法,其还包括:
(d)通过所述计算装置重复(b)和(c),使得在后续迭代中执行(a)的所述训练,而没有基于任何先前迭代中的(b)的所述修剪的约束;以及
(e)在(d)的每次迭代之前通过所述计算装置增加所述修剪比。
5.根据权利要求4所述的方法,其还包括执行(d)和(e),直到执行(d)时的所述修剪比等于目标比。
6.根据权利要求5所述的方法,其还包括:
(f)在执行(d)和(e)直到以等于所述目标比的所述修剪比执行(d)之后,通过所述计算装置再训练所述神经网络,其中在(b)的最后一次迭代中修剪的连接被约束成权重为零。
7.根据权利要求6所述的方法,其还包括通过所述计算装置重复(a)至(f)一次或多次,同时随着(a)至(f)的每次重复增加所述目标比。
8.根据权利要求6所述的方法,其还包括在(e)之后并在执行(f)之前,以固定在所述目标比的所述修剪比重复(d),直到所述神经网络的准确度实现稳定性阈值条件。
9.根据权利要求6所述的方法,其中执行(d)包括执行(b)和(c),直到所述神经网络的准确度在低于通过执行(a)实现的所述神经网络的准确度的阈值量内。
10.根据权利要求1所述的方法,其中所述神经网络是卷积神经网络(CNN)。
11.一种系统,其包括一个或多个处理装置和一个或多个存储器装置,所述一个或多个存储器装置存储有效地使得所述一个或多个处理装置进行以下操作的可执行代码:
(a)训练神经网络;
(b)修剪所述神经网络;以及
(c)在执行(b)之后再训练所述神经网络,在所述再训练期间不会基于(b)的所述修剪对所述神经网络施加任何约束。
12.根据权利要求11所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置:
(d)重复(b)和(c)一次或多次,使得在后续迭代中执行(a)的所述训练,而没有基于先前迭代中的(b)的所述修剪的约束。
13.根据权利要求11所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置进行:
通过移除所述神经网络中的具有比所述神经网络中的未被移除的剩余连接更低权重的连接来执行(b)中的修剪,使得所述剩余连接的数量相对于所述神经网络内的可能连接的数量处于一定修剪比,其中所述修剪比率是预定值。
14.根据权利要求13所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置进行:
(d)重复(b)和(c),使得在后续迭代中执行(a)的所述训练,而没有基于任何先前迭代中的(b)的所述修剪的约束;以及
(e)在(d)的每次迭代后增加所述修剪比。
15.根据权利要求14所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置执行(d)和(e),直到执行(d)时的所述修剪比等于目标比。
16.根据权利要求15所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置:
(f)在执行(d)和(e)直到以等于所述目标比的所述修剪比执行(d)之后,再训练所述神经网络,其中在(b)的最后一次迭代中修剪的连接被约束成权重为零。
17.根据权利要求16所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置:
重复(a)至(f)一次或多次,同时随着(a)至(f)的每次重复增加所述目标比,直到所述神经网络的准确度满足稳定性阈值条件。
18.根据权利要求16所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置:
在(e)之后并在执行(f)之前,以固定在所述目标比的所述修剪比重复(d),直到所述神经网络的准确度实现稳定性阈值条件。
19.根据权利要求16所述的系统,其中所述可执行代码进一步有效地使得所述一个或多个处理装置:
通过执行(b)和(c)来执行(d),直到所述神经网络的准确度在低于通过执行(a)实现的所述神经网络的准确度的阈值量内。
20.根据权利要求11所述的系统,其中所述神经网络是卷积神经网络(CNN)。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/699,438 | 2017-09-08 | ||
US15/699,438 US11200495B2 (en) | 2017-09-08 | 2017-09-08 | Pruning and retraining method for a convolution neural network |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109472357A true CN109472357A (zh) | 2019-03-15 |
Family
ID=63490311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811051626.XA Pending CN109472357A (zh) | 2017-09-08 | 2018-09-10 | 用于卷积神经网络的修剪和再训练方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11200495B2 (zh) |
EP (1) | EP3454262A1 (zh) |
JP (1) | JP7232599B2 (zh) |
KR (1) | KR20190028320A (zh) |
CN (1) | CN109472357A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699990A (zh) * | 2019-10-22 | 2021-04-23 | 杭州海康威视数字技术股份有限公司 | 神经网络模型训练方法、装置及电子设备 |
WO2021248409A1 (en) * | 2020-06-11 | 2021-12-16 | Alibaba Group Holding Limited | Pruning hardware unit for training neural network |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11734568B2 (en) * | 2018-02-14 | 2023-08-22 | Google Llc | Systems and methods for modification of neural networks based on estimated edge utility |
KR20200023238A (ko) * | 2018-08-23 | 2020-03-04 | 삼성전자주식회사 | 딥러닝 모델을 생성하는 방법 및 시스템 |
US20200401895A1 (en) * | 2019-06-21 | 2020-12-24 | Samsung Electronics Co., Ltd. | Neural network hardware accelerator system with zero-skipping and hierarchical structured pruning methods |
US20210089921A1 (en) * | 2019-09-25 | 2021-03-25 | Nvidia Corporation | Transfer learning for neural networks |
CN111061909B (zh) * | 2019-11-22 | 2023-11-28 | 腾讯音乐娱乐科技(深圳)有限公司 | 一种伴奏分类方法和装置 |
US11935271B2 (en) * | 2020-01-10 | 2024-03-19 | Tencent America LLC | Neural network model compression with selective structured weight unification |
US11562235B2 (en) | 2020-02-21 | 2023-01-24 | International Business Machines Corporation | Activation function computation for neural networks |
CN111582456B (zh) * | 2020-05-11 | 2023-12-15 | 抖音视界有限公司 | 用于生成网络模型信息的方法、装置、设备和介质 |
CN111539224B (zh) * | 2020-06-25 | 2023-08-25 | 北京百度网讯科技有限公司 | 语义理解模型的剪枝方法、装置、电子设备和存储介质 |
CN111553169B (zh) * | 2020-06-25 | 2023-08-25 | 北京百度网讯科技有限公司 | 语义理解模型的剪枝方法、装置、电子设备和存储介质 |
US20220156574A1 (en) * | 2020-11-19 | 2022-05-19 | Kabushiki Kaisha Toshiba | Methods and systems for remote training of a machine learning model |
CN113469326B (zh) * | 2021-06-24 | 2024-04-02 | 上海寒武纪信息科技有限公司 | 在神经网络模型中执行剪枝优化的集成电路装置及板卡 |
JP2023063944A (ja) | 2021-10-25 | 2023-05-10 | 富士通株式会社 | 機械学習プログラム、機械学習方法、及び、情報処理装置 |
JP2023129041A (ja) | 2022-03-04 | 2023-09-14 | 富士通株式会社 | 機械学習プログラム、機械学習方法、及び、情報処理装置 |
CN114819140A (zh) * | 2022-03-31 | 2022-07-29 | 支付宝(杭州)信息技术有限公司 | 模型剪枝方法、装置和计算机设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5288645A (en) * | 1992-09-04 | 1994-02-22 | Mtm Engineering, Inc. | Hydrogen evolution analyzer |
JP5234085B2 (ja) | 2010-11-11 | 2013-07-10 | 富士電機株式会社 | ニューラルネットワークの学習方法 |
US10373054B2 (en) | 2015-04-19 | 2019-08-06 | International Business Machines Corporation | Annealed dropout training of neural networks |
US11423311B2 (en) * | 2015-06-04 | 2022-08-23 | Samsung Electronics Co., Ltd. | Automatic tuning of artificial neural networks |
US10832136B2 (en) * | 2016-05-18 | 2020-11-10 | Nec Corporation | Passive pruning of filters in a convolutional neural network |
US10762426B2 (en) * | 2016-08-12 | 2020-09-01 | Beijing Deephi Intelligent Technology Co., Ltd. | Multi-iteration compression for deep neural networks |
US10984308B2 (en) * | 2016-08-12 | 2021-04-20 | Xilinx Technology Beijing Limited | Compression method for deep neural networks with load balance |
US10832123B2 (en) * | 2016-08-12 | 2020-11-10 | Xilinx Technology Beijing Limited | Compression of deep neural networks with proper use of mask |
JP6729455B2 (ja) | 2017-03-15 | 2020-07-22 | 株式会社島津製作所 | 分析データ解析装置及び分析データ解析方法 |
CN107688850B (zh) * | 2017-08-08 | 2021-04-13 | 赛灵思公司 | 一种深度神经网络压缩方法 |
-
2017
- 2017-09-08 US US15/699,438 patent/US11200495B2/en active Active
-
2018
- 2018-09-03 EP EP18192220.4A patent/EP3454262A1/en active Pending
- 2018-09-05 KR KR1020180105880A patent/KR20190028320A/ko active Search and Examination
- 2018-09-05 JP JP2018165782A patent/JP7232599B2/ja active Active
- 2018-09-10 CN CN201811051626.XA patent/CN109472357A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699990A (zh) * | 2019-10-22 | 2021-04-23 | 杭州海康威视数字技术股份有限公司 | 神经网络模型训练方法、装置及电子设备 |
CN112699990B (zh) * | 2019-10-22 | 2024-06-07 | 杭州海康威视数字技术股份有限公司 | 神经网络模型训练方法、装置及电子设备 |
WO2021248409A1 (en) * | 2020-06-11 | 2021-12-16 | Alibaba Group Holding Limited | Pruning hardware unit for training neural network |
Also Published As
Publication number | Publication date |
---|---|
US11200495B2 (en) | 2021-12-14 |
EP3454262A1 (en) | 2019-03-13 |
US20190080238A1 (en) | 2019-03-14 |
JP2019049977A (ja) | 2019-03-28 |
KR20190028320A (ko) | 2019-03-18 |
JP7232599B2 (ja) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109472357A (zh) | 用于卷积神经网络的修剪和再训练方法 | |
US11069345B2 (en) | Speech recognition using convolutional neural networks | |
US11869530B2 (en) | Generating audio using neural networks | |
US11651259B2 (en) | Neural architecture search for convolutional neural networks | |
CN110546656B (zh) | 前馈生成式神经网络 | |
US20210342670A1 (en) | Processing sequences using convolutional neural networks | |
CN109961780B (zh) | 一种人机交互方法、装置、服务器和存储介质 | |
US10984319B2 (en) | Neural architecture search | |
JP2019533257A (ja) | ニューラルアーキテクチャ検索 | |
KR102199066B1 (ko) | 미세먼지 측정기를 통해 산출된 미세먼지 측정 데이터의 오류를 기계학습을 기반으로 보정할 수 있는 미세먼지 측정 데이터 보정 장치 | |
CN110751941B (zh) | 语音合成模型的生成方法、装置、设备及存储介质 | |
US20210133576A1 (en) | Method and apparatus for automatically producing an artificial neural network | |
CN110874635A (zh) | 一种深度神经网络模型压缩方法及装置 | |
CN117114074A (zh) | 神经网络模型的训练、数据处理方法、装置以及介质 | |
CN116128044A (zh) | 一种模型剪枝方法、图像处理方法及相关装置 | |
CN108804627B (zh) | 信息获取方法及装置 | |
CN117745901A (zh) | 三维脸部嘴型运动转换方法、系统、电子设备与存储介质 | |
CN115857931A (zh) | 可视化页面生成方法、装置、电子设备及计算机存储介质 | |
CN115132207A (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 |