摘要
多视角聚类(Multi-view clustering,简称MVC)在近年来得到了广泛研究,用于收集多源信息。一种典型的MVC方法是基于矩阵分解,以有效地进行降维和聚类。然而,现有方法可以通过以下考虑进一步改进:
i)当前的单层矩阵分解框架不能充分利用有用的数据表示。
ii)大多数算法只关注共享信息,而忽略视角特定的结构,导致次优解。
iii)现有工作中未利用分区级别的信息。为了解决上述问题,我们提出了一种新颖的多视角聚类算法,通过深度矩阵分解和分区对齐。具体而言,通过深度矩阵分解获得每个视图的分区表示,然后与最佳的分区表示联合利用以融合多视角信息。最后,我们开发了一种交替优化算法来解决优化问题,并证明其收敛性。在六个基准多视角数据集上进行的全面实验结果清楚地证明了所提算法相对于现有方法的有效性。
介绍
近年来,大量数据来源于多个源头或由不同属性描述,这在大多数文献中被称为多视角数据。例如,一个物品可以通过图像插图和简短的文本描述来表示;人物身份包含面部图像和声音信息。随着大量未标记的多视角数据的积累,多视角聚类被提出来充分利用提供的信息,因此受到了广泛关注。现有的多视角聚类算法可以通过应用的模型分为四类:共同训练(Co-training)[1]–[3]、多核学习(Multi-kernel learning)[4]–[7]、图聚类(Graph clustering)[8]、[9]和子空间聚类(Subspace clustering)[10]–[12]。早期融合的基本思想是将多视角的多个特征或图结构表示融合成一个单一的表示,然后应用已知的单视角聚类算法。例如,基于图的聚类方法[13]使用图结构在每个视图下构建样本相似性,然后使用随机游走策略融合这些图。多核学习方法通过线性或非线性组合融合多个基础核以获得用于聚类的最佳核。子空间聚类[14]旨在为每个视图找到合适的低维表示和结构,然后将它们融合到一个包含丰富信息的表示中进行聚类。另一方面,后期融合的方法将各个视图的聚类结果集成起来。后期融合( Late fusion)可以分为集成学习和协同训练(collaborative training)。集成聚类算法的输入是与多个视图对应的聚类结果。在[15]中,定义了一个用于最终聚类结果与输入聚类结果之间距离的共识损失函数来获得聚类结果。Co-training训练的重点是如何在共同训练过程中获得更好的聚类结果。[1]通过对每个视图执行谱嵌入来获得多个聚类结果,并使用这些聚类结果来影响其他视图的原始表示。此外,[8]应用后期融合进行多核k均值聚类,并减少了算法的复杂性和时间成本。我们提出的方法属于子空间聚类中的非负矩阵分解(NMF)聚类,同时也属于后期融合聚类。
NMF广泛应用于聚类中,因为它具备处理高维数据和捕捉不同视图的潜在表示的能力。一些研究[16]–[18]通过定义视图的多样性来减少不同视图表示之间的冗余。[19]中的方法倾向于生成具有均匀分解的分布,使得学到的表示更具有区分性。此外,引入交叉熵代价函数[20]和邻居信息[21]来引导学习过程。尽管NMF可以很好地解决高维问题,但似乎对捕捉数据的内部结构无能为力。因此,随后的工作通过添加图正则化项[22]和常见的正则化项[23],[24]来实现保留数据空间的局部几何结构。为了减小异常值的影响,[25]中引入了具有流形正则化的L21范数。随着研究的发展,通过单层NMF聚类提取的信息通常不能满足我们对数据信息挖掘的需求。为了探索更深层次和隐藏的数据信息,[26]提出了一个深度半NMF模型来探索具有隐含低层隐藏属性的复杂分层信息。受到深度半NMF的影响,模型DMVC [27]通过原始数据结构的指导学习包含深层信息的公共低维表示。最近,一个通过深度NMF方法[28]进行多视图聚类的研究提出了自动学习每个视图的最优权重。尽管现有的NMF方法取得了成功,但仍可以通过以下考虑对其进行改进:i)充分利用原始数据获取更具区分性的信息;ii)关注视图之间的共享和特定信息;iii)改进多视图信息的融合策略。
为了解决这些问题,本文提出了一种新颖的基于深度NMF和分区对齐的多视图聚类方法(MVC-DMF-PA)。首先,我们利用深度半NMF从不同视图中获取基本分区矩阵,同时捕捉特定信息。其次,通过最优排列,最大化共识分区矩阵与均匀加权基本分区矩阵的对齐。最后,我们将基本分区学习和后期融合统一到一个框架中,希望学习出用于聚类的共识分区矩阵。本文的主要贡献总结如下:
- 我们提出了一种深度半NMF和分区对齐的多视图聚类方法。在这项工作中,我们将分区学习和后期融合阶段统一到一个框架中,相互促进并指导彼此,以获得最终的共同分区矩阵用于聚类。
- 我们通过使用深度半NMF框架将特征矩阵分解为每个视图的分区矩阵。然后,通过对齐多个分区矩阵,使用后期融合方法学习融合的共识分区结果。
- 我们推导出迭代更新规则来解决优化问题,并在六个多视图数据集上进行了大量实验。实验结果表明,MVC-DMF-PA与其他最先进的方法相比具有良好的性能。
相关工作
由于在潜在特征提取方面具有出色的性能,NMF和许多NMF变种被广泛用于聚类。因此,我们从对NMF和半NMF的简要介绍开始,然后介绍深度半NMF及其在多视图聚类中的公式化。
NMF将非负数据矩阵
X
+
X_+
X+? 分解为两个非负矩阵
Z
Z
Z 和
H
H
H,它们的秩较低。 NMF的公式化可以表示为:
我们将
X
+
∈
R
d
×
n
X_+∈ R^{d×n}
X+?∈Rd×n 定义为非负数据矩阵,其中
Z
∈
R
d
×
k
Z ∈ R^{d×k}
Z∈Rd×k 可以被视为聚类中心,而
H
∈
R
k
×
n
H ∈ R^{k×n}
H∈Rk×n 表示聚类指示符。我们可以发现,NMF与K-means聚类算法密切相关,同时保持正交约束[29]。当输入数据具有混合符号时,我们可以限制
H
H
H 为非负,而对Z的符号不加限制。这被称为半NMF[30]:
其中,当数据矩阵具有混合符号时,我们将
X
∈
R
d
×
n
X∈ R^{d×n}
X∈Rd×n 定义为数据矩阵。
当半NMF的目标是学习原始数据矩阵的低维表示
H
∈
R
l
×
n
H ∈ R^{l×n}
H∈Rl×n 时,
l
l
l 的取值范围为
[
k
,
d
]
[k, d]
[k,d]。
Z
∈
R
d
×
l
Z ∈ R^{d×l}
Z∈Rd×l 可以被视为原始数据矩阵和新表示
H
H
H 之间的映射关系。在许多情况下,我们希望分析的数据通常相当复杂,并具有一组不同且未知的属性。因此,有一项工作[26]提出了深度半NMF模型,将给定的数据矩阵
X
X
X 分解为
m
+
1
m + 1
m+1 个因子,如下所示:
其中,
H
i
=
Z
i
?
1
H
i
?
1
(
i
>
2
)
H_i = Z_{i?1}H_{i?1} (i > 2)
Hi?=Zi?1?Hi?1?(i>2)。当我们将这个深度半NMF框架用于多视图聚类时,我们可以得到:
在此之后,许多学者尝试基于深度半NMF框架进行多视图聚类的研究。其中,[27]提出了一种基于内在结构引导的方法,用于学习用于聚类的共同表示
H
m
H_m
Hm?。该想法可以表示为以下形式:
其中,
H
i
(
v
)
=
Z
(
i
?
1
)
(
v
)
H
(
i
?
1
)
(
v
)
(
i
>
2
)
H^{(v)}_i = Z^{(v)}_{(i-1)}H^{(v)}_{(i-1)} (i > 2)
Hi(v)?=Z(i?1)(v)?H(i?1)(v)?(i>2),而
H
m
H_m
Hm? 被设置为约束,以在多层因式分解后强制多视图数据共享相同的表示。
L
(
v
)
L^{(v)}
L(v) 表示视图
v
v
v 的图的拉普拉斯矩阵,用于保持原始数据的几何结构。
受到这项工作的启发,但我们持有不同的观点。我们认为从每个视图学习到的表示具有每个视图的独特信息。因此,新的表示不能完全相同,但一定会得到相同的聚类结果。此外,使用原始结构信息会在一定程度上抑制表示的学习,并影响最终的聚类结果。因此,我们提出了一种基于后期融合和深度半NMF的新型多视图聚类算法。具体细节将在第三节中介绍。
提出的方法
在本节中,我们首先简要介绍我们提出的方法的动机。其次,我们将详细讨论基于深度半NMF和分区对齐的多视图聚类方法。最后,我们将总结整体算法并提供时间复杂度的分析。如表I所示,我们列出了在我们的工作中使用的符号,并对它们进行了描述,除了临时符号外。为了更容易阅读,我们还解释了文章中一些必要的符号。
A. 动机
多视图聚类本质上是信息融合的任务。据我们所知,根据融合阶段或称为特征级别和决策级别融合,信息融合可以分为早期融合和后期融合。虽然我们可以在融合的任何阶段得到结果,但后期融合的优点在于减少其他信息通道对每个单独分区的干扰。那么我们如何对我们已经得到的基本分区进行后期融合呢?图1的右下角显示了后期融合过程的一个小示例。我们可以发现,尽管
H
m
(
1
)
H^{(1)}_m
Hm(1)? 和
H
m
(
v
)
H^{(v)}_m
Hm(v)?具有不同的表示形式,但它们都显示出相同的聚类结果。我们将
H
H
H 表示为共同分区或称为一致分区矩阵。后期融合的目标是通过最优排列,使共识分区矩阵与均匀加权的W基本分区矩阵之间的对齐最大化,从而获得一个一致的分区矩阵。
B. 提出的方法
正如在第II节中所述,我们认为在多层半NMF之后,不同视图的聚类结果应该相同,而不是表示形式相同。因此,我们的工作基于深度半NMF和后期融合构建。与早期融合的先前工作不同,我们使用后期融合或称为决策级别融合来减少随机噪声的影响。我们提出方法的目标方程如下所示:
优化目标的第一项表示
V
V
V 个视图的重构损失,这是多视图深度半NMF的目标方程。
α
α
α 表示所有视图的重构损失的比例。最后一层的维度是
k
k
k,这意味着
H
m
(
v
)
H^{(v)}_m
Hm(v)? 表示第
v
v
v 个视图的分区矩阵。为了适应每个数据集,我们将不同层的维度调整为聚类数的倍数。重构损失项可以更好地探索原始数据中更丰富的隐藏信息。不同的视图具有不同的来源,因此在每个视图的最终分区矩阵中会存在一些差异,如第II节所述,并将其表示为
H
m
(
v
)
H^{(v)}_m
Hm(v)?。
优化目标的第二项表示后期融合的损失。
H
m
(
v
)
H^{(v)}_m
Hm(v)? 表示第
v
v
v 个视图的分区矩阵,
H
H
H 表示共识聚类分区矩阵。
W
(
v
)
W^{(v)}
W(v)表示第
v
v
v 个视图的列对齐矩阵,该矩阵可以对列进行交换,以解决不同视图的聚类索引矩阵具有相同含义但不同表示的情况。
β
(
v
)
β^{(v)}
β(v) 是将第
v
v
v 个分区矩阵融合到H中的加权系数。因此,后期融合的目标函数是最大化共识分区矩阵
H
H
H 与融合分区矩阵
∑
v
=
1
V
β
(
v
)
H
m
(
v
)
T
W
(
v
)
sum^V _{v=1}β^{(v)}H^{(v)T}_mW^{(v)}
∑v=1V?β(v)Hm(v)T?W(v) 的对齐。
C. 初始化
根据[27]中的初始化方法,我们也按层进行初始化。首先,我们对视图
v
v
v 的数据矩阵
X
(
v
)
X^{(v)}
X(v) 进行分解:
X
(
v
)
≈
Z
1
(
v
)
H
1
(
v
)
X^{(v)} ≈ Z^{(v)}_1H^{(v)}_1
X(v)≈Z1(v)?H1(v)?,从而得到新的表示
H
1
(
v
)
H^{(v)}_1
H1(v)?。然后我们对
H
1
(
v
)
H^{(v)}_1
H1(v)? 进行分解:
H
1
(
v
)
≈
Z
2
(
v
)
H
2
(
v
)
H^{(v)}_1≈ Z^{(v)}_2H^{(v)}_2
H1(v)?≈Z2(v)?H2(v)?,得到
H
2
(
v
)
H^{(v)}_2
H2(v)?。继续对新获得的表示进行分解,直到得到分区矩阵
H
m
(
v
)
H^{(v)}_m
Hm(v)?。最终,我们获得了所有视图的
H
m
(
v
)
(
v
=
1...
V
)
H^{(v)}_m(v = 1 . . . V)
Hm(v)?(v=1...V)。通过设置
W
(
v
)
=
I
k
W^{(v)}= I_k
W(v)=Ik?,我们得到了W的初始化,并且满足条件
W
(
v
)
W
(
v
)
T
=
I
k
W^{(v)}W^{(v)T} = I_k
W(v)W(v)T=Ik?。我们在开始时认为所有视图对损失的贡献相同,因此我们设置
α
(
v
)
=
1
/
V
α^{(v)} = 1/V
α(v)=1/V 和
β
(
v
)
=
1
/
V
β^{(v)} = 1/sqrt{V}
β(v)=1/V
D. 优化
为了解决公式6,我们设计了一个七步交替优化算法,其中有三个步骤是继承自原始深度半NMF的优化过程,两个步骤可以通过现成的软件包轻松解决,最后的两个步骤可以得到闭式解。需要注意的是,对于第
v
v
v 个视图,我们需要逐层优化
Z
i
(
v
)
Z^{(v)}_i
Zi(v)? 和
H
i
(
v
)
H^{(v)}_i
Hi(v)?,即先优化
Z
1
(
v
)
Z^{(v)}_1
Z1(v)?,然后优化
H
1
(
v
)
H^{(v)}_1
H1(v)?,直到优化
Z
m
(
v
)
Z^{(v)}_m
Zm(v)? 和
H
m
(
v
)
H^{(v)}_m
Hm(v)?。
1) 更新
H
H
H 的子问题:
在固定
Z
i
(
v
)
Z^{(v)}_i
Zi(v)? 、
H
i
(
v
)
H^{(v)}_i
Hi(v)?、
W
(
v
)
W^{(v)}
W(v)、
α
α
α 和
β
β
β 的情况下,优化方程(6)可以写成如下形式:
其中
U
=
∑
v
=
1
V
β
(
v
)
H
m
(
v
T
)
W
(
v
)
U = sum^V _{v=1} β^{(v)}H^{(vT)}_mW^{(v)}
U=∑v=1V?β(v)Hm(vT)?W(v)。方程(7)中的这个问题可以通过对给定矩阵
U
U
U 进行奇异值分解(SVD)来轻松解决。
2) 更新
Z
i
(
v
)
Z^{(v)}_i
Zi(v)? 的子问题:
在固定
H
H
H、
H
i
(
v
)
H^{(v)}_i
Hi(v)?、
W
(
v
)
W^{(v)}
W(v)、
α
α
α 和
β
β
β 的情况下,优化方程(6)可以写成如下形式:
3) 更新
H
i
(
v
)
H^{(v)}_i
Hi(v)? 的子问题(i < m):
在固定
H
H
H、
Z
i
(
v
)
Z^{(v)}_i
Zi(v)?、
W
(
v
)
W^{(v)}
W(v)、
α
α
α 和
β
β
β 的情况下,优化方程(6)可以写成如下形式:
其中
[
A
]
+
=
(
∣
A
∣
+
A
)
/
2
[A]^+ = (|A| + A)/2
[A]+=(∣A∣+A)/2,
[
A
]
?
=
(
∣
A
∣
?
A
)
/
2
[A]^- = (|A| - A)/2
[A]?=(∣A∣?A)/2。与我们之前的工作[27]相同,我们通常在使用
H
i
(
v
)
H^{(v)}_i
Hi(v)? 的更新规则之前,使用上述更新规则更新
H
m
(
v
)
H^{(v)}_m
Hm(v)?,以便简化代码编写并加快程序的收敛速度。
4) 更新
H
m
(
v
)
H^{(v)}_m
Hm(v)? 的子问题:
在固定
H
H
H、
Z
i
(
v
)
Z^{(v)}_i
Zi(v)?、
H
i
(
v
)
(
i
<
m
)
H^{(v)}_i(i < m)
Hi(v)?(i<m)、
W
(
v
)
W^{(v)}
W(v)、
α
α
α 和
β
β
β 的情况下,优化方程(6)可以写成如下形式:
接下来我们证明方程(13)是方程(12)的解。我们引入方程(12)的Lagrange函数如下:
通过设置
?
L
(
H
m
(
v
)
)
/
?
H
m
(
v
)
=
0
?L(H^{(v)}_m)/?H^{(v)}_m = 0
?L(Hm(v)?)/?Hm(v)?=0,根据互补松弛条件,我们可以得到如下结果:
所以我们可以得到:
然后我们可以轻松地得到
H
m
(
v
)
H^{(v)}_m
Hm(v)? 的更新规则,即方程(12)。
5) 更新
W
(
v
)
W^{(v)}
W(v) 的子问题:
在固定
H
H
H、
Z
i
(
v
)
Z^{(v)}_i
Zi(v)?、
H
i
(
v
)
H^{(v)}_i
Hi(v)?、
α
α
α 和
β
β
β 的情况下,优化方程6可以写成如下形式:
其中
Q
=
β
(
v
)
H
m
(
v
)
H
T
Q = β^{(v)}H^{(v)}_mH^T
Q=β(v)Hm(v)?HT。方程(14)中的这个问题可以通过对给定矩阵
Q
Q
Q 进行奇异值分解(SVD)来轻松解决。
6) 更新系数
α
(
v
)
α^{(v)}
α(v) 的子问题:
在固定
H
H
H、
Z
i
(
v
)
Z^{(v)}_i
Zi(v)?、
H
i
(
v
)
H^{(v)}_i
Hi(v)?、
W
(
v
)
W^{(v)}
W(v) 和
β
β
β 的情况下,优化方程6可以写成如下形式:
其中
γ
γ
γ 是拉格朗日乘子。通过对方程(16)关于
α
(
v
)
α^{(v)}
α(v) 求导并将导数设为零,我们可以得到
α
(
v
)
=
γ
/
2
R
(
v
)
α^{(v)} = γ/2R^{(v)}
α(v)=γ/2R(v)。然后我们将
α
(
v
)
α^{(v)}
α(v) 代入方程(15)中的
∑
v
=
1
α
(
v
)
sum_{v = 1} α^{(v)}
∑v=1?α(v),并最终得到
α
(
v
)
α^{(v)}
α(v) 的表达式如下:
7) 更新系数
β
β
β 的子问题:
在固定
H
H
H、
Z
i
(
v
)
Z^{(v)}_i
Zi(v)?、
H
i
(
v
)
H^{(v)}_i
Hi(v)?、
W
(
v
)
W^{(v)}
W(v) 和
α
α
α 的情况下,优化方程6可以写成如下形式:
我们在算法1中总结了提出的算法。我们至少训练150次迭代直到收敛,然后对
H
H
H 进行 K-means 聚类以获得聚类结果。