CN116362987A - 基于多层级知识蒸馏的去雾模型压缩方法 - Google Patents
基于多层级知识蒸馏的去雾模型压缩方法 Download PDFInfo
- Publication number
- CN116362987A CN116362987A CN202211218082.8A CN202211218082A CN116362987A CN 116362987 A CN116362987 A CN 116362987A CN 202211218082 A CN202211218082 A CN 202211218082A CN 116362987 A CN116362987 A CN 116362987A
- Authority
- CN
- China
- Prior art keywords
- loss
- image
- network
- defogging
- teacher
- 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 49
- 238000013140 knowledge distillation Methods 0.000 title claims abstract description 23
- 230000006835 compression Effects 0.000 title claims abstract description 17
- 238000007906 compression Methods 0.000 title claims abstract description 17
- 238000012549 training Methods 0.000 claims abstract description 61
- 239000011159 matrix material Substances 0.000 claims abstract description 39
- 239000011229 interlayer Substances 0.000 claims abstract description 28
- 230000009466 transformation Effects 0.000 claims abstract description 15
- 238000007781 pre-processing Methods 0.000 claims abstract description 10
- 230000006870 function Effects 0.000 claims description 55
- 239000010410 layer Substances 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 claims description 5
- 230000007704 transition Effects 0.000 claims description 4
- 238000013434 data augmentation Methods 0.000 claims description 3
- 239000000126 substance Substances 0.000 abstract description 3
- 238000013138 pruning Methods 0.000 description 11
- 238000004821 distillation Methods 0.000 description 6
- 238000013527 convolutional neural network Methods 0.000 description 5
- 238000013135 deep learning Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 239000000443 aerosol Substances 0.000 description 2
- 238000000137 annealing Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000009412 basement excavation Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/73—Deblurring; Sharpening
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- 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/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- Biomedical Technology (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Algebra (AREA)
- Databases & Information Systems (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本申请提供一种基于多层级知识蒸馏的去雾模型压缩方法,包括以下步骤:获取样本合成有雾图像以及所述样本合成有雾图像相对应的基准无雾图像,作为目标训练集;对所述目标训练集的数据进行预处理,获得输入特征图像;采用预训练好的去雾模型构建教师网络;通过减少所述教师网络的通道数构建学生网络;对所述学生网络进行训练,通过中间特征变换关系计算FSP矩阵并进一步计算层间损失;通过所述基准无雾图像计算重建损失;通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失;固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数,以至少实现减少教师网络通道数生成相对应的轻量化学生网络。
Description
技术领域
本申请涉及深度学习和图像处理,特别涉及一种基于多层级知识蒸馏的去雾模型压缩方法。
背景技术
数字图像处理和计算机视觉近年来在人们的安防监控、移动设备、医疗、智慧交通、航空航天等日常生活诸多领域中发挥着重要的作用。目前大多数的视觉任务主要是围绕着输入的清晰图像进行展开,而在拍摄阶段由于天气条件的影响,当所拍摄场景中存在雾霾时,最终采集到的图像出现严重退质。这是因为在雾霾天气下,空气中的悬浮粒子(雾、霾、水溶胶以及灰尘等)会吸收物体本身的光线同时引发折射和散射现象。因此雾霾天气条件下采集到的图像颜色会偏灰白,细节不清晰,同时对比度以及可识别度下降,从而直接导致图像在诸多领域的应用以及处理效果无法满足所需要求。近年来深度学习在图像去雾领域发挥了重要作用,卷积神经网络(Convolutional Neural Networks,CNN)基于其强大的特征学习能力可以显著提高图像去雾性能,然而当前先进的图像去雾网络模型往往伴随着复杂的网络结构和庞大的模型参数,极大地影响了模型的运行效率,并且难以在计算资源受限且要求快速响应的终端设备上进行部署。
可见,面向图像去雾领域的模型压缩方法具有重要的应用价值和现实意义。
尽管图像去雾模型大小的增加通常与预测能力的增加有关,但这种超大模型也需要较长的训练时间、推理时间以及更大地内存占用。模型压缩的目标是在降低模型参数并提高运行速度的情况下尽可能保持其模型性能,即提升轻量化模型的性能。
因此研究如何压缩去雾网络并且挖掘教师网络中的结构化知识用于指导学生网络训练具有重要的应用价值和现实意义。
发明内容
本申请各示例性实施例提供一种基于多层级知识蒸馏的去雾模型压缩方法,以至少实现减少教师网络通道数生成相对应的轻量化学生网络,以保证蒸馏框架的通用性的技术效果。
本申请各示例性实施例提供一种基于跨阶段局部连接的轻量化图像去雾方法,该方法包括以下步骤:获取样本合成有雾图像以及所述样本合成有雾图像相对应的基准无雾图像,作为目标训练集;对所述目标训练集的数据进行预处理,获得输入特征图像;采用预训练好的去雾模型构建教师网络;通过减少所述教师网络的通道数构建学生网络;对所述学生网络进行训练,通过中间特征变换关系计算FSP矩阵并进一步计算层间损失;通过所述基准无雾图像计算重建损失;通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失;固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数;获得训练好的学生网络模型,对目标图像进行去雾操作。
在一实施例中,所述对所述目标训练集的数据进行预处理中,所述预处理包括图像配对、图像裁剪以及数据增广;所述图像配对为将样本清晰图像数据以及所述样本清晰图像数据相对应的合成有雾图像进行逐一对应,形成数据对;所述图像裁剪对目标训练集的训练样本裁剪成240×240尺寸;所述数据增广为对目标训练集的训练样本的像素值归一化到[-1,1]之间,同时将裁剪的图像通过随机水平翻转和90°旋转进行数据增强。
在一实施例中,所述通过减少所述教师网络的通道数构建学生网络,其中,所述学生网络和所述教师网络的通道比例为1/n。
在一实施例中,所述通过中间特征变换关系计算FSP矩阵并进一步计算层间损失的步骤,包括:提取所述教师网络和所述学生网络对应部分的中间特征,其分别表示为T={t1,t2,t3,...,tm}和S={s1,s2,s3,...,sm};通过一个卷积层和ReLu层将所述学生网络的特征通道数与所述教师网络的特征通道数进行匹配,得到的过渡特征表示为P={p1,p2,p3,...,pm};通过L1距离损失函数计算所述教师网络与所述学生网络的中间特征的相似度,层内损失的函数表示为:
在一实施例中,所述通过中间特征变换关系计算FSP矩阵并进一步计算层间损失的步骤,还包括:采用求解过程流FSP对层间特征变换关系进行建模,FSP矩阵中的各个元素为低层特征和高层特征逐通道做内积的结果,对于任意两个特征图其中h,w分别表示特征图的高度和宽度,c表示特征图的通道数量,FSP矩阵/>的计算过程如下:
其中i,j分别表示两个特征图的通道索引,x,y分别为像素点位置,Gi,j(f1,f2)表示在(i,j)通道索引处的FSP矩阵值,根据逐通道内积得到最终的FSP矩阵,采用L1损失函数对教师网络和学生网络中的每对特征的FSP矩阵进行相似度计算,层间损失的函数定义为:
其中Gi,j(tk,tl)表示教师特征tk和tl在通道(i,j)索引处的FSP矩阵值,Gi,j(pk,pl)表示学生特征pk和pl在(i,j)索引处的FSP矩阵值。
在一实施例中,所述通过基准无雾图像计算重建损失的步骤包括:根据所述学生网络输出的去雾图像以及目标数据集中对应的基准无雾图像,通过所述L1距离损失函数计算重建损失,在去雾数据集上,对于所述学生网络输出的去雾图像与其对应的基准无雾图像J,所述重建损失的函数表示为:/>
在一实施例中,所述通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失的步骤,包括:将所述学生网络输出的去雾图像作为锚点,所述教师网络输出的去雾图像作为正样本,所述样本有雾图像作为负样本,计算对比损失:
其中Gi,i=1,2,…,M为潜在特征空间VGG19预训练模型中提取的第i层隐藏特征,D(x,y)为x与y之间的L1距离,ωi是特征空间不同层的权重系数,通过该损失函数使得去雾图像在特征空间上更加逼近正样本而远离负样本。
在一实施例中,所述固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数的步骤,包括:结合所述层内损失、所述层间损失、所述重建损失和所述对比损失,总损失函数为:
L=Lrec+λLc+γLinner+δLinter,
其中Lrec为重建损失函数,Lc为对比损失函数,Linner为层内损失函数,Linter为层间损失函数,而λ,γ,δ分别为平衡各个损失函数之间的超参数,在训练的迭代周期中,通过最小化总损失函数,反向传播更新学生网络模型参数。
本申请具有如下有益效果:为了对当前复杂的去雾算法进行模型压缩和加速并且尽可能保持去雾性能,本发明提供了一种基于多层级知识蒸馏的去雾模型压缩方法。基于减少通道数的方式,初始化1/n通道数的学生网络,显著降低了模型的参数量。为了提高学生网络去雾性能,本发明包含了三个层面的知识蒸馏模式:通过层间蒸馏使学生网络模仿教师网络生成相似中间特征;通过层间蒸馏使学生网络学习跨层特征变换关系;通过结果蒸馏使软硬标签数据中的知识互补并优化最终去雾结果。本发明所提供的模型压缩方法可以应用于已有的图像去雾方法中,所得到的轻量化学生去雾网络参数量和浮点运算量大幅度降低,加快了处理速度,并且保持了良好的去雾性能。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请一实施例中的流程图;
图2是本发明一实施例中的整体网络结构图;
图3是本申请一实施例中所提的层内知识蒸馏示例图;
图4是本申请一实施例中所提的层间知识蒸馏示例图。
具体实施方式
当前的模型压缩方法可以主要分为以下三个方面:参数剪枝、参数量化以及知识蒸馏。参数剪枝主要通过删减模型中冗余的参数、神经元连接、卷积核或通道等,以此来减少浮点运算量和模型参数规模,达到模型精简与压缩的效果。而参数剪枝根据剪枝对象可以分为结构化剪枝和非结构化剪枝,其中非结构化剪枝的剪枝单位为离散的权重参数,主要通过在权重矩阵中用零替换连接或神经元实现,而结构化剪枝中主要剪枝对象为卷积核、通道或网络层,然而现实中通常不清楚模型在不同架构的泛化程度,并且剪枝过程往往涉及大量微调,因此为实现带来了巨大的障碍;参数量化是指使用低精度的方式对原网络中的权重进行存储和计算。例如,在常用的深度学习框架中,神经网络模型权重参数通常使用32位浮点数进行表示和存储,通过降低权重的比特精度可以达到压缩模型以及减少计算量的目的,然而在实践中,量化可能难以实现,因为它需要对硬件和位运算有良好的理解,并需要保证硬件环境能够处理量化后的位数;知识蒸馏遵循的是师生范式,将提供知识的复杂模型称为教师网络,一般为预训练好的且规模较大的网络;而将学习知识的精简模型称为学生网络,通常为待提升性能且规模较小的网络。教师网络输出的知识可以指导学生网络训练从而实现蒸馏效果。由于学生网络自身参数量与运算量较小,同时理论上学生网络的性能可以接近教师网络的性能,因此知识蒸馏可以较好的实现模型压缩与加速的效果。
然而当前部分知识蒸馏方法需要单独设计教师和学生网络结构,在实现的过程中给研究者增加了负担并且无法保证通用性。同时现有知识蒸馏方法通常只考虑了清晰的无雾图像作为正样本引导网络的训练,而忽略了教师网络中间特征和复原图像以及有雾图像负样本中的丰富知识。对比学习的主要的思想是通过将数据分别在正例样本和负例样本在特征空间上进行比对,尽可能缩小相似样本的距离,拉大负样本的距离,以此来学习样本的特征表达。针对前述我方分析的技术问题,本发明提供了一种基于多层级知识蒸馏的去雾模型压缩方法,用以解决现有技术存在的问题。
下面将结合本申请较佳实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都属于本申请保护的范围。
如图1所示,为本申请提供了一种基于多层级知识蒸馏的去雾模型压缩方法,所述方法包括:
S102,获取样本合成有雾图像以及所述样本合成有雾图像相对应的基准无雾图像,作为目标训练集;
S104,对所述目标训练集的数据进行预处理,获得输入特征图像;
S106,采用预训练好的去雾模型构建教师网络;
S108,通过减少所述教师网络的通道数构建学生网络;
S110,对所述学生网络进行训练,通过中间特征变换关系计算FSP矩阵并进一步计算层间损失;通过所述基准无雾图像计算重建损失;通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失;固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数
S112,获得训练好的学生网络模型,对目标图像进行去雾操作。
需要说明的是,本实施例采用RESIDE中的ITS或OTS训练集进行训练,其中该数据集中包含了清晰图像以及对应合成有雾图像数据对。如图2所示,采用当前已有的预训练好的图像去雾模型作为教师网络,此处以FFA-Net为例。
在一实施例中,所述对所述目标训练集的数据进行预处理的步骤中,所述预处理包括图像配对、图像裁剪以及数据增广,具体为:
S1,所述图像配对为将样本清晰图像数据以及所述样本清晰图像数据相对应的合成有雾图像进行逐一对应,形成数据对;
S2,所述图像裁剪对目标训练集的训练样本裁剪成240×240尺寸;
S3,所述数据增广为对目标训练集的训练样本的像素值归一化到[-1,1]之间,同时将裁剪的图像通过随机水平翻转和90°旋转进行数据增强。
需要说明的是,为了防止训练过程中网络过拟合,提高网络的鲁棒性,训练输入样本将裁剪成240×240尺寸,具体操作中可根据实际情况调整。将像素值归一化到[-1,1]之间,是为了防止输入图像像素值差异过大导致网络收敛困难,同时将裁剪的图像通过随机水平翻转和90°旋转进行数据增强,增加样本丰富度。
在一实施例中,所述通过减少所述教师网络的通道数构建学生网络,其中,所述学生网络和所述教师网络的通道比例为1/n。
需要说明的是,在训练过程中,图像去雾网络在NVIDIA GeForce RTX 3090显卡上完成训练和测试。在PyTorch深度学习框架上进行搭建和训练,训练过程采用了ADAM优化器,其指数衰减率分别设置为0.9和0.999。批样本数量和总周期分别设置为1和200。初始学习率设置为0.0001并且采用余弦退火策略在训练过程中对学习率进行调整。
如图3所示,在一实施例中,所述通过中间特征变换关系计算FSP矩阵并进一步计算层间损失的步骤,包括:提取所述教师网络和所述学生网络对应部分的中间特征,其分别表示为T={t1,t2,t3,...,tm}和S={s1,s2,s3,...,sm};
通过一个卷积层和ReLu层将所述学生网络的特征通道数与所述教师网络的特征通道数进行匹配,得到的过渡特征表示为P={p1,p2,p3,...,pm};
通过L1距离损失函数计算所述教师网络与所述学生网络的中间特征的相似度,层内损失的函数表示为:
如图4所示,在一实施例中,所述通过中间特征变换关系计算FSP矩阵并进一步计算层间损失的步骤,还包括:采用求解过程流(Flow of Solution Procedure,FSP)对层间特征变换关系进行建模,FSP矩阵中的各个元素为低层特征和高层特征逐通道做内积的结果,对于任意两个特征图其中h,w分别表示特征图的高度和宽度,c表示特征图的通道数量,FSP矩阵/>的计算过程如下:
其中i,j分别表示两个特征图的通道索引,x,y分别为像素点位置,Gi,j(f1,f2)表示在(i,j)通道索引处的FSP矩阵值,根据逐通道内积得到最终的FSP矩阵,采用L1损失函数对教师网络和学生网络中的每对特征的FSP矩阵进行相似度计算,层间损失的函数定义为:
其中Gi,j(tk,tl)表示教师特征tk和tl在通道(i,j)索引处的FSP矩阵值,Gi,j(pk,pl)表示学生特征pk和pl在(i,j)索引处的FSP矩阵值。
在一实施例中,所述通过基准无雾图像计算重建损失的步骤包括:根据所述学生网络输出的去雾图像以及目标数据集中对应的基准无雾图像,通过所述L1距离损失函数计算重建损失,在去雾数据集上,对于所述学生网络输出的去雾图像与其对应的基准无雾图像J,所述重建损失的函数表示为:/>
在一实施例中,所述通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失的步骤,包括:将所述学生网络输出的去雾图像作为锚点,所述教师网络输出的去雾图像作为正样本,所述样本有雾图像作为负样本,计算对比损失:
其中Gi,i=1,2,…,M为潜在特征空间VGG19预训练模型中提取的第i层隐藏特征,D(x,y)为x与y之间的L1距离,ωi是特征空间不同层的权重系数,通过该损失函数使得去雾图像在特征空间上更加逼近正样本而远离负样本。
在一实施例中,所述固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数的步骤,包括:结合所述层内损失、所述层间损失、所述重建损失和所述对比损失,总损失函数为:
L=Lrec+λLc+γLinner+δLinter,
其中Lrec为重建损失函数,Lc为对比损失函数,Linner为层内损失函数,Linter为层间损失函数,而λ,γ,δ分别为平衡各个损失函数之间的超参数,在训练的迭代周期中,通过最小化总损失函数,反向传播更新学生网络模型参数。
需要说明的是,由于教师网络为预训练好的模型,如果更新教师网络参数将导致在训练初期教师网络的表现变差从而使得教师网络的监督信息不能很好的指导学生网络训练。因此固定教师网络中的参数。
下面通过一个具体示例做详细说明:
步骤S101:采用RESIDE中的ITS训练集进行训练,其中该数据集中包含了清晰图像以及对应合成有雾图像数据对。
步骤S102:为了防止训练过程中网络过拟合,提高网络的鲁棒性,训练输入样本将裁剪成240×240尺寸。为了防止输入图像像素值差异过大导致网络收敛困难,将像素值归一化到[-1,1]之间,同时将裁剪的图像通过随机水平翻转和90°旋转进行数据增强,增加样本丰富度。
步骤S103:如图2所示,采用当前已有的预训练好的图像去雾模型作为教师网络,此处以FFA-Net为例。
步骤S104:通过减少教师网络中每个卷积层中的通道数构建学生网络,学生网络和教师网络的通道比例为1/n。
在训练过程中,图像去雾网络在NVIDIA GeForce RTX 3090显卡上完成训练和测试。在PyTorch深度学习框架上进行搭建和训练,训练过程采用了ADAM优化器,其指数衰减率分别设置为0.9和0.999。批样本数量和总周期分别设置为1和200。初始学习率设置为0.0001并且采用余弦退火策略在训练过程中对学习率进行调整。
步骤S105:如图3所示,在训练阶段,提取教师网络和学生网络对应部分的中间特征,其分别表示为T={t1,t2,t3,...,tm}和S={s1,s2,s3,...,sm},由于教师与学生网络之间的每个对应中间特征通道数不同,无法直接进行相似度计算。因此通过一个1×1卷积层和ReLu层将学生网络特征通道数与教师网络进行匹配,所得到的过渡特征表示为P={p1,p2,p3,...,pm}。通过L1距离损失函数计算教师与学生网络的中间特征相似度,因此层内蒸馏的损失函数表示为:
步骤S106:如图4所示,采用求解过程流(Flow of Solution Procedure,FSP)对层间特征变换关系进行建模。具体而言,本节采用FSP矩阵来刻画层与层之间的特征关系,FSP矩阵中的各个元素为低层特征和高层特征逐通道做内积的结果。对于任意两个特征图其中h,w分别表示特征图的高度和宽度,c表示特征图的通道数量,FSP矩阵/>的计算过程如下:
其中i,j分别表示两个特征图的通道索引,x,y分别为像素点位置,Gi,j(f1,f2)表示在(i,j)通道索引处的FSP矩阵值,根据逐通道内积得到最终的FSP矩阵。采用L1损失函数对教师网络和学生网络中的每对特征的FSP矩阵进行相似度计算,层间知识蒸馏的损失函数定义为:
其中Gi,j(tk,tl)表示教师特征tk和tl在通道(i,j)索引处的FSP矩阵值,Gi,j(pk,pl)表示学生特征pk和pl在(i,j)索引处的FSP矩阵值。
步骤S108:将学生网络输出的去雾图像作为锚点,教师网络输出作为正样本,有雾图像作为负样本,计算对比损失:
其中Gi,i=1,2,…,M为潜在特征空间VGG19预训练模型中提取的第i层隐藏特征,D(x,y)为x与y之间的L1距离,ωi是特征空间不同层的权重系数。通过该损失函数使得去雾图像在特征空间上更加逼近正样本而远离负样本。提取了预训练好的VGG19模型中的1、3、5、9和13层特征,其系数分别对应1/32、1/16、1/8、1/4、1。通过该损失函数使得去雾图像在特征空间上更加逼近正样本而远离负样本。
步骤S109具体包括:结合层内损失、层间损失、重建损失和对比损失,本方法的总损失函数为:
L=Lrec+λLc+γLinner+δLinter,
其中Lrec为重建损失函数,Lc为对比损失函数,Linner为层内损失函数,Linter为层间损失函数,而λ,γ,δ分别为平衡各个损失函数之间的超参数。其超参数λ,γ,δ均设置为0.5。
在训练的迭代周期中,由于教师网络为预训练好的模型,如果更新教师网络参数将导致在训练初期教师网络的表现变差从而使得教师网络的监督信息不能很好的指导学生网络训练。因此固定教师网络中的参数,而对于学生网络则是通过最小化总损失函数,进行反向传播更新网络模型参数。
步骤S110具体包括:将预训练好的学生网络模型用于去雾,输入有雾图像,输出对应的去雾图像。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可根据这些实施例子做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例及落入本申请范围的所有变更和修改。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例的技术方案的精神和范围。
Claims (8)
1.一种基于多层级知识蒸馏的去雾模型压缩方法,其特征在于,所述方法包括以下步骤:
获取样本合成有雾图像以及所述样本合成有雾图像相对应的基准无雾图像,作为目标训练集;
对所述目标训练集的数据进行预处理,获得输入特征图像;
采用预训练好的去雾模型构建教师网络;
通过减少所述教师网络的通道数构建学生网络;
对所述学生网络进行训练,通过中间特征变换关系计算FSP矩阵并进一步计算层间损失;通过所述基准无雾图像计算重建损失;通过所述教师网络输出和所述样本有雾图像构建正负样本计算对比损失;固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数;
获得训练好的学生网络模型,对目标图像进行去雾操作。
2.根据权利要求1所述的基于多层级知识蒸馏的去雾模型压缩方法,其特征在于,所述对所述目标训练集的数据进行预处理中,所述预处理包括图像配对、图像裁剪以及数据增广;
所述图像配对为将样本清晰图像数据以及所述样本清晰图像数据相对应的合成有雾图像进行逐一对应,形成数据对;
所述图像裁剪对目标训练集的训练样本裁剪成240×240尺寸;
所述数据增广为对目标训练集的训练样本的像素值归一化到[-1,1]之间,同时将裁剪的图像通过随机水平翻转和90°旋转进行数据增强。
3.根据权利要求2所述的基于多层级知识蒸馏的去雾模型压缩方法,其特征在于,所述通过减少所述教师网络的通道数构建学生网络,其中,所述学生网络和所述教师网络的通道比例为1/n。
5.根据权利要求4所述的基于多层级知识蒸馏的去雾模型压缩方法,其特征在于,所述通过中间特征变换关系计算FSP矩阵并进一步计算层间损失的步骤,还包括:采用求解过程流FSP对层间特征变换关系进行建模,FSP矩阵中的各个元素为低层特征和高层特征逐通道做内积的结果,对于任意两个特征图其中h,w分别表示特征图的高度和宽度,c表示特征图的通道数量,FSP矩阵/>的计算过程如下:
其中i,j分别表示两个特征图的通道索引,x,y分别为像素点位置,Gi,j(f1,f2)表示在(i,j)通道索引处的FSP矩阵值,根据逐通道内积得到最终的FSP矩阵,采用L1损失函数对教师网络和学生网络中的每对特征的FSP矩阵进行相似度计算,层间损失的函数定义为:
其中Gi,j(tk,tl)表示教师特征tk和tl在通道(i,j)索引处的FSP矩阵值,Gi,j(pk,pl)表示学生特征pk和pl在(i,j)索引处的FSP矩阵值。
8.根据权利要求7所述的基于多层级知识蒸馏的去雾模型压缩方法,其特征在于,所述固定所述教师网络参数,并通过多层级损失反向传播更新学生网络模型参数的步骤,包括:
结合所述层内损失、所述层间损失、所述重建损失和所述对比损失,总损失函数为:
L=Lrec+λLc+γLinner+δLinter,
其中Lrec为重建损失函数,Lc为对比损失函数,Linner为层内损失函数,Linter为层间损失函数,而λ,γ,δ分别为平衡各个损失函数之间的超参数,在训练的迭代周期中,通过最小化总损失函数,反向传播更新学生网络模型参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211218082.8A CN116362987A (zh) | 2022-09-30 | 2022-09-30 | 基于多层级知识蒸馏的去雾模型压缩方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211218082.8A CN116362987A (zh) | 2022-09-30 | 2022-09-30 | 基于多层级知识蒸馏的去雾模型压缩方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116362987A true CN116362987A (zh) | 2023-06-30 |
Family
ID=86909722
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211218082.8A Pending CN116362987A (zh) | 2022-09-30 | 2022-09-30 | 基于多层级知识蒸馏的去雾模型压缩方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116362987A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117425013A (zh) * | 2023-12-19 | 2024-01-19 | 杭州靖安防务科技有限公司 | 一种基于可逆架构的视频传输方法和系统 |
-
2022
- 2022-09-30 CN CN202211218082.8A patent/CN116362987A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117425013A (zh) * | 2023-12-19 | 2024-01-19 | 杭州靖安防务科技有限公司 | 一种基于可逆架构的视频传输方法和系统 |
CN117425013B (zh) * | 2023-12-19 | 2024-04-02 | 杭州靖安防务科技有限公司 | 一种基于可逆架构的视频传输方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111476219B (zh) | 智能家居环境中图像目标检测方法 | |
US11636337B2 (en) | System and method for knowledge distillation between neural networks | |
US20230215166A1 (en) | Few-shot urban remote sensing image information extraction method based on meta learning and attention | |
CN112052886A (zh) | 基于卷积神经网络的人体动作姿态智能估计方法及装置 | |
CN110929610A (zh) | 基于cnn模型和迁移学习的植物病害识别方法及系统 | |
CN112861602B (zh) | 基于深度可分离卷积的人脸活体识别模型压缩和移植方法 | |
CN116110022B (zh) | 基于响应知识蒸馏的轻量化交通标志检测方法及系统 | |
CN112183742A (zh) | 基于渐进式量化和Hessian信息的神经网络混合量化方法 | |
CN115131565B (zh) | 基于半监督学习的组织学图像分割模型 | |
CN113706544B (zh) | 一种基于完备注意力卷积神经网络的医学图像分割方法 | |
CN115496213A (zh) | 一种基于结构特征知识的知识蒸馏方法及系统 | |
CN117351542A (zh) | 一种面部表情识别方法及系统 | |
CN116524307A (zh) | 一种基于扩散模型的自监督预训练方法 | |
CN116912585A (zh) | 基于自监督学习和知识蒸馏的sar目标识别方法 | |
CN116362987A (zh) | 基于多层级知识蒸馏的去雾模型压缩方法 | |
CN113205103A (zh) | 一种轻量级的文身检测方法 | |
CN115330620A (zh) | 一种基于循环生成对抗网络的图像去雾方法 | |
CN117217280A (zh) | 神经网络模型优化方法、装置及计算设备 | |
CN118262218A (zh) | 一种基于改进SimVP的卫星云图序列预测方法 | |
CN116188509A (zh) | 一种高效率三维图像分割方法 | |
CN114092579B (zh) | 一种基于隐式神经网络的点云压缩方法 | |
Oyedotun et al. | Deep network compression with teacher latent subspace learning and lasso | |
CN118096922A (zh) | 一种基于风格迁移和遥感影像生成地图的方法 | |
Wu et al. | Fish Target Detection in Underwater Blurred Scenes Based on Improved YOLOv5 | |
CN116630387A (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 |