CN115457269A - 一种基于改进DenseNAS的语义分割方法 - Google Patents

一种基于改进DenseNAS的语义分割方法 Download PDF

Info

Publication number
CN115457269A
CN115457269A CN202211069116.1A CN202211069116A CN115457269A CN 115457269 A CN115457269 A CN 115457269A CN 202211069116 A CN202211069116 A CN 202211069116A CN 115457269 A CN115457269 A CN 115457269A
Authority
CN
China
Prior art keywords
network
sub
semantic segmentation
fcn
networks
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
CN202211069116.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.)
Jiangxi Research Institute Of Beijing University Of Aeronautics And Astronautics
Beihang University
Original Assignee
Jiangxi Research Institute Of Beijing University Of Aeronautics And Astronautics
Beihang University
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 Jiangxi Research Institute Of Beijing University Of Aeronautics And Astronautics, Beihang University filed Critical Jiangxi Research Institute Of Beijing University Of Aeronautics And Astronautics
Priority to CN202211069116.1A priority Critical patent/CN115457269A/zh
Publication of CN115457269A publication Critical patent/CN115457269A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/26Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/778Active pattern-learning, e.g. online learning of image or video features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Analysis (AREA)

Abstract

本发明提出一种基于改进DenseNAS的语义分割方法,包括:(1)使用DenseNAS搜索合适的深度神经网络模型;(2)基于子网络深度的结构选择算法获得最优子网络候选,并从该候选中选择最短网络和最优网络;(3)最优网络作为骨干网络得到教师模型FCN‑long,最短网络作为骨干网络得到学生模型FCN‑short,通过知识蒸馏训练得到的FCN‑short对图像提取特征并得到其语义分割图像。本发明提出了基于子网络深度的结构选择方法,提高了选择网络在数据集上的精度,发挥了密集连接搜索空间的优势,获得了一个兼顾效率与精度的语义分割算法。

Description

一种基于改进DenseNAS的语义分割方法
技术领域
本发明涉及计算机视觉技术领域,尤其涉及一种基于改进DenseNAS的语义分割方法。
背景技术
深度学习方法在自然语言处理、计算机视觉和语音识别等领域得到了广泛应用。其成功在于深度神经网络能够自动提取数据中的特征。因此人们对这些领域的关注点从手动设计特征提取算子转向手动设计深度神经网络结构。近几年来,诸如AlexNet、VGG、LeNet、ResNet、MobileNet等手动设计的深度网络结构在各种视觉任务上获得了显著的成功。然而面对不同的数据,设计深度神经网络结构仍然需要丰富的专业知识与大量耗时的调参实验。神经网络结构搜索(Neural Architecture Search,NAS)的目的是在固定的搜索空间中依照一定的搜索策略通过机器自动迭代优化的方式获得最优深度神经网络结构。神经网络结构搜索可以搜索出兼顾效率与精度的深度神经网络模型,已经成为深度神经网络模型设计的重要方法。
神经网络结构搜索(NAS)旨在自动设计网络结构,以最小化算法设计流程人工耗费的时间和精力。早期一些文章使用了强化学习(Reinforcement Learning)的方法来训练一个循环神经网络来代表生成一系列符号,这些符号代表着指定的CNN结构。另外还有用来替代强化学习的方法比如进化算法(Evolution Algorithm),通过对当前最优的网络遗传突变得到更优的网络结构,然而这些算法耗时过大,通常需要800张Nvidia K40显卡训练28天才能搜索完成。而可微神经网络结构搜索算法使用随机梯度下降更新网络结构的NAS方法,它通过把搜索空间松弛到一个大型的超网络中,并对其每一个操作赋予权重,搜索过程迭代更新权重来最终获得最优网络结构。DenseNAS是可微神经网络结构搜索算法的一个分支,其设计了一种密集连接的超网络结构,使其子网络包含了更多深度和宽度的选项。
随着DARTS、ProxylessNAS等可微方法的提出,神经网络结构搜索的实用性大大提升,也逐渐应用到了语义分割中,Auto-Deeplab是第一篇把NAS应用到语义分割上的文章,它主要参考了DARTS的训练方法,采用网络结构和权重分别迭代训练的方法找到最优的网络结构。Auto-Deeplab为了语义分割的需求使用了不同分辨率的特征图,设计了一种隐马尔可夫链结构的多层超网络,在搜索完成后,使用维特比算法找到最优的网络,最后会得到一条单向输出的权重最大的网络;SqueezeNAS是第一篇将NAS运用在实时语义分割方法的文章,而FasterSeg则优化了搜索空间并且可以得到二分支的常用实时网络结构,FasterSeg使用了与 Auto-Deeplab类似的分支结构,不同的是要获得一个二分支的最优网络,因此FasterSeg在最后找到最优的分支位置获得最后的网络。此外DCNAS设计了可选子网络结构和数量更多的搜索空间,达到了更高的准确度。DCNAS采用了DenseNAS类似的结构,并且将其拓展到多分辨率来解决语义分割问题中扩大NAS的搜索空间,它在最后选择最优网络的时候使用的是保留所有权重大于0的路径。
本发明基于神经网络结构搜索理论,提出了一个基于改进DenseNAS的语义分割方法。该方法在使用DenseNAS方法搜索语义分割算法的骨干网络结构时,在结构选择阶段使用了一种基于子网络深度的结构选择方法。对DenseNAS搜索空间中相同深度的子网络使用结构参数权重乘积来判断性能优劣,基于此方法选出搜索空间中各个深度的性能最优子网络,作为最优子网络候补集合。候补集合中的子网络根据数据集中验证集精度来判断优劣获得最优子网络,此外候补集合中最短网络为最短子网络。这样求得的最优子网络保证了是搜索空间中在验证集上精度最高的深度神经网络结构,相比之前DenseNAS结构选择使用的维特比算法更加合理。此外,相同深度子网络使用结构参数权重来比较优劣相比所有网络结构都使用验证集精度判断优劣节约了大量时间,达到了精度与效率的平衡。
发明内容
本发明克服现有技术不足,提供一个基于改进DenseNAS的语义分割方法,该方法使用改进结构选择方法的DenseNAS搜索出搜索空间中最优和最短的深度神经网络结构,并将二者分别作为语义分割算法的骨干网络做知识蒸馏训练。通过最优网络与最短网络的分别训练以及知识蒸馏,得到一个平衡精度与效率的语义分割算法。
本发明的目的可以通过以下技术方案来实现:
(1)使用神经网络结构搜索算法DenseNAS搜索合适的深度神经网络模型;
(2)基于子网络深度的结构选择算法获得一个不同深度的子网络候选集合,并从该集合中选择其最短网络以及验证集上精度最高网络,并将二者在图像分类数据集上重训练;
(3)最优网络作为语义分割算法FCN的骨干网络得到教师模型FCN-long并将其在语义分割数据集上训练至收敛,最短网络作为语义分割算法FCN的骨干网络得到学生模型FCN- short,使用训练至收敛的FCN-long监督进行知识蒸馏训练。
可选的,所述步骤(2)具体包括以下步骤:
(21)基于步骤(1)中获得的深度神经网络,对于其内部深度为K的子网络集合
Figure BDA0003828929770000021
定义其子网络
Figure BDA0003828929770000022
选择使用的区块B为Bn1,Bn2,…,Bnk,区块Bi,Bj之间的结构参数为αij,Bi至Bj的权重为wi,j,公式如下:
Figure BDA0003828929770000031
由此可以得到子网络
Figure BDA0003828929770000032
的结构权重
Figure BDA0003828929770000033
公式如下:
Figure BDA0003828929770000034
(22)根据全部子网络结构权重后可以得到局部最优网络集合Local:
Figure BDA0003828929770000035
局部最优网络集合中包含
Figure BDA0003828929770000036
个具体的不同深度的神经网络模型,这些的模型的优劣由验证集精度判定:
Figure BDA0003828929770000037
Figure BDA0003828929770000038
Global即为所求验证集上最优网络,Short即为所求最短网络;
(23)选出最优网络和最短网络后将两个深度神经网络在ImageNet图像分类数据集上训练至收敛。
可选的,选出最优网络和最短网络,具体包括:
(31)根据搜索空间的深度、连接度等参数生成所有子网络列表,每个子网络表示形式为一个长度为17的01数组,其中1表示经过该节点,0表示不经过该节点;
(32)根据数组中1的数量生成若干个列表,每个列表里的数组1的数量相同,表示同样深度的子网络;
(33)对每个列表遍历,将数组代表的子网络带入DenseNAS的超网络中,计算其结构参数乘积,并记录每个列表中结构参数乘积最大的子网络获得最优网络候补;
(34)最优网络候补中的网络重新带入超网络中,使用超网络的特征参数计算这些子网络在验证集上的精度,具体方法是将超网络中所有不属于子网络的节点结构参数全部设置为 0,这样可以保证这些子网络之间的权重共享,使用同一套权重计算验证集精度可以更好的判断它们之间的优劣;
(35)根据精度选择出候补网络集合中的最优网络,根据网络深度选出候补网络集合中的最短网络。
可选的,选择深度最浅的网络Short为学生网络Student,而验证集精度最高的网络Global 为教师网络Teacher;
Student=Short
Teacher=Global
学生网络在进行知识蒸馏的时候通常采用的损失函数为:
L=Lhard+λLsoft
其中Lsoft的定义如下:
Figure BDA0003828929770000041
其中,pti和psi分别代表教师网络Teacher和学生网络Student计算出的gumbelsoftmax输出值。Lsoft是KL散度,其本身是用来衡量两个概率分布之间的差异;
Lhard是学生网络基于真实标签的损失函数,引入Lhard是因为教师网络学到的特征分布并不一定完全正确,因此需要平衡一下以免学到错误的知识,使用的损失函数是负对数似然损失函数NLLLoss,公式如下:
Figure BDA0003828929770000042
Logsoftmax的计算公式为:
Figure BDA0003828929770000043
其中c是任务的类别数。
可选的,所述步骤(3),具体包括:
(51)使用最优网络作为FCN-8s的骨干网络在语义分割数据集PASCAL VOC 2012上训练至收敛,得到深度学习模型规模较大的语义分割深度神经网络模型FCN-long;
(52)使用最短网络作为FCN-8s的骨干网络在PASCAL VOC 2012上训练,并且以FCN- long在PASCAL VOC 2012的结果作为知识蒸馏的辅助;
(53)令小的语义分割模型学习大规模神经网络模型FCN-long在数据集中学到的知识,获得的模型FCN-short即为最后的语义分割深度神经网络模型。
与现有技术相比,本发明具有如下的有益效果:针对DenseNAS结构选择方法的不足提出了基于子网络深度的结构选择方法,在可接受的计算时间内提高了选择出子网络在数据集上的精度,发挥了密集连接搜索空间的优势。并且针对提出方法产生候选最优网络集合的特征将集合中最优网络与最短网络应用到语义分割算法中作为骨干网络并知识蒸馏训练。获得了一个平衡效率与精度的语义分割算法。
附图说明
图1为本发明的基于改进DenseNAS的语义分割方法的流程图;
图2为本发明的基于改进DenseNAS的语义分割方法的网络示意图;
图3为本发明在PASCAL VOC 2012语义分割数据集上的示意图;
图4为本发明的基于子网络深度的结构选择方法伪代码示意图;
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
如图1所示为本发明的基于改进DenseNAS的语义分割方法的流程图,包括使用DenseNAS搜索合适的深度神经网络模型;基于子网络深度的结构选择算法获得最优子网络候选,并从该候选中选择最短网络和最优网络;最优网络作为骨干网络得到教师模型FCN-long,最短网络作为骨干网络得到学生模型FCN-short,通过知识蒸馏训练得到的FCN-short 对图像提取特征并得到其语义分割图像。
如图2所示为本发明基于改进的DenseNAS的语义分割方法的网络示意图,具体包括如下步骤:
(1)建立密集连接搜索空间,建立一个由18个块组成的密集连接的超级网络,每个块的输出可以作为其后三个块的输入。
首先对数据集ImageNet进行预处理,对所有图像的像素除以255使其像素范围限制至[0,1]之间,然后使用ImageNet数据集的像素均值和方差对数据集标准化,将图像分辨率调整至224x224输入至超网络中。超网络中每个节点被定义为一个块(blocks)。块内由两部分组成:头部层与基本层。头部层用来接收块的输入,由图3可见大部分块的输入不止1个,因此对不同的输入要选择合适的操作来处理后根据可训练的权重输入后面的基本层。基本层中使用若干个可选择的操作提取特征,提取后的特征作为输出进入与该块相连的块作为其输入。也就是说,密集连接神经网络结构搜索在搜索空间中增加了可能的连接通路,因此其搜索空间中的子网络长度并不相等,这对于搜索网络的效率是很有用的。在搜索完毕后,选择一条权重乘积最大的通路作为其最终得到的网络。
为了在搜索空间中建立各种路径,区块需要具有从前面的区块聚合张量并将张量传输到后续路由块的能力。区块被分为两部分,头部层和基本层。
头部层:头部层以多个并行分支的形式存在,而每个分支都是一组候选操作。该层将来自多个先前区块的具有不同形状的输入张量转换为具有相同形状的张量。由于所有区块都需要经过头部层的操作处理一次并合并,因此头部层的候选操作中没有恒等映射。
基本层:通过头部层处理的张量被聚合并发送到若干个基本层。随后的基本层用于特征提取。由于基本层的操作选择中存在恒等映射,因此当最终的选择网络中基本层操作使用的是恒等映射时相当于删除该基本层,因此可以对基本层的深度进行搜索。经过所有的区块中的基本层后提取到的特征将作为其之后区块的输入,但该输入将以不同的权重输入到之后的各个区块。值得注意的是,这个权重在输出环节进行计算,但是在输入环节应用。
先把各操作的权重通过softmax松弛。然后输入在各操作上处理后加权求和。
Figure BDA0003828929770000061
其中xl指的是第l层基本层的输入。
经过若干层基本层的特征提取后,特征图将会输出给接下来与该区块相连接的区块。此时会有一个结构参数β来控制输出给其他区块的权重。计算的方式依然是用softmax松弛:
Figure BDA0003828929770000062
这个参数在每个区块的输出处计算,而在输入处直接使用这个参数。如对于第i个区块里基本层的输入来说,有
Figure BDA0003828929770000071
这里的oh指的是头部层可以使用的操作,Nh代表操作总数。也就是说,密集连接神经网络结构搜索的结构参数由两种组成,α,β分别控制的是操作的选择和区块的连接方法。
(2)将步骤(1)中设计好的密集连接超级网络训练至收敛,并使用基于子网络长度的结构选择方法构建出最优子网络集合,该结构选择方法伪代码如图4所示,本发明发现DenseNAS 中不同深度的子网络在结构参数乘积的大小上会有指数级别的差距,而同样的深度情况下却不会有这个情况出现,即通过结构参数乘积大小的特点判断子网络的优劣在局部环境下是成立的。因此本发明首先提出如下假设:
假设A、B分别为DenseNAS搜索空间中的两个子网络,WA表示A网络的权重乘积,LA表示A网络的长度,此时二者的优劣度Q分为以下几种情况:
1.if WA>WB,LA=LB,then QA>QB
2.if WA>WB,LA≠LB,unable to judge QA and QB
搜索空间中同样深度的子网络的结构参数乘积大小可以代表它们之间的优劣,而不同深度之间的子网络结构参数乘积大小无法比较。基于以上假设,本发明设计了基于子网络长度的结构选择方法,具体实现方法根据搜索空间的深度、连接度等参数生成所有子网络列表,每个子网络表示形式为一个长度为17的01数组,其中1表示经过该节点,0表示不经过该节点。根据数组中1的数量生成若干个列表,每个列表里的数组1的数量相同,表示同样深度的子网络。对每个列表遍历,将数组代表的子网络带入DenseNAS的超网络中,计算其结构参数乘积,并记录每个列表中结构参数乘积最大的子网络获得最优网络候补。
最优网络候补中的网络重新带入超网络中,使用超网络的特征参数计算这些子网络在验证集上的精度,具体方法是将超网络中所有不属于子网络的节点结构参数全部设置为0,这样可以保证这些子网络之间的权重共享,使用同一套权重的情况下计算验证集精度可以更好的判断它们之间的优劣。根据精度选择出候补网络集合中的全局最优网络,根据网络深度选出候补网络集合中的全局最短网络。
(3)全局最优与最短网络重训练。在获得全局最优与全局最短网络结构后,需要它们在原先的分类数据集ImageNet上重训练达到收敛,使二者提取特征的能力达到最优。具体来说,重训练共训练1000轮次,优化方面使用随机梯度下降法,初始学习率设置为0.1,以余弦策略逐渐下降至1e-5,动量设置为0.9,权重衰减4e-4。训练开始时采用热身策略,热身10轮次,热身初始学习率1e-4,目标学习率0.1。批大小设置为256。
(4)最优网络作为语义分割算法FCN的骨干网络得到教师模型FCN-long并将其在语义分割数据集上训练至收敛,最短网络作为语义分割算法FCN的骨干网络得到学生模型FCN- short,使用训练至收敛的FCN-long监督进行知识蒸馏训练。语义分割使用的评价标准是像素精度(PA)和平均交并比(mIoU),具体公式如下:
假设n+1是语义分割中的类别数,pij是真实值为i,预测值为j的像素数量,则平均交并比mIoU计算公式为:
Figure BDA0003828929770000081
像素精度为:
Figure BDA0003828929770000082
最优网络作为FCN-8s算法的骨干网络训练获得教师网络FCN-long,FCN-8s需要骨干网络提取的3种分辨率大小不同的特征图,对于选择出的区块深度为13层的教师网络来说,特征图分辨率的降低出现在卷积操作步长为2的情况下,选择使用在第13层,第8层和第4层提取的特征,这里要注意的是由于这个深度指的是区块的数量。转置卷积的初始参数设置为双线性插值。损失函数选用NLLLoss函数,这是一个可以用于2维标签的损失函数,由于语义分割上的一张图片的ground truth是二维向量,因此使用这个损失函数。优化策略使用的是随机梯度下降法,初始学习率为1e-2,权重衰减为1e-4,学习率使用逐段下降策略,每训练 50轮次下降为原来的0.1倍,共训练200轮次,批大小为32。
最短网络作为FCN-8s算法的骨干网络在FCN-long监督下知识蒸馏训练获得FCN-short。对于选出的区块深度为9层的学生网络来说,FCN-8s需要使用其在第9层、第5层和第3层区块提取出的特征。同教师网络设定,这里的区块深度不代表网络深度。转置卷积的初始参数甚至为双线性插值。损失函数使用最大似然损失函数函数与KL散度加权求和。KL散度的温度设置为5,权重的设置为KL散度权重25,最大似然损失函数权重1。优化方面使用和教师网络同样的设置,采用随机梯度下降,初始学习率为1e-2,权重衰减为1e-4,学习率使用逐段下降策略,每训练50轮次下降为原来的0.1倍。共训练100轮次,批大小为32。最终获得的FCN-short即为所求语义分割算法。
由于之前的结构选择方法获得的是全局情况下结构参数乘积最大的子网络,其属于最优网络候补集合中,通过基于子网络深度的结构选择方法一定会至少获得和之前结构选择方法性能相同的网络,并且局部使用结构权重乘积代替验证集精度的方法也让需要在验证集上运行的网络从最多O(2L)中情况减少到O(L)种情况,极大缩短了计算时间。表1介绍了本发明所做实验的平台,所有的实验数据都是在此平台上得到。在相同实验平台的情况下本发明中提出的结构选择方法在ImageNet数据集上性能优于手动设计的常用算法,并且与主流神经网络搜索算法比较时也具有很强的竞争力,同时本发明的也比基准算法DenseNAS的性能更好,这证明了本发明提出算法的优越性。
表1 计算资源
Figure BDA0003828929770000091
表2 不同深度学习网络模型在ImageNet数据集上的实验结果
Figure BDA0003828929770000092
Figure BDA0003828929770000101
表2表明,本发明所使用的基于子网络深度的结构选择方法对DenseNAS所选择网络的精度有提升,并且与人工设计的网络结构对比精度更高,并且对比各种神经网络结构搜索方法在搜索时间更低的情况下达到了同样水平的精度。这表明本发明所设计的基于子网络深度的结构选择方法是有效的达到了效率与精度的平衡。
表3 PASCAL VOC 2012的对比实验结果
Figure BDA0003828929770000102
表3表明,基于改进DenseNAS获得的语义分割算法通过知识蒸馏的方法,本发明选出的最优网络在精度上超过了FCN-8s的基准精度,此外学生网络也在精度上超过了基准精度,说明本发明提出的结构选择方法找出的候选网络的性能也比较优越。而知识蒸馏后学生网络的精度超过了直接训练的学生网络,说明使用知识蒸馏的流程从结果上来说奏效。另外还需注意的是,蒸馏后的网络在训练集的mIoU上是低于原基准网络的,但验证集上的mIoU指标却高于基准网络,这说明知识蒸馏的确从教师网络那里学到了更多的知识,使得网络的泛化能力显著增强。
通过上述步骤与实验介绍,本发明针对DenseNAS结构选择方法的不足提出了基于子网络深度的结构选择方法,在可接受的计算时间内提高了选择出子网络在数据集上的精度,发挥了密集连接搜索空间的优势。并且针对提出方法产生候选最优网络集合的特征将集合中最优网络与最短网络应用到语义分割算法中作为骨干网络并知识蒸馏训练。获得了一个平衡效率与精度的语义分割算法。本发明除了可以应用在语义分割领域外,此流程同样可用于其他下游视觉任务如目标检测、目标跟踪等。
本发明未详细阐述的部分属于本领域的公知技术。尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,且应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

Claims (5)

1.一种基于改进DenseNAS的语义分割方法,其特征在于,包括如下步骤:
(1)使用神经网络结构搜索算法DenseNAS搜索合适的深度神经网络模型;
(2)基于子网络深度的结构选择算法获得一个不同深度的子网络候选集合,并从该集合中选择其最短网络以及验证集上精度最高网络,并将二者在图像分类数据集上重训练;
(3)最优网络作为语义分割算法FCN的骨干网络得到教师模型FCN-long并将其在语义分割数据集上训练至收敛,最短网络作为语义分割算法FCN的骨干网络得到学生模型FCN-short,使用训练至收敛的FCN-long监督进行知识蒸馏训练。
2.根据权利要求1所述的一种基于改进DenseNAS的语义分割方法,其特征在于,所述步骤(2)具体包括以下步骤:
(21)基于步骤(1)中获得的深度神经网络,对于其内部深度为K的子网络集合
Figure FDA0003828929760000011
定义其子网络
Figure FDA0003828929760000012
选择使用的区块B为Bn1,Bn2,…,Bnk,区块Bi,Bj之间的结构参数为αij,Bi至Bj的权重为wi,j,公式如下:
Figure FDA0003828929760000013
由此可以得到子网络
Figure FDA0003828929760000014
的结构权重
Figure FDA0003828929760000015
公式如下:
Figure FDA0003828929760000016
(22)根据全部子网络结构权重后可以得到局部最优网络集合Local:
Figure FDA0003828929760000017
局部最优网络集合中包含
Figure FDA0003828929760000018
个具体的不同深度的神经网络模型,这些的模型的优劣由验证集精度判定:
Figure FDA0003828929760000019
Figure FDA00038289297600000110
Global即为所求验证集上最优网络,Short即为所求最短网络;
(23)选出最优网络和最短网络后将两个深度神经网络在ImageNet图像分类数据集上训练至收敛。
3.根据权利要求2所述的一种基于改进的DenseNAS的语义分割方法,其特征在于,选出最优网络和最短网络,具体包括:
(31)根据搜索空间的深度、连接度等参数生成所有子网络列表,每个子网络表示形式为一个长度为17的01数组,其中1表示经过该节点,0表示不经过该节点;
(32)根据数组中1的数量生成若干个列表,每个列表里的数组1的数量相同,表示同样深度的子网络;
(33)对每个列表遍历,将数组代表的子网络带入DenseNAS的超网络中,计算其结构参数乘积,并记录每个列表中结构参数乘积最大的子网络获得最优网络候补;
(34)最优网络候补中的网络重新带入超网络中,使用超网络的特征参数计算这些子网络在验证集上的精度,具体方法是将超网络中所有不属于子网络的节点结构参数全部设置为0,这样可以保证这些子网络之间的权重共享,使用同一套权重计算验证集精度可以更好的判断它们之间的优劣;
(35)根据精度选择出候补网络集合中的最优网络,根据网络深度选出候补网络集合中的最短网络。
4.根据权利要求4所述的一种基于改进的DenseNAS语义分割算法,其特征在于步骤(3)中,选择深度最浅的网络Short为学生网络Student,而验证集精度最高的网络Global为教师网络Teacher;
Student=Short
Teacher=Global
学生网络在进行知识蒸馏的时候通常采用的损失函数为:
L=Lhard+λLsoft
其中Lsoft的定义如下:
Figure FDA0003828929760000021
其中,pti和psi分别代表教师网络Teacher和学生网络Student计算出的gumbelsoftmax输出值。Lsoft是KL散度,其本身是用来衡量两个概率分布之间的差异;
Lhard是学生网络基于真实标签的损失函数,引入Lhard是因为教师网络学到的特征分布并不一定完全正确,因此需要平衡一下以免学到错误的知识,使用的损失函数是负对数似然损失函数NLLLoss,公式如下:
Figure FDA0003828929760000031
Logsoftmax的计算公式为:
Figure FDA0003828929760000032
其中c是任务的类别数。
5.根据权利要求1所述的一种基于改进DenseNAS的语义分割方法,其特征在于,所述步骤(3),具体包括:
(51)使用最优网络作为FCN-8s的骨干网络在语义分割数据集PASCAL VOC 2012上训练至收敛,得到深度学习模型规模较大的语义分割深度神经网络模型FCN-long;
(52)使用最短网络作为FCN-8s的骨干网络在PASCAL VOC 2012上训练,并且以FCN-long在PASCAL VOC 2012的结果作为知识蒸馏的辅助;
(53)令小的语义分割模型学习大规模神经网络模型FCN-long在数据集中学到的知识,获得的模型FCN-short即为最后的语义分割深度神经网络模型。
CN202211069116.1A 2022-09-02 2022-09-02 一种基于改进DenseNAS的语义分割方法 Pending CN115457269A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211069116.1A CN115457269A (zh) 2022-09-02 2022-09-02 一种基于改进DenseNAS的语义分割方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211069116.1A CN115457269A (zh) 2022-09-02 2022-09-02 一种基于改进DenseNAS的语义分割方法

Publications (1)

Publication Number Publication Date
CN115457269A true CN115457269A (zh) 2022-12-09

Family

ID=84300746

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211069116.1A Pending CN115457269A (zh) 2022-09-02 2022-09-02 一种基于改进DenseNAS的语义分割方法

Country Status (1)

Country Link
CN (1) CN115457269A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117197590A (zh) * 2023-11-06 2023-12-08 山东智洋上水信息技术有限公司 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117197590A (zh) * 2023-11-06 2023-12-08 山东智洋上水信息技术有限公司 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置
CN117197590B (zh) * 2023-11-06 2024-02-27 山东智洋上水信息技术有限公司 一种基于神经架构搜索与知识蒸馏的图像分类方法及装置

Similar Documents

Publication Publication Date Title
CN109919108B (zh) 基于深度哈希辅助网络的遥感图像快速目标检测方法
CN109740541B (zh) 一种行人重识别系统与方法
CN109308696B (zh) 基于层级特征融合网络的无参考图像质量评价方法
CN110852168A (zh) 基于神经架构搜索的行人重识别模型构建方法及装置
CN109948029A (zh) 基于神经网络自适应的深度哈希图像搜索方法
CN106897714A (zh) 一种基于卷积神经网络的视频动作检测方法
CN108446770B (zh) 一种基于采样的分布式机器学习慢节点处理系统及方法
CN112381208B (zh) 一种基于神经网络架构搜索的图片分类方法与系统
CN107392919A (zh) 基于自适应遗传算法的灰度阈值获取方法、图像分割方法
CN110866134B (zh) 一种面向图像检索的分布一致性保持度量学习方法
CN116503676B (zh) 一种基于知识蒸馏小样本增量学习的图片分类方法及系统
CN115688908A (zh) 一种基于剪枝技术的高效神经网络搜索与训练方法
CN111694977A (zh) 一种基于数据增强的车辆图像检索方法
CN114663848A (zh) 一种基于知识蒸馏的目标检测方法和装置
CN112084895A (zh) 一种基于深度学习的行人重识别方法
CN115457269A (zh) 一种基于改进DenseNAS的语义分割方法
CN116796810A (zh) 一种基于知识蒸馏的深度神经网络模型压缩方法及装置
CN109740672B (zh) 多流特征距离融合系统与融合方法
CN116452904B (zh) 图像美学质量确定方法
CN116052218A (zh) 一种行人重识别方法
CN115713647A (zh) 基于深度学习的桥梁表观信息三分级识别方法和识别系统
CN114972959A (zh) 深度学习中样本生成和类内排序损失的遥感图像检索方法
CN115100694A (zh) 一种基于自监督神经网络的指纹快速检索方法
CN112132059B (zh) 一种基于深度条件随机场的行人重识别方法和系统
CN104537665A (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