CN113033763B - 一种多模型合并压缩方法 - Google Patents
一种多模型合并压缩方法 Download PDFInfo
- Publication number
- CN113033763B CN113033763B CN201911253771.0A CN201911253771A CN113033763B CN 113033763 B CN113033763 B CN 113033763B CN 201911253771 A CN201911253771 A CN 201911253771A CN 113033763 B CN113033763 B CN 113033763B
- Authority
- CN
- China
- Prior art keywords
- layer
- model
- mapping
- bottom layer
- 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.)
- Active
Links
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/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/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)
- 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)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种多模型合并压缩方法,包括如下步骤:步骤S1:对每个模型分别进行独立训练;步骤S2:分离每个模型的底层与高层;步骤S3:通过映射层连接底层和高层;步骤S4:训练映射层;步骤S5:训练完毕后,对训练好的新模型进行评估,选择最优结果。本发明的优点在于降低产品中多个模型作为整体时其中的冗余结构,可以节省大量的底层耗时计算,从而可以提高产品的运行效率。
Description
技术领域
本发明涉及一种模型压缩方法,尤其涉及在深度学习领域的多模型合并压缩方法。
背景技术
模型压缩是深度学习算法在部署和产品化过程中的重要步骤。通常,算法训练时会使用参数量较大的深度学习模型(大模型)。使用大模型是由于大模型的学习能力强,易于训练。
然而,在算法部署和产品化阶段,大模型庞大的参数量就变得很冗余了,再使用会引发诸多问题:
(1)大模型参数量很大,带来了很大的存储和计算量,降低算法运行效率的同时,增加了产品的功耗;
(2)大模型计算量大,对芯片的计算能力会有很高的要求,这限制了部署芯片的选择,进而也可能会增加产品的成本;
(3)每个模型往往只是一个功能模块,最终的产品往往包含很多模型,单个模型的规模如果很庞大,必然就限制了产品中所以包含模块的数量。
因而在算法部署时,往往会在尽量不损失性能的情形下对模型进行压缩。常规的压缩方式有剪枝,蒸馏和量化。
传统模型压缩主要针对单个模型进行操作,降低了每个模型自身的冗余部分。然而,对于包含了许多算法模型的产品而言,多模型从整体上依然存在可以消除的冗余结构。传统模型压缩针对单个模型,并不能对这部分冗余结构进行整体优化。
申请号为201210358480.X中国发明公开了一种用于北斗发送通用航空器经纬位置数据的多模型压缩方法,包含步骤一,根据实际情况确定经纬度和高度数据的精度并对数据进行截断处理;步骤二,基于一个或一个以上的假设模型对步骤一中经过截断处理的数据分别进行预测编码;步骤三,对步骤二中得到的多组预测编码数据分别进行霍夫曼编码;步骤四,对步骤三中得到的多组霍夫曼编码分别生成压缩数据的数据头和压缩数据体,选择字节数最小的作为最终的压缩结果;步骤五,数据的解压缩。
发明内容
为了解决现有技术的不足,本发明的目的是提供一种能降低产品中多个模型作为整体时的冗余结构的多模型合并压缩方法。
为了实现上述目的,本发明提供的一种多模型合并压缩方法,包括如下步骤:
步骤S1:对每个模型分别进行独立训练和压缩;
步骤S2:分离每个模型的底层与高层;
步骤S3:通过映射层连接底层和高层;
步骤S4:训练映射层;
步骤S5:训练完毕后,对训练好的新模型进行评估,选择最优结果。
有利地,还包括步骤S6,即将最优结果部署在最终产品上。
在步骤S1中,对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入。
每个模型均采用ResNet-18作为网络的骨干。
在所述步骤S2中,分别将每个模型的底层L和高层H剥离出来,所述底层是前五层卷积层。
在所述步骤S3中,分别用额外的卷积层作为各模型的映射层M,并将底层L、映射层M和高层H分别对应组合。
在所述步骤S4中,在每个模型原本任务上训练所述步骤S3所构造出的新网络,训练时,冻结底层L和高层H,只训练映射层M。
在所述步骤S4中,训练映射层M时,对映射层的权重多次初始化进行训练,以便用于步骤S5的评估和最终挑选。
在所述步骤S5中,待所述S4步骤训练完毕后,分别将每个模型的底层作为公共底层新网络的底层,并且与对应原网络比较,选择最优结果,将最优结果对应的该模型底层作为融合模型的共同底层。
优选地,在所述步骤S1中,模型的数量是3个,对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入。
其中,在所述步骤S2中,分别将3个模型的底层和高层剥离出来,底层分别称为La、Lb和Lc,高层分别称为Ha、Hb和Hc,所述底层是前五层卷积层。
其中,在所述步骤S3中,分别用额外的卷积层作为各模型的映射层,分别称为Ma、Mb和Mc,将底层L、映射层M和高层H分别对应组合,选择一个共同底层La,Ha是本身对应的高层,故不需要映射层;Hb和Hc与底层La不对应,则分别加上映射层连接,得到La-Mb-Hb和La-Mc-Hc两个新网络;同样,当Lb或Lc作为公共底层时,相应构造对应的新网络。
在步骤S5中,评估映射层的性能,包括如下步骤:
步骤S51,在3个模型对应的3个任务中任一个任务的测试数据集上,分别用k个训练好的映射层进行前向推理和评估,其中,K>1,以检测任务为例的话,评价指标一般为mIOU,评价指标得分最高的映射层M*则自然作为本网络的映射层;
步骤S52,同样的操作挑选出剩余网络表现最好的映射层;
步骤S53,最终部署方案会在三个选择中产生,它们分别是:
La为底层时,La-Ha、La-Mb*-Hb和La-Mc*-Hc;
Lb为底层时,Lb-Ma*-Ha、Lb-Hb和Lb-Mc*-Hc;
Lc为底层时,Lc-Ma*-Ha、Lc-Mb*-Hb和Lc-Hc;
在三个选择中根据实际推理表现,选择最接近融合前网络整体性能的方案,再部署在最终产品上。
本发明的原理是让多个模型共用同一个底层网络。优点在于降低产品中多个模型作为整体时其中的冗余结构,,提升多个模型的整体运行效率,可以节省大量的底层耗时计算,从而可以提高产品的运行效率。
附图说明
附图1是本发明的方法流程示意图。
具体实施方式
如图1所示,本发明提供的一种多模型合并压缩方法,包括如下步骤:
步骤S1:对每个模型分别进行独立训练和压缩;
步骤S2:分离每个模型的底层与高层;
步骤S3:通过映射层连接底层和高层;
步骤S4:训练映射层;
步骤S5:训练完毕后,对训练好的新模型进行评估,选择最优结果。
另外,还包括步骤S6,即将最优结果部署在最终产品上。
其中,在步骤S1中,对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入。模型压缩是指在尽可能保留原模型精度的前提下,减少模型大小及计算量的一类方法统称,常见的方法有剪枝、蒸馏和量化等。通常,模型压缩针对单个深度学习模型的压缩。
模型剪枝(Model Pruning)是一种模型压缩方法,对深度神经网络的稠密连接引入稀疏性,通过将“不重要”的权值直接置零来减少非零权值数量。
模型蒸馏(Model Distilling)就是将训练好的复杂模型推广能力“知识”迁移到一个结构更为简单的网络中。或者通过简单的网络去学习复杂模型中“知识”。
模型量化(Model Quantization)就是将以往用32bit或者64bit表达的浮点数用1bit、2bit占用较少内存空间的形式进行存储。
众所周知,深度学习模型的底层从功能上,是用来提取输入数据的低维信息。以计算机视觉为例,模型的底层能够提取图片的低维特征,如线、转角等几何特征。虽然单独训练得到的各个网络底层的权重不会一致,但它们的功能是十分相似的,而底层网络由于分辨率较高,通常会比较耗时。所以,本发明的原理是让多个模型共用同一个底层网络,提升多个模型的整体运行效率。
在步骤S2中,每个模型均采用ResNet-18作为网络的骨干。深度残差网络(Residual Network,简写为ResNet)可以说是过去几年中计算机视觉和深度学习领域最具开创性的工作。ResNet使训练数百甚至数千层成为可能,且在这种情况下仍能展现出优越的性能。因其强大的表征能力,除图像分类以外,包括目标检测和人脸识别在内的许多计算机视觉应用都得到了性能提升。ResNet-18中18指定的是带有权重的18层,包括卷积层和全连接层,不包括池化层和BN层。
在所述步骤S2中,分别将每个模型的底层L和高层H剥离出来,所述底层是前五层卷积层,举例来说,以模型的数量是3个为例,即a、b、c 3个模型,则分别将3个模型的底层和高层剥离出来,底层分别称为La、Lb和Lc,高层分别称为Ha、Hb和Hc。
在所述步骤S3中,分别用额外的卷积层作为各模型的映射层M,并将底层L、映射层M和高层H分别对应组合。在有3个模型的情况下,映射层分别称为Ma、Mb和Mc,选择一个共同底层La,Ha是本身对应的高层,故不需要映射层;Hb和Hc与底层La不对应,则分别加上映射层连接,得到La-Mb-Hb和La-Mc-Hc两个新网络;同样,当Lb或Lc作为公共底层时,构造对应的新网络,分别得到如下新网络:Lb-Ma-Ha;Lb-Mc-Hc;Lc-Ma-Ha;Lc-Mb-Hb。
在所述步骤S4中,在每个模型原本任务上训练所述步骤S3所构造出的新网络,训练时,冻结底层L和高层H,只训练映射层M。在有3个模型的情况下,分别训练如下6个新网络:
(1)La-Mb-Hb,冻结底层La和高层Hb,只训练映射层Mb;
(2)La-Mc-Hc,冻结底层La和高层Hc,只训练映射层Mc;
(3)Lb-Ma-Ha,冻结底层Lb和高层Ha,只训练映射层Ma;
(4)Lb-Mc-Hc,冻结底层Lb和高层Hc,只训练映射层Mc;
(5)Lc-Ma-Ha,冻结底层Lc和高层Ha,只训练映射层Ma;
(6)Lc-Mb-Hb,冻结底层Lc和高层Hb,只训练映射层Mb;
其中,La是指a模型的底层,Ha是指a模型的高层,Ma是指a模型的映射层;Lb是指b模型的底层,Hb是指b模型的高层,Mb是指b模型的映射层;Lc是指c模型的底层,Hc是指c模型的高层,Mc是指c模型的映射层。
另外,在所述步骤S4中,训练映射层M时,对映射层的权重多次初始化进行训练,以便用于步骤S5的评估和最终挑选。
在步骤S5中,评估映射层的性能,包括如下步骤:
步骤S51,在3个模型对应的3个任务中任一个任务的测试数据集上,例如b任务测试数据集上,,分别用k个训练好的映射层进行前向推理和评估,其中,K>1,以检测任务为例的话,评价指标一般为mIOU,评价指标得分最高的映射层M*则自然作为本网络的映射层;
步骤S52,同样的操作挑选出剩余网络表现最好的映射层;
步骤S53,最终部署方案会在三个选择中产生,它们分别是:
La为底层时,La-Ha、La-Mb*-Hb和La-Mc*-Hc;
Lb为底层时,Lb-Ma*-Ha、Lb-Hb和Lb-Mc*-Hc;
Lc为底层时,Lc-Ma*-Ha、Lc-Mb*-Hb和Lc-Hc;
其中,Ma*是指得分最高的a模型的映射层,Mb*是指得分最高的b模型的映射层,Mc*是指得分最高的c模型的映射层。
在三个选择中根据实际推理表现,选择最接近融合前网络整体性能的方案,再部署在最终产品上。
在所述步骤S5中,待所述S4步骤训练完毕后,分别将每个模型的底层作为公共底层新网络的底层,并且与对应原网络比较,选择最优结果,将最优结果对应的该模型底层作为融合模型的共同底层。
在另一个实施例中,模型的数量是4个,即a、b、c、d 4个模型,则根据该实施例的多模型压缩方法如下:
(1)对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入,每个模型均采用ResNet-18作为网络的骨干,常见的模型压缩方法有剪枝、蒸馏和量化等;
(2)分别将每个模型的底层L和高层H剥离出来,所述底层是前五层卷积层,底层分别称为La、Lb、Lc和Ld,高层分别称为Ha、Hb、Hc和Hd;
(3)分别用额外的卷积层作为各模型的映射层M,并将底层L、映射层M和高层H分别对应组合。在有4个模型的情况下,映射层分别称为Ma、Mb、Mc和Md,选择一个共同底层La,Ha是本身对应的高层,故不需要映射层;Hb、Hc和Hd与底层La不对应,则分别加上映射层连接,得到La-Mb-Hb、La-Mc-Hc和La-Md-Hd三个新网络;同样,当Lb、Lc或Ld作为公共底层时,构造对应的新网络,分别得到如下新网络:
1)Lb-Ma-Ha、Lb-Mc-Hc、Lb-Md-Hd;
2)Lc-Ma-Ha、Lc-Mb-Hb、Lc-Md-Hd;
3)Ld-Ma-Ha、Ld-Mb-Hb、Ld-Mc-Hc;
(4)在每个模型原本任务上训练所述步骤S3所构造出的新网络,训练时,冻结底层L和高层H,只训练映射层M。在有4个模型的情况下,分别训练如下12个新网络:
1)La-Mb-Hb,冻结底层La和高层Hb,只训练映射层Mb;
2)La-Mc-Hc,冻结底层La和高层Hc,只训练映射层Mc;
3)La-Md-Hd,冻结底层La和高层Hd,只训练映射层Md;
4)Lb-Ma-Ha,冻结底层Lb和高层Ha,只训练映射层Ma;
5)Lb-Mc-Hc,冻结底层Lb和高层Hc,只训练映射层Mc;
6)Lb-Md-Hd,冻结底层Lb和高层Hd,只训练映射层Md;
7)Lc-Ma-Ha,冻结底层Lc和高层Ha,只训练映射层Ma;
8)Lc-Mb-Hb,冻结底层Lc和高层Hb,只训练映射层Mb;
9)Lc-Md-Hd,冻结底层Lc和高层Hd,只训练映射层Md;
10)Ld-Ma-Ha,冻结底层Ld和高层Ha,只训练映射层Ma;
11)Ld-Mb-Hb,冻结底层Ld和高层Hb,只训练映射层Mb;
12)Ld-Mc-Hc,冻结底层Ld和高层Hc,只训练映射层Mc;
其中,La是指a模型的底层,Ha是指a模型的高层,Ma是指a模型的映射层;Lb是指b模型的底层,Hb是指b模型的高层,Mb是指b模型的映射层;Lc是指c模型的底层,Hc是指c模型的高层,Mc是指c模型的映射层;Ld是指d模型的底层,Hd是指d模型的高层,Md是指d模型的映射层。
训练映射层M时,对映射层的权重多次初始化进行训练,以便用于步骤S5的评估和最终挑选。
(5)在步骤S5中,评估映射层的性能,包括如下步骤:
步骤S51,在4个模型对应的4个任务中任一个任务的测试数据集上,例如b任务测试数据集上,分别用k个训练好的映射层进行前向推理和评估,其中,K>1,以检测任务为例的话,评价指标一般为mIOU,评价指标得分最高的映射层M*则自然作为本网络的映射层;
步骤S52,同样的操作挑选出剩余网络表现最好的映射层;
步骤S53,最终部署方案会在四个选择中产生,它们分别是:
1)La为底层时,La-Ha、La-Mb*-Hb、La-Mc*-Hc和La-Md*-Hd;
2)Lb为底层时,Lb-Ma*-Ha、Lb-Hb、Lb-Mc*-Hc和Lb-Md*-Hd;
3)Lc为底层时,Lc-Ma*-Ha、Lc-Mb*-Hb、Lc-Hc和Lc-Md*-Hd;
4)Ld为底层时,Ld-Ma*-Ha、Ld-Mb*-Hb、Ld-Mc*-Hc和Ld-Hd;
其中,Ma*是指得分最高的a模型的映射层,Mb*是指得分最高的b模型的映射层,Mc*是指得分最高的c模型的映射层,Md*是指得分最高的d模型的映射层。
在四个选择中根据实际推理表现,选择最接近融合前网络整体性能的方案,再部署在最终产品上。
在另一个实施例中,模型的数量是5个,即a、b、c、d、e 5个模型,则根据该实施例的多模型压缩方法如下:
(1)对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入,每个模型均采用ResNet-18作为网络的骨干,常见的模型压缩方法有剪枝、蒸馏和量化等;
(2)分别将每个模型的底层L和高层H剥离出来,所述底层是前五层卷积层,底层分别称为La、Lb、Lc、Ld和Le,高层分别称为Ha、Hb、Hc、Hd和He;
(3)分别用额外的卷积层作为各模型的映射层M,并将底层L、映射层M和高层H分别对应组合。在有5个模型的情况下,映射层分别称为Ma、Mb、Mc、Md和Me,选择一个共同底层La,Ha是本身对应的高层,故不需要映射层;Hb、Hc、Hd和He与底层La不对应,则分别加上映射层连接,得到La-Mb-Hb、La-Mc-Hc、La-Md-Hd和La-Me-He四个新网络;同样,当Lb、Lc、Ld或Le作为公共底层时,构造对应的新网络,分别得到如下新网络:
1)Lb-Ma-Ha、Lb-Mc-Hc、Lb-Md-Hd、Lb-Me-He;
2)Lc-Ma-Ha、Lc-Mb-Hb、Lc-Md-Hd、Lc-Me-He;
3)Ld-Ma-Ha、Ld-Mb-Hb、Ld-Mc-Hc、Ld-Me-He;
4)Le-Ma-Ha、Le-Mb-Hb、Le-Mc-Hc、Le-Md-Hd;
(4)在每个模型原本任务上训练所述步骤S3所构造出的新网络,训练时,冻结底层L和高层H,只训练映射层M。在有5个模型的情况下,分别训练如下20个新网络:
1)La-Mb-Hb,冻结底层La和高层Hb,只训练映射层Mb;
2)La-Mc-Hc,冻结底层La和高层Hc,只训练映射层Mc;
3)La-Md-Hd,冻结底层La和高层Hd,只训练映射层Md;
4)La-Me-He,冻结底层La和高层He,只训练映射层Me;
5)Lb-Ma-Ha,冻结底层Lb和高层Ha,只训练映射层Ma;
6)Lb-Mc-Hc,冻结底层Lb和高层Hc,只训练映射层Mc;
7)Lb-Md-Hd,冻结底层Lb和高层Hd,只训练映射层Md;
8)Lb-Me-He,冻结底层Lb和高层He,只训练映射层Me;
9)Lc-Ma-Ha,冻结底层Lc和高层Ha,只训练映射层Ma;
10)Lc-Mb-Hb,冻结底层Lc和高层Hb,只训练映射层Mb;
11)Lc-Md-Hd,冻结底层Lc和高层Hd,只训练映射层Md;
12)Lc-Me-He,冻结底层Lc和高层He,只训练映射层Me;
13)Ld-Ma-Ha,冻结底层Ld和高层Ha,只训练映射层Ma;
14)Ld-Mb-Hb,冻结底层Ld和高层Hb,只训练映射层Mb;
15)Ld-Mc-Hc,冻结底层Ld和高层Hc,只训练映射层Mc;
16)Ld-Me-He,冻结底层Ld和高层He,只训练映射层Me;
17)Le-Ma-Ha,冻结底层Le和高层Ha,只训练映射层Ma;
18)Le-Mb-Hb,冻结底层Le和高层Hb,只训练映射层Mb;
19)Le-Mc-Hc,冻结底层Le和高层Hc,只训练映射层Mc;
20)Le-Md-Hd,冻结底层Le和高层Hd,只训练映射层Md;
其中,La是指a模型的底层,Ha是指a模型的高层,Ma是指a模型的映射层;Lb是指b模型的底层,Hb是指b模型的高层,Mb是指b模型的映射层;Lc是指c模型的底层,Hc是指c模型的高层,Mc是指c模型的映射层;Ld是指d模型的底层,Hd是指d模型的高层,Md是指d模型的映射层;Le是指e模型的底层,He是指e模型的高层,Me是指e模型的映射层。
训练映射层M时,对映射层的权重多次初始化进行训练,以便用于步骤S5的评估和最终挑选。
(5)在步骤S5中,评估映射层的性能,包括如下步骤:
步骤S51,在5个模型对应的5个任务中任一个任务的测试数据集上,例如b任务测试数据集上,分别用k个训练好的映射层进行前向推理和评估,其中,K>1,以检测任务为例的话,评价指标一般为mIOU,评价指标得分最高的映射层M*则自然作为本网络的映射层;
步骤S52,同样的操作挑选出剩余网络表现最好的映射层;
步骤S53,最终部署方案会在五个选择中产生,它们分别是:
1)La为底层时,La-Ha、La-Mb*-Hb、La-Mc*-Hc、La-Md*-Hd和La-Me*-He;
2)Lb为底层时,Lb-Ma*-Ha、Lb-Hb、Lb-Mc*-Hc、Lb-Md*-Hd和Lb-Me*-He;
3)Lc为底层时,Lc-Ma*-Ha、Lc-Mb*-Hb、Lc-Hc、Lc-Md*-Hd和Lc-Me*-He;
4)Ld为底层时,Ld-Ma*-Ha、Ld-Mb*-Hb、Ld-Mc*-Hc、Ld-Hd和Ld-Me*-He;
5)Le为底层时,Le-Ma*-Ha、Le-Mb*-Hb、Le-Mc*-Hc、Le-Md*-Hd和Le-He;
其中,Ma*是指得分最高的a模型的映射层,Mb*是指得分最高的b模型的映射层,Mc*是指得分最高的c模型的映射层,Md*是指得分最高的d模型的映射层,Me*是指得分最高的e模型的映射层。
在五个选择中根据实际推理表现,选择最接近融合前网络整体性能的方案,再部署在最终产品上。
以上详细描述了本发明的优选的具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的设计构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的设计构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在本发明的范围之内和/或由权利要求书所确定的保护范围内。
Claims (5)
1.一种多模型合并压缩方法,包括如下步骤:
步骤S1:对每个模型分别进行独立训练和压缩;对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入;
步骤S2:分离每个模型的底层与高层;每个模型均采用ResNet-18作为网络的骨干;在所述步骤S2中,分别将每个模型的底层L和高层H剥离出来,所述底层是前五层卷积层;
步骤S3:通过映射层连接底层和高层;
在所述步骤S3中,分别用额外的卷积层作为各模型的映射层M,并将底层L、映射层M和高层H分别对应组合;
步骤S4:训练映射层;
在所述步骤S4中,在每个模型原本任务上训练所述步骤S3所构造出的新网络,训练时,冻结底层L和高层H,只训练映射层M;
在所述步骤S4中,训练映射层M时,对映射层的权重多次初始化进行训练,以便用于步骤S5的评估和最终挑选;
步骤S5:训练完毕后,对训练好的新模型进行评估,选择最优结果;
在所述步骤S5中,待所述S4步骤训练完毕后,分别将每个模型的底层作为公共底层新网络的底层,并且与对应原网络比较,选择最优结果,将最优结果对应的该模型底层作为融合模型的共同底层;
步骤S6:将最优结果部署在最终产品上。
2.根据权利要求1所述的一种多模型合并压缩方法,其中,在所述步骤S1中,模型的数量是3个,对每个模型分别进行独立训练和压缩,训练和压缩的结果作为多模型合并压缩的输入。
3.根据权利要求2所述的一种多模型合并压缩方法,其中,在所述步骤S2中,分别将3个模型的底层和高层剥离出来,底层分别称为La、Lb和Lc,高层分别称为Ha、Hb和Hc,所述底层是前五层卷积层。
4.根据权利要求3所述的一种多模型合并压缩方法,其中,在所述步骤S3中,分别用额外的卷积层作为各模型的映射层,分别称为Ma、Mb和Mc,将底层L、映射层M和高层H分别对应组合,选择一个共同底层La,Ha是本身对应的高层,故不需要映射层;Hb和Hc与底层La不对应,则分别加上映射层连接,得到La-Mb-Hb和La-Mc-Hc两个新网络;同样,当Lb或Lc作为公共底层时,相应构造对应的新网络。
5.根据权利要求4所述的一种多模型合并压缩方法,在步骤S5中,评估映射层的性能,包括如下步骤:
步骤S51,在3个模型对应的3个任务中任一个任务的测试数据集上,分别用k个训练好的映射层进行前向推理和评估,其中,K>1,以检测任务为例的话,评价指标为mIOU,评价指标得分最高的映射层M*则自然作为本网络的映射层;
步骤S52,同样的操作挑选出剩余网络表现最好的映射层;
步骤S53,最终部署方案会在三个选择中产生,它们分别是:
La为底层时,La-Ha、La-Mb*-Hb和La-Mc*-Hc;
Lb为底层时,Lb-Ma*-Ha、Lb-Hb和Lb-Mc*-Hc;
Lc为底层时,Lc-Ma*-Ha、Lc-Mb*-Hb和Lc-Hc;
在三个选择中根据实际推理表现,选择最接近融合前网络整体性能的方案,再部署在最终产品上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253771.0A CN113033763B (zh) | 2019-12-09 | 2019-12-09 | 一种多模型合并压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911253771.0A CN113033763B (zh) | 2019-12-09 | 2019-12-09 | 一种多模型合并压缩方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113033763A CN113033763A (zh) | 2021-06-25 |
CN113033763B true CN113033763B (zh) | 2024-12-06 |
Family
ID=76451519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911253771.0A Active CN113033763B (zh) | 2019-12-09 | 2019-12-09 | 一种多模型合并压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113033763B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110197261A (zh) * | 2019-06-14 | 2019-09-03 | 清华大学 | 一种基于lru的卷积神经网络的训练方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10318882B2 (en) * | 2014-09-11 | 2019-06-11 | Amazon Technologies, Inc. | Optimized training of linear machine learning models |
US12248877B2 (en) * | 2018-05-23 | 2025-03-11 | Movidius Ltd. | Hybrid neural network pruning |
-
2019
- 2019-12-09 CN CN201911253771.0A patent/CN113033763B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110197261A (zh) * | 2019-06-14 | 2019-09-03 | 清华大学 | 一种基于lru的卷积神经网络的训练方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113033763A (zh) | 2021-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Huang et al. | Condensenet: An efficient densenet using learned group convolutions | |
CN110909667B (zh) | 面向多角度sar目标识别网络的轻量化设计方法 | |
CN111079795B (zh) | 基于cnn的分片多尺度特征融合的图像分类方法 | |
CN113420651B (zh) | 深度卷积神经网络的轻量化方法、系统及目标检测方法 | |
CN113779581B (zh) | 一种轻量化高精度恶意软件识别模型的鲁棒检测方法及系统 | |
CN105184303A (zh) | 一种基于多模态深度学习的图像标注方法 | |
CN109871749B (zh) | 一种基于深度哈希的行人重识别方法和装置、计算机系统 | |
CN114882234B (zh) | 多尺度轻量级密集连目标检测网络的构建方法 | |
CN111652273B (zh) | 一种基于深度学习的rgb-d图像分类方法 | |
CN110210620A (zh) | 一种用于深度神经网络的通道剪枝方法 | |
CN117237559B (zh) | 面向数字孪生城市的三维模型数据智能分析方法及系统 | |
CN112711985B (zh) | 基于改进solo网络的果实识别方法、装置及机器人 | |
CN113269224A (zh) | 一种场景图像分类方法、系统及存储介质 | |
Qi et al. | Learning low resource consumption cnn through pruning and quantization | |
CN113283473A (zh) | 一种基于cnn特征映射剪枝的快速水下目标识别方法 | |
CN116416534A (zh) | 一种面向保护目标的无人机备降区域识别方法 | |
CN113033763B (zh) | 一种多模型合并压缩方法 | |
Boin et al. | Multi-class segmentation under severe class imbalance: A case study in roof damage assessment | |
CN117557923B (zh) | 一种用于无人机视觉传感装置的实时交通检测方法 | |
CN117314892B (zh) | 一种基于增量学习的太阳能电池缺陷检测持续优化方法 | |
CN117197590B (zh) | 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置 | |
CN116310621A (zh) | 一种基于特征库构建的少样本图像识别方法 | |
CN118196575A (zh) | 基于多视角特征融合与元特征编码的小样本目标检测方法 | |
CN115546236B (zh) | 基于小波变换的图像分割方法及装置 | |
CN117173595A (zh) | 基于改进YOLOv7的无人机航拍图像目标检测方法 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220802 Address after: Room 618, 6 / F, building 5, courtyard 15, Kechuang 10th Street, Beijing Economic and Technological Development Zone, Daxing District, Beijing 100176 Applicant after: Xiaomi Automobile Technology Co.,Ltd. Address before: 1219, floor 11, SOHO, Zhongguancun, No. 8, Beier street, Haidian District, Beijing 100089 Applicant before: SHENDONG TECHNOLOGY (BEIJING) Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |