CN112766491A - 一种基于泰勒展开及数据驱动的神经网络压缩方法 - Google Patents

一种基于泰勒展开及数据驱动的神经网络压缩方法 Download PDF

Info

Publication number
CN112766491A
CN112766491A CN202110062990.1A CN202110062990A CN112766491A CN 112766491 A CN112766491 A CN 112766491A CN 202110062990 A CN202110062990 A CN 202110062990A CN 112766491 A CN112766491 A CN 112766491A
Authority
CN
China
Prior art keywords
neural network
data set
network model
training
convolution kernel
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
CN202110062990.1A
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202110062990.1A priority Critical patent/CN112766491A/zh
Publication of CN112766491A publication Critical patent/CN112766491A/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

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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于泰勒展开及数据驱动的神经网络压缩方法,使用所述训练用数据集训练原始神经网络模型直至收敛,获得训练神经网络模型;评估所述评估用数据集和所述训练神经网络模型,得到每一个卷积核的重要性评估值;然后去掉不重要的卷积核通道进行神经网络模型压缩,可以达到在尽量保证神经网络模型性能的前提下,将神经网络模型的参数量和模型大小压缩的效果,从而实现对现有技术中的神经网络模型进行优化,提高压缩后网络的精度,减少计算内存空间。

Description

一种基于泰勒展开及数据驱动的神经网络压缩方法
技术领域
本发明涉及神经网络优化技术领域,尤其涉及一种基于泰勒展开及数据驱动的神经网络压缩方法。
背景技术
卷积神经网络广泛地应用于计算机视觉的各个领域,包括物体分类和定位、行人车辆检测和视频分类等。扩大数据集的规模以及神经网络模型的参数量是深度学习成功的原因,在近些年的发展中,神经网路模型的层数从AlexNet的8层,到ResNet-152的一百多层,通过急剧的增加层数,深度神经网络在ImageNet分类任务上实现了比人更好的性能。但是神经网络模型越来越大的同时,计算资源有限的设备,如智能手机和嵌入式设备,逐渐无法搭载和运行那些性能出众但是需要消耗大量资源(计算力和显卡内存)的神经网络模型,即便使用云计算的服务,预测延迟和能源消耗也会是重要的考虑因素。
因此通过去掉冗余的、不重要的参数,对大型的神经网络模型做“瘦身”,让硬件资源有限的机器可以运行压缩后的神经网络模型,还有运行时间、功耗等,所有这些情况都将从神经网络模型压缩中受益匪浅。
发明内容
本发明的目的在于提供一种基于泰勒展开及数据驱动的神经网络压缩方法,旨在对现有技术中的神经网络模型进行优化,提高压缩后网络的精度,减少计算内存空间。
为实现上述目的,本发明采用的一种基于泰勒展开及数据驱动的神经网络压缩方法,包括下列步骤:
选取原始的神经网络模型和数据集;
将所述数据集分成训练用数据集和评估用数据集;
使用所述训练用数据集训练原始神经网络模型直至收敛,获得训练神经网络模型;
评估所述评估用数据集和所述训练神经网络模型,得到每一个卷积核的重要性评估值;
对所有卷积核的所述重要性评估值进行排序,按照裁剪比例确定阈值;
判断卷积核是否保持,获取压缩神经网络模型;
重新训练所述压缩神经网络模型。
其中,在将所述数据集分成训练用数据集和评估用数据集过程中,所述数据集分类方法为随机打乱选取,抽取比例是90%作为训练用数据集,10%作为评估用数据集。
其中,所述重要性评估值的大小取决于卷积核从有到无带来的损失函数的函数差值的绝对值。
其中,所述损失函数采用泰勒公式展开拟合。
其中,判断卷积核是否保持的步骤,包括:
比较卷积核的所述重要性评估值和所述阈值,若所述重要性评估值大于所述阈值,保留卷积核;
若所述重要性评估值小于所述阈值,去除卷积核。
其中,所述训练神经网络模型和所述压缩神经模型的裁剪压缩使用通用剪枝算法。
本发明的一种基于泰勒展开及数据驱动的神经网络压缩方法,通过评估每个特征图的重要性后去掉不重要的卷积核通道进行神经网络模型压缩,可以达到在尽量保证神经网络模型性能的前提下,将神经网络模型的参数量和模型大小压缩的效果,从而实现对现有技术中的神经网络模型进行优化,提高压缩后网络的精度,减少计算内存空间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种基于泰勒展开及数据驱动的神经网络压缩方法的流程示意图。
图2是本发明的实施例中卷积核的重要性衡量比较图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
请参阅图1,本发明提供了一种基于泰勒展开及数据驱动的神经网络压缩方法,包括下列步骤:
S1:选取原始的神经网络模型和数据集;
S2:将所述数据集分成训练用数据集和评估用数据集;
S3:使用所述训练用数据集训练原始神经网络模型直至收敛,获得训练神经网络模型;
S4:评估所述评估用数据集和所述训练神经网络模型,得到每一个卷积核的重要性评估值;
S5:对所有卷积核的所述重要性评估值进行排序,按照裁剪比例确定阈值;
S6:判断卷积核是否保持,获取压缩神经网络模型;
S7:重新训练所述压缩神经网络模型。
进一步地,在将所述数据集分成训练用数据集和评估用数据集过程中,所述数据集分类方法为随机打乱选取,抽取比例是90%作为训练用数据集,10%作为评估用数据集。
可选的,所述重要性评估值的大小取决于卷积核从有到无带来的损失函数的函数差值的绝对值。
可选的,所述损失函数采用泰勒公式展开拟合。
进一步地:判断卷积核是否保持的步骤,包括:
比较卷积核的所述重要性评估值和所述阈值,若所述重要性评估值大于所述阈值,保留卷积核;
若所述重要性评估值小于所述阈值,去除卷积核。
可选的,所述训练神经网络模型和所述压缩神经模型的裁剪压缩使用通用剪枝算法。
可选的,假设xin代表输入到神经网络模型的一条数据,Zk代表第k个通道的输出,L(Z)代表网络的损失函数,共有n个通道,H代表损失函数对第k个通道的二阶偏导,
对应
第k个通道,使用泰勒展开得到以下式子:
Figure BDA0002903036030000041
使用第k个通道有无对损失函数差值的绝对值作为衡量该通道的重要性
Figure BDA0002903036030000042
将H展开进一步得到第k个通道的重要性为:
Figure BDA0002903036030000043
本发明提供了使用VGG19模型裁剪压缩作为实施例:
1)选取原始的神经网络模型和数据集
VGG19的神经网络模型为:
[64,64,'M',128,128,'M',256,256,256,256,'M',512,512,512,512,'M',512,512,512,512]
共19层,每层的卷积核数目为64、128、256或者512,M代表池化层
数据集采用Cifar10数据集,该数据集共有60000张彩色图像,这些图像是32*32,分为10个类,每类6000张图。
2)将数据集打乱后分成两部分,一部分用于训练,一部分用于评估卷积核的重要性
此处选用了90%数据集用于训练,10%的数据集用于剪枝。
3)使用前一部分数据集训练原始神经网络模型直至收敛。
4)对另一部分数据集和训练后的神经网络模型,使用上述评估卷积核重要性的方法,得到每一个卷积核的重要性评估值。
每一个数据前向传递后会得到每一个卷积核的重要性衡量,最后得到累计的重用性,参阅图2,每一个纵坐标的竖线代表不同的层。不同层之间有显著不同,可以发现7层之后的卷积核大都趋近于弱作用性,前7层的卷积核的重要性衡量值较大。
5)对所有的卷积核重要性评估进行排序,按照裁剪比例确定阈值。
图2的横坐标横线为70%裁剪的阈值。
6)根据卷积核的重要性与阈值的大小比较决定卷积核是否保持,得到压缩后的神经网络模型。
得到的新的网络模型为
[35,55,'M',118,108,'M',248,247,216,180,'M',170,121,71,55,'M',14,5,2,29]
7)使用全部数据集重新训练压缩后的神经网络模型
压缩前后的神经网络模型数据对比如下表所示:
CIFAR10-Vgg19 剪枝前 剪枝后
正确性 92.70% 93.68%
参数量 20.08M 2.29M
可选的,训练的相应环境参数设定如下:
硬件环境:GPU选用NVIDIA 1080Ti
软件环境:操作系统采用Windows,机器学习库采用Pytorch
训练的参数:
Batch size为64
Epochs为160
优化器算法使用SGD(随机梯度下降法)
优化器的参数为
1.初始学习率为0.1
2.初始动量为0.9
3.权值衰减为1e-4
硬件设备选用NVIDIA 1080Ti,既可以满足实验需求,又可以降低预算。选用Pytorch是因为Pytorch具有实现方便的优点,是最流行的机器学习库。BatchSize设置为64可以充分使用显卡的内存,Epochs设置为160是使得神经网络收敛的经验值。初始学习率和权值衰减都为经验值,引入动量是为了加速训练。
进一步的,根据每个卷积核的重要性评估与得到的阈值的大小关系,如果小于阈值,则去掉,如果大于阈值,则保留;
假设某层原来有200个卷积核,但只有20个卷积核的重要性评估大于阈值,那么该层压缩后的卷积核个数从200变成了20,达到了神经网络模型压缩的目的。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (6)

1.一种基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,
包括下列步骤:
选取原始的神经网络模型和数据集;
将所述数据集分成训练用数据集和评估用数据集;
使用所述训练用数据集训练原始神经网络模型直至收敛,获得训练神经网络模型;
评估所述评估用数据集和所述训练神经网络模型,得到每一个卷积核的重要性评估值;
对所有卷积核的所述重要性评估值进行排序,按照裁剪比例确定阈值;
判断卷积核是否保持,获取压缩神经网络模型;
重新训练所述压缩神经网络模型。
2.如权利要求1所述的基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,在将所述数据集分成训练用数据集和评估用数据集过程中,所述数据集分类方法为随机打乱选取,抽取比例是90%作为训练用数据集,10%作为评估用数据集。
3.如权利要求2所述的基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,所述重要性评估值的大小取决于卷积核从有到无带来的损失函数的函数差值的绝对值。
4.如权利要求3所述的基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,所述损失函数采用泰勒公式展开拟合。
5.如权利要求4所述的基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,判断卷积核是否保持的步骤,包括:
比较卷积核的所述重要性评估值和所述阈值,若所述重要性评估值大于所述阈值,保留卷积核;
若所述重要性评估值小于所述阈值,去除卷积核。
6.如权利要求5所述的基于泰勒展开及数据驱动的神经网络压缩方法,其特征在于,所述训练神经网络模型和所述压缩神经模型的裁剪压缩使用通用剪枝算法。
CN202110062990.1A 2021-01-18 2021-01-18 一种基于泰勒展开及数据驱动的神经网络压缩方法 Pending CN112766491A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110062990.1A CN112766491A (zh) 2021-01-18 2021-01-18 一种基于泰勒展开及数据驱动的神经网络压缩方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110062990.1A CN112766491A (zh) 2021-01-18 2021-01-18 一种基于泰勒展开及数据驱动的神经网络压缩方法

Publications (1)

Publication Number Publication Date
CN112766491A true CN112766491A (zh) 2021-05-07

Family

ID=75702789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110062990.1A Pending CN112766491A (zh) 2021-01-18 2021-01-18 一种基于泰勒展开及数据驱动的神经网络压缩方法

Country Status (1)

Country Link
CN (1) CN112766491A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116359762A (zh) * 2023-04-27 2023-06-30 北京玖行智研交通科技有限公司 一种基于深度学习和网络压缩的电池荷电状态估计方法
WO2023134086A1 (zh) * 2022-01-11 2023-07-20 平安科技(深圳)有限公司 卷积神经网络模型剪枝方法和装置、电子设备、存储介质
CN117909940A (zh) * 2024-03-19 2024-04-19 南京信息工程大学 一种基于泰勒展开的分层加密dnn主动保护方法及系统

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107977703A (zh) * 2016-10-21 2018-05-01 辉达公司 用于修剪神经网络以实现资源有效推理的系统和方法
CN108154232A (zh) * 2018-01-23 2018-06-12 厦门中控智慧信息技术有限公司 人工神经网络的剪枝方法、装置、设备及可读存储介质
CN109523017A (zh) * 2018-11-27 2019-03-26 广州市百果园信息技术有限公司 深度神经网络的压缩方法、装置、设备及存储介质
CN109657780A (zh) * 2018-06-15 2019-04-19 清华大学 一种基于剪枝顺序主动学习的模型压缩方法
CN110119811A (zh) * 2019-05-15 2019-08-13 电科瑞达(成都)科技有限公司 一种基于熵重要性准则模型的卷积核裁剪方法
CN110321910A (zh) * 2018-03-29 2019-10-11 中国科学院深圳先进技术研究院 面向点云的特征提取方法、装置及设备
CN111178525A (zh) * 2019-12-24 2020-05-19 重庆邮电大学 一种基于剪枝的卷积神经网络压缩方法、系统及介质
US20200226451A1 (en) * 2019-01-11 2020-07-16 Samsung Electronics Co., Ltd. Method and apparatus with neural network layer contraction
CN111429415A (zh) * 2020-03-18 2020-07-17 东华大学 基于网络协同剪枝的产品表面缺陷高效模型构建方法
CN111814975A (zh) * 2020-07-09 2020-10-23 广东工业大学 一种基于剪枝的神经网络模型构建方法及相关装置
WO2020225772A1 (en) * 2019-05-07 2020-11-12 Imagia Cybernetics Inc. Method and system for initializing a neural network
CN112052833A (zh) * 2020-09-27 2020-12-08 苏州科达科技股份有限公司 对象密度监控系统、方法、视频解析服务器及存储介质

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107977703A (zh) * 2016-10-21 2018-05-01 辉达公司 用于修剪神经网络以实现资源有效推理的系统和方法
CN108154232A (zh) * 2018-01-23 2018-06-12 厦门中控智慧信息技术有限公司 人工神经网络的剪枝方法、装置、设备及可读存储介质
CN110321910A (zh) * 2018-03-29 2019-10-11 中国科学院深圳先进技术研究院 面向点云的特征提取方法、装置及设备
CN109657780A (zh) * 2018-06-15 2019-04-19 清华大学 一种基于剪枝顺序主动学习的模型压缩方法
CN109523017A (zh) * 2018-11-27 2019-03-26 广州市百果园信息技术有限公司 深度神经网络的压缩方法、装置、设备及存储介质
US20200226451A1 (en) * 2019-01-11 2020-07-16 Samsung Electronics Co., Ltd. Method and apparatus with neural network layer contraction
WO2020225772A1 (en) * 2019-05-07 2020-11-12 Imagia Cybernetics Inc. Method and system for initializing a neural network
CN110119811A (zh) * 2019-05-15 2019-08-13 电科瑞达(成都)科技有限公司 一种基于熵重要性准则模型的卷积核裁剪方法
CN111178525A (zh) * 2019-12-24 2020-05-19 重庆邮电大学 一种基于剪枝的卷积神经网络压缩方法、系统及介质
CN111429415A (zh) * 2020-03-18 2020-07-17 东华大学 基于网络协同剪枝的产品表面缺陷高效模型构建方法
CN111814975A (zh) * 2020-07-09 2020-10-23 广东工业大学 一种基于剪枝的神经网络模型构建方法及相关装置
CN112052833A (zh) * 2020-09-27 2020-12-08 苏州科达科技股份有限公司 对象密度监控系统、方法、视频解析服务器及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李青华等: "深度神经网络压缩综述", 《计算机科学》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023134086A1 (zh) * 2022-01-11 2023-07-20 平安科技(深圳)有限公司 卷积神经网络模型剪枝方法和装置、电子设备、存储介质
CN116359762A (zh) * 2023-04-27 2023-06-30 北京玖行智研交通科技有限公司 一种基于深度学习和网络压缩的电池荷电状态估计方法
CN116359762B (zh) * 2023-04-27 2024-05-07 北京玖行智研交通科技有限公司 一种基于深度学习和网络压缩的电池荷电状态估计方法
CN117909940A (zh) * 2024-03-19 2024-04-19 南京信息工程大学 一种基于泰勒展开的分层加密dnn主动保护方法及系统
CN117909940B (zh) * 2024-03-19 2024-05-17 南京信息工程大学 一种基于泰勒展开的分层加密dnn主动保护方法及系统

Similar Documents

Publication Publication Date Title
CN111192292B (zh) 基于注意力机制与孪生网络的目标跟踪方法及相关设备
CN112766491A (zh) 一种基于泰勒展开及数据驱动的神经网络压缩方法
CN109002889B (zh) 自适应迭代式卷积神经网络模型压缩方法
CN108596258B (zh) 一种基于卷积神经网络随机池化的图像分类方法
CN108133188B (zh) 一种基于运动历史图像与卷积神经网络的行为识别方法
TWI794157B (zh) 自動多閾值特徵過濾方法及裝置
CN112668579A (zh) 基于自适应亲和力和类别分配的弱监督语义分割方法
CN110533022B (zh) 一种目标检测方法、系统、装置及存储介质
CN110008853B (zh) 行人检测网络及模型训练方法、检测方法、介质、设备
CN112101364B (zh) 基于参数重要性增量学习的语义分割方法
CN112101487B (zh) 一种细粒度识别模型的压缩方法和设备
CN114154646A (zh) 一种移动边缘网络中联邦学习的效率优化方法
CN110781912A (zh) 一种基于通道扩张倒置卷积神经网络的图像分类方法
CN110705708A (zh) 卷积神经网络模型的压缩方法、装置及计算机存储介质
CN111368850A (zh) 图像的特征提取、目标检测方法及装置、卷积装置、cnn网络装置、终端
CN114972753B (zh) 基于上下文信息聚合和辅助学习的轻量级语义分割方法及系统
CN102542543A (zh) 基于块相似性的交互式图像分割方法
CN115049054B (zh) 基于特征图响应的通道自适应分段动态网络剪枝方法
CN114785824B (zh) 一种智能物联网大数据传输方法及系统
CN115937693A (zh) 一种基于遥感图像的道路识别方法及系统
CN110728354A (zh) 一种改进的滑动式分组卷积神经网络
CN110728352A (zh) 一种基于深度卷积神经网络的大规模图像分类方法
CN112861780A (zh) 一种行人重识别方法、装置、介质和移动机器人
CN113327227A (zh) 一种基于MobilenetV3的小麦头快速检测方法
CN112861135A (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: 20210507