一种基于对比学习的关系型深度聚类方法

文档序号:31357593发布日期:2022-08-31 13:57阅读:160来源:国知局
一种基于对比学习的关系型深度聚类方法

1.本发明涉及图像无监督聚类技术领域,具体而言涉及一种基于对比学习的关系型深度聚类方法。


背景技术:

2.近年来,在社交媒体平台、医学图像等领域产生了大量的视觉内容。人们每天可以很容易地收集数千张图像数据,其中大多数是没有标记的,这严重限制了它们在许多场景下的适用性。手动标记这些数据非常昂贵和耗时,比如著名的imagenet数据集,仅仅其标注工作就进行了三年的时间。超高的成本必然会给这些数据的共享和使用带来巨大的挑战,同时也导致了人们对于以无监督的方式有效地管理和使用如此大的数据量的需求。
3.聚类是一项基本的无监督学习方法,传统的聚类方法,如k-means、光谱聚类、非负矩阵分解聚类等,被广泛应用于各种任务。然而,这些方法只关注或过多的关注局部的、像素级的信息,忽略了图像更高层次的语义信息,这大大限制了它们的性能。
4.深度学习在近年来发展势头非常迅猛,在各种计算机视觉任务中都取得了显著的成果。虽然大多深度学习模型的优异效果都得益于昂贵且高质量的标签的监督,但其在特征提取和表示方面所展现的令人惊愕的潜力依旧不能被忽视,因此越来越多的研究者将深度学习应用到聚类工作中。dcn将k-means应用于由自动编码器产生的潜在表示,同时最小化重构损失和k-means聚类损失。而dec选择舍弃解码器,只使用编码器来计算潜在的表示,通过作者提出的聚类损失同时学习编码器和聚类中心。然而,这些基于自动编码器的聚类方法一方面会学习到过多的底层信息,包括背景或纹理等,使得它们只在mnist这样的简单数据集上有效,而无法在集群级别上计算样本之间适当的相似度。另一方面,特征提取和聚类分离会导致错误在交替训练中不断积累和传播,从而使得结果次优。
5.最近的研究将重点放在如何以端到端的方式学习表示和执行聚类。iic使用图像及其随机增强后的图像组成数据对来训练模型学习聚类结果一致性;pica通过最大化分区置信度来学习语义上最可信的聚类解决方案;cc创造性的提出“标签作为表示”的思想,显式地执行实例级和聚类级的对比学习。这类方法将图像数据看作实例,每个实例分别对应一个类,使用数据增强构建数据对,利用最大化互信息的方式从中学习实例表示一致性和聚类表示一致性。其聚类结果往往依赖于分离较多的负数据对和聚集较少的正数据对,将重点放在区别不同的实例,扩大类间方差上。尽管学习不同图像之间的区别有助于模型区分来自不同语义类的图片,但在大多数的方法中同属一类的不同图像被视为“负对”彼此远离,导致聚类嵌入的类内方差较大,违背了“良好的聚类嵌入应该具有较小的类内方差和较大的类间方差”的初衷。另外,类内方差变大会给模型带来不稳定性,造成误差的积累。


技术实现要素:

6.本发明针对现有技术中的不足,提供一种基于对比学习的关系型深度聚类方法,在样本级别和聚类级别的对比损失之外,增加一种新的损失函数来惩罚多个样本的结构关
系之间的差异,这种损失关注的是多个输出数据之间的结构关系一致性而不是单个数据对本身,将其与双重对比损失结合,可以获得更多的正向鉴别特征,减小聚类嵌入的类内方差,从而获得更好的聚类结果。
7.为实现上述目的,本发明采用以下技术方案:
8.一种基于对比学习的关系型深度聚类方法,所述关系型深度聚类方法包括以下步骤:
9.s1,对原始图像数据xi进行增强处理,得到相应的增强图像数据xi′
=t(xi);t()为采用的数据增强函数;
10.s2,将原始图像数据xi和增强图像数据xi′
导入神经网络,将输入图像数据经过层次化的非线性映射,分别得到输出原始图像数据xi和增强图像数据xi′
的分配概率矩阵;其中,分配概率矩阵的行表示图像的特征表示;分配概率矩阵的列作为数据分布情况,代表不同语义类的聚类表示;
11.s3,根据原始图像数据xi和增强图像数据xi′
的分配概率矩阵计算得到原始图像数据xi和增强图像数据xi′
的结构关系矩阵;
12.s4,构建总损失函数α为权重参数,为实例表示损失函数,用于在样本级别,通过最小化原始图像与增强图像之间的相似度,表征原始图像及其增强图像的特征表示的一致性;为聚类表示损失函数,用于在聚类级别,通过最小化原始类与增强类之间的相似度,表征原始图像及其增强图像的分配的一致性;为关系表示损失函数,用于在关系级别,通过最小化原始结构关系与增强结构关系之间的相似度,表征原始图像及其增强图像的关系表示的一致性。
13.为优化上述技术方案,采取的具体措施还包括:
14.进一步地,步骤s2中,数据增强函数包括随机裁剪、水平翻转、色彩抖动和灰度化四种类型数据增强函数中的多种或者全部。
15.进一步地,步骤s2中,步骤s2中,采用resnet34作为骨干网络,对输入的原始图像数据xi和增强图像数据xi′
进行层次化的非线性映射处理,输出分配概率矩阵作为相应图像的特征矩阵。
16.进一步地,步骤s3中,采用空间中的欧氏距离、角度作为原始图像数据xi和增强图像数据xi′
之间的结构关系表示。
17.进一步地,步骤s4中,步骤s4中,实例表示损失函数的构建过程包括以下子步骤:
18.a41,给定一批大小为n的原始样本集x={x1,x2,...,xn},其对应的n个增强样本集为x

={x1′
,x2′
,...,xn′
};
19.a42,对于任意原始图像样本xi,xi与n个增强图像样本共组成n个数据对;将该原始图像样本与其对应的增强图像样本组成的数据对(xi,xi′
)视为正对,将该原始图像样本与其他n-1个增强图像样本组成的数据对(xi,xj′
)视为负对;i,j=1,2,...,n,j≠i;
20.a43,采用非线性mlpg(
·
)将原始样本集x和增强样本集x

映射到概率分配空间中,得到的概率分配被视为实例的特征表示u=g(f
θ
(x)),u

=g(f
θ
(x

));
21.a44,根据下述公式计算得到余弦相似度,将余弦相似度作为评价正样本对的分配概率是否保持一致性的指标:
[0022][0023]
其中,||
·
||2代表l2归一化;
[0024]
a45,根据infonce,实例表示损失函数定义为:
[0025][0026]
其中,τ>0是温度参数,ui是原始图像xi的特征表示,ui′
是增强图像xi′
的特征表示,uj′
是增强图像xj′
的特征表示;是数学期望。
[0027]
进一步地,步骤s4中,步骤s4中,聚类表示损失函数的构建过程包括以下子步骤:
[0028]
b41,假设原始图像及其增强图像对应的输出概率分配矩阵分别为v=[v1,v2,...,vc]n×c和v

=[v1′
,v2′
,...,vc′
]n×c;v和v

的列空间vk与vk′
用于说明哪些图像被分配给聚类k,v和v

的第k个列被视为第k个聚类的表示;
[0029]
b42,将被归为同一类的聚类视为正类对,其他聚类视为负类对;
[0030]
b43,使用余弦距离来衡量聚类表示对之间的相似性:
[0031][0032]
b44,对于温度参数τ,聚类表示损失函数的损失定义为:
[0033][0034]
式中,τ>0,k,m=1,2,...,c,k≠m。
[0035]
进一步地,步骤s4中,步骤s4中,关系表示损失函数的构建过程包括以下子步骤:
[0036]
c41,使用空间中的欧氏距离作为原始图像xi和原始图像xj之间的关系表示
[0037][0038]
其中,μ是距离的标准化因子,ui是原始图像xi的特征表示,uj是原始图像xj的特征表示;
[0039]
c42,将μ设置为每个batch的数据对集合b中所有数据对之间的平均距离,采用下述公式计算μ的取值:
[0040]
[0041]
式中,|b|是数据对集合b中的数据对总数;
[0042]
c43,关系表示损失函数表示为:
[0043][0044]
其中,l
σ
为l2距离,是增强图像xi′
和增强图像xj′
之间的关系表示。
[0045]
本发明的有益效果是:
[0046]
本发明的基于对比学习的关系型深度聚类方法,数据样本之间的距离可以视为他们之间结构关系(下面简称为关系),由此可以分别得到原始样本和增强样本之间的结构关系;通过约束原始样本关系与增强样本关系之间的差异,提高模型对于同一批样本的输出相似的关系矩阵的能力,可以提高模型的鲁棒性。另外,将关系表示损失给模型来带了更多的正数据对信息和约束,将其与双重对比损失结合,可以获得更多的正向鉴别特征,减小聚类嵌入的类内方差,从而获得更好的聚类结果。
附图说明
[0047]
图1是本发明实施例的基于对比学习的关系型深度聚类方法流程图。
[0048]
图2是样本对、类别对及结构关系对之间的差别示意图,图2(a)是样本对之间的差别示意图,图2(b)是类别对之间的差别示意图,图2(c)是结构关系对之间的差别示意图。
[0049]
图3是本发明实施例的关系结构一致的对比学习框架图。
具体实施方式
[0050]
现在结合附图对本发明作进一步详细的说明。
[0051]
需要注意的是,发明中所引用的如“上”、“下”、“左”、“右”、“前”、“后”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。
[0052]
图1是本发明实施例的基于对比学习的关系型深度聚类方法流程图。参见图1,该关系型深度聚类方法包括以下步骤:
[0053]
s1,对原始图像数据xi进行增强处理,得到相应的增强图像数据xi′
=t(xi);t()为采用的数据增强函数。
[0054]
s2,将原始图像数据xi和增强图像数据xi′
导入神经网络,将输入图像数据经过层次化的非线性映射,分别得到输出原始图像数据xi和增强图像数据xi′
的分配概率矩阵;其中,分配概率矩阵的行表示图像的特征表示;分配概率矩阵的列作为数据分布情况,代表不同语义类的聚类表示。
[0055]
s3,根据原始图像数据xi和增强图像数据xi′
的分配概率矩阵计算得到原始图像数据xi和增强图像数据xi′
的结构关系矩阵。
[0056]
s4,构建总损失函数α为权重参数,为实例表示损失函数,用于在样本级别,通过最小化原始图像与增强图像之间的相似度,表征原始图像及其增强图像的特征表示的一致性;为聚类表示损失函数,用于在聚类级别,通过最小化原始
类与增强类之间的相似度,表征原始图像及其增强图像的分配的一致性;为关系表示损失函数,用于在关系级别,通过最小化原始结构关系与增强结构关系之间的相似度,表征原始图像及其增强图像的关系表示的一致性。
[0057]
对比学习的目标在于最大化正对之间的相似性而最小化负对之间的相似性。其中一项非常重要的任务在于如何设计正负数据对来满足聚类任务的要求,即相似的样本相互靠近而不同的样本相互远离。
[0058]
针对对比学习更加关注区分不同实例,而忽略类内表现的问题,提出一种基于对比学习的关系型深度聚类方法,同时利用实例特征表示、类别表示和关系表示进行聚类,图2是样本对、类别对及结构关系对之间的差别示意图。
[0059]
参见图3,受到simclr的启发,使用数据增强来构建数据对作为输入。simclr方法全面展示了不同的增强策略对于下游任务性能的影响,本发明选择随机裁剪、水平翻转、色彩抖动和灰度化这四种类型的数据增强方法。具体来说,给定一个原始数据xi,在数据增强方法t的作用下,得到其对应的增强数据xi′
=t(xi)。神经网络作为深度聚类模型的骨干部分,主要作用是将输入图像数据经过层次化的非线性映射得到新的低维特征表示。为方便与其他已有的工作进行比较,采用resnet34作为骨干网络,神经网络输出图像的分配概率矩阵被视为特征矩阵。自然地,将分配概率矩阵的行(即每张图片的分配概率向量)被看作是图像的特征表示,并且根据“标签作为表示”的思想,矩阵的列作为数据分布情况,被看作代表不同语义类的聚类表示。而原始图像和增强图像的结构关系矩阵可以通过相应的概率分配矩阵获得。
[0060]
图3中线框部分展示了所使用到的三种损失。在样本级别,最小化原始图像与增强图像之间的相似度,保证原始图像及其增强的特征表示一致性;在聚类级别,最小化原始类与增强类之间的相似度,保证原始图像及其增强的分配一致性(即原始类与增强类之间的聚类表示一致性);在关系级别,最小化原始结构关系与增强结构关系之间的相似度,保证原始图像及其增强的关系表示一致性。三种损失共同训练,有助于形成良好的、更鲁棒的聚类。下面将详细介绍模型中涉及的几种损失函数。
[0061]
(1)实例表示损失
[0062]
基于对比学习的思想,我们将原始图像及其增强视为正对,而将原始图像与其他图像的增强视为负对。形式化来说,给定一批大小为n的原始样本x={x1,x2,...,xn},其对应的n个增强样本为x

={x1′
,x2′
,...,xn′
},那么对于任意样本xi,xi与n个增强样本总共可以组成n个数据对。本方法将该样本与其对应的增强样本组成的数据对(xi,xi′
)视为正对,将该样本与其他n-1个增强样本组成的数据对(xi,xj′
)视为负对。
[0063]
为了减少对比学习所带来的信息损失,没有直接使用神经网络f
θ
(
·
)输出的特征,而是使用非线性mlp g(
·
)将其映射到概率分配空间中,得到的概率分配被视为实例的特征表示u=g(f
θ
(x)),u

=g(f
θ
(x

))。原始样本和增强样本本质是同一实例,应当具有相同的类分配概率。为方便起见,选择余弦相似度作为评价正样本对的分配概率是否保持一致性的指标,公式定义为:
[0064]
[0065]
其中,||
·
||2代表l2归一化。
[0066]
根据infonce,实例级别的损失就可以定义为:
[0067][0068]
其中,τ>0是温度参数。
[0069]
(2)聚类表示损失
[0070]
当将某一数据样本投影到维数等于聚类数c的空间时,其特征的第j个元素可以解释为该样本属于第j个类别的概率,特征向量相应地表示其软标签。形式上,与样本级别类似,假设原始图像及其增强图像对应的输出概率分配矩阵分别为v=[v1,v2,...,vc]n×c和v

=[v1′
,v2′
,...,vc′
]n×c。理想情况下的软标签往往是独热编码,那么v和v

的列空间即vk与vk′
可以说明哪些图像被分配给聚类k,也就是说v和v

的第k个列可以看作是第k个聚类的表示。因此,被归为同一类的聚类可以被看作是正类对,比如,vk′
实际上是vk的增强,应当是同属一类的,可以将其视为正类对,其聚类表示应当是一致的。同样,这里使用余弦距离来衡量聚类表示对之间的相似性,即:
[0071][0072]
相应地,对于温度参数τ,聚类级别的损失就可以定义为:
[0073][0074]
(3)关系表示损失
[0075]
所说的关系是指不同样本之间的结构关系。当高维的数据投影到不同低维空间当中时,样本之间的结构关系应该保持一致。结构关系的表示方法可以有多种,如距离、角度等等。为方便起见,使用空间中的欧氏距离作为两图像之间的关系表示:
[0076][0077]
其中,μ是距离的标准化因子。
[0078]
为了关注其他样本对之间的相对距离,将μ设置为每个batch的数据对集合b中所有数据对之间的平均距离,采用下述公式计算μ的取值:
[0079][0080]
不同增强下的同一批图像,其数据点的距离结构关系应该是一致的。基于此,设计新的损失函数:
[0081][0082]
其中,l
σ
为l2距离。
[0083]
那么,综合以上三种损失的总损失函数可以写成:
[0084]
[0085]
其中,α为权重参数。
[0086]
实例
[0087]
本实例使用pytorch1.4来完成所有的实验,并用adam进行优化,设置学习速率为固定值0.003。对于模型中涉及到的超参数,将其设置为固定值,即温度参数τ=0.5,权重参数α=0.004。在实验中,每个批次的样本被重复3次,并使用相同的数据增强方式。实验使用nvidia titan rtx 24g将模型从头开始训练200个epoch。
[0088]
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1