CN116912496B - 用于图像分割的解码器对比学习方法及系统 - Google Patents
用于图像分割的解码器对比学习方法及系统 Download PDFInfo
- Publication number
- CN116912496B CN116912496B CN202310894748.XA CN202310894748A CN116912496B CN 116912496 B CN116912496 B CN 116912496B CN 202310894748 A CN202310894748 A CN 202310894748A CN 116912496 B CN116912496 B CN 116912496B
- Authority
- CN
- China
- Prior art keywords
- decoder
- image segmentation
- network
- training
- momentum
- 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
- 238000003709 image segmentation Methods 0.000 title claims abstract description 261
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000012549 training Methods 0.000 claims abstract description 241
- 230000000694 effects Effects 0.000 claims description 29
- 238000012360 testing method Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 13
- 238000011156 evaluation Methods 0.000 claims description 10
- 230000008014 freezing Effects 0.000 claims description 9
- 238000007710 freezing Methods 0.000 claims description 9
- 230000002708 enhancing effect Effects 0.000 claims description 7
- 238000010276 construction Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 description 22
- 230000011218 segmentation Effects 0.000 description 11
- 241000282326 Felis catus Species 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000013508 migration Methods 0.000 description 8
- 230000005012 migration Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000002146 bilateral effect Effects 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 4
- 238000013526 transfer learning Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation 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
-
- 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder 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/0463—Neocognitrons
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明提供一种用于图像分割的解码器对比学习方法及系统。该方法包括:获取图像数据集;搭建解码器对比学习网络;将解码器对比学习网络中的骨干网络在ImageNet上进行有监督学习得到的模型作为解码器对比学习网络中的编码器的预训练模型;基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络;输出解码器对比学习模型并将其作为图像分割网络的解码器预训练模型;获取任意预训练模型并将其作为图像分割网络的编码器预训练模型;基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络;输出图像分割模型。本发明解决了图像分割网络的解码器部分没有预训练模型的问题。
Description
技术领域
本发明涉及图像分割的技术领域,具体而言,涉及一种用于图像分割的解码器对比学习方法及系统。
背景技术
图像分割是深度学习在计算机视觉领域的重要研究问题之一,该任务要求网络把像素分为不同的类别,最终输出像素级的语义标签。常用的图像分割网络一般包含编码器和解码器两部分。其中,编码器负责从原图像中提取图像特征,把特征映射到高维语义空间。随后解码器根据这些特征判断像素类别,输出最终的像素级分割结果。相比图像分类网络,图像分割网络输出的结果包含更多信息,因此使用的解码器网络结构一般更加复杂,需要训练的模型参数也更多。如果让所有的参数都以随机初始化的方式进行训练,则训练的效果一般不会太好。目前常用的训练方法是使用迁移学习训练下游分割网络,也就是把在大数据集上进行有监督或无监督学习得到的预训练模型作为分割网络的初始化参数,进行端到端的微调训练,这样有助于网络更快收敛且取得更好的效果。其中有监督学习要求数据有完备的标签,而人工打标签又是一件费时费力的工作,因此不需要标签就能学习的无监督学习方法前景更好。
对比学习作为一种无监督学习方法,近年来发展迅速。一般来说,对比学习方法是通过不同的数据增强方式,得到看起来不同但语义信息不变的图像,之后输入网络,要求网络输出的特征尽可能相似,从而使网络学习到图像中不易发生变化的更深层次的语义特征。也就是说,网络要训练出一定的抗干扰能力,使得图像无论怎么增强,只要语义信息不发生变化,网络都会给出同样的特征,显然这样的训练逻辑是适用于编码器的。而解码器权重会在训练后丢弃,不参与下游任务的迁移学习。因此几乎所有的对比学习方法都是用于训练编码器部分。
这里提到的分割网络包含编码器和解码器两部分,由于编码器中包含下采样层,解码器中包含上采样层,因此编码器和解码器的结构不完全相同。而对比学习预训练模型中只有编码器部分的权重可以迁移至下游分割网络中,这导致解码器中没有预训练参数的层,只能以随机初始化参数的方式进行训练。此时使用对比学习模型进行迁移学习带来的改进就主要集中于编码器部分,而对解码器部分则收效甚微。
发明内容
本发明旨在至少解决现有技术或相关技术中存在的技术问题之一。
为此,本发明的第一目的在于提出一种用于图像分割的解码器对比学习方法。
本发明的第二目的在于提出一种用于图像分割的解码器对比学习系统。
本发明的第三目的在于提出一种计算机装置。
本发明的第四目的在于提出一种计算机可读存储介质。
为了实现上述目的,本发明的第一方面的技术方案,提供了一种用于图像分割的解码器对比学习方法,基于解码器对比学习网络,该对比学习方法包括:获取图像数据集,其中,所述图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,所述图像分割数据集为有标签的图像数据集,以及所述图像分割数据集包括:图像分割训练集;搭建解码器对比学习网络,其中,所述解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,所述基解码器包括一个骨干网络、一个投影层和一个预测层,所述动量解码器包括一个骨干网络和一个投影层,以及所述解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同;将所述解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为所述解码器对比学习网络中的编码器的预训练模型;基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络;输出解码器对比学习模型,并将所述解码器对比学习模型作为图像分割网络的解码器预训练模型;获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;基于所述图像分割训练集、图像分割网络的编码器预训练模型和所述图像分割网络的解码器预训练模型训练图像分割网络;输出图像分割模型。
优选地,所述图像分割数据集还包括:图像分割测试集;所述对比学习方法还包括:使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
优选地,所述基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络的步骤,具体包括:设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;定义不同的数据增强方式;根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;将所述若干组正样本对分别输入两个编码器;将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
优选地,所述设置所述基解码器和动量解码器不同的参数更新方式的步骤,具体包括:设置所述基解码器的参数更新方式为梯度回传更新;设置所述动量解码器的参数更新方式为动量更新;所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:通过预设公式更新所述动量解码器的参数;所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
本发明的第二方面的技术方案,还提供了一种用于图像分割的解码器对比学习系统,基于解码器对比学习网络,该对比学习系统包括:获取模块,用于获取图像数据集,其中,所述图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,所述图像分割数据集为有标签的图像数据集,以及所述图像分割数据集包括:图像分割训练集;解码器对比学习网络搭建模块,用于搭建解码器对比学习网络,其中,所述解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,所述基解码器包括一个骨干网络、一个投影层和一个预测层,所述动量解码器包括一个骨干网络和一个投影层,以及所述解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同;有监督预训练模块,用于将所述解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为所述解码器对比学习网络中的编码器的预训练模型;解码器对比学习网络训练模块,用于基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络;解码器预训练模型输出模块,用于输出解码器对比学习模型,并将所述解码器对比学习模型作为图像分割网络的解码器预训练模型;编码器预训练模型获取模块,用于获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;图像分割网络训练模块,用于基于所述图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络;图像分割模型输出模块,用于输出图像分割模型。
优选地,所述图像分割数据集还包括:图像分割测试集;所述对比学习系统还包括:效果评估模块,用于使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;所述效果评估模块,还用于将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
优选地,所述解码器对比学习网络训练模块,具体包括:参数更新模块,用于设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;权重初始化冻结模块,用于将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;数据增强模块,用于定义不同的数据增强方式;所述数据增强模块,还用于根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;拟合模块,用于将所述若干组正样本对分别输入两个编码器;所述拟合模块,还用于将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
优选地,所述参数更新模块,具体用于:设置所述基解码器的参数更新方式为梯度回传更新;设置所述动量解码器的参数更新方式为动量更新;所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:通过预设公式更新所述动量解码器的参数;所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
本发明的第三方面的技术方案,还提供了一种计算机装置,该计算机装置包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一技术方案中的用于图像分割的解码器对比学习方法的步骤。
本发明的第四方面的技术方案,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一技术方案中的用于图像分割的解码器对比学习方法的步骤。
本发明的有益效果:
(1)本发明提供的用于图像分割的解码器对比学习方法及系统,基于解码器对比学习网络,通过获取图像数据集,再搭建解码器对比学习网络,再通过将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型,使得编码器的输出是后面基解码器和动量解码器需要的图像语义特征,使得基解码器和动量解码器能够得到有效的训练。
(2)本发明中的基解码器和动量解码器中的骨干网络后都使用了多层感知机(Multilayer Perceptron,MLP)组成的投影层,加入该投影层会使网络学习到的特征得到进一步的改善,从而使下游图像分割网络的迁移学习效果变得更好。在基解码器的最后,加入一个MLP构成的预测层,要求该预测层的输出尽可能接近动量解码器中投影层的输出,将解码器对比学习网络常用的匹配任务变成预测任务,从而实现去掉了负样本的约束的技术效果,而传统的使用个体判别匹配任务的对比学习网络需要负样本的约束来达到避免训练坍塌的目的。
(3)本发明提供的用于图像分割的解码器对比学习方法及系统,通过对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络,输出解码器对比学习模型,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,再基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络,最后输出图像分割模型,解决了下游图像分割网络的解码器部分没有预训练模型的问题。
本发明的附加方面和优点将在下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1示出了本发明的一个实施例的用于图像分割的解码器对比学习方法的示意流程图;
图2示出了本发明的一个实施例的解码器对比学习网络的示意结构图;
图3示出了本发明的一个实施例的用于图像分割的解码器对比学习系统的示意框图;
图4示出了本发明的一个实施例的计算机装置的示意框图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互结合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明的保护范围并不限于下面公开的具体实施例的限制。
图1示出了本发明的一个实施例的用于图像分割的解码器对比学习方法的示意流程图。其中,该对比学习方法基于解码器对比学习网络。图2示出了本发明的一个实施例的解码器对比学习网络的示意结构图。如图2所示,该解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,该基解码器包括一个骨干网络、一个投影层和一个预测层,该动量解码器包括一个骨干网络和一个投影层,以及该解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同;如图1所示,一种用于图像分割的解码器对比学习方法,包括:
步骤102,获取图像数据集;
步骤104,搭建解码器对比学习网络;
步骤106,将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型;
步骤108,基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络;
步骤110,输出解码器对比学习模型,并将解码器对比学习模型作为图像分割网络的解码器预训练模型;
步骤112,获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;
步骤114,基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络;
步骤116,输出图像分割模型。
其中,该图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,图像分割数据集为有标签的图像数据集,以及图像分割数据集包括:图像分割训练集。
在本实施例中,因为训练解码器对比学习网络的过程不依赖标签,所以对比学习数据集对其所包含的图像是否含有标签不作要求,对比学习数据集可以包含有标签和没有标签的图像;但是图像分割网络会进行有监督的迁移学习,所以图像分割数据集中只包含有标签的图像。
本发明提供的用于图像分割的解码器对比学习方法,基于解码器对比学习网络,通过获取图像数据集,再搭建解码器对比学习网络,该解码器对比学习网络的搭建受启发于常规编码器对比学习网络的搭建思路。具体来说,对于编码器来说,输入的是图像,输出的是编码后的特征,因此可以通过对输入的图像进行数据增强,要求编码器输出的特征不发生变化的方式,从而使编码器学习到图像中不易发生变化的语义特征。本发明用相同的思路构建解码器的对比学习网络。具体来说,对于解码器来说,输入的是编码器输出的特征,输出的是解码后的特征。因此只需要使编码器的输出特征发生变化但是语义信息不变,并要求解码器的输出不发生变化,就能起到训练解码器的目的。因此,本发明搭建的解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,基解码器包括一个骨干网络、一个投影层和一个预测层,动量解码器包括一个骨干网络和一个投影层。
进一步地,本发明基解码器和动量解码器中的骨干网络后都使用了多层感知机(Multilayer Perceptron,MLP)组成的投影层,加入该投影层会使网络学习到的特征得到进一步的改善,从而使下游图像分割网络的迁移学习效果变得更好。在基解码器的最后,加入一个MLP构成的预测层,要求该预测层的输出尽可能接近动量解码器中投影层的输出,将解码器对比学习网络常用的匹配任务变成预测任务,从而实现去掉了负样本的约束的技术效果,而传统的使用个体判别匹配任务的对比学习网络需要负样本的约束来达到避免训练坍塌的目的。
进一步地,通过将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型,使得编码器的输出是后面基解码器和动量解码器需要的图像语义特征,使得基解码器和动量解码器能够得到有效的训练。理论上来说,这里解码器对比学习网络中的编码器的预训练模型有三种可能的选择:第一种是使用随机初始化参数的方法进行训练。第二种是使用一般的对比学习方法得到的对比学习模型作为预训练模型。第三种是使用在ImageNet上进行有监督学习得到的模型作为预训练模型,即本发明选择的第三种。如果选择第一种,由于编码器的权重是随机初始化的,这也就意味着编码器没有编码的功能,编码器输出的只是经过随机运算后的没有意义的向量,而不是后面基解码器和动量解码器需要的图像语义特征。如果选择第二种,由于训练好的对比学习模型已经对图像的数据增强有了一定的抗干扰能力,其输出的特征已经几乎不会随着后续数据增强的改变而发生改变,这样对于基解码器和动量解码器来说,只会一直得到近乎一样的输入,同样无法使基解码器和动量解码器得到有效的训练。
进一步地,基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络,输出解码器对比学习模型,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,再基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络,最后输出图像分割模型,解决了下游图像分割网络的解码器部分没有预训练模型的问题。而一般的对比学习方法都是以训练编码器的逻辑去训练预训练模型,在迁移到下游图像分割任务上时只有编码器部分的权重被迁移。下游图像分割网络中缺少预训练权重的解码器部分往往只能以随机初始化权重的方式训练。特别是当下游分割网络的解码器使用基于Transformer结构的骨干网络时,由于Transformer网络缺少归纳偏置,会导致随机初始化权重的方式更加难以将图像分割网络训练好,因此本发明创新性地提出训练搭建的解码器对比学习网络,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,从而解决了上述问题。
在本发明的一个实施例中,所述图像分割数据集还包括:图像分割测试集;所述对比学习方法还包括:使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
在本实施例中,对训练图像分割网络输出的图像分割模型进行效果评估,以衡量图像分割模型实际的迁移效果,验证了使用本发明的对比学习方法训练得到的图像分割模型,图像分割模型的性能有明显提升,这说明本发明提出的用于图像分割的解码器对比学习方法是有效的,增加了本发明的对比学习方法的使用可靠性。具体实施例中,该图像分割数据集中的80%为图像分割训练集,该图像分割数据集中的20%为图像分割测试集。
具体实施例中,可以采用常用且效果较好的均方误差(Mean Squared Error,MSE)损失函数,并计算双向对称的MSE损失以衡量基解码器和动量解码器的输出之间的差异,MSE损失函数如式(1)所示:
式中,b为基解码器输出为,m为动量解码器的输出,b和m均属于维度为h×w×c的实数集Rh×w×c。计算出来的双向对称的MSE损失,经过不同数据增强得到的正样本对x1和x2会分别经过基解码器得到b1和b2,再分别经过动量解码器得到m1和m2,最后双向对称的MSE损失如式(2)所示。
Loss=MSE(b1,m2)+MSE(b2,m1) (2)
在本发明的一个实施例中,所述基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络的步骤,具体包括:设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;定义不同的数据增强方式;根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;将所述若干组正样本对分别输入两个编码器;将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
在本实施例中,通过设置基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器,以使得预测层的输出尽可能接近动量解码器中投影层的输出,再将解码器对比学习网络中的编码器的预训练模型作为编码器的初始化权重,并冻结编码器中的权重,避免了编码器本身在训练过程中权重的变化导致编码器的输出发生额外的变化。再定义不同的数据增强方式,根据不同的数据增强方式分别对对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对,通过对编码器的输入图像进行数据增强的方式使编码器输出的特征发生变化,且不会导致图像本身语义信息的改变。具体地,以一组正样本对为例,输入的图像会被以不同的方式进行数据增强,从而得到两张看起来不相同但是语义信息几乎相同的图像,这两张图像会构成一对正样本对,之后输入后续的网络中。这里的图像之所以是用不同的方式进行数据增强,是为了保证数据增强后的图像不同。不同的方式可以是不同的数据增强方法,或者是同样的数据增强方法但使用的参数不同。但在选取数据增强方法时,应尽量保证原始图像的语义信息几乎不发生更改;举例说明,比如原来的图像是一只猫,数据增强后的图像可以改变猫的朝向、猫的颜色、甚至是只截取猫的一部分,但是数据增强后的图像需要看起来还是一只猫,这就是所谓的语义信息几乎不发生更改。最后,将生成的若干组正样本对分别输入两个编码器,再将两个编码器的输出分别输入基解码器和动量解码器,以使得基解码器中的预测层的输出去拟合动量解码器中的投影层的输出。
在本发明的一个实施例中,所述设置所述基解码器和动量解码器不同的参数更新方式的步骤,具体包括:设置所述基解码器的参数更新方式为梯度回传更新;设置所述动量解码器的参数更新方式为动量更新;所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:通过预设公式更新所述动量解码器的参数;所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
在本实施例中,动量解码器的参数更新方式使用动量更新,即在训练过程中,基解码器的参数更新方式正常使用梯度回传更新,动量解码器不使用梯度回传更新,而是使用基解码器更新后的参数和动量解码器更新前的参数,经过动量因子加权后得到更新后的动量解码器参数。实际应用时,M一般设置得比较大,从而使动量解码器的更新速度远远慢于基解码器。具体实施例中,M可以为0.99。
具体地,基解码器的参数更新方式采用正常使用梯度回传更新,动量解码器的参数更新方式不采用梯度回传更新,如图2所示的梯度阻断,该梯度阻断等同于不采用梯度回传更新,也就是本发明所说的动量更新。不采用梯度回传更新目的是为了让基解码器更好地去预测动量解码器的输出;假设基解码器和动量解码器都正常使用梯度更新,这时会引发一个后果。由于网络的目的是让基解码器预测动量解码器的输出,那么一个很简单的捷径解就是:不管输入的是什么,让两个解码器的输出全都是固定,比如全都输出0。这样看似网络完成了预测的任务,但是解码器却变成了无论输入是什么,输出都是0的无用输出。这样的灾难被我们称之为模型训练坍塌。所以为了防止此事发生,就必须让动量解码器的更新速度远远慢于基解码器,因此设置动量解码器的参数更新方式为动量更新,当动量非常大时,动量解码器的速度自然就会远远慢于基解码器,从而防止学习到显而易见的捷径解导致模型的训练坍塌。
图3示出了本发明的一个实施例的用于图像分割的解码器对比学习系统的示意框图。其中,该对比学习系统基于解码器对比学习网络。如图2所示,该解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,基解码器包括一个骨干网络、一个投影层和一个预测层,动量解码器包括一个骨干网络和一个投影层,以及解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同。如图3所示,一种用于图像分割的解码器对比学习系统300,包括:
获取模块302,用于获取图像数据集,其中,图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,图像分割数据集为有标签的图像数据集,以及图像分割数据集包括:图像分割训练集;
解码器对比学习网络搭建模块304,用于搭建解码器对比学习网络;
有监督预训练模块306,用于将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型;
解码器对比学习网络训练模块308,用于基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络;
解码器预训练模型输出模块310,用于输出解码器对比学习模型,并将解码器对比学习模型作为图像分割网络的解码器预训练模型;
编码器预训练模型获取模块312,用于获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;
图像分割网络训练模块314,用于基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络;
图像分割模型输出模块316,用于输出图像分割模型。
在本实施例中,因为训练解码器对比学习网络的过程不依赖标签,所以对比学习数据集对其所包含的图像是否含有标签不作要求,对比学习数据集可以包含有标签和没有标签的图像;但是图像分割网络会进行有监督的迁移学习,所以图像分割数据集中只包含有标签的图像。
本发明提供的一种用于图像分割的解码器对比学习系统300,基于解码器对比学习网络,通过获取模块302,获取图像数据集,再通过解码器对比学习网络搭建模块304,搭建解码器对比学习网络,该解码器对比学习网络的搭建受启发于常规编码器对比学习网络的搭建思路。具体来说,对于编码器来说,输入的是图像,输出的是编码后的特征,因此可以通过对输入的图像进行数据增强,要求编码器输出的特征不发生变化的方式,从而使编码器学习到图像中不易发生变化的语义特征。本发明用相同的思路构建解码器的对比学习网络。具体来说,对于解码器来说,输入的是编码器输出的特征,输出的是解码后的特征。因此只需要使编码器的输出特征发生变化但是语义信息不变,并要求解码器的输出不发生变化,就能起到训练解码器的目的。因此,本发明搭建的解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,基解码器包括一个骨干网络、一个投影层和一个预测层,动量解码器包括一个骨干网络和一个投影层。
进一步地,本发明基解码器和动量解码器中的骨干网络后都使用了多层感知机(Multilayer Perceptron,MLP)组成的投影层,加入该投影层会使网络学习到的特征得到进一步的改善,从而使下游图像分割网络的迁移学习效果变得更好。在基解码器的最后,加入一个MLP构成的预测层,要求该预测层的输出尽可能接近动量解码器中投影层的输出,将解码器对比学习网络常用的匹配任务变成预测任务,从而实现去掉了负样本的约束的技术效果,而传统的使用个体判别匹配任务的对比学习网络需要负样本的约束来达到避免训练坍塌的目的。
进一步地,通过有监督预训练模块306,通过将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型,使得编码器的输出是后面基解码器和动量解码器需要的图像语义特征,使得基解码器和动量解码器能够得到有效的训练。理论上来说,这里解码器对比学习网络中的编码器的预训练模型有三种可能的选择:第一种是使用随机初始化参数的方法进行训练。第二种是使用一般的对比学习方法得到的对比学习模型作为预训练模型。第三种是使用在ImageNet上进行有监督学习得到的模型作为预训练模型,即本发明选择的第三种。如果选择第一种,由于编码器的权重是随机初始化的,这也就意味着编码器没有编码的功能,编码器输出的只是经过随机运算后的没有意义的向量,而不是后面基解码器和动量解码器需要的图像语义特征。如果选择第二种,由于训练好的对比学习模型已经对图像的数据增强有了一定的抗干扰能力,其输出的特征已经几乎不会随着后续数据增强的改变而发生改变,这样对于基解码器和动量解码器来说,只会一直得到近乎一样的输入,同样无法使基解码器和动量解码器得到有效的训练。
进一步地,通过解码器对比学习网络训练模块308,基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络,再通过解码器预训练模型输出模块310,输出解码器对比学习模型,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,再通过编码器预训练模型获取模块312,获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型,再通过图像分割网络训练模块314,基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络,最后通过图像分割模型输出模块316,输出图像分割模型,解决了下游图像分割网络的解码器部分没有预训练模型的问题。而一般的对比学习方法都是以训练编码器的逻辑去训练预训练模型,在迁移到下游图像分割任务上时只有编码器部分的权重被迁移。下游图像分割网络中缺少预训练权重的解码器部分往往只能以随机初始化权重的方式训练。特别是当下游分割网络的解码器使用基于Transformer结构的骨干网络时,由于Transformer网络缺少归纳偏置,会导致随机初始化权重的方式更加难以将图像分割网络训练好,因此本发明创新性地提出训练搭建的解码器对比学习网络,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,从而解决了上述问题。
在本发明的一个实施例中,如图3所示,所述图像分割数据集还包括:图像分割测试集;所述对比学习系统还包括:效果评估模块318,用于使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;所述效果评估模块318,还用于将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
在本实施例中,通过效果评估模块318,对训练图像分割网络输出的图像分割模型进行效果评估,以衡量图像分割模型实际的迁移效果,验证了使用本发明的对比学习方法训练得到的图像分割模型,图像分割模型的性能有明显提升,这说明本发明提出的用于图像分割的解码器对比学习方法是有效的,增加了本发明的对比学习方法的使用可靠性。具体实施例中,该图像分割数据集中的80%为图像分割训练集,该图像分割数据集中的20%为图像分割测试集集。
具体实施例中,可以采用常用且效果较好的均方误差(Mean Squared Error,MSE)损失函数,并计算双向对称的MSE损失以衡量基解码器和动量解码器的输出之间的差异,MSE损失函数如式(1)所示:
式中,b为基解码器输出为,m为动量解码器的输出,b和m均属于维度为h×w×c的实数集Rh×w×c。计算出来的双向对称的MSE损失,经过不同数据增强得到的正样本对x1和x2会分别经过基解码器得到b1和b2,再分别经过动量解码器得到m1和m2,最后双向对称的MSE损失如式(2)所示。
Loss=MSE(b1,m2)+MSE(b2,m1) (2)
在本发明的一个实施例中,如图3所示,所述解码器对比学习网络训练模块308,具体包括:参数更新模块3080,用于设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;权重初始化冻结模块3082,用于将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;数据增强模块3084,用于定义不同的数据增强方式;所述数据增强模块3084,还用于根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;拟合模块3086,用于将所述若干组正样本对分别输入两个编码器;所述拟合模块,还用于将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
在本实施例中,通过参数更新模块3080,设置基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器,以使得预测层的输出尽可能接近动量解码器中投影层的输出,再通过权重初始化冻结模块3082,将解码器对比学习网络中的编码器的预训练模型作为编码器的初始化权重,并冻结编码器中的权重,避免了编码器本身在训练过程中权重的变化导致编码器的输出发生额外的变化。再通过数据增强模块3084,定义不同的数据增强方式,根据不同的数据增强方式分别对对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对,通过对编码器的输入图像进行数据增强的方式使编码器输出的特征发生变化,且不会导致图像本身语义信息的改变。具体地,以一组正样本对为例,输入的图像会被以不同的方式进行数据增强,从而得到两张看起来不相同但是语义信息几乎相同的图像,这两张图像会构成一对正样本对,之后输入后续的网络中。这里的图像之所以是用不同的方式进行数据增强,是为了保证数据增强后的图像不同。不同的方式可以是不同的数据增强方法,或者是同样的数据增强方法但使用的参数不同。但在选取数据增强方法时,应尽量保证原始图像的语义信息几乎不发生更改;举例说明,比如原来的图像是一只猫,数据增强后的图像可以改变猫的朝向、猫的颜色、甚至是只截取猫的一部分,但是数据增强后的图像需要看起来还是一只猫,这就是所谓的语义信息几乎不发生更改。最后,通过拟合模块3086,将生成的若干组正样本对分别输入两个编码器,再将两个编码器的输出分别输入基解码器和动量解码器,以使得基解码器中的预测层的输出去拟合动量解码器中的投影层的输出。
在本发明的一个实施例中,所述参数更新模块3080,具体用于:设置所述基解码器的参数更新方式为梯度回传更新;设置所述动量解码器的参数更新方式为动量更新;所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:通过预设公式更新所述动量解码器的参数;所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
在本实施例中,通过参数更新模块3080,将动量解码器的参数更新方式设置为动量更新,即在训练过程中,基解码器的参数更新方式正常使用梯度回传更新,动量解码器不使用梯度回传更新,而是使用基解码器更新后的参数和动量解码器更新前的参数,经过动量因子加权后得到更新后的动量解码器参数。实际应用时,M一般设置得比较大,从而使动量解码器的更新速度远远慢于基解码器。具体实施例中,M可以为0.99。
具体地,基解码器的参数更新方式采用正常使用梯度回传更新,动量解码器的参数更新方式不采用梯度回传更新,如图2所示的梯度阻断,该梯度阻断等同于不采用梯度回传更新,也就是本发明所说的动量更新。不采用梯度回传更新目的是为了让基解码器更好地去预测动量解码器的输出;假设基解码器和动量解码器都正常使用梯度更新,这时会引发一个后果。由于网络的目的是让基解码器预测动量解码器的输出,那么一个很简单的捷径解就是:不管输入的是什么,让两个解码器的输出全都是固定,比如全都输出0。这样看似网络完成了预测的任务,但是解码器却变成了无论输入是什么,输出都是0的无用输出。这样的灾难被我们称之为模型训练坍塌。所以为了防止此事发生,就必须让动量解码器的更新速度远远慢于基解码器,因此设置动量解码器的参数更新方式为动量更新,当动量非常大时,动量解码器的速度自然就会远远慢于基解码器,从而防止学习到显而易见的捷径解导致模型的训练坍塌。
如图4所示,一种计算机装置400包括:存储器402、处理器404及存储在存储器402上并可在处理器404上运行的计算机程序,处理器404执行计算机程序时实现如上述任一实施例中的用于图像分割的解码器对比学习方法的步骤。
本发明提供的计算机装置400,处理器404执行计算机程序时,通过获取图像数据集,再搭建解码器对比学习网络,该解码器对比学习网络的搭建受启发于常规编码器对比学习网络的搭建思路。具体来说,对于编码器来说,输入的是图像,输出的是编码后的特征,因此可以通过对输入的图像进行数据增强,要求编码器输出的特征不发生变化的方式,从而使编码器学习到图像中不易发生变化的语义特征。本发明用相同的思路构建解码器的对比学习网络。具体来说,对于解码器来说,输入的是编码器输出的特征,输出的是解码后的特征。因此只需要使编码器的输出特征发生变化但是语义信息不变,并要求解码器的输出不发生变化,就能起到训练解码器的目的。因此,本发明搭建的解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,基解码器包括一个骨干网络、一个投影层和一个预测层,动量解码器包括一个骨干网络和一个投影层。
进一步地,本发明基解码器和动量解码器中的骨干网络后都使用了多层感知机(Multilayer Perceptron,MLP)组成的投影层,加入该投影层会使网络学习到的特征得到进一步的改善,从而使下游图像分割网络的迁移学习效果变得更好。在基解码器的最后,加入一个MLP构成的预测层,要求该预测层的输出尽可能接近动量解码器中投影层的输出,将解码器对比学习网络常用的匹配任务变成预测任务,从而实现去掉了负样本的约束的技术效果,而传统的使用个体判别匹配任务的对比学习网络需要负样本的约束来达到避免训练坍塌的目的。
进一步地,通过将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型,使得编码器的输出是后面基解码器和动量解码器需要的图像语义特征,使得基解码器和动量解码器能够得到有效的训练。理论上来说,这里解码器对比学习网络中的编码器的预训练模型有三种可能的选择:第一种是使用随机初始化参数的方法进行训练。第二种是使用一般的对比学习方法得到的对比学习模型作为预训练模型。第三种是使用在ImageNet上进行有监督学习得到的模型作为预训练模型,即本发明选择的第三种。如果选择第一种,由于编码器的权重是随机初始化的,这也就意味着编码器没有编码的功能,编码器输出的只是经过随机运算后的没有意义的向量,而不是后面基解码器和动量解码器需要的图像语义特征。如果选择第二种,由于训练好的对比学习模型已经对图像的数据增强有了一定的抗干扰能力,其输出的特征已经几乎不会随着后续数据增强的改变而发生改变,这样对于基解码器和动量解码器来说,只会一直得到近乎一样的输入,同样无法使基解码器和动量解码器得到有效的训练。
进一步地,基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络,输出解码器对比学习模型,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,再基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络,最后输出图像分割模型,解决了下游图像分割网络的解码器部分没有预训练模型的问题。而一般的对比学习方法都是以训练编码器的逻辑去训练预训练模型,在迁移到下游图像分割任务上时只有编码器部分的权重被迁移。下游图像分割网络中缺少预训练权重的解码器部分往往只能以随机初始化权重的方式训练。特别是当下游分割网络的解码器使用基于Transformer结构的骨干网络时,由于Transformer网络缺少归纳偏置,会导致随机初始化权重的方式更加难以将图像分割网络训练好,因此本发明创新性地提出训练搭建的解码器对比学习网络,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,从而解决了上述问题。
本发明还提出了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述任一实施例中的用于图像分割的解码器对比学习方法的步骤。
本发明提供的计算机可读存储介质,计算机程序被处理器执行时,通过获取图像数据集,再搭建解码器对比学习网络,该解码器对比学习网络的搭建受启发于常规编码器对比学习网络的搭建思路。具体来说,对于编码器来说,输入的是图像,输出的是编码后的特征,因此可以通过对输入的图像进行数据增强,要求编码器输出的特征不发生变化的方式,从而使编码器学习到图像中不易发生变化的语义特征。本发明用相同的思路构建解码器的对比学习网络。具体来说,对于解码器来说,输入的是编码器输出的特征,输出的是解码后的特征。因此只需要使编码器的输出特征发生变化但是语义信息不变,并要求解码器的输出不发生变化,就能起到训练解码器的目的。因此,本发明搭建的解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,基解码器包括一个骨干网络、一个投影层和一个预测层,动量解码器包括一个骨干网络和一个投影层。
进一步地,本发明基解码器和动量解码器中的骨干网络后都使用了多层感知机(Multilayer Perceptron,MLP)组成的投影层,加入该投影层会使网络学习到的特征得到进一步的改善,从而使下游图像分割网络的迁移学习效果变得更好。在基解码器的最后,加入一个MLP构成的预测层,要求该预测层的输出尽可能接近动量解码器中投影层的输出,将解码器对比学习网络常用的匹配任务变成预测任务,从而实现去掉了负样本的约束的技术效果,而传统的使用个体判别匹配任务的对比学习网络需要负样本的约束来达到避免训练坍塌的目的。
进一步地,通过将解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为解码器对比学习网络中的编码器的预训练模型,使得编码器的输出是后面基解码器和动量解码器需要的图像语义特征,使得基解码器和动量解码器能够得到有效的训练。理论上来说,这里解码器对比学习网络中的编码器的预训练模型有三种可能的选择:第一种是使用随机初始化参数的方法进行训练。第二种是使用一般的对比学习方法得到的对比学习模型作为预训练模型。第三种是使用在ImageNet上进行有监督学习得到的模型作为预训练模型,即本发明选择的第三种。如果选择第一种,由于编码器的权重是随机初始化的,这也就意味着编码器没有编码的功能,编码器输出的只是经过随机运算后的没有意义的向量,而不是后面基解码器和动量解码器需要的图像语义特征。如果选择第二种,由于训练好的对比学习模型已经对图像的数据增强有了一定的抗干扰能力,其输出的特征已经几乎不会随着后续数据增强的改变而发生改变,这样对于基解码器和动量解码器来说,只会一直得到近乎一样的输入,同样无法使基解码器和动量解码器得到有效的训练。
进一步地,基于对比学习数据集和解码器对比学习网络中的编码器的预训练模型训练解码器对比学习网络,输出解码器对比学习模型,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,再基于图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络,最后输出图像分割模型,解决了下游图像分割网络的解码器部分没有预训练模型的问题。而一般的对比学习方法都是以训练编码器的逻辑去训练预训练模型,在迁移到下游图像分割任务上时只有编码器部分的权重被迁移。下游图像分割网络中缺少预训练权重的解码器部分往往只能以随机初始化权重的方式训练。特别是当下游分割网络的解码器使用基于Transformer结构的骨干网络时,由于Transformer网络缺少归纳偏置,会导致随机初始化权重的方式更加难以将图像分割网络训练好,因此本发明创新性地提出训练搭建的解码器对比学习网络,并将输出的解码器对比学习模型作为图像分割网络的解码器预训练模型,从而解决了上述问题。
下面将以一个具体的实施例来展示本发明的技术方案。
(1)数据集方面:本发明用于图像分割任务,因此本实施例使用语义分割常用的ADE20K数据集。该数据集涵盖了150个范围广泛的语义类别,总共有约两万五千张图片。其中训练集包含约两万张图片,验证集包含两千张图片,另外约三千张无标签的图像用于测试集。本实施例的图像分割数据集包括ADE20K训练集和验证集的所有图像。其中训练集图像用于训练图像分割模型,验证集图像用于评估模型实际性能。本实施例的对比学习数据集只使用去掉标签的ADE20K训练集图像。
(2)网络搭建方面:本实施例搭建了解码器对比学习网络和图像分割网络。使用首个纯基于Transformer的U型结构网络Swin-Unet作为图像分割网络。由于Swin-Unet的骨干网络是Swin Transformer,因此也使用Swin Transformer作为解码器对比学习网络的解码器骨干网络。
(3)训练配置方面:本实施例使用的数据增强方法包括随机旋转(RandomRotation)、随机缩放裁剪(RandomResizedCrop)、颜色抖动(ColorJitter)、随机灰度化(RandomGrayscale)、高斯滤波(GaussianBlur)、随机曝光(Random Solarize)、随机水平翻转(RandomHorizontalFlip)。所有的训练在单张NVIDIARTX A4000 GPU上进行。对于解码器对比学习网络,使用的学习率为1×10-3,使用的batch size为96,训练了100个epochs,其中包含10个warmup epochs。对于图像分割网络,使用的学习率为2×10-4,使用的batchsize为32,训练了10个epochs。两个网络均采用半周期余弦函数的学习率梯度下降策略。
(4)评价指标方面:本实施例使用图像分割任务常用的平均交并比(MeanIntersection over Union,MIoU)作为评价指标。MIoU的计算公式为(4):
其中,k为图像分割的语义类别数,在本例中为150。算上标签为0的背景类,一共有k+1个类别项。pij为把本应属于第i类的像素分为第j类的数量,pii和pji同理。MIoU数值越大说明分割结果越好。
分割模型在图像分割测试集上的分割结果见表1。
表1验证解码器对比学习网络效果的实验结果
表中两个实验的分割网络编码器均以广泛使用的ImageNet有监督模型作为预训练模型。对于分割网络解码器,第一个实验不使用预训练模型,直接以随机初始化参数的方式进行训练。第二个实验使用解码器对比学习模型作为预训练模型。实验结果显示,图像分割模型的性能有明显提升,这说明本发明提出的用于图像分割的解码器对比学习方法是有效的。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种用于图像分割的解码器对比学习方法,基于解码器对比学习网络,其特征在于,该对比学习方法包括:
获取图像数据集,其中,所述图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,所述图像分割数据集为有标签的图像数据集,以及所述图像分割数据集包括:图像分割训练集;
搭建解码器对比学习网络,其中,所述解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,所述基解码器包括一个骨干网络、一个投影层和一个预测层,所述动量解码器包括一个骨干网络和一个投影层,以及所述解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同;
将所述解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为所述解码器对比学习网络中的编码器的预训练模型;
基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络;
输出解码器对比学习模型,并将所述解码器对比学习模型作为图像分割网络的解码器预训练模型;
获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;
基于所述图像分割训练集、图像分割网络的编码器预训练模型和所述图像分割网络的解码器预训练模型训练图像分割网络;
输出图像分割模型;
所述基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络的步骤,具体包括:
设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;
将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;
定义不同的数据增强方式;
根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;
将所述若干组正样本对分别输入两个编码器;
将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
2.根据权利要求1所述的用于图像分割的解码器对比学习方法,其特征在于,所述图像分割数据集还包括:图像分割测试集;
所述对比学习方法还包括:
使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;
将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
3.根据权利要求1所述的用于图像分割的解码器对比学习方法,其特征在于,所述设置所述基解码器和动量解码器不同的参数更新方式的步骤,具体包括:
设置所述基解码器的参数更新方式为梯度回传更新;
设置所述动量解码器的参数更新方式为动量更新;
所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:
通过预设公式更新所述动量解码器的参数;
所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
4.一种用于图像分割的解码器对比学习系统,基于解码器对比学习网络,其特征在于,该对比学习系统包括:
获取模块,用于获取图像数据集,其中,所述图像数据集包括:用于训练解码器对比学习网络的对比学习数据集和用于训练图像分割网络的图像分割数据集,所述图像分割数据集为有标签的图像数据集,以及所述图像分割数据集包括:图像分割训练集;
解码器对比学习网络搭建模块,用于搭建解码器对比学习网络,其中,所述解码器对比学习网络包括两个相同的编码器,一个基解码器和一个动量解码器,所述基解码器包括一个骨干网络、一个投影层和一个预测层,所述动量解码器包括一个骨干网络和一个投影层,以及所述解码器对比学习网络中的骨干网络与图像分割网络中的骨干网络相同;
有监督预训练模块,用于将所述解码器对比学习网络中的骨干网络在自然图像数据集ImageNet上进行有监督学习得到的有监督模型作为所述解码器对比学习网络中的编码器的预训练模型;
解码器对比学习网络训练模块,用于基于所述对比学习数据集和所述解码器对比学习网络中的编码器的预训练模型训练所述解码器对比学习网络;
解码器预训练模型输出模块,用于输出解码器对比学习模型,并将所述解码器对比学习模型作为图像分割网络的解码器预训练模型;
编码器预训练模型获取模块,用于获取任意的预训练模型,并将获取到的任意的预训练模型作为图像分割网络的编码器预训练模型;
图像分割网络训练模块,用于基于所述图像分割训练集、图像分割网络的编码器预训练模型和图像分割网络的解码器预训练模型训练图像分割网络;
图像分割模型输出模块,用于输出图像分割模型;
所述解码器对比学习网络训练模块,具体包括:
参数更新模块,用于设置所述基解码器和动量解码器不同的参数更新方式,以使得动量解码器的参数更新速度慢于基解码器;
权重初始化冻结模块,用于将所述解码器对比学习网络中的编码器的预训练模型作为所述编码器的初始化权重,并冻结所述编码器中的权重;
数据增强模块,用于定义不同的数据增强方式;
所述数据增强模块,还用于根据所述不同的数据增强方式分别对所述对比学习数据集中的每张图像随机进行数据增强,并生成若干组正样本对;
拟合模块,用于将所述若干组正样本对分别输入两个编码器;
所述拟合模块,还用于将所述两个编码器的输出分别输入所述基解码器和动量解码器,以使得所述基解码器中的预测层的输出去拟合所述动量解码器中的投影层的输出。
5.根据权利要求4所述的用于图像分割的解码器对比学习系统,其特征在于,所述图像分割数据集还包括:图像分割测试集;
所述对比学习系统还包括:
效果评估模块,用于使用所述图像分割测试集对所述图像分割模型进行测试,得出所述图像分割模型的输出结果;
所述效果评估模块,还用于将所述图像分割模型的输出结果和所述图像分割测试集上的标签进行比较,并根据比较结果对所述图像分割模型进行效果评估。
6.根据权利要求4所述的用于图像分割的解码器对比学习系统,其特征在于,所述参数更新模块,具体用于:
设置所述基解码器的参数更新方式为梯度回传更新;
设置所述动量解码器的参数更新方式为动量更新;
所述设置所述动量解码器的参数更新方式为动量更新的步骤,具体包括:
通过预设公式更新所述动量解码器的参数;
所述预设公式为:
mt=M·mt-1+(1-M)·bt
式中,mt为更新后的动量解码器的参数,mt-1为更新前的动量解码器的参数,bt为更新后的基解码器的参数,M为动量因子,M取值范围为[0,1]。
7.一种计算机装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述的用于图像分割的解码器对比学习方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3中任一项所述的用于图像分割的解码器对比学习方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310894748.XA CN116912496B (zh) | 2023-07-20 | 2023-07-20 | 用于图像分割的解码器对比学习方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310894748.XA CN116912496B (zh) | 2023-07-20 | 2023-07-20 | 用于图像分割的解码器对比学习方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116912496A CN116912496A (zh) | 2023-10-20 |
CN116912496B true CN116912496B (zh) | 2024-01-26 |
Family
ID=88367720
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310894748.XA Active CN116912496B (zh) | 2023-07-20 | 2023-07-20 | 用于图像分割的解码器对比学习方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116912496B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111275711A (zh) * | 2020-01-08 | 2020-06-12 | 西安电子科技大学 | 基于轻量级卷积神经网络模型的实时图像语义分割方法 |
CN113221983A (zh) * | 2021-04-28 | 2021-08-06 | 北京达佳互联信息技术有限公司 | 迁移学习模型的训练方法及装置、图像处理方法及装置 |
CN115170505A (zh) * | 2022-07-04 | 2022-10-11 | 山东建筑大学 | 基于多视角自监督深度学习乳腺钼靶图像分割方法及系统 |
CN116434033A (zh) * | 2023-03-20 | 2023-07-14 | 东南大学 | 面向rgb-d图像稠密预测任务的跨模态对比学习方法及系统 |
-
2023
- 2023-07-20 CN CN202310894748.XA patent/CN116912496B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111275711A (zh) * | 2020-01-08 | 2020-06-12 | 西安电子科技大学 | 基于轻量级卷积神经网络模型的实时图像语义分割方法 |
CN113221983A (zh) * | 2021-04-28 | 2021-08-06 | 北京达佳互联信息技术有限公司 | 迁移学习模型的训练方法及装置、图像处理方法及装置 |
CN115170505A (zh) * | 2022-07-04 | 2022-10-11 | 山东建筑大学 | 基于多视角自监督深度学习乳腺钼靶图像分割方法及系统 |
CN116434033A (zh) * | 2023-03-20 | 2023-07-14 | 东南大学 | 面向rgb-d图像稠密预测任务的跨模态对比学习方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116912496A (zh) | 2023-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Image denoising method based on a deep convolution neural network | |
CN109711413B (zh) | 基于深度学习的图像语义分割方法 | |
CN110363716B (zh) | 一种基于条件生成对抗网络复合降质图像高质量重建方法 | |
CN109711426B (zh) | 一种基于gan和迁移学习的病理图片分类装置及方法 | |
CN109919209B (zh) | 一种领域自适应深度学习方法及可读存储介质 | |
Cherabier et al. | Learning priors for semantic 3d reconstruction | |
CN111754446A (zh) | 一种基于生成对抗网络的图像融合方法、系统及存储介质 | |
CN106845471A (zh) | 一种基于生成对抗网络的视觉显著性预测方法 | |
CN111402257B (zh) | 一种基于多任务协同跨域迁移的医学图像自动分割方法 | |
TWI806199B (zh) | 特徵圖資訊的指示方法,設備以及電腦程式 | |
CN112990078B (zh) | 一种基于生成式对抗网络的人脸表情生成方法 | |
CN111724400B (zh) | 视频自动抠像方法及系统 | |
CN114820871B (zh) | 字体生成方法、模型的训练方法、装置、设备和介质 | |
CN109168003B (zh) | 一种生成用于视频预测的神经网络模型的方法 | |
CN113627433B (zh) | 基于数据扰动的跨域自适应语义分割方法及装置 | |
WO2022205416A1 (zh) | 一种基于生成式对抗网络的人脸表情生成方法 | |
CN116982089A (zh) | 用于图像语义增强的方法和系统 | |
Heo et al. | Automatic sketch colorization using DCGAN | |
Lobel et al. | Optimistic initialization for exploration in continuous control | |
CN115578680A (zh) | 一种视频理解方法 | |
CN115331073A (zh) | 一种基于TransUnet架构的影像自监督学习方法 | |
Liu et al. | Survey on gan‐based face hallucination with its model development | |
CN115082300A (zh) | 图像生成模型的训练方法、图像生成方法及装置 | |
CN116912496B (zh) | 用于图像分割的解码器对比学习方法及系统 | |
CN117291232A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |