1.本发明属于图像聚类领域,涉及基于二维数据嵌入与邻接拓扑图的图像聚类方法及设备。
背景技术:2.聚类在机器学习和数据挖掘中起着至关重要的作用,它的目标是将数据点分成若干个不相交的组,相似的数据点被分配到同一个组里。由于聚类的重要作用,许多聚类方法被陆续提出,例如k均值聚类、层次聚类、谱聚类、最大间隔聚类和多视图聚类等等。由于k均值聚类算法具有高效并且简单的特点,因此k均值聚类是使用最广的聚类算法。当前存在的大多数聚类算法只能从低维样本中获得较好的性能,为了解决这个问题。研究者们提出了一种方法,该方法可以从高维数据中学习低维表示,然后利用学习到的低维特征进行聚类。
3.主要成分分析(pca)是进行数据降维常用的方法,而经典的k均值聚类能够在低维表示上执行聚类。一些研究者使用线性判别分析(lda)把原始数据投影到低维空间,由于编码了判别信息,把k均值和lda整合成为一个框架能够获得更好的性能。近年来,研究者提出了一个同时学习图像的2d嵌入特征以及在嵌入特征使用k均值聚类的框架,该方案虽然高效并能达到不错的效果,但这种方案的初始化仍然存在问题,因为k均值聚类算法如果没有好的初始化很可能得到很差的结果。基于拓扑图的方法是另外一个重要的方向,一些基于数据间关系的图表示已经展示出很好的性能,包括ratio cut、normalize cut和谱聚类。基于图的聚类算法的性能依赖于构建一个高质量的相似图去准确的捕捉数据的内在关系。为了提升聚类结果的性能,基于图的聚类方法常常需要在相似图的基础上进行预处理。研究者们提出通过识别显著特征在相似图中编码局部邻接关系以有效的解决这一问题,为了构建相似图,将数据样本对应于相同子空间的稀疏表示。稀疏子空间聚类由elhamifar和vidal提出,探索数据样本在相同子空间的稀疏表示。尽管如此,上述方法不能保证获得理想的聚类结构的图。
4.尽管上述聚类方法已经获得了很好的性能,它们在直接用于图像聚类时仍然存在着一些不足之处。首先,这些方法的大多数将图像矩阵转换成一个向量,这样处理忽略了像素间的空间关系并且增加了计算量。其次,上述基于图的聚类方法一般会包括两个阶段,数据嵌入和子序列聚类,这样的过程导致了学习图像数据的低维表示是构造结构图的最优方法。
技术实现要素:5.本发明的目的在于针对上述现有技术中二维图像数据聚类效率以及质量不高的问题,提供一种基于二维数据嵌入与邻接拓扑图的图像聚类方法及设备,高效、准确的完成图像聚类。
6.为了实现上述目的,本发明有如下的技术方案:
7.一种基于二维数据嵌入与邻接拓扑图的图像聚类方法,包括以下步骤:同时学习
一组图像数据的二维嵌入表示和结构化的相似图,在图像数据的二维嵌入表示上学习带有自适应最优邻域分配的相似图,通过在学习到的图的拉普拉斯矩阵施加秩约束来使得相似图的连通块数量等于期望的聚类个数,从而完成二维图像数据聚类的任务。
8.作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,通过在图像数据集x上对数据进行双边投影变换获得图像数据的二维嵌入表示。
9.作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,对数据进行双边投影变换的计算表达式如下:
[0010][0011]
式中,u和v分别是两个相乘投影矩阵,x
i
为第i个训练样本,i={1,2,
…
,n},n为样本总数,代表所有训练样本图像的均值。
[0012]
作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,最优邻域分配以概率分配邻接点,构建相似图,使用欧式距离作为距离度量对象。
[0013]
作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,判定概率大小是否合理的计算表达式如下:
[0014][0015]
式中,的距离越小,概率就越大;第二项是正则化项,α是正则化参数,x
i
为第i个训练样本x
i
的向量表示形式,i={1,2,
…
,n},x
j
为第j个训练样本x
j
的向量表示形式,j={1,2,
…
,n},n为样本总数,s为x的相似矩阵,为矩阵s的f范数,s
ij
为矩阵s的第i行、第j列的值,s
it
为矩阵s的第i个行向量的转置。
[0016]
作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,以2d嵌入特征的方式计算相似图,目标函数如下:
[0017][0018]
s.t.0≤s
ij
≤1,s
it
1=1,rank(l
s
)=n
–
c
[0019]
式中,l
s
为矩阵s的拉普拉斯矩阵,n等于样本总数n,c为聚类簇数。
[0020]
总体优化目标函数如下:
[0021][0022]
式中,λ是平衡上式中第一项与第二项的参数,为了满足秩约束rank(l
s
)=n
‑
c,拉普拉斯矩阵有c个零特征值,并且最小的c个特征值之和等于0;
[0023]
根据ky定理得:
[0024][0025]
式中,β为超参数,tr(|)表示为矩阵的秩,g为l
s
的前c个最小特征值对应的特征向量,g
t
为g的转置。
[0026]
作为本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法的一种优选方案,对
每个变量求出局部最优解,进行迭代优化,完成二维图像数据聚类的任务。
[0027]
本发明还提出一种基于二维数据嵌入与邻接拓扑图的图像聚类系统,包括:
[0028]
二维嵌入表示及相似图学习模块,用于同时学习一组图像数据的二维嵌入表示和结构化的相似图;
[0029]
联合优化框架建立模块,用于在图像数据的二维嵌入表示上学习带有自适应最优邻域分配的相似图;
[0030]
图像聚类模块,用于在联合优化框架建立模块学习到的图的拉普拉斯矩阵施加秩约束来使得相似图的连通块数量等于期望的聚类个数,从而完成二维图像数据聚类的任务。
[0031]
本发明还提出一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述的处理器执行所述的计算机程序时实现所述基于二维数据嵌入与邻接拓扑图的图像聚类方法的步骤。
[0032]
本发明还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述的计算机程序被处理器执行时实现所述基于二维数据嵌入与邻接拓扑图的图像聚类方法的步骤。
[0033]
相较于现有技术,本发明有如下的有益效果:基于联合聚类学习框架,同时学习一组图像数据的二维嵌入表示和结构化的相似图。在图像数据二维嵌入表示上学习带有自适应最优邻域分配的相似图。通过在学习到的图的拉普拉斯矩阵施加秩约束来使得相似图的连通块的数量等于期望的聚类个数。本发明采用基于二维数据嵌入特征模型改进基于一维向量表示的模型,充分利用了图像像素的空间关系,提升了图像数据的聚类性能。本发明从嵌入的二维数据表示中自适应学习图像的邻接拓扑图,通过挖掘图像的内在关系而构建出高质量的相似拓扑图。本发明联合优化学习图像的二维数据表示和自适应学习图像邻接拓扑图,避免了单独学习二者可能带来的次优解问题,最终提升了图像聚类性能。
附图说明
[0034]
图1本发明图像聚类方法针对coil20数据集的收敛情况曲线图;
[0035]
图2本发明图像聚类方法针对pointing04数据集的收敛情况曲线图;
[0036]
图3针对coil20数据集本发明参数λ和k对准确率(acc)的影响情况柱状图;
[0037]
图4针对pointing04数据集本发明参数λ和k对准确率(acc)的影响情况柱状图。
具体实施方式
[0038]
下面结合附图实施例对本发明做进一步的详细说明。
[0039]
本发明基于二维数据嵌入与邻接拓扑图的图像聚类方法,基于新型的联合聚类学习框架,同时学习一组图像数据的二维嵌入表示和结构化的相似图。该图像聚类方法是在图像数据二维嵌入表示上学习带有自适应最优邻域分配的相似图。通过在学习到的图的拉普拉斯矩阵施加秩约束来使得相似图的连通块的数量等于期望的聚类个数。
[0040]
给定一个图像数据集x
i
∈r
w
×
h
,i={1,2,
…
,n},x
i
是第i个图像,w和h是图像的宽和高,n是数据集中图像的总数量,图像聚类的目标是把x分成c个簇。
[0041]
制定目标包括:嵌入表示学习和结构图学习。嵌入表示学习学习一个鲁棒的中间
表示,它能够抵抗噪声并且过滤离群点。然而结构图学习自动的构建一个带有理想的结构的相似图。
[0042]
二维主要成分分析(two
‑
dimensional principal component analysis,简称2dpca),是经典的pca的变体。2dpca采用基于二维矩阵表示的模型而不是简单的基于一维的向量。2dpca能够获取较好的性能因为它能够很好的利用图像携带的空间关系。给定一个图像数据x,本发明在数据集x上执行基于2dpca的双边投影并且获得原始图像的二维嵌入表示。从形式上讲,本发明有如下数学表达式:
[0043][0044]
式中,u和v分别是两个相乘投影矩阵,x
i
为第i个训练样本,i={1,2,
…
,n},n为样本总数,代表所有训练样本图像的均值。
[0045]
在本发明中,本发明提出了从二维数据嵌入特征中,通过以概率分配合适的邻接点,构建相似图。本发明使用的是欧式距离作为距离度量。通过求解以下问题来决定概率的大小:
[0046][0047]
式中,的距离越小,概率就越大,第二项是正则化项,α是正则化参数,x
i
为第i个训练样本x
i
的向量表示形式,i={1,2,
…
,n},x
j
为第j个训练样本x
j
的向量表示形式,j={1,2,
…
,n},n为样本总数,s为x的相似矩阵,为矩阵s的f范数,s
ij
为矩阵s的第i行、第j列的值,s
it
为矩阵s的第i个行向量的转置。
[0048]
如果聚类结果有c个簇,相似矩阵应该有c个连通分量,因此可以推断拉普拉斯矩阵特征值的0的重数c等于图的相似矩阵s的连通分量的个数。由以上结论可知聚类的个数取决于拉普拉斯矩阵的秩。如果拉普拉斯矩阵的秩等于n
‑
c,聚类结果将会有c个簇。
[0049]
因此,本发明对原始的目标函数施加秩约束。
[0050]
本发明以2d嵌入特征的方式计算相似图,因此目标函数可以写成
[0051][0052]
式中,l
s
为矩阵s的拉普拉斯矩阵,n等于样本总数n,c为聚类簇数。
[0053]
本发明联合的考虑等式(2)和等式(3)和建立总体目标函数有
[0054][0055]
上式中λ是平衡第一项和第二项的参数,为了满足秩约束rank(l
s
)=n
‑
c,拉普拉斯矩阵应该有c个零特征值并且最小的c个特征值之和应该等于0.另外,根据ky定理,可以得出:
[0056]
[0057]
对于提出的损失函数(公式5),本发明通过迭代优化的方法,对每个变量求出局部最优解,进而进行迭代优化,能够高效地对(5)式进行求解,高效完成二维图像数据聚类的任务。
[0058]
表1和表2是本发明图像聚类方法在公开数据集上的部分对比实验结果。其中表1是聚类准确率(acc)对比实验结果,表2是聚类互信息(nmi)对比实验结果。在表1和表2中,第一行是本发明聚类方法在各个数据集上的聚类性能,第二行是k均值聚类方法,第三行使用双边投影b2dpac降维后,再使用k均值聚类,第四行为谱聚类(sc)。
[0059]
表1
[0060]
methodcoil20pointing04ours90.3478.92kmeans63.2152.21b2dpca+kmeans67.5655.13sc65.4858.06
[0061]
表2
[0062]
methodcoil20pointing04ours94.6385.78kmeans79.2659.62b2dpca+kmeans78.2663.02sc76.8761.96
[0063]
实施例
[0064]
基于二维数据嵌入与邻接拓扑图的图像聚类方法包括以下步骤:
[0065]
步骤一:输入聚类图像x并将图像转化为灰度图,同时重置为统一的尺寸,例如32
×
32大小。将调整后的图像像素值归一化为0
‑
1之间。
[0066]
步骤二:利用公式l=d
‑
w初始化计算x的拉普拉斯矩阵l,其中,d为x的度数矩阵,w为x的邻接矩阵。
[0067]
步骤三:初始化左投影矩阵u和右投影矩阵v为单位矩阵。
[0068]
步骤四:通过特征分解l求解变量g。
[0069]
步骤五:利用l和v通过特征分解的方法求解左投影矩阵u,利用l和计算得到u通过特征分解的方法求解由投影矩阵v。
[0070]
步骤六:根据求得的u和v对图像x降维,降维后的特征表示为x'。
[0071]
步骤七:利用g求解x'相似矩阵s,然后利用公式l=d
‑
s计算s拉普拉斯矩阵l。
[0072]
步骤八:循环步骤三到步骤七,直至u、v、s收敛。
[0073]
步骤九:计算s中连通分量的个数即为聚类的簇数c,并对每张图像标号为其所属的连通分量,得到聚类标签。
[0074]
步骤十:利用匈牙利算法求解预测标签和真实标签的最优匹配,从而计算聚类的准确率、互信息等。
[0075]
本发明还提出一种基于二维数据嵌入与邻接拓扑图的图像聚类系统,包括:
[0076]
二维嵌入表示及相似图学习模块,用于同时学习一组图像数据的二维嵌入表示和结构化的相似图;
[0077]
联合优化框架建立模块,用于在图像数据的二维嵌入表示上学习带有自适应最优邻域分配的相似图;
[0078]
图像聚类模块,用于在联合优化框架建立模块学习到的图的拉普拉斯矩阵施加秩约束来使得相似图的连通块数量等于期望的聚类个数,从而完成二维图像数据聚类的任务。
[0079]
一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述的处理器执行所述的计算机程序时实现所述基于二维数据嵌入与邻接拓扑图的图像聚类方法的步骤。
[0080]
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述的计算机程序被处理器执行时实现所述基于二维数据嵌入与邻接拓扑图的图像聚类方法的步骤。
[0081]
所述的计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明图像聚类的方法。
[0082]
所述终端可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备,也可以是处理器、存储器。处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field
‑
programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。存储器可用于存储计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现图像聚类系统的各种功能。
[0083]
以上所述的仅仅是本发明的较佳实施例,并不用以对本发明的技术方案进行任何限制,本领域技术人员应当理解的是,在不脱离本发明精神和原则的前提下,该技术方案还可以进行若干简单的修改和替换,这些修改和替换也均属于权利要求书所涵盖的保护范围之内。