CN114565808B - 一种面向无监督视觉表示的双动量对比学习方法 - Google Patents

一种面向无监督视觉表示的双动量对比学习方法 Download PDF

Info

Publication number
CN114565808B
CN114565808B CN202210450283.4A CN202210450283A CN114565808B CN 114565808 B CN114565808 B CN 114565808B CN 202210450283 A CN202210450283 A CN 202210450283A CN 114565808 B CN114565808 B CN 114565808B
Authority
CN
China
Prior art keywords
network
image
vector
inputting
projection
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
Application number
CN202210450283.4A
Other languages
English (en)
Other versions
CN114565808A (zh
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.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
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 Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202210450283.4A priority Critical patent/CN114565808B/zh
Publication of CN114565808A publication Critical patent/CN114565808A/zh
Application granted granted Critical
Publication of CN114565808B publication Critical patent/CN114565808B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24133Distances to prototypes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

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

Abstract

本发明公开了一种面向无监督视觉表示的双动量对比学习方法,包括步骤如下:1、在数据集中选择一张图像进行三种不同的视图增强从而获得三张不同的图像;2、将第一张图像输入到第一条网络的部分结构中,将第二张图像输入到第二条网络中计算损失值;3、将第一条网络获得的向量输入到第一条网络的剩余结构中,将第三张图像输入到第三条网络中,并调换图像输入到对方的网络中,计算损失值;4、将上述所有的损失函数相加进行最小化,并固定梯度更新网络参数,随后在下游任务上进行分类训练和测试。本发明是在基于无监督学习和对比学习的基础上,结合实例级别的分类,提出的一种新型的自监督学习方法,最终使识别精度得到提升。

Description

一种面向无监督视觉表示的双动量对比学习方法
技术领域
本发明涉及图像识别技术领域,尤其是涉及了一种面向无监督视觉表示的双动量对比学习方法。
背景技术
近年来,深度卷积神经网络(ConvNet)在计算机视觉中的广泛采用,导致了该领域的巨大进步。具体来说,是在对象识别或场景分类任务上,通过使用大量手工标记的数据来训练ConvNet,使ConvNet能够学习到适用于图像理解的强大视觉表示。例如,ConvNet以这种监督的方式学习的图像特征在迁移到其它视觉任务时取得了很好的效果,如目标检测、语义分割和图像字幕生成。然而,监督特征学习的主要限制是需要大量的手动标记工作,这既昂贵又不可行,无法在当今可用的大量视觉数据上进行扩展。
因此,最近人们越来越有兴趣以无监督的方式学习基于ConvNet的高级表示,以避免手工注释视觉数据。其中,一个突出的范例就是自监督学习,自监督学习主要从大规模的无标记数据中挖掘自身的监督信息,通过构造的有效监督信息对模型进行训练,可以学习到有价值的表示。自监督学习的方法主要可以分为三类:基于上下文(Context Based)、基于时序(Temporal Based)和基于对比(Contrastive Based)的方法。基于上下文的方法是根据数据本身的上下文信息来构造任务,比如在自然语言处理领域中的Word2vec,它就是利用语句的顺序来预测不同位置的词语,而在图像中,通过一种名为Context的方式来构造辅助任务,该方法是将一张图像分成9个部分,然后通过预测这几个部分的相对位置,促使神经网络学习到良好的视觉表示。紧接着,研究者们又扩展了这种拼图的方式,设计了更复杂的任务。首先是将图像分为9块,然后预先定义好64种排序方式,模型输入任意一种被打乱的序列,期待能够学习到这种序列的顺序属于哪个类(64分类),与Context相比,这个模型需要学习到更多的相对位置信息,这个工作带来后面设定辅助任务的启发是:使用更强的监督信息,或者说辅助任务越难,最后的性能越好。这种自监督任务背后的基本原理是,解决这些任务将迫使ConvNet学习对其它视觉任务有用的语义特征。事实上,通过上述自监督辅助任务学习到的图像表示,尽管它们无法与监督学习表示的性能相匹配,但它们已被证明是迁移至其它视觉任务(如图像识别、目标检测)的良好替代方案。
截止到目前为止,基于对比约束的自监督学习方法在图像学习领域得到了广泛的应用并取得了巨大的成功。对比自监督旨在将相似的样本分组的更近,将不同的样本分组的更远。对比自监督方法是一个复杂的端到端的学习系统,使用基于梯度的学习,其设计方式使所有模块都是可微的。这种系统结构更适用于大批量的数据,主要是为了有足够多的负样本来进行训练。除原始图像及其增强版本外,批处理中的其余图像均被视为负样本,这包含将每个样本都看作一类的思想,即除本身样本属于一类以外,剩余样本均属于其它类。该系统中使用两个编码器:查询编码器
Figure DEST_PATH_IMAGE001
和密钥编码器
Figure DEST_PATH_IMAGE002
。这两个编码器可以不同,并且在训练期间通过反向传播进行端到端更新,训练这些编码器的主要目的是生成同一样本的不同表示,同时使用对比损失函数,使得正样本之间更接近,负样本远离正样本。在该系统中,查询编码器
Figure DEST_PATH_IMAGE003
在原始样本上进行训练,密钥编码器
Figure DEST_PATH_IMAGE004
在批处理中与负样本一起在其增强版本(正样本)上进行训练。通过计算这些编码器生成的特征q和k之间的距离来判断对应输入之间的相似性。大多数情况下,所使用的相似性度量是“余弦相似性”。例如,MoCo(Momentum Contrast,动量对比)是从训练数据集中提取一个样本,并通过应用适当的数据增强技术检索样本的增广版本;其中原始样本的增强版本视为正样本,数据集中的其余样本被视为负样本;接下来通过对比损失对模型进行训练,使其学会区分正样本和负样本。随后,SimCLR(A Simple Framework for Contrastive Learning of VisualRepresentations,视觉表征对比学习的简单框架)简化了MoCo算法,不需要专门的架构或者存储库,并证明了数据增强之后的样本在定义有效的预测任务中起着至关重要的作用,并将神经网络后面的全连接层替换成了非线性变换,当图像经过这种神经网络之后,是能够提升学习到的特征的质量;但是该方法需要大的batch Size才能进行很好的模型学习。研究者在MoCo的基础上,在将神经网络中的全连接层换成非线性变换之后,提出了MoCov2,当用MoCo v2算法进行训练之后,将得到的模型应用于下游任务的表现要优于之前提出的所有算法,该方法能够增加同类样本之间的相似性以及减弱负样本之间的相似性,但是对于哪些样本是负样本的判断中,存在一些误判。BYOL(Bootstrap Your Own Latent ANew Approach to Self-Supervised Learning,引导自己潜在的一种自监督学习的新方法)在总结前面工作的基础上,不使用负样本,仍然保证训练出来的网络模型具有优秀的表现,但训练时间较长。最近,SimSiam方法被提出,它仍然是利用对比自监督的架构,但是相较于MoCo v2,该方法不需要负样本对、大的Batch和动量编码器,其目的同样是为了学习到图像的良好视觉表示,但是SimSiam在训练200个迭代次数之后,性能表现不如其他的对比自监督方法。
发明内容
为解决上述问题,本发明提出了一种面向无监督视觉表示的双动量对比学习方法,在网络架构方面采用三条网络的结构,比以往的方法多提供了一个正样本,即提供了更多正样本之间的对比信息。将一个三元组网络分成两个部分对模型进行训练,当图像
Figure DEST_PATH_IMAGE005
经过第一条网络的编码器(
Figure DEST_PATH_IMAGE006
)和第一个投影头(
Figure DEST_PATH_IMAGE007
)之后,将获得的向量与图像
Figure DEST_PATH_IMAGE008
经过第三条网络之后获得向量进行均方误差训练,从而提升模型的泛化能力,在原有方法的基础上提高了图像识别的精度。
本发明所述的一种面向无监督视觉表示的双动量对比学习方法,包括如下步骤:
步骤1、对数据集中的每张图像进行三种不同的视图增强使之作为正样本对;
步骤2、将第一张经过视觉增强后的图像输入到第一条网络中的编码器和第一个投影头从而获得第一投影向量,将第二张经过视觉增强后的图像输入到第二条网络中获得第二投影向量,将数据集中的其余样本做为负样本对进行对比学习,并用对比损失函数进行度量;
步骤3、将第一投影向量输入到第一条网络的第二个投影头,再将第三张经过视觉增强后的图像输入到第三条网络中得到第三投影向量,使用均方误差进行度量;将第一张增强后的图像和第三行增强后的图像分别对应输入到第三条网络和第一条网络中,使用均方误差进行度量获得损失函数;
步骤4、将对比学习的损失函数和均方误差的损失函数相加进行最小化操作,并固定梯度更新网络参数,随后在下游任务上进行分类训练和测试。
进一步的,步骤1中,对每张图像进行不同的视图增强,是指在各种图像变化中进行两种不同的变换组合,使之获得三张同类但外表不同的图像。
进一步的,步骤2中,将第一张经过视觉增强后的图像
Figure 390042DEST_PATH_IMAGE005
,经过第一条网络中的编码
Figure 417259DEST_PATH_IMAGE006
获得向量
Figure DEST_PATH_IMAGE009
,再将向量
Figure 993231DEST_PATH_IMAGE009
输入到第一个投影头
Figure 990016DEST_PATH_IMAGE007
中,相当于将向量
Figure 98568DEST_PATH_IMAGE009
输入到不同的空间进行投影,然后获得第一投影向量
Figure DEST_PATH_IMAGE010
;将第二张经过视觉增强后的图像
Figure DEST_PATH_IMAGE011
输入到第二条网络中的编码器
Figure DEST_PATH_IMAGE012
中获得向量
Figure DEST_PATH_IMAGE013
,再将向量
Figure 87714DEST_PATH_IMAGE013
输入到第二条网络的投影头
Figure DEST_PATH_IMAGE014
中,获得第二投影向量
Figure DEST_PATH_IMAGE015
;第一条网络进行梯度更新而第二条网络进行动量更新,将第一投影向量
Figure 699898DEST_PATH_IMAGE010
和第二投影向量
Figure 945164DEST_PATH_IMAGE015
输入到InfoNCE对比损失函数中,得到第一部分的损失函数
Figure DEST_PATH_IMAGE016
进一步的,步骤3中,将第一投影向量
Figure DEST_PATH_IMAGE017
输入到第一条网络的第二个投影头
Figure DEST_PATH_IMAGE018
中获得向量
Figure DEST_PATH_IMAGE019
,然后将第三张经过视觉增强后的图像
Figure DEST_PATH_IMAGE020
输入到第三条网络中的编码器
Figure DEST_PATH_IMAGE021
中获得向量
Figure DEST_PATH_IMAGE022
,再将向量
Figure 739640DEST_PATH_IMAGE022
输入到投影头
Figure DEST_PATH_IMAGE023
中,获得第三投影向量
Figure DEST_PATH_IMAGE024
;计算向量
Figure 605814DEST_PATH_IMAGE019
与第三投影向量
Figure 414153DEST_PATH_IMAGE024
之间的均方误差
Figure DEST_PATH_IMAGE025
;另外,将图像
Figure DEST_PATH_IMAGE026
和图像
Figure 859880DEST_PATH_IMAGE020
分别对应输入到第三条网络和第一条网络中,计算对应输出向量之间的均方误差
Figure DEST_PATH_IMAGE027
;将两次得到的损失函数
Figure 765145DEST_PATH_IMAGE025
Figure 420732DEST_PATH_IMAGE027
进行求和得到第二部分的损失函数
Figure DEST_PATH_IMAGE028
,最终得到一个增加图像
Figure 281045DEST_PATH_IMAGE026
和图像
Figure 233660DEST_PATH_IMAGE020
相似度的网络结构。
进一步的,步骤4中,将第一部分的损失函数和第二部分的损失函数进行相加得到总的损失函数
Figure DEST_PATH_IMAGE029
,并对其进行最小化操作;固定第一条网络的参数,在训练集上进行训练,将最终得到的网络模型运用在测试集上对图像进行分类。
本发明所述的有益效果为:本发明所提出的一种面向无监督视觉表示的双动量对比学习方法,对每一个样本都进行三种视图增强;然后将三张增强之后的图像输入到三个不同的分支网络中,获得不同的表示;在经过第一条网络的编码器和投影头之后获得的表示,以及经过第二条网络获取的表示进行对比学习得到第一部分的损失函数;这一部分能够提升正样本之间的相似度,以及使正样本与负样本之间的相似度变差,但是第一部分的网络结构会出现误判的情况,即将正样本判别为负样本,从而会在某些时候使正样本与正样本之间的相似性变低。将第一张图像输入到第一条网络中,将第三张图像输入到第三条网络中,将最终获得的两个不同表示求欧氏距离,将两张图像调换位置输入到网络中,求得欧式距离,将两个欧式距离进行相加得到第二部分的损失函数;将两部分损失函数进行相加求最小化,这一部分的网络结构能够缓解上述的误判现象,主要是因为第三条网络提供了一个正样本,从而提升经过第一条网络的图像和经过第三条网络的图像之间的相似度。第一条网络采用梯度更新,其余网络采用动量更新,本发明有效地提升了图像识别的精度。
附图说明
图1为本发明所述方法的流程示意图;
图2为本发明模型的网络结构;
图3为本发明中参数
Figure DEST_PATH_IMAGE030
对识别精度的影响示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
并且,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明所涉及的方法名称解释如下:
InfoNCE:Information Noise Contrastive Estimation loss,信息噪声对比估计损失;
ConvNet: Convolutional Neural Networks ,卷积神经网络;
Word2vec:Word to Vector,单词转向量;
MoCo:Momentum Contrast,动量对比;
SimCLR:A Simple Framework for Contrastive Learning of VisualRepresentations,一个简单的视觉表征对比学习框架;
MoCo v2:Improved Baselines with Momentum Contrastive Learning,使用动量对比学习的改进版本;
SimSiam:Exploring Simple Siamese Representation Learning,探索简单的孪生表示学习;
BYOL:Bootstrap Your Own Latent A New Approach to Self-SupervisedLearning,引导自己潜在的一种自监督学习的新方法;
Resnet18:Residual Network,残差网络。
如图1所示,本发明所述的一种面向无监督视觉表示的双动量对比学习方法,包括如下步骤:
步骤1、对数据集中的每张图像进行三种不同的视图增强使之作为正样本对;
对每张图像进行不同的视图增强,实质在各种图像变化中进行两种不同的变换组合,如图像旋转、图像分片、色彩失真以及高斯模糊进行组合,使之获得三张同类但外表不同的图像;
步骤2中,两张图像分别输入到同一模型架构的不同分支网络,即首先将第一张图像输入到梯度更新的分支网络中,通过编码器获得向量,再将向量经过一个投影头从而映射到一个空间中,获得对应的表示。将第二张图像输入到第二条网络中,该网络更新方式为动量更新,同样经过编码器和一个投影头,最终获得一个向量在投影头空间中的表示。这两张图像是同一张图像经过不同视图增强获得的,所以它们属于同一类,经过不同的网络获得的表示也应该相似,所以在该步骤利用对比学习的方法,增大这两张图像的相似性,同时减弱其它类与该类图像的相似性。所述步骤2中的动量更新的网络,是由一个编码器和一个投影头组成,编码器为Resnet18,动量更新是根据梯度更新的网络参数按照比例进行更新;投影头是将编码器的全连接层换成两次线性映射:梯度更新在第一条网络中进行,由编码器
Figure DEST_PATH_IMAGE031
、投影头
Figure DEST_PATH_IMAGE032
以及投影头
Figure DEST_PATH_IMAGE033
组成,第一条网络是整个网络中参数更新的来源,其余两条网络中的参数均是由该网络中的参数按比例迁移过去的;
步骤3中,对步骤2中第一条网络获得的投影再经过一个投影头,从而获得另一个空间中的表示;将第三张图像输入到第三条网络中,并且同样经过一个编码器和一个投影头,最后获得一个表示。第三条网络同样是根据第一条网络进行动量更新,并且第三条网络的参数与第二条网络的参数一致。并将第三条网络获得的表示与第一条网络获得的最终表示求欧氏距离;同样,将第一张图像输入到第三条网络中,将第三张图像输入到第一条网络进行更新,从而增强第一张图像和第三张图像的相似度;
步骤4中,对经过对比学习获得的损失函数与经过均方误差求得的损失函数相加求得总的损失函数,并对其最小化操作;最终,固定第一条网络的编码器参数,然后将其迁移到下游的分类任务中进行模型训练,训练好的模型被用于对无标签测试样本进行识别。
本发明的技术方案包括以下几个部分:
(1)通过对比学习学习图像特征
在MoCo v2中,模型架构为两分支网络,第一条网络为梯度更新,包括一个编码器和投影头,第二条分支网络为动量更新,包括一个编码器和投影头,最终将获得的两个投影,进行对比学习中InfoNCE的最小化从而学习特征。
假设存在一个数据集X,并给定一个未知类别的测试样本Y,MoCo v2的训练步骤如下:
1、对数据集X中的每个样本进行两种不同的视图增强获得图像
Figure 722615DEST_PATH_IMAGE026
和图像
Figure DEST_PATH_IMAGE034
2、将
Figure 969983DEST_PATH_IMAGE026
放入梯度更新的网络中最终获得投影向量
Figure 432898DEST_PATH_IMAGE017
,将
Figure 206764DEST_PATH_IMAGE034
放入动量更新的网络中最终获得投影
Figure DEST_PATH_IMAGE035
,其中动量更新是根据梯度更新的网络参数的变化而相应改变:
Figure DEST_PATH_IMAGE036
Figure DEST_PATH_IMAGE037
为动量更新网络的参数,
Figure DEST_PATH_IMAGE038
为梯度更新网络中的参数。这里的参数m为动量更新的参数变化比例,m越大表示动量更新网络的参数变化幅度越小;
3、将获得的投影
Figure 728048DEST_PATH_IMAGE017
Figure 549297DEST_PATH_IMAGE035
进行对比学习:
Figure DEST_PATH_IMAGE039
参数
Figure DEST_PATH_IMAGE040
为温度超参数,
Figure 821054DEST_PATH_IMAGE017
Figure 261842DEST_PATH_IMAGE035
为正样本对,
Figure DEST_PATH_IMAGE041
为负样本,
Figure DEST_PATH_IMAGE042
为负样本的个数;
4、将动量更新的网络中编码器的参数固定,然后迁移至下游分类任务在测试集Y上进行训练和测试。
然而,MoCo v2虽然在无监督学习中获得了非常好的效果,但是它把与正样本有相同语义特征的样本划分为负样本,损失了一部分分类识别的性能。
(2)增大同类样本的相似性
BYOL比MoCo v2具有更好的学习能力,它通过增强同类样本之间的相似性,并用非对称结构来阻止模型的崩溃。假设存在一个数据集X,并给定一个未知类别的测试样本Y,BYOL的训练步骤如下:
1、对数据集X中的每个样本进行两种不同的视图增强获得图像
Figure 456873DEST_PATH_IMAGE026
和图像
Figure 104201DEST_PATH_IMAGE034
2、将
Figure 954925DEST_PATH_IMAGE026
放入梯度更新的网络中,获得最终投影
Figure 694868DEST_PATH_IMAGE019
,该网络由一个梯度更新编码器和两个投影头组成;将
Figure 141603DEST_PATH_IMAGE034
放入动量更新的网络中,获得最终的投影为
Figure 737311DEST_PATH_IMAGE035
,利用均方误差求的两个投影之间的距离:
Figure DEST_PATH_IMAGE043
Figure DEST_PATH_IMAGE044
Figure 598673DEST_PATH_IMAGE019
Figure DEST_PATH_IMAGE045
范式,
Figure DEST_PATH_IMAGE046
为投影
Figure 51193DEST_PATH_IMAGE019
和投影
Figure 132643DEST_PATH_IMAGE035
之间的余弦距离;
3、将
Figure 806428DEST_PATH_IMAGE026
输入动量更新的网络中,将
Figure 346367DEST_PATH_IMAGE034
输入到梯度更新的网络中,将最终获得的投影利用均方误差求距离:
Figure DEST_PATH_IMAGE047
4、固定动量更新网络中的编码器参数,然后迁移至下游任务,在测试集Y上进行训练和测试。
(3)基于双动量对比的三元组网络的无监督对比表示学习
在BYOL比MoCo v2的基础上,本发明所述方法的步骤为:
步骤1、将数据集中的每个样本进行三种不同的视图变换,并利用
Figure DEST_PATH_IMAGE048
范数进行归一化,从而获得三张语义特征相似的图像
Figure 851628DEST_PATH_IMAGE026
Figure 640166DEST_PATH_IMAGE034
Figure 465394DEST_PATH_IMAGE020
步骤2、将图像
Figure 828821DEST_PATH_IMAGE026
Figure 777189DEST_PATH_IMAGE034
分别输入同一模型架构的不同分支网络中:将
Figure 204638DEST_PATH_IMAGE026
输入到第一条网络的前半部分获得投影向量
Figure 673786DEST_PATH_IMAGE017
;将
Figure 367112DEST_PATH_IMAGE034
输入第二条网络的编码器
Figure DEST_PATH_IMAGE049
中获得向量
Figure DEST_PATH_IMAGE050
,再将向量
Figure 600154DEST_PATH_IMAGE050
输入投影头
Figure DEST_PATH_IMAGE051
中,获得向量
Figure 273768DEST_PATH_IMAGE035
;第一条网络为梯度更新的网络,第二条网络为动量更新网络,模型维持一个队列用来存储负样本
Figure DEST_PATH_IMAGE052
;将投影向量
Figure 886562DEST_PATH_IMAGE017
Figure 190928DEST_PATH_IMAGE035
进行InfoNCE损失函数进行度量,从而获得损失函数
Figure DEST_PATH_IMAGE053
Figure DEST_PATH_IMAGE054
步骤3、将投影
Figure 233776DEST_PATH_IMAGE017
再输入第一条网络的另一个投影头中,获得投影
Figure 310493DEST_PATH_IMAGE019
;然后将图像
Figure 519812DEST_PATH_IMAGE020
输入到第三条网络编码器
Figure 932961DEST_PATH_IMAGE021
中获得向量
Figure 841280DEST_PATH_IMAGE022
,再将向量
Figure 987266DEST_PATH_IMAGE022
输入到投影头
Figure 246832DEST_PATH_IMAGE023
中,获得向量
Figure 869563DEST_PATH_IMAGE024
;第三条网络的参数与动量更新的网络参数保持一致,将向量
Figure 214579DEST_PATH_IMAGE019
和向量
Figure 612591DEST_PATH_IMAGE024
之间用均方误差损失函数进行度量,从而获得损失函数
Figure 540978DEST_PATH_IMAGE025
Figure DEST_PATH_IMAGE055
同理,随后将图像
Figure 290391DEST_PATH_IMAGE005
与图像
Figure 240608DEST_PATH_IMAGE020
分别对应输入到对方网络中,获得损失函数记为
Figure 728397DEST_PATH_IMAGE027
,并将获得的对称损失相加,获得损失函数
Figure 170609DEST_PATH_IMAGE028
Figure DEST_PATH_IMAGE056
步骤4、将两部分的损失函数
Figure 464504DEST_PATH_IMAGE053
Figure 113672DEST_PATH_IMAGE028
进行相加得到总的损失函数
Figure DEST_PATH_IMAGE057
,将所有的损失函数相加求最小化:
Figure DEST_PATH_IMAGE058
其中参数
Figure DEST_PATH_IMAGE059
为两个损失函数之间的比例。同样,固定梯度更新网络的编码器的参数,迁移至下游任务,并最终在无标签的测试集Y上进行训练和测试,求得分类精度。
本发明将图像中的对比学习与实例级别的学习结合起来,通过将每幅图像当作一个类,再通过图像增强方式获得三张与之语义特征相似的同类图像,最后通过增加同一类图像的相似度,同时增加其它类与该类图像的不相似度,来学习图像的语义特征。
如表1所示,本文的实验是在三个数据集上做的,分别是CIFAR10、CIFAR100和TinyImageNet。这三个数据集的中的类别总数、图像尺寸、训练集和测试集中所含样本个数都如表1所示。
表1本发明所涉及的数据集情况说明
Figure DEST_PATH_IMAGE060
在表2、表3和表4中,是分别在CIFAR10、CIFAR100和TinyImageNet数据集中做出的实验结果,其中Top1 Acc是将图像精准识别的正确率,Top5 Acc是将图像识别为最相似的5种类别的识别率。
表2 本发明在CIFAR10上与不同算法的图像分类精度比较结果
Figure DEST_PATH_IMAGE061
表3 为本发明在CIFAR100上与不同算法的图像分类精度比较结果
Figure DEST_PATH_IMAGE062
表4 为本发明在TinyImageNet上与不同算法的图像分类精度比较结果
Figure DEST_PATH_IMAGE063
从表2-表4的结果可知,本方案所提的方法均获得了最好的识别精度。
图2是整个模型的结构,从图中可以看出,模型由三条网络组成,并被分成了两大部分,第一部分使用InfoNCE来进行训练,第二部分使用均方误差进行训练。图3是识别精度与α的关系,α的取值为1-8,从图3中可以看出当α=7时,识别精度最高。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内,不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

Claims (5)

1.一种面向无监督视觉表示的双动量对比学习方法,其特征在于,所述方法包括如下步骤:
步骤1、对数据集中的每张图像进行三种不同的视图增强使之作为正样本对;
步骤2、将第一张经过视觉增强后的图像输入到第一条网络中的编码器和第一个投影头从而获得第一投影向量,将第二张经过视觉增强后的图像输入到第二条网络中获得第二投影向量,将数据集中的其余样本做为负样本对进行对比学习,并用对比损失函数进行度量;
步骤3、将第一投影向量输入到第一条网络的第二个投影头,再将第三张经过视觉增强后的图像输入到第三条网络中得到第三投影向量,使用均方误差进行度量;将第一张增强后的图像和第三行增强后的图像分别对应输入到第三条网络和第一条网络中,使用均方误差进行度量获得损失函数;
步骤4、将对比学习的损失函数和均方误差的损失函数相加进行最小化操作,并固定梯度更新网络参数,随后在下游任务上进行分类训练和测试。
2.根据权利要求1所述的一种面向无监督视觉表示的双动量对比学习方法,其特征在于,步骤1中,对每张图像进行不同的视图增强,是指在各种图像变化中进行两种不同的变换组合,使之获得三张同类但外表不同的图像。
3.根据权利要求1所述的一种面向无监督视觉表示的双动量对比学习方法,其特征在于,步骤2中,将第一张经过视觉增强后的图像
Figure 11551DEST_PATH_IMAGE001
,经过第一条网络中的编码
Figure 29186DEST_PATH_IMAGE002
获得向量
Figure 851648DEST_PATH_IMAGE003
,再将向量
Figure 836791DEST_PATH_IMAGE003
输入到第一个投影头
Figure 770112DEST_PATH_IMAGE004
中,相当于将向量
Figure 907832DEST_PATH_IMAGE003
输入到不同的空间进行投影,然后获得第一投影向量
Figure 635616DEST_PATH_IMAGE005
;将第二张经过视觉增强后的图像
Figure 124367DEST_PATH_IMAGE006
输入到第二条网络中的编码器
Figure 330220DEST_PATH_IMAGE007
中获得向量
Figure 338758DEST_PATH_IMAGE008
,再将向量
Figure 237444DEST_PATH_IMAGE008
输入到第二条网络的投影头
Figure 947911DEST_PATH_IMAGE009
中,获得第二投影向量
Figure 957456DEST_PATH_IMAGE010
;第一条网络进行梯度更新而第二条网络进行动量更新,将第一投影向量
Figure 335347DEST_PATH_IMAGE005
和第二投影向量
Figure 388623DEST_PATH_IMAGE010
输入到InfoNCE对比损失函数中,得到第一部分的损失函数
Figure 851965DEST_PATH_IMAGE011
4.根据权利要求3所述的一种面向无监督视觉表示的双动量对比学习方法,其特征在于,步骤3中,将第一投影向量
Figure 399621DEST_PATH_IMAGE005
输入到第一条网络的第二个投影头
Figure 632019DEST_PATH_IMAGE012
中获得向量
Figure 872508DEST_PATH_IMAGE013
,然后将第三张经过视觉增强后的图像
Figure 557567DEST_PATH_IMAGE014
输入到第三条网络中的编码器
Figure 922296DEST_PATH_IMAGE015
中获得向量
Figure 743622DEST_PATH_IMAGE016
,再将向量
Figure 420591DEST_PATH_IMAGE016
输入到投影头
Figure 592946DEST_PATH_IMAGE017
中,获得第三投影向量
Figure 482404DEST_PATH_IMAGE018
;计算向量
Figure 689395DEST_PATH_IMAGE013
与第三投影向量
Figure 255374DEST_PATH_IMAGE018
之间的均方误差
Figure 915026DEST_PATH_IMAGE019
;另外,将图像
Figure 608175DEST_PATH_IMAGE001
和图像
Figure 669672DEST_PATH_IMAGE014
分别对应输入到第三条网络和第一条网络中,计算对应输出向量之间的均方误差
Figure 688444DEST_PATH_IMAGE020
;将两次得到的损失函数
Figure 320545DEST_PATH_IMAGE019
Figure 817385DEST_PATH_IMAGE020
进行求和得到第二部分的损失函数
Figure 733388DEST_PATH_IMAGE021
,最终得到一个增加图像
Figure 657482DEST_PATH_IMAGE001
和图像
Figure 291726DEST_PATH_IMAGE014
相似度的网络结构。
5.根据权利要求4所述的一种面向无监督视觉表示的双动量对比学习方法,其特征在于,步骤4中,将第一部分的损失函数和第二部分的损失函数进行相加得到总的损失函数
Figure 326678DEST_PATH_IMAGE022
,并对其进行最小化操作;固定第一条网络的参数,在训练集上进行训练,将最终得到的网络模型运用在测试集上对图像进行分类。
CN202210450283.4A 2022-04-27 2022-04-27 一种面向无监督视觉表示的双动量对比学习方法 Active CN114565808B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210450283.4A CN114565808B (zh) 2022-04-27 2022-04-27 一种面向无监督视觉表示的双动量对比学习方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210450283.4A CN114565808B (zh) 2022-04-27 2022-04-27 一种面向无监督视觉表示的双动量对比学习方法

Publications (2)

Publication Number Publication Date
CN114565808A CN114565808A (zh) 2022-05-31
CN114565808B true CN114565808B (zh) 2022-07-12

Family

ID=81720844

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210450283.4A Active CN114565808B (zh) 2022-04-27 2022-04-27 一种面向无监督视觉表示的双动量对比学习方法

Country Status (1)

Country Link
CN (1) CN114565808B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115577273B (zh) * 2022-08-12 2024-04-26 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于对比学习的单细胞数据聚类方法、装置、设备及介质
CN115240036B (zh) * 2022-09-22 2023-02-03 武汉珈鹰智能科技有限公司 一种裂缝图像识别网络的训练方法、应用方法及存储介质
CN116912623B (zh) * 2023-07-20 2024-04-05 东北大学 用于医学图像数据集的对比学习方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109858563A (zh) * 2019-02-22 2019-06-07 清华大学 基于变换识别的自监督表征学习方法及装置
CN113657561A (zh) * 2021-10-20 2021-11-16 之江实验室 一种基于多任务解耦学习的半监督夜间图像分类方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109858563A (zh) * 2019-02-22 2019-06-07 清华大学 基于变换识别的自监督表征学习方法及装置
CN113657561A (zh) * 2021-10-20 2021-11-16 之江实验室 一种基于多任务解耦学习的半监督夜间图像分类方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
基于反卷积特征提取的深度卷积神经网络学习;吕恩辉等;《控制与决策》;20180331;第33卷(第03期);全文 *
基于图学习正则判别非负矩阵分解的人脸识别;杜汉等;《计算机应用》;20211210;全文 *

Also Published As

Publication number Publication date
CN114565808A (zh) 2022-05-31

Similar Documents

Publication Publication Date Title
CN114565808B (zh) 一种面向无监督视觉表示的双动量对比学习方法
CN106547880B (zh) 一种融合地理区域知识的多维度地理场景识别方法
CN108986186A (zh) 文字转化视频的方法和系统
CN112307995B (zh) 一种基于特征解耦学习的半监督行人重识别方法
CN111444343A (zh) 基于知识表示的跨境民族文化文本分类方法
Shen et al. Vehicle detection in aerial images based on lightweight deep convolutional network and generative adversarial network
Oh et al. Space-time memory networks for video object segmentation with user guidance
Zhou et al. Learning with annotation of various degrees
CN111930981A (zh) 一种草图检索的数据处理方法
CN115934883A (zh) 一种基于语义增强的多特征融合的实体关系联合抽取方法
Guo et al. Deep multimodal sequence fusion by regularized expressive representation distillation
Wang et al. WaveNet with cross-attention for audiovisual speech recognition
CN114155477A (zh) 一种基于平均教师模型的半监督视频段落定位方法
CN111144469B (zh) 基于多维关联时序分类神经网络的端到端多序列文本识别方法
Wang et al. MT-TCCT: Multi-task learning for multimodal emotion recognition
WO2023168818A1 (zh) 视频和文本相似度确定方法、装置、电子设备、存储介质
CN116680407A (zh) 一种知识图谱的构建方法及装置
CN115952360A (zh) 基于用户和物品共性建模的域自适应跨域推荐方法及系统
CN110929013A (zh) 一种基于bottom-up attention和定位信息融合的图片问答实现方法
CN115905545A (zh) 一种基于变分自编码器的无监督读者书评情感分析方法
Wang et al. Relative Position Embedding Asymmetric Siamese Network for Offline Handwritten Mathematical Expression recognition
CN115422329A (zh) 一种基于知识驱动的多路筛选融合对话生成方法
CN114780725A (zh) 一种基于深度聚类的文本分类算法
Ren et al. Metric information matrix for maximum mean discrepancy for domain adaptation
Liang et al. AMEMD-FSL: fuse attention mechanism and earth mover’s distance metric network to deep learning for few-shot image recognition

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