Incomplete multiview clustering based on view mapping and cyclic consistency generation
-
摘要: 传统聚类假设每个视图都完整,没有考虑数据损坏、设备故障导致的不完整视图情况。针对此问题,已有方法大多基于核和非负矩阵分解提出,没有明确补偿每个视图丢失的数据,学习的潜在表示也没有考虑聚类任务。为此设计视图映射和循环一致性生成的不完整多视图聚类(incomplete multi-view clustering generated by view mapping and cyclic consistency, MG_IMC),利用已有数据信息得到各视图的风格编码和共享潜在表示,并通过生成对抗网络生成缺失的数据,在完整数据集上利用加权自适应融合捕获更好的通用结构,并在深度嵌入聚类层完成聚类任务。使用KL散度(Kullback-Leibler divergence)联合训练模型,学习的公共表示有助于生成缺失的数据,而补全的数据进一步生成聚类友好的公共表示。实验表明,相比已有方法,该算法得到更好的聚类效果。Abstract: Traditional clustering assumes that each view is complete without accounting for incomplete views caused by data corruption, device failures, and other factors. To address this issue, most existing methods rely on kernel and nonnegative matrix factorization without explicitly compensating for data loss in each view, and the potential representation of learning does not fully account for clustering tasks. An incomplete multiview clustering method (MG-IMC) with view mapping and cyclic consistency generation is designed to address the aforementioned limitation. This method leverages existing data information to generate missing data for each view through a single generative adversarial network, using shared potential representations provided by other views. Weighted adaptive fusion is applied to capture enhanced generic structures on the generated complete dataset, followed by clustering based on KL-divergence loss. The joint training of encoding common representations and generating missing data allows the model to recover missing data while simultaneously generating clustering-friendly common representations. Experiment results demonstrate that this algorithm outperforms existing methods in clustering performance.
-
多视图聚类(multi-view clustering, MVC)[1-3]是一种针对未标记多视图数据的有效数据分析工具, 在计算机视觉、生物信息学、自然语言处理等领域受到了广泛关注[4-5]。其侧重于寻找多个视图的底层信息,利用视图之间的互补性和一致性,从而获得良好的特征学习和聚类结果。大多数现有工作假设每个视图都完整,然而在实际应用中,由于数据收集和传输的复杂性,获取完整的多视图数据是相对困难的。在一些场景下,样本会丢失部分视图特征,这就产生了不完整多视图数据[6-8]。当某些视图缺失时,将严重破坏多视图的自然对齐特性,不利于互补信息和一致信息的挖掘,因此传统的多视图聚类算法无法直接处理不完整多视图数据,从而开始了对不完整多视图聚类(incomplete multi-view clustering, IMC)[9-12]算法的研究。
现有的大部分IMC算法主要分为4类:1)基于核学习的方法,试图从不完全的核数据中获得一致表示,只能应用于基于内核的多视图聚类;2)基于矩阵分解的方法,寻求将多视图数据分解为所有视图共享的一致表示,需要大量的逆运算来进行矩阵分解,导致较高的时间复杂度;3)基于图学习的方法,试图从不完整的多视图数据中获得一致图,需要合理选择相似度度量方式和阈值;4)基于深度学习的方法,对已知数据进行深度自编码,以获得潜在的高级表示,然后采用连接或求和等操作实现各视图的特征融合。已有的这些方法仍然存在一些局限性:1)缺少视图恢复,没有明确补偿每个视图丢失的数据,忽略了缺失视图的隐藏信息;2)没有明确地指导聚类任务的表示学习,难以保证模型学习到的特征是有利于聚类的;3)采用浅层模型,不能很好地处理不同观点之间的依赖性和差异性[13]。
近几年,受生成对抗网络(generative adversarial networks, GAN)[14-16]的启发,出现了一些用于缺失视图恢复的IMC算法,如级联残差的缺失模态插补自动编码器[17]、生成对抗性缺失视图插补网络[18]。这些方法要么只能处理2个视图的数据,要么需要为每个视图训练专用的生成器和鉴别器。当处理具有多个视图的数据时,可能导致模型过于复杂,难以训练,且每个生成模型是割裂的,未考虑不同视图对应生成器生成的数据之间的联系。为此,本文提出了基于视图映射和循环一致性生成的不完整多视图聚类模型(incomplete multi-view clustering generated by view mapping and cyclic consistency, MG_IMC),该模型由多视图自编码器、聚类层、视图映射网络、生成器、鉴别器5部分组成。MG_IMC首先使用多视图自编码器将每个视图的数据编码到同一潜在空间,即视图共享潜在表示;同时,利用视图映射网络为每个视图生成风格编码;然后,利用其他视图的共享潜在表示和缺失视图的风格编码通过单个生成器生成缺失视图的数据;进而使用鉴别器来为每个视图区分真实数据和生成的数据;最后在完整的数据集上利用加权自适应融合方式整合来自不同视图的互补信息,生成多个视图的公共表示,进而通过深度嵌入聚类层进行聚类。本文的主要贡献如下:
1)提出了一种新的基于GAN的IMC框架,该框架利用单个循环一致性生成网络明确补偿了各个视图丢失的数据,同时采用KL散度(Kullback-Leibler divergence)损失进行联合训练,生成有利于聚类的公共表示。
2)引入了视图映射网络,用于将随机高斯噪声转换为视图的随机风格编码,或从每个视图存在的数据中提取风格特征,每个视图的风格编码代表不同视图的风格特征。该框架利用视图的风格编码,使得只使用单个生成器就可以生成每个视图缺失的数据。
3)使用单个鉴别器来鉴别不同视图的真假数据,同时加入R1正则项来增加稳定性。
通过在4个数据集上进行的实验,可以发现与其他经典的不完整多视图聚类方法相比,MG_IMC在解决不完整多视图聚类问题上是更加有效的。
1. 相关工作
Li等[19]首次针对缺失数据提出部分多视图聚类(partial multi-view clustering, PVC)方法,应用非负矩阵分解(non-negative matrix factorization, NMF)试图获得成对样本和单视图样本的潜在表示,但忽略了数据的几何结构。Chao等[13]通过引入流形约束,提出不完整的多模态视觉数据聚类算法,使用图拉普拉斯正则项来约束不完整多视图数据的全局结构,但是仅适用于两视图数据。通过在NMF项上施加缺失信息预先构建的权重矩阵,Shao等[20]提出了多视图不完整聚类算法,可以扩展到2个以上视图,但他们过度关注缺失样本的影响,忽略了不同视图的贡献。Wen等[21]提出了具有柔性局部结构扩散的广义不完全多视图聚类(generalized incomplete multiview clustering with flexible locality structure diffusion, GIMC_FLSD),开发了一种新的图正则化矩阵因子分解模型,以保持从不同角度学习的公共表示的局部几何相似性。为了从不完整的视图中有效提取隐藏信息,Liu等[22]提出利用非负矩阵分解和低秩张量实现不完整多视图聚类(incomplete multi-view clustering by NMF and low-rank tensor, IMC_NLT)方法,首次将降维方法生成的低维表示与低秩张量模型相结合。
借鉴多核学习思想,Liu等[23]通过自适应地估算不完全核矩阵,提出了具有互核完备的不完全核多核K-means(multiple kernel k-means with incomplete kernels, MKKM_IK_MKC)。该方法将估算和聚类集成到统一的框架中,以最佳地服务于聚类,进一步提高了聚类性能。Liu等[24]提出了一种高效、有效的不完全多视图聚类(EE_IMVC)方法,对每个分离的不完整相似矩阵进行聚类,大大降低了计算复杂度和内存成本。然而,EE_IMVC不利用任何辅助信息来促进共识聚类矩阵的优化,可能会使优化陷入局部最小值。
Wang等[25]提出了一种面向摄动的不完全多视图聚类方法,建立了面向扰动的模型来学习一些用于图融合的系数。但该方法假设至少有一个视图是完整的,且对预构造图的质量也很敏感。Wen等[26]提出了基于自适应图学习的不完整多视图光谱聚类,将自适应图构建和基于谱的一致性表示学习集成到一个联合优化框架中,但该方法不能挖掘数据的非线性结构信息,且未考虑缺失样本对视图的影响。Li[27]等引入三阶张量挖掘缺失多视图中的子空间结构,并将亲和矩阵、张量分解和丢失视图恢复结合到一个框架中,提出了HCP_IMSC(high-order correlation preserved incomplete multi-view subspace clustering)算法。Wang等[28]基于两视图间的映射关系提出PVC_GAN(partial multi-view clustering via consistent GAN),并引入基于KL散度的损失函数,保证所学习的潜在表示适用于聚类任务。
2. 本文提出的不完整多视图聚类方法
2.1 MG_IMC模型符号表示
MG_IMC模型将GAN的生成能力和深度嵌入聚类的聚类能力结合起来,引入视图映射网络,使得只训练一个生成模型就能生成每个视图缺失的数据,同时学习有利于聚类的公共表示。
本文用多视图数据矩阵
X=[X(1)X(2)⋯X(V)] 表示数据,其中X(v)=[x(v)1x(v)2⋯x(v)N]∈RN×dv (v=1,2,⋯,V) ,V是视图的数量,N是样本的数量,dv 是第v个视图的特征维度,X(v) 表示第v个视图中包含N个维度为dv 的样本,每个样本由x(v) 表示,z(v) 为该样本对应的潜在表示,y(v) 为样本标签,s(v) 为样本在该视图的风格编码。本文将具有多个视图的数据分为2部分,即所有视图都存在的完整数据{x(1),x(2),⋯,x(v)} 和丢失某些视图特征的不完整数据{x′(1),x′(2),⋯,x′(V)} ,数据示例如图1所示。{˜x(1),˜x(2),⋯,˜x(V)} 表示每个视图缺失的数据即生成器生成的数据。2.2 模型网络架构
MG_IMC模型的网络框架如图2所示,它由5个模块组成:自编码器Ev、深度嵌入聚类层、视图映射网络、生成器G和鉴别器D。对于多视图数据,针对所有视图训练V个自编码器来获得视图的潜在表示,并确保能够准确地恢复每个视图的数据;聚类层利用KL损失对完整数据的公共表示进行聚类;视图映射网络将随机高斯噪声或视图中已有的数据映射为每个视图的风格编码;生成器通过潜在表示和风格编码生成对应视图缺失的数据;鉴别器则可以对每个视图的真实数据或虚假数据进行鉴别。下面对各个模块进行详细介绍。
自编码器Ev 自编码器通常包含编码和解码2个部分,每个视图有一个全链接的编码器:
Rdv→Rm ,以及与之对应的解码器:Rm→Rdv 。编码器将原始的视图X(v) 编码为潜在表示Z(v)=[z(v)1z(v)2⋯z(v)N] ,相应的解码器从生成的特征˜Z(v) 中恢复数据。用f(v)en 和f(v)de 分别表示第v个编码器和解码器的非线性函数,Z(v)=f(v)en(X(v)) 表示将dv 维的原始数据x(v)i 映射到m维的潜在表示z(v)i 。视图映射网络 该模块同样包含2个部分,即映射网络和风格编码器,这2个模型均有多个输出分支,每个分支代表一个视图的风格特征。其中映射网络
Rdh→Rds 是一个多任务的全连接网络,它将dh 维的随机高斯噪声转换为缺失视图的风格特征。当给定随机噪声h和视图标签y时,s=Fy(h)表示映射网络对应于视图y生成的风格编码,F通过随机生成的潜在编码h和视图标签y来提供所有视图的风格编码。另一个风格编码器Rdv→Rds 是一个具有多个输入输出分支的全连接网络,该模型将每个视图中已有的数据提取为风格编码。给定视图中已有数据x及其对应的视图标签y,s=Ey(x)即为风格编码器提取到的与视图y对应的x的风格编码,由此风格编码器可以为不同视图的数据生成不同风格的编码。生成器G 传统的GAN将随机噪声输入到模型中,生成与真实数据分布相似的新数据。这种方法只能应用于两视图之间的映射,当数据具有多个视图特征时,生成器无法生成指定视图缺失的数据。因此,本文的生成器模型
Rm+ds→Rm 采用堆叠的全连接层对已有视图的潜在表示Z(w)进行处理,同时使用自适应实例归一化将风格编码s(v)和Z(w)的特征变换融合,通过s来指导相应视图缺失数据的生成。也就是说,对于生成器G无论输入哪个视图的潜在表示Z(w),都希望根据风格编码s(v)来生成v视图的数据。因此,生成器的潜在表示Z(1),Z(2),⋯,Z(V) 最好能彼此相等,本文为每个视图引入了其他视图的公共表示Z作为生成器的输入。生成器G将输入的共享潜在表示Z转换为反映风格编码s的潜在表示,即˜Z=G(Z,˜s) ,其中˜s 由视图映射网络提供,表示特定视图y的风格。鉴别器D 该网络与生成器相连,一方面需要将输入的数据分配到相应的视图中,另一方面还要判断输入的是真实数据还是生成器生成的假数据,从而训练生成器将相同的输入转化为具有不同风格编码的更加真实的输出。因此,设计了由堆叠的全连接层组成的具有多个输出分支的鉴别器
Rdv → [0,1],每个分支Dy 使用一个二进制分类判断数据x是y视图真实的数据还是由生成器产生的假数据。也就是说,给定视图标签y以及真实样本xi 或生成的伪样本˜xi ,Dy(˜xi,xi)∈[0,1] 表示鉴别器对输入数据的鉴别结果,该结果也将反馈给生成器G,并提示生成器生成更真实的样本,直到鉴别器无法区分哪一个是生成的样本。深度嵌入聚类层 该层将构造一个用于实现聚类的模型,并为聚类任务的表示学习提供明确的指导。通过改进公共表示Z的分布,来增强公共表示的聚类结构,并获得聚类结果。首先,使用自适应融合方式整合来自不同视图的互补信息,将编码器获得的潜在表示融合为公共表示Z。其次,计算公共表示Z的原始分布,将其命名为P,然后基于P,可以计算更紧凑且有利于聚类任务的目标分布Q。根据目标分布,改进了自编码器和生成器,并希望它能学习到与目标分布相似的潜在表示。
2.3 目标函数
目标函数包括5个部分:自编码器损失、对抗性损失、风格重建损失、循环一致性损失以及KL聚类损失。
1)自编码器损失:自编码器损失在自编码器和生成器上工作,编码器从高维数据中捕获潜在特征,生成器用于重构各视图的潜在特征,解码器将重构的潜在特征恢复。因此,要求解码器的输出与编码器的输入相似,通过最小化生成样本和输入样本之间的均方误差来实现。自动编码器损失函数为
LAE=V∑v=1‖ (1) 以v视图x(v)为例,当它通过编码器后,得到了潜在表示
{{ \boldsymbol {{\boldsymbol{z}}}}^{\left( v \right)}} = f_{{\text{en}}}^{\left( v \right)}\left( {{{ \boldsymbol {x}}^{\left( v \right)}}} \right) 。在自编码器损失中,生成器充当一个低维的编码解码器,{{ \tilde {\boldsymbol{z}}}^{\left( v \right)}} = G\left( {{{ \boldsymbol {{\boldsymbol{z}}}}^{\left( v \right)}},{{ \boldsymbol {s}}^{\left( v \right)}}} \right) 表示生成器重构的v视图的潜在特征,其中s(v)是风格编码器提取到的v视图中x(v)的风格编码。一般情况下,当所有输入数据都具有完整视图时,仅使用自编码器损失就可以训练编码器和生成器网络。但是,在不完整多视图学习中,这些缺失视图的数据将大大降低编码器和生成器网络的性能,因此还需进一步使用其他损失函数来细化网络。
2)对抗性损失:对抗性损失主要作用于生成器G和鉴别器D,G以部分视图的公共潜在表示Z作为输入来生成缺失视图G(Z,
\tilde {\boldsymbol{s}} )。D对真实数据以及G生成的假数据进行鉴别,并返回0~1之间的值,该值表示输入的数据是真视图还是假视图的概率。生成器致力于生成足够真实的样本来欺骗鉴别器,而鉴别器旨在将生成的假样本与真实样本区分开。G和D的损失函数分别试图最小化和最大化生成视图判别为假的可能性。假设v视图的数据分布是x(v)~P(X(v)),对抗性损失函数为
\begin{gathered} {L_{{\text{adv}}}} = \mathop \sum \limits_{v = 1}^V {E_{{{ \boldsymbol {x}}^{\left( v \right)}}\sim P\left( {{{ \boldsymbol {X}}^{\left( v \right)}}} \right)}}\left[ {{\text{log}} {D_{{{\boldsymbol{y}}^{\left( v \right)}}}}\left( {{{ \boldsymbol {x}}^{\left( v \right)}}} \right)} \right]{\text{ + }} \\ \mathop \sum \limits_{v = 1}^V \mathop \sum \limits_{w = 1,w \ne v}^V {E_{{{ \boldsymbol {x}}^{\left( w \right)}}\sim P\left( {{{ \boldsymbol {X}}^{\left( w \right)}}} \right)}} \\ \left[ {{\text{log}}\left( {1 - {D_{{{\boldsymbol{y}}^{\left( v \right)}}}}\left( {f_{{\text{de}}}^{\left( v \right)}\left( {G\left( {f_{{\text{en}}}^{\left( w \right)}\left( {{{ \boldsymbol {x}}^{\left( w \right)}}} \right),{{ \boldsymbol {s}}^{\left( v \right)}}} \right)} \right)} \right)} \right)} \right] \\ \end{gathered} 式中:
{{ {\tilde {\boldsymbol{z}}}}^{\left( v \right)}} = G(f_{{\text{en}}}^{\left( w \right)}({{ \boldsymbol {x}}^{\left( w \right)}}),{{ \boldsymbol {s}}^{\left( v \right)}}) 表示缺失的v视图的潜在特征,由与缺失视图配对的完整视图的潜在表示生成;y(v)表示v视图的标签;Dy(v)表示鉴别器在v视图的分支。向鉴别器D输入真实样本x(v)和G生成的样本{{ \tilde {\boldsymbol { x}}}^{\left( v \right)}} ,鉴别器根据y(v)将它们分配给对应的分支,然后输出判别结果。3)风格重建损失:当使用风格编码生成缺失视图时,需要用到映射网络将随机高斯噪声h转化为视图
{ \tilde { \boldsymbol { y}}} 的风格编码\tilde {\boldsymbol{s}} 。生成器需要把潜在表示{\boldsymbol{z}} 和风格编码\tilde {\boldsymbol{s}} 的特征相结合来生成缺失视图的潜在特征。为了保证生成器生成的视图{ \tilde {\boldsymbol{x}}} = f_{{\text{de}}}^{\left( {\tilde y} \right)}\left( {G\left( {{ {{\boldsymbol{z}}}},\tilde {\boldsymbol{s}}} \right)} \right) 能够准确反映视图{ \tilde {\boldsymbol{y}}} 的特征,引入了风格重建损失。通过最小化风格编码器提取的生成视图的风格编码和映射网络将随机噪声转化成的风格编码之间的L1范数来实现。风格重建损失为\begin{array}{*{20}{c}} {{L_{{\text{sty}}}} = \displaystyle\mathop \sum \limits_{v = 1}^V {E_{{\boldsymbol{x,h,y}}}} \left\| F\left( { \boldsymbol {h}},{ \boldsymbol {y}}^{\left( v \right)} \right) - {E_{{{\boldsymbol{y}}^{\left( v \right)}}}}\left( { \tilde {\boldsymbol{x}}}^{\left( v \right)} \right) \right\|_1 } \end{array} 式中:
{\tilde {\boldsymbol{x}}^{\left( v \right)}} = f_{{\text{de}}}^{(v)}(G({ \boldsymbol {{\boldsymbol{z}}}},{{ \boldsymbol {s}}^{(v)}})) 是生成器通过公共表示和风格编码所生成的v视图的假数据;{{ \boldsymbol {s}}^{\left( v \right)}} = F({ \boldsymbol {h}},{{ \boldsymbol {y}}^{(v)}}) 是映射网络根据y(v)生成的风格编码;E为具有多个分支的风格编码器,根据视图标签y(v)将输入的x(v)分配给v视图的分支,然后提取x(v)的风格特征。该损失函数要求提取到的风格特征和生成的风格编码尽量相同,从而使生成器在生成视图时保留目标视图的特征。4)循环一致性损失:生成器G可以根据不同风格编码将相同的公共表示映射为具有不同视图风格的任意数据。这将导致生成的数据与输入的数据不属于同一个样本的特征,说明该模型仅在对抗性损失的约束下无法明确补偿样本丢失的视图特征。为了解决这个问题,在模型中引入了循环一致性损失来更新学习映射,通过循环重构输入数据来约束生成器生成与之配对的缺失数据,从而减少可能的映射函数的空间。该模型的多视图循环一致性损失是最小化重构样本和输入样本之间的重建误差的L1范数,循环一致性损失为
\begin{array}{*{20}{c}} \begin{gathered} {L_{{\text{cyc}}}} = \mathop \sum \limits_{v = 1}^V \mathop \sum \limits_{w = 1,w \ne v}^V {E_{{{ \boldsymbol {x}}^{\left( v \right)}}\sim P\left( {{{ \boldsymbol {X}}^{\left( v \right)}}} \right)}} \\ {\left\| {f_{{\text{de}}}^{\left( v \right)}\left( {G\left( {G\left( {f_{{\text{en}}}^{\left( v \right)}\left( {{{ \boldsymbol {x}}^{\left( v \right)}}} \right),{{ \boldsymbol {s}}^{\left( w \right)}}} \right),{{ \boldsymbol {s}}^{\left( v \right)}}} \right)} \right) - {{ \boldsymbol {x}}^{\left( v \right)}}} \right\|_1} \\ \end{gathered} \end{array} 对于v视图中的每个样本x(v),在通过编码器和生成器G之后,得到生成的缺失视图的潜在表示
{{\tilde {\boldsymbol{z}}}^{\left( w \right)}} 。然后,让生成的潜在表示再次通过生成器G来重构v视图的潜在表示{\widetilde { {\tilde {\boldsymbol{z}}}}^{\left( v \right)}} 。最后,通过相应解码器获得重构的样本{\widetilde { \tilde {\boldsymbol{x}}}^{\left( v \right)}} 。该损失函数训练生成器将输入数据x(v)映射为目标数据{\tilde {\boldsymbol{x}}^{\left( w \right)}} ,该输出是特殊的并且与x(v)配对。因此可以将对抗性损失和多视图循环一致性损失相结合,以有效地保证期望的输出。5) KL聚类损失:编码器在具有完整视图的数据和缺失视图数据上学习用于最终聚类任务的公共表示,但是具有缺失视图的数据会对集群性能产生负面影响。为了优化编码器和生成器并获得更好的聚类结构,向模型中添加了由KL散度测量的聚类损失以同时改善聚类分配和特征表示。给定
\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k 表示k个初始聚类质心,为了测量公共表示点{{ \boldsymbol {{\boldsymbol{z}}}}_i} 和质心{{ \boldsymbol {u}}_j} 之间的相似性,参考文献[28]中的方法,使用t分布作为核,计算样本i被分配给聚类j的概率,即软分配:\begin{array}{*{20}{c}} {{{ \boldsymbol {q}}_{ij}} = \dfrac{{{{\left( {1 + {{\left\| {{{ \boldsymbol {{\boldsymbol{z}}}}_i} - {{ \boldsymbol {u}}_j}} \right\|}^2}/\alpha } \right)}^{ - \tfrac{{\alpha + 1}}{2}}}}}{{\displaystyle\sum\limits_{j'} {{{\left( {1 + {{\left\| {{{ \boldsymbol {{\boldsymbol{z}}}}_i} - {{ \boldsymbol {u}}_{j'}}} \right\|}^2}/\alpha } \right)}^{ - \tfrac{{\alpha + 1}}{2}}}} }}} \end{array} 式中
\alpha 为t分布的自由度。目标分布的选择对于聚类性能至关重要,通过先将{{ \boldsymbol {q}}_i} 升至二次幂,然后用每个聚类的频率对其进行归一化,来计算目标分布pi:\begin{array}{*{20}{c}} {{{\boldsymbol{p}}_{ij}} = \dfrac{{{\boldsymbol{q}}_{ij}^2/{f_j}}}{{\displaystyle\mathop \sum \limits_{j'} {\boldsymbol{q}}_{ij'}^2/{f_{j'}}}}} \end{array} 式中
{f_j} = \sum\limits_{} {{{ \boldsymbol {q}}_{ij}}} 表示软簇频率。通过将软分配与目标分布匹配来训练模型,有助于锐化数据分布并集中同类数据,进而提高聚类性能,并且强调了以高置信度分配的数据点。最小化原始数据分布和目标数据分布之间的KL散度作为聚类损失:\begin{array}{*{20}{c}} {{L_{{\text{KL}}}} = {\text{KL}}\left( {{ \boldsymbol {P}}||{ \boldsymbol {Q}}} \right) =\displaystyle \mathop \sum \limits_i \displaystyle\mathop \sum \limits_j {{ \boldsymbol {p}}_{ij}}{\text{log}}\dfrac{{{{ \boldsymbol {p}}_{ij}}}}{{{{ \boldsymbol {q}}_{ij}}}}} \end{array} 6)总体目标函数:通过集成自编码器损失、对抗性损失、风格重建损失、循环一致性损失以及KL聚类损失,得到了MG-IMC的总体目标函数:
\begin{array}{*{20}{c}} \begin{gathered} {L_{{\text{all}}}} = \mathop{\min }\limits_{ {E_1}, \cdots {E_V}, {G,F,E} } \mathop {\max }\limits_D {L_{{\text{AE}}}} + {\lambda _{{\text{adv}}}}{L_{{\text{adv}}}} + \\ {\lambda _{{\text{sty}}}}{L_{{\text{sty}}}} + {\lambda _{{\text{cyc}}}}{L_{{\text{cyc}}}} + {\lambda _{{\text{KL}}}}{L_{{\text{KL}}}} \\ \end{gathered} \end{array} (2) 式中
{\lambda _{{\text{adv}}}} 、{\lambda _{{\text{sty}}}} 、{\lambda _{{\text{cyc}}}} 、{\lambda _{{\text{KL}}}} 分别是调整目标函数中每个项的影响的参数。通过集成对抗性损失、风格重建损失、循环一致性损失对生成器、视图映射网络及鉴别器进行训练,生成每个样本缺失的视图特征。总体损失函数为\begin{array}{*{20}{c}} {{L_G} = \mathop {\min }\limits_G \mathop {\max }\limits_D {L_{{\text{adv}}}} + {L_{{\text{sty}}}} + {L_{{\text{cyc}}}}} \end{array} (3) 3. 模型训练
本节对模型的训练步骤进行详细介绍。
步骤1 在具有完整视图的样本上训练自编码器和生成器。
步骤1只使用配对数据对模型进行训练。由于数据集中不存在具有缺失视图的数据,因此只需要使用自编码器损失来优化
\{ {E_1},{E_2}, \cdots, {E_V},G\} 。具体来说,将配对数据\{{{\boldsymbol{x}}}^{\left(1\right)},{{\boldsymbol{x}}}^{\left(2\right)}, \cdots, {{\boldsymbol{x}}}^{\left(V\right)}\} 输入到编码器\{ {E_1},{E_2}, \cdots ,{E_V}\} 得到视图共享潜在表示\{{{\boldsymbol{z}}}^{\left(1\right)},{{\boldsymbol{z}}}^{\left(2\right)}, \cdots ,{{\boldsymbol{z}}}^{\left(v\right)}\} ,同时利用风格编码器提取每个视图中配对数据的风格编码\{{{\boldsymbol{s}}}^{\left(1\right)},{{\boldsymbol{s}}}^{\left(2\right)}, \cdots ,{{\boldsymbol{s}}}^{\left(V\right)}\} 。生成器G根据风格编码重构各视图的潜在特征,并通过解码器输出重构的视图数据\{{\tilde{\boldsymbol{x}}}^{\left(1\right)},{\tilde{\boldsymbol{x}}}^{\left(2\right)}, \cdots , {\tilde{\boldsymbol{x}}}^{\left(V\right)}\} ,这样就可以使用自编码器损失来更新编码器和生成器网络。最后,基于配对数据的公共表示,计算将在步骤3中使用的聚类质心\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k ,同时初始化聚类网络的参数。经过配对数据学习的这些聚类质心有助于将具有生成视图的样本分配到正确的组。步骤2 在所有数据上训练生成器G和鉴别器D以及视图映射网络。
该步骤分为2个部分来分别训练生成器、视图映射网络和鉴别器。如图3所示,第一部分使用对抗性损失、风格重建损失以及循环一致性损失来训练生成器、映射网络以及风格编码器。图4则给出了使用对抗性损失训练鉴别器的过程。对于配对数据
\{ {{ \boldsymbol {x}}^{(1)}}, {{ \boldsymbol {x}}^{(2)}} , \cdots ,{{ \boldsymbol {x}}^{(v)}}\} ,与步骤1相同,可以直接作为模型的输入,基于风格编码生成重构的数据。当遇到v视图的未配对数据{ \boldsymbol {x'}}_j^{\left( v \right)} 时,从缺失的视图w(w\ne v){{ \boldsymbol {x}}_i^{\left( w \right)} ,{ \boldsymbol {x'}}_{j'}^{\left( w \right)} }中随机选择一个样本作为每个轮次中编码器的输入,以此来增加未配对数据的数量。同时随机生成一个噪声向量,并使用映射网络将其转换为风格特征{ \boldsymbol {s}}_j^{\left( w \right)} ,生成器根据风格特征来生成未配对数据所对应的w视图的数据。然后对生成器的输出{ {\tilde {\boldsymbol{z}}}}_j^{(w)} 进行解码,即为缺失视图生成的数据\tilde {\boldsymbol{x}}_j^{(w)} 。最后在完整数据集上计算一个新的公共表示Z。步骤3 在具有完整视图的数据集上训练所有模型。
将步骤1产生的聚类质心
\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k ,及完整视图数据\{ \{ { \boldsymbol {x}}_i^{\left( 1 \right)}, \cdots ,{ \boldsymbol {x}}_i^{\left( V \right)}\} , \cdots ,\{ { \boldsymbol {x'}}_j^{\left( 1 \right)}, \cdots ,{\tilde{\boldsymbol{x}}}_j^{\left( V \right)}\} , \cdots \{ {\tilde{\boldsymbol{x}}}_j^{\left( 1 \right)}, \cdots , { \boldsymbol {x'}}_j^{\left( V \right)}\} \} 作为模型再次训练的输入,在每个轮次中,使用总体目标函数更新聚类质心、公共表示和生成的视图数据。算法1介绍了模型的具体训练过程。
算法1 视图映射和循环一致性生成的不完整多视图聚类
输入 多视图数据矩阵
{ \boldsymbol {X}} = [{{ \boldsymbol {X}}^{(1)}}\;{{ \boldsymbol {X}}^{(2)}}\; \cdots \;{{ \boldsymbol {X}}^{(V)}}] ,参数\lambda_{\text{adv}}、\lambda_{\text{sty}}、\lambda_{\text{cyc}}、\lambda_{\text{KL}} 。输出 聚类结果。
1)初始化所有模型的参数:自编码器、聚类层、视图映射网络、生成器、鉴别器;
2)步骤1,训练自编码器和生成器;
3) for each
{i}_{\text{te}}\in pre-specified iterations do4)输入配对数据
\{ {{ \boldsymbol {x}}^{(1)}},{{ \boldsymbol {x}}^{(2)}}, \cdots ,{{ \boldsymbol {x}}^{(V)}}\} ;5)根据式(1)更新{E1,
\cdots ,EV,G};6)计算聚类中心
\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k ;7) end for
8)步骤2,训练生成器、映射网络、风格编码器和鉴别器;
9) for each
{i_{{\text{te}}}} \in pre-specified iterations do10)输入所有数据X;
11)根据式(3)更新{G,F,E,D};
12)生成缺失的数据
\{ {{\tilde{\boldsymbol{x}}}^{(1)}},{{\tilde{\boldsymbol{x}}}^{(2)}}, \cdots ,{{\tilde{\boldsymbol{x}}}^{(V)}}\} ;13)计算公共表示Z;
14) end for
15)步骤3,训练所有模型;
16) for each
{i_{{\text{te}}}} \in pre-specified iterations do17)输入聚类中心
\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k ,公共表示Z以及完整视图数据;18)根据式(2)更新{E1,
\cdots ,EV,G,F,E,D};19)更新
\{ {{ \boldsymbol {u}}_j}\} _{j = 1}^k 、生成的缺失数据;20)计算公共表示Z;
21) end for
22)在公共表示Z上进行聚类。
4. 实验与分析
在本节中,将MG_IMC算法与7个相关聚类方法在4个多视图数据集上进行对比实验,验证MG_IMC算法的聚类效果。
4.1 数据集
手写数字(handwritten, HW)[9],是一个图像数据集,包含2 000张0~9的数字图像。共有10类,每类包含200个样本,具有6种特征,实验中选择了HW数据集的前3个视图。
BDGP[28]包含来自5个类别的2 500张果蝇胚胎的图像,其中每个样本由纹理特征和分别从侧面、背面和腹部图像中提取的3种视觉特征表示。
MNIST[29]是0~9的数字图像数据集,由60 000个训练样本和10 000个测试样本组成,每个样本包含2个视图特征,即 784维的像素特征和784维的边缘特征。
Caltech-20[30]是Caltech101的一个子集,共有6个视图,包含20个类的2 386个实例。本文使用254D CENHIST矢量、512D GIST矢量和928D LBP矢量作为3个视图。
本文将缺失率设置为0.1、0.2、0.3、0.4、0.5,随机删除每个视图中对应比例的样本,同时确保每个数据至少存在一个视图特征。
4.2 对比算法
在实验中,将MG_IMC与最佳单视图(best single view, BSV)[1]、自动加权多图学习(auto-weighted multiple graph learning, AMGL)[13],以及一些先进的不完全多视图聚类算法进行比较。
BSV[1]首先用均值填充缺失的视图,然后对每个视图进行光谱聚类,得到最佳的单视图结果。
AMGL[13]算法用于对完整的多视图数据进行聚类,实验中使用均值填充缺失视图。
PVC[19]使用非负矩阵分解将每个视图投影到低维空间中进行聚类。
PVC_GAN[28]基于两视图间的映射关系生成每个视图丢失的样本,并生成有利于聚类的公共表示。
MKKM_IK_MKC[23]联合执行内核K-means聚类和相互内核完成,学习用于聚类的通用嵌入表示。
GIMC_FLSD[21]利用不完全数据的局部信息,同时自适应学习不同视图共享的不平衡判别信息,进行用于聚类的公共表示学习。
HCP_IMSC[27]有效恢复样本的缺失视图,在统一亲和矩阵上进行谱聚类。
其中PVC、PVC_GAN只能处理具有2个视图的数据集,因此,使用数据集的前两个视图对PVC、PVC_GAN进行实验。
4.3 实验设置及评价指标
实验采用的硬件环境是NVIDIA RTX 3080 GPU,40 GB内存,软件环境采用PyTorch1.11.0,Python3.8,CUDA11.3。实验中使用Adam优化器训练模型,参数设置为1,学习率设置为0.000 1,前2个训练步骤分别采用15次迭代进行预训练,整个实验重复10次,最后取平均值。
实验使用了3种典型的聚类验证指标进行性能评估,即聚类精度(accuracy, ACC)、归一化互信息(normalized mutual information, NMI)、纯度(purity)。
4.4 实验结果
表1~4给出了不同缺失率下各算法在每个数据集上的ACC和NMI结果,其中每种实验设置下的最优和次优结果分别用粗体和下划线标出。
表 1 BDGP数据集上不同缺失率下各算法的聚类结果Table 1 Clustering results of various algorithms with different miss rates on BDGP datasets评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.554 3 0.502 2 0.449 7 0.406 3 0.362 6 AMGL[13] 0.315 3 0.303 8 0.291 7 0.279 3 0.260 5 PVC[19] 0.576 4 0.548 6 0.510 8 0.479 6 0.420 4 ACC PVC_GAN[28] 0.763 4 0.745 8 0.713 0 0.677 3 0.624 2 MKKM_IK_MKC[23] 0.334 8 0.318 0 0.291 2 0.288 3 0.294 4 GIMC_FLSD[21] 0.671 4 0.642 6 0.615 0 0.576 3 0.520 3 HCP_IMSC[27] 0.793 8 0.746 9 0.698 6 0.647 3 0.571 7 MG_IMC 0.817 4 0.793 2 0.763 0 0.730 7 0.697 8 BSV[1] 0.397 5 0.338 9 0.279 0 0.228 5 0.177 5 AMGL[13] 0.213 1 0.172 1 0.158 6 0.153 0 0.166 5 PVC[19] 0.347 7 0.319 0 0.280 4 0.242 7 0.215 0 NMI PVC_GAN[28] 0.675 4 0.653 7 0.618 7 0.575 1 0.528 3 MKKM_IK_MKC[23] 0.226 1 0.214 7 0.202 4 0.189 1 0.174 4 GIMC_FLSD[21] 0.563 9 0.549 8 0.513 7 0.457 8 0.390 3 HCP_IMSC[27] 0.687 7 0.658 0 0.613 8 0.564 7 0.509 4 MG_IMC 0.723 8 0.702 5 0.688 7 0.643 6 0.591 8 注:最优和次优结果分别用粗体和下划线标出。 表 2 MNIST数据集上不同缺失率下各算法的聚类结果Table 2 Clustering results of various algorithms with different miss rates on MNIST datasets评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.464 4 0.440 1 0.423 8 0.386 4 0.352 5 AMGL[13] 0.334 6 0.301 2 0.241 5 0.199 7 0.152 4 PVC[19] 0.497 1 0.487 7 0.469 2 0.454 3 0.413 2 ACC PVC_GAN[28] 0.534 0 0.528 6 0.520 2 0.517 1 0.528 0 MKKM_IK_MKC[23] 0.457 8 0.454 6 0.443 0 0.420 8 0.393 3 GIMC_FLSD[21] 0.477 3 0.473 8 0.475 9 0.465 5 0.464 0 HCP_IMSC[27] 0.580 1 0.558 2 0.543 1 0.525 9 0.497 4 MG_IMC 0.595 5 0.596 3 0.587 5 0.577 6 0.554 2 BSV[1] 0.422 1 0.405 1 0.379 2 0.376 0 0.328 7 AMGL[13] 0.226 3 0.207 7 0.179 6 0.137 3 0.076 3 PVC[19] 0.455 2 0.436 3 0.393 3 0.347 4 0.321 9 NMI PVC_GAN[28] 0.508 4 0.500 8 0.506 8 0.462 5 0.440 8 MKKM_IK_MKC[23] 0.364 8 0.352 7 0.338 6 0.320 7 0.309 4 GIMC_FLSD[21] 0.462 2 0.459 2 0.461 3 0.446 9 0.442 7 HCP_IMSC[27] 0.517 8 0.493 1 0.465 4 0.438 2 0.404 8 MG_IMC 0.557 8 0.559 2 0.542 5 0.527 6 0.518 8 注:最优和次优结果分别用粗体和下划线标出。 表 3 HW数据集上不同缺失率下各算法的聚类结果Table 3 Clustering results of various algorithms with different miss rates on the HW dataset评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.552 7 0.504 5 0.457 7 0.438 4 0.379 6 AMGL[13] 0.678 3 0.623 7 0.573 4 0.522 1 0.463 6 PVC[19] 0.573 0 0.534 7 0.492 5 0.462 0 0.423 6 ACC PVC_GAN[28] 0.889 8 0.879 7 0.865 1 0.828 4 0.793 6 MKKM_IK_MKC[23] 0.594 5 0.575 4 0.552 3 0.532 5 0.522 8 GIMC_FLSD[21] 0.901 5 0.883 1 0.871 5 0.854 3 0.841 7 HCP_IMSC[27] 0.891 8 0.879 6 0.893 6 0.868 7 0.843 6 MG_IMC 0.908 0 0.889 5 0.876 1 0.865 9 0.855 2 BSV[1] 0.516 7 0.489 5 0.429 7 0.386 5 0.323 8 AMGL[13] 0.637 7 0.588 1 0.539 2 0.456 1 0.390 8 PVC[19] 0.521 0 0.472 1 0.420 5 0.391 3 0.348 5 NMI PVC_GAN[28] 0.811 9 0.789 2 0.781 4 0.739 6 0.717 5 MKKM_IK_MKC[23] 0.540 1 0.512 2 0.480 3 0.460 8 0.448 5 GIMC_FLSD[21] 0.839 0 0.823 5 0.802 9 0.779 2 0.758 6 HCP_IMSC[27] 0.823 5 0.808 6 0.828 5 0.792 3 0.764 8 MG_IMC 0.849 4 0.837 8 0.815 0 0.801 6 0.789 9 注:最优和次优结果分别用粗体和下划线标出。 表 4 Caltech-20数据集上不同缺失率下各算法的聚类结果Table 4 Clustering results of various algorithms with different miss rates on Caltech-20 dataset评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.348 7 0.319 8 0.281 9 0.260 2 0.248 7 AMGL[13] 0.381 9 0.338 9 0.304 0 0.291 2 0.270 5 PVC[19] 0.396 5 0.389 8 0.355 7 0.324 4 0.301 5 ACC PVC_GAN[28] 0.452 3 0.421 2 0.375 8 0.351 8 0.327 8 MKKM_IK_MKC[23] 0.376 7 0.356 0 0.334 8 0.331 3 0.321 5 GIMC_FLSD[21] 0.462 9 0.446 5 0.431 3 0.407 5 0.385 7 HCP_IMSC[27] 0.548 0 0.516 9 0.490 3 0.480 2 0.437 3 MG_IMC 0.579 2 0.580 1 0.556 0 0.523 1 0.494 6 BSV[1] 0.460 9 0.426 3 0.403 8 0.388 5 0.366 8 AMGL[13] 0.494 8 0.438 2 0.413 5 0.419 3 0.400 5 PVC[19] 0.537 8 0.504 3 0.474 0 0.451 6 0.433 0 NMI PVC_GAN[28] 0.553 6 0.527 3 0.494 9 0.482 2 0.479 5 MKKM_IK_MKC[23] 0.507 8 0.459 1 0.417 5 0.373 1 0.356 6 GIMC_FLSD[21] 0.540 1 0.520 6 0.510 3 0.498 9 0.487 5 HCP_IMSC[27] 0.554 1 0.513 9 0.503 8 0.480 1 0.448 7 MG_IMC 0.587 9 0.591 8 0.566 6 0.536 3 0.502 0 注:最优和次优结果分别用粗体和下划线标出。 通过对比不同模型的聚类指标可得到以下结论:
1)本文所提出的MG_IMC方法在不同实验条件下都能达到较好的聚类效果。这表示,通过生成器模型来推断各视图丢失的数据,确保了各视图的完整性和一致性,同时利用这些互补的缺失数据可以构造更有效的公共子空间,从而获得更好的聚类效果。
2)比较每个数据集上PVC_GAN和MG_IMC的结果,可以发现MG_IMC的聚类效果更好,这是因为PVC_GAN只能处理2个视图的数据,而除了MNIST,其他数据均具有2个以上的视图特征,这表明所提出的基于风格编码和循环一致性的生成器模型可以有效处理不完整多视图数据。
3)不同方法的聚类性能随着缺失率的增加而持续下降,这表明视图缺失会对多视图聚类产生负面影响,因此IMC在解决数据缺失问题时更有效。其中BSV和AMGL方法的聚类性能比其他方法差,说明简单地使用均值填充缺失的视图实例,不是解决不完整多视图聚类任务的最佳选择。
4)单视图聚类算法如BSV的聚类效果通常比多视图聚类算法效果差,这是因为单视图聚类无法获得样本的全部有效信息。同样地,不完整两视图聚类算法PVC也没有充分利用所有视图之间的互补信息,且它要求视图内的样本不能任意缺失,因此比其他不完整多视图聚类算法的评价指标低。
图5通过折线图的方式给出了各算法在4个数据集上的purity结果。
4.5 收敛性分析
本节对MG_IMC算法的收敛性进行验证,图6给出了MG_IMC算法在缺失率为0.2的HW和BDGP数据集上损失函数以及ACC和NMI的收敛曲线。从图中观察到,目标函数在前20轮迭代内快速下降,并且目标函数、ACC、NMI均能在50次迭代内逐渐趋于稳定,因此本文方法具有较强的收敛性。
4.6 消融研究
为进一步验证损失函数对模型聚类效果的影响,在HW数据集上进行消融研究,依次加入自编码器损失LAE、对抗性损失Ladv、循环一致性损失Lcyc、风格重建损失Lsty、KL聚类损失LKL对模型进行训练,验证各损失函数的有效性。
将样本缺失率同样设置为0.1、0.2、0.3、0.4、0.5,表5给出了每个实验聚类精度的结果。从表中观察到,使用总体目标函数的第4个实验具有最佳性能,而只使用自编码器损失的实验一性能最差,并且使用了风格重建损失的实验三的性能优于只使用自编码器损失+对抗性损失+循环一致性损失的实验二。这说明,目标函数中的每一项对模型最终聚类性能都有很大影响,其中对抗性损失和循环一致性损失有助于训练生成器生成每个样本丢失的视图,风格重建损失有助于训练单个生成器生成具有指定视图风格的样本。生成的数据将有助于学习更好的聚类结构,并提高聚类性能。KL聚类损失反作用于生成器,使其生成更真实的样本,进一步提高聚类性能。
表 5 不同缺失率下各消融实验在HW数据集上的聚类精度Table 5 Clustering accuracy of each ablation experiment on HW dataset with different deletion rates损失函数 0.1 0.2 0.3 0.4 0.5 LAE 0.693 5 0.655 0 0.594 9 0.552 8 0.521 5 LAE+Ladv+Lcyc 0.837 8 0.815 0 0.806 9 0.793 5 0.779 5 LAE+Ladv+Lcyc+Lsty 0.857 2 0.842 6 0.822 9 0.819 8 0.808 8 LAE+Ladv+Lcyc+Lsty+LKL 0.908 0 0.889 5 0.876 1 0.865 9 0.855 2 5. 结束语
本文针对视图特征缺失情形下的聚类问题,提出视图映射和循环一致性生成的不完整多视图聚类算法,该方法基于每个视图的风格编码,仅通过单个生成器就可以生成每个视图丢失的数据,进而在具有完整视图的数据集上生成有利于聚类的公共表示,极大地提高了聚类性能。它不仅补偿了每个样本丢失的视图特征,而且在生成数据的同时考虑了聚类任务,使得生成的数据更有利于聚类。通过大量实验进一步验证了本文方法在多个数据集上的有效性。此外,基于批处理的训练风格,使得MG_IMC可以应用于大规模数据集,未来可进一步验证该方法在大规模数据集上的聚类效果,并设计一些在大规模数据集上效率更高、性能更好的方法。同时,本文提出的算法需要大量数据训练模型,对数据要求较高,无法灵活运用于各种不完全情况,未来可进一步探索更普适、更灵活的IMC模型。
-
表 1 BDGP数据集上不同缺失率下各算法的聚类结果
Table 1 Clustering results of various algorithms with different miss rates on BDGP datasets
评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.554 3 0.502 2 0.449 7 0.406 3 0.362 6 AMGL[13] 0.315 3 0.303 8 0.291 7 0.279 3 0.260 5 PVC[19] 0.576 4 0.548 6 0.510 8 0.479 6 0.420 4 ACC PVC_GAN[28] 0.763 4 0.745 8 0.713 0 0.677 3 0.624 2 MKKM_IK_MKC[23] 0.334 8 0.318 0 0.291 2 0.288 3 0.294 4 GIMC_FLSD[21] 0.671 4 0.642 6 0.615 0 0.576 3 0.520 3 HCP_IMSC[27] 0.793 8 0.746 9 0.698 6 0.647 3 0.571 7 MG_IMC 0.817 4 0.793 2 0.763 0 0.730 7 0.697 8 BSV[1] 0.397 5 0.338 9 0.279 0 0.228 5 0.177 5 AMGL[13] 0.213 1 0.172 1 0.158 6 0.153 0 0.166 5 PVC[19] 0.347 7 0.319 0 0.280 4 0.242 7 0.215 0 NMI PVC_GAN[28] 0.675 4 0.653 7 0.618 7 0.575 1 0.528 3 MKKM_IK_MKC[23] 0.226 1 0.214 7 0.202 4 0.189 1 0.174 4 GIMC_FLSD[21] 0.563 9 0.549 8 0.513 7 0.457 8 0.390 3 HCP_IMSC[27] 0.687 7 0.658 0 0.613 8 0.564 7 0.509 4 MG_IMC 0.723 8 0.702 5 0.688 7 0.643 6 0.591 8 注:最优和次优结果分别用粗体和下划线标出。 表 2 MNIST数据集上不同缺失率下各算法的聚类结果
Table 2 Clustering results of various algorithms with different miss rates on MNIST datasets
评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.464 4 0.440 1 0.423 8 0.386 4 0.352 5 AMGL[13] 0.334 6 0.301 2 0.241 5 0.199 7 0.152 4 PVC[19] 0.497 1 0.487 7 0.469 2 0.454 3 0.413 2 ACC PVC_GAN[28] 0.534 0 0.528 6 0.520 2 0.517 1 0.528 0 MKKM_IK_MKC[23] 0.457 8 0.454 6 0.443 0 0.420 8 0.393 3 GIMC_FLSD[21] 0.477 3 0.473 8 0.475 9 0.465 5 0.464 0 HCP_IMSC[27] 0.580 1 0.558 2 0.543 1 0.525 9 0.497 4 MG_IMC 0.595 5 0.596 3 0.587 5 0.577 6 0.554 2 BSV[1] 0.422 1 0.405 1 0.379 2 0.376 0 0.328 7 AMGL[13] 0.226 3 0.207 7 0.179 6 0.137 3 0.076 3 PVC[19] 0.455 2 0.436 3 0.393 3 0.347 4 0.321 9 NMI PVC_GAN[28] 0.508 4 0.500 8 0.506 8 0.462 5 0.440 8 MKKM_IK_MKC[23] 0.364 8 0.352 7 0.338 6 0.320 7 0.309 4 GIMC_FLSD[21] 0.462 2 0.459 2 0.461 3 0.446 9 0.442 7 HCP_IMSC[27] 0.517 8 0.493 1 0.465 4 0.438 2 0.404 8 MG_IMC 0.557 8 0.559 2 0.542 5 0.527 6 0.518 8 注:最优和次优结果分别用粗体和下划线标出。 表 3 HW数据集上不同缺失率下各算法的聚类结果
Table 3 Clustering results of various algorithms with different miss rates on the HW dataset
评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.552 7 0.504 5 0.457 7 0.438 4 0.379 6 AMGL[13] 0.678 3 0.623 7 0.573 4 0.522 1 0.463 6 PVC[19] 0.573 0 0.534 7 0.492 5 0.462 0 0.423 6 ACC PVC_GAN[28] 0.889 8 0.879 7 0.865 1 0.828 4 0.793 6 MKKM_IK_MKC[23] 0.594 5 0.575 4 0.552 3 0.532 5 0.522 8 GIMC_FLSD[21] 0.901 5 0.883 1 0.871 5 0.854 3 0.841 7 HCP_IMSC[27] 0.891 8 0.879 6 0.893 6 0.868 7 0.843 6 MG_IMC 0.908 0 0.889 5 0.876 1 0.865 9 0.855 2 BSV[1] 0.516 7 0.489 5 0.429 7 0.386 5 0.323 8 AMGL[13] 0.637 7 0.588 1 0.539 2 0.456 1 0.390 8 PVC[19] 0.521 0 0.472 1 0.420 5 0.391 3 0.348 5 NMI PVC_GAN[28] 0.811 9 0.789 2 0.781 4 0.739 6 0.717 5 MKKM_IK_MKC[23] 0.540 1 0.512 2 0.480 3 0.460 8 0.448 5 GIMC_FLSD[21] 0.839 0 0.823 5 0.802 9 0.779 2 0.758 6 HCP_IMSC[27] 0.823 5 0.808 6 0.828 5 0.792 3 0.764 8 MG_IMC 0.849 4 0.837 8 0.815 0 0.801 6 0.789 9 注:最优和次优结果分别用粗体和下划线标出。 表 4 Caltech-20数据集上不同缺失率下各算法的聚类结果
Table 4 Clustering results of various algorithms with different miss rates on Caltech-20 dataset
评价指标 算法 缺失率 0.1 0.2 0.3 0.4 0.5 BSV[1] 0.348 7 0.319 8 0.281 9 0.260 2 0.248 7 AMGL[13] 0.381 9 0.338 9 0.304 0 0.291 2 0.270 5 PVC[19] 0.396 5 0.389 8 0.355 7 0.324 4 0.301 5 ACC PVC_GAN[28] 0.452 3 0.421 2 0.375 8 0.351 8 0.327 8 MKKM_IK_MKC[23] 0.376 7 0.356 0 0.334 8 0.331 3 0.321 5 GIMC_FLSD[21] 0.462 9 0.446 5 0.431 3 0.407 5 0.385 7 HCP_IMSC[27] 0.548 0 0.516 9 0.490 3 0.480 2 0.437 3 MG_IMC 0.579 2 0.580 1 0.556 0 0.523 1 0.494 6 BSV[1] 0.460 9 0.426 3 0.403 8 0.388 5 0.366 8 AMGL[13] 0.494 8 0.438 2 0.413 5 0.419 3 0.400 5 PVC[19] 0.537 8 0.504 3 0.474 0 0.451 6 0.433 0 NMI PVC_GAN[28] 0.553 6 0.527 3 0.494 9 0.482 2 0.479 5 MKKM_IK_MKC[23] 0.507 8 0.459 1 0.417 5 0.373 1 0.356 6 GIMC_FLSD[21] 0.540 1 0.520 6 0.510 3 0.498 9 0.487 5 HCP_IMSC[27] 0.554 1 0.513 9 0.503 8 0.480 1 0.448 7 MG_IMC 0.587 9 0.591 8 0.566 6 0.536 3 0.502 0 注:最优和次优结果分别用粗体和下划线标出。 表 5 不同缺失率下各消融实验在HW数据集上的聚类精度
Table 5 Clustering accuracy of each ablation experiment on HW dataset with different deletion rates
损失函数 0.1 0.2 0.3 0.4 0.5 LAE 0.693 5 0.655 0 0.594 9 0.552 8 0.521 5 LAE+Ladv+Lcyc 0.837 8 0.815 0 0.806 9 0.793 5 0.779 5 LAE+Ladv+Lcyc+Lsty 0.857 2 0.842 6 0.822 9 0.819 8 0.808 8 LAE+Ladv+Lcyc+Lsty+LKL 0.908 0 0.889 5 0.876 1 0.865 9 0.855 2 -
[1] 刘晓琳, 白亮, 赵兴旺, 等. 基于多阶近邻融合的不完整多视图聚类算法[J]. 软件学报, 2022, 33(4): 1354−1372. LIU Xiaolin, BAI Liang, ZHAO Xingwang, et al. Incomplete multi-view clustering algorithm based on multi-order neighborhood fusion[J]. Journal of software, 2022, 33(4): 1354−1372. [2] XUE Zhe, DU Junping, DU Dawei, et al. Deep low-rank subspace ensemble for multi-view clustering[J]. Information sciences, 2019, 482: 210−227. doi: 10.1016/j.ins.2019.01.018 [3] 赵博宇, 张长青, 陈蕾, 等. 生成式不完整多视图数据聚类[J]. 自动化学报, 2021, 47(8): 1867−1875. ZHAO Boyu, ZHANG Changqing, CHEN Lei, et al. Generative model for partial multi-view clustering[J]. Acta automatica sinica, 2021, 47(8): 1867−1875. [4] KANG Zhao, GUO Zipeng, HUANG Shudong, et al. Multiple partitions aligned clustering[C]//Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence. Macao: AAAI, 2019: 2701−2707. [5] 范瑞东, 侯臣平. 鲁棒自加权的多视图子空间聚类[J]. 计算机科学与探索, 2021, 15(6): 1062−1073. FAN Ruidong, HOU Chenping. Robust auto-weighted multi-view subspace clustering[J]. Journal of frontiers of computer science and technology, 2021, 15(6): 1062−1073. [6] 刘相男, 丁世飞, 王丽娟. 基于深度图正则化矩阵分解的多视图聚类算法[J]. 智能系统学报, 2022, 17(1): 158−169. LIU Xiangnan, DING Shifei, WANG Lijuan. A multi-view clustering algorithm based on deep matrix factorization with graph regularization[J]. CAAI transactions on intelligent systems, 2022, 17(1): 158−169. [7] HUANG Zhenyu, ZHOU J T, PENG Xi, et al. Multi-view spectral clustering network[C]//Proceedings of the Twenty-Eighth International Joint Conference on Artificial Intelligence. Macao: IJCAI, 2019: 2563−2569. [8] TANG Chang, LIU Xinwang, ZHU Xinzhong, et al. CGD: multi-view clustering via cross-view graph diffusion[C]//Proceedings of the AAAI conference on artificial intelligence. New York: AAAI, 2020, 34(4): 5924−5931. [9] 张熠玲, 杨燕, 周威, 等. CMvSC: 知识迁移下的深度一致性多视图谱聚类网络[J]. 软件学报, 2022, 33(4): 1373−1389. ZHANG Yiling, YANG Yan, ZHOU Wei, et al. CMvSC: knowledge transferring based deep consensus network for multi-view spectral clustering[J]. Journal of software, 2022, 33(4): 1373−1389. [10] KANG Zhao, SHI Guoxin, HUANG Shudong, et al. Multi-graph fusion for multi-view spectral clustering[J]. Knowledge-based systems, 2020, 189: 105102. doi: 10.1016/j.knosys.2019.105102 [11] TAO Hong, HOU Chenping, YI Dongyun, et al. Joint embedding learning and low-rank approximation: a framework for incomplete multiview learning[J]. IEEE transactions on cybernetics, 2021, 51(3): 1690−1703. doi: 10.1109/TCYB.2019.2953564 [12] WANG Qianqian, LIAN Huanhuan, SUN Gan, et al. iCmSC: incomplete cross-modal subspace clustering[J]. IEEE transactions on image processing, 2021, 30: 305−317. [13] CHAO Guoqing, SUN Shiliang, BI Jinbo. A survey on multi-view clustering[J]. IEEE transactions on artificial intelligence, 2021, 2(2): 146−168. doi: 10.1109/TAI.2021.3065894 [14] ZHANG He, SINDAGI V, PATEL V M. Image de-raining using a conditional generative adversarial network[J]. IEEE transactions on circuits and systems for video technology, 2020, 30(11): 3943−3956. doi: 10.1109/TCSVT.2019.2920407 [15] TREVISAN DE SOUZA V L, MARQUES B A D, BATAGELO H C, et al. A review on generative adversarial networks for image generation[J]. Computers & graphics, 2023, 114: 13−25. [16] KARRAS T, LAINE S, AILA T. A style-based generator architecture for generative adversarial networks[C]//2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Long Beach: IEEE, 2019: 4396−4405. [17] TRAN L, LIU Xiaoming, ZHOU Jiayu, et al. Missing modalities imputation via cascaded residual autoencoder[C]//2017 IEEE Conference on Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 4971−4980. [18] SHANG Chao, PALMER A, SUN Jiangwen, et al. VIGAN: Missing view imputation with generative adversarial networks[C]//2017 IEEE International Conference on Big Data. Boston: IEEE, 2017: 766−775. [19] LI Shaoyuan, JIANG Yuan, ZHOU Zhihua. Partial multi-view clustering[C]//Proceedings of the AAAI conference on artificial intelligence. Palo Alto: AAAI, 2014: 1968−1974. [20] SHAO Weixiang, HE Lifang, YU P S. Multiple incomplete views clustering via weighted nonnegative matrix factorization with L2, 1 regularization[C]//Proceedings of the 2015 Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Berlin: Springer, 2015: 318−334. [21] WEN Jie, ZHANG Zheng, ZHANG Zhao, et al. Generalized incomplete multiview clustering with flexible locality structure diffusion[J]. IEEE transactions on cybernetics, 2021, 51(1): 101−114. doi: 10.1109/TCYB.2020.2987164 [22] LIU Zhenjiao, CHEN Zhikui, LI Yue, et al. IMC-NLT: Incomplete multi-view clustering by NMF and low-rank tensor[J]. Expert systems with applications, 2023, 221: 119742. doi: 10.1016/j.eswa.2023.119742 [23] LIU Xinwang, ZHU Xinzhong, LI Miaomiao, et al. Multiple kernel k-means with incomplete kernels[J]. IEEE transactions on pattern analysis and machine intelligence, 2020, 42(5): 1191−1204. [24] LIU Xinwang, LI Miaomiao, TANG Chang, et al. Efficient and effective regularized incomplete multi-view clustering[J]. IEEE transactions on pattern analysis and machine intelligence, 2021, 43(8): 2634−2646. [25] WANG Hao, ZONG Linlin, LIU Bing, et al. Spectral perturbation meets incomplete multi-view data[EB/OL]. (2019−06−31)[2023−11−30]. https://arxiv.org/abs/1906.00098. [26] WEN Jie, XU Yong, LIU Hong. Incomplete multiview spectral clustering with adaptive graph learning[J]. IEEE transactions on cybernetics, 2020, 50(4): 1418−1429. doi: 10.1109/TCYB.2018.2884715 [27] LI Zhenglai, TANG Chang, ZHENG Xiao, et al. High-order correlation preserved incomplete multi-view subspace clustering[J]. IEEE transactions on image processing, 2022, 31: 2067−2080. doi: 10.1109/TIP.2022.3147046 [28] WANG Qianqian, DING Zhengming, TAO Zhiqiang, et al. Partial multi-view clustering via consistent GAN[C]//2018 IEEE International Conference on Data Mining. Singapore: IEEE, 2018: 1290−1295. [29] 崔金荣, 黄诚. 改进的自步深度不完备多视图聚类[J]. 数据采集与处理, 2022, 37(5): 1036−1048. CUI Jinrong, HUANG Cheng. Improved self-paced deep incomplete multi-view clustering[J]. Journal of data acquisition and processing, 2022, 37(5): 1036−1048. [30] 张智慧, 杨燕, 张熠玲. 面向不完整多视图聚类的深度互信息最大化方法[J]. 智能系统学报, 2023, 18(1): 12−22. ZHANG Zhihui, YANG Yan, ZHANG Yiling. Deep mutual information maximization method for incomplete multi-view clustering[J]. CAAI transactions on intelligent systems, 2023, 18(1): 12−22.