Auto-weighted multi-view clustering via deep matrix decomposition

摘要

实际数据通常从多个渠道收集或由不同的表示(即视图)组成。多视图学习提供了一种优雅的方式来分析多视图数据的低维表示。近年来,已经设计了几种多视图学习方法,并成功应用于各种任务。然而,现有的多视图学习方法通常在单层形式下工作。由于获得的表示与原始数据之间的映射包含了具有隐含的较低层次隐藏属性的相当复杂的层次信息,因此有必要以层次化的方式充分探索隐藏的结构。本文提出了一种新颖的深度多视图聚类模型,通过逐层方式揭示输入数据的层次语义。通过利用一种新颖的协作深度矩阵分解框架,可以学习与不同属性相关的隐藏表示。所提出的模型能够协同学习每个层次获得的层次语义。同一类别的实例在低维空间中逐层靠近,这有利于后续的聚类任务。此外,每个视图都自动分配一个权重,而不引入额外的超参数,这是以前方法所做不到的。为了解决我们模型的优化问题,提出了一种高效的迭代更新算法,并在理论上保证了其收敛性。我们在多视图聚类任务上的实证研究显示,与最先进的算法相比,我们的模型具有令人鼓舞的结果。

介绍

在许多现实世界的应用中,数据集具有异构特征,这些特征是从多个渠道或多个模态收集而来的。例如,图像可以通过不同的视觉描述符(如LBP [1]、HOG [2]和SIFT [3])进行表示;视频可以由不同类型(视图)的特征(如图像和声音)表示[4]。不同的视图通常捕捉到信息的不同方面,其中任何一个都足以挖掘知识。此外,不同视图的编码信息是一致且互补的,这对于产生更好的性能至关重要。因此,期望通过深入利用多个视图生成更有前景的结果,而不是仅依赖于单个视图。因此,开发一种新的学习范式——多视图学习,以高效地分析这些异构特征,可以提高学习算法的准确性和鲁棒性,这是至关重要的。先前的研究还表明,不同视图共享的隐藏共同结构可以被充分提取出来[5,6]。

近年来,在不同理论和方法论的框架下,提出了许多多视图学习模型[7]。此外,这些方法已被广泛应用于监督和无监督的框架(例如,多视图聚类)[8,9]。利用多个视图处理多视图学习任务的关键是合理地融合这些视图,以产生更准确和鲁棒的结果[10]。现有的多视图学习方法可以大致分为基于图的方法和子空间方法。前者将多视图学习问题视为图分割问题,通过将多视图学习过程转化为多个图融合的情况来处理[10,11]。而后者试图揭示多个视图共享的共同潜在子空间[12,13]。值得注意的是,基于图的多视图方法通常通过扩展传统的谱方法进行研究,而子空间多视图方法则利用矩阵分解(也称为矩阵因子化(MF))进行设计。由于基于图的方法在图构建和特征值分解方面存在耗时问题,越来越多的研究人员开始关注应用MF策略来解决多视图学习问题[14]。有几种基于信息论的MF多视图方法[15],本质上可以看作是一种特殊类型的子空间方法。还有一些多视图学习方法基于低秩学习[14]、典型相关分析[16]、潜在子空间学习[17]等进行了研究。多视图学习已成功应用于人脸识别[18]、图像分类[19]、文本挖掘[20]等领域。

如前所述,基于MF的多视图学习模型近年来得到了广泛研究,并取得了良好的性能。然而,这些模型通常在单层形式下工作,其中获得的表示与原始数据之间的映射包含了具有隐式较低层次隐藏属性的相当复杂的层次信息。此外,确定不同视图的权重对于许多多视图聚类算法来说是一个关键挑战,因为不同视图在聚类中可以发挥不同的作用。本文提出了一种新颖的深度多视图学习模型,通过逐层方式揭示输入数据的层次语义,如图1所示。如图所示,通过利用一种新颖的深度矩阵分解框架,可以学习与不同属性相关的隐藏表示。以人脸数据集为例,数据的变异性不仅来自于被拍摄对象外貌的差异,还来自于其他属性,如面部表情或被拍摄对象的姿势。由于这些属性可以帮助识别人脸,使用我们的深度MF框架可以更好地解决人脸识别问题,因为每个后续层次可以捕捉相应的层次结构。结果是,同一类别但来自不同视图的实例在低维空间中逐层靠近,这对于后续的学习任务是有益的。此外,为了自动确定不同视图的权重,我们将自动加权方案引入深度多视图聚类算法中。此外,为了解决我们模型的优化问题,提出了一种具有收敛性的高效迭代更新算法。

2. Preliminaries

在介绍我们的方法的细节之前,我们首先简要回顾与本文密切相关的先前研究。

矩阵分解技术已广泛应用于数据挖掘和模式识别领域。其中,非负矩阵分解(NMF)受到广泛关注。在本节中,我们将简要回顾NMF [21,22]。给定一个非负数据矩阵

X

=

[

x

1

x

2

?

?

?

x

n

]

R

f

×

n

X = [x_1,x_2,···,x_n] ∈ R^{f×n}

X=[x1?,x2?,???,xn?]∈Rf×n,其中

n

n

n 是数据点的数量,

f

f

f 是数据的维度。NMF旨在找到两个非负矩阵

U

R

f

×

C

U ∈ R^{f×C}

U∈Rf×C 和

V

R

n

×

C

V ∈ R^{n×C}

V∈Rn×C,使目标函数最小化,如下所示:

在这里插入图片描述

其中,

?

F

2

||·||^2_F

∣∣?∣∣F2? 表示Frobenius范数,

X

i

j

X_{ij}

Xij? 表示X矩阵中的第

(

i

,

j

)

(i, j)

(i,j) 个元素。已经证明了公式(1)中的目标函数

J

N

M

F

J_{NMF}

JNMF? 在只有

U

U

U 或只有

V

V

V 时是凸的。为了优化目标函数,Lee等人[21]提出了以下迭代更新算法:

在这里插入图片描述
在NMF的聚类设置中[23,24],

U

R

f

×

C

U ∈ R^{f×C}

U∈Rf×C 表示基矩阵,

V

R

n

×

C

V ∈ R^{n×C}

V∈Rn×C表示表示矩阵,

C

C

C 是隐藏模式的数量。由于

C

?

n

Cll n

C?n 和

C

?

f

Cll f

C?f,NMF可以找到数据

X

X

X 的低维表示

V

V

V。值得注意的是,先前的研究表明,NMF等价于松弛的k均值聚类,它是一种基于质心的方法,仅适用于单视图数据聚类[25]。

现实世界的数据集通常包含多个模态(即因素)。以人脸数据集为例,它包含了姿势、表情等多个模态。传统的NMF无法完全揭示这些因素的隐藏结构。数据矩阵的多层分解过程可以表示为:

在这里插入图片描述

在上述公式中,

U

i

U_i

Ui? 表示第i层的基矩阵,

V

i

V_i

Vi? 表示第

i

i

i 层的表示矩阵。很明显,深度NMF模型也旨在找到原始数据矩阵的低维表示,该表示在顶层具有类似的解释,即最后一层的因子

V

r

V_r

Vr?(

r

r

r 是层数)。

通过进一步对

V

i

V_i

Vi? 进行因式分解,深度模型可以自动学习隐藏属性的潜在层次结构。换句话说,通过引入额外的抽象层来最小化获得表示的维度,我们可以自动利用相应的潜在属性以及暗示的中间隐藏表示,从而得到更好的更高级别表示

V

r

V_r

Vr?。最后,根据具有最低可变性的属性,为后续的学习任务提供更好的高级别、最终层表示。

与公式(1)中描述的单层NMF模型相比,深度NMF模型具有更好的揭示隐藏结构的能力,因为每一层的表示可以识别不同的属性[26]。

这种深度NMF模型的优势在于通过多层分解来揭示数据的层次结构和隐藏属性,并在每一层中学习更抽象和高级别的表示。通过这种方式,深度NMF模型可以更好地捕捉数据的内在特征和复杂关系,从而提高多视图学习任务的性能。

3.问题描述

上述提到的MF模型仅适用于单视图数据聚类。在本文中,我们致力于将传统的MF模型扩展为一种新颖的深度矩阵分解框架,用于学习多视图聚类。一般而言,多视图聚类系统包括四个组成部分:特征提取、算法设计、视图融合和数据聚类。第一个组成部分不是我们的主要关注点,因为我们将在基准多视图数据集上与其他方法进行比较。本节详细介绍了最后三个组成部分。值得注意的是,最后两个组成部分,即视图融合和数据聚类,可以在我们的模型中同时完成。

在我们的深度矩阵分解框架中,我们的目标是通过多视图数据聚类来发现数据的潜在结构和隐藏模式。在这个框架中,我们将多视图数据表示为多个视图矩阵,每个矩阵对应一个视图。我们通过对每个视图矩阵应用矩阵分解技术,如NMF或其他相关方法,来学习每个视图的低维表示。然后,我们将学习到的表示通过视图融合模块进行整合,以获取更全面和一致的数据表示。最后,我们将整合后的表示输入到数据聚类算法中,以获得最终的聚类结果。

在我们的模型中,视图融合和数据聚类是同时进行的。通过在视图融合模块中考虑不同视图之间的关系和一致性,我们可以更好地利用多视图数据的信息,并获得更准确和鲁棒的聚类结果。

总之,本文的目标是提出一种深度矩阵分解框架,用于学习多视图聚类。通过将多个视图矩阵进行分解和融合,我们可以揭示数据的潜在结构并获得更好的聚类结果。同时进行视图融合和数据聚类的设计可以提高模型的效率和性能。

3.1. 目标函数

首先介绍以下符号表示。将具有

M

M

M 个视图的多视图数据表示为

X

=

{

X

(

1

)

,

X

(

2

)

,

?

?

?

,

X

(

M

)

}

X = {X^{(1)}, X^{(2)}, ··· , X^{(M)}}

X={X(1),X(2),???,X(M)}。其中

{

X

(

M

)

m

=

1

M

=

[

x

1

(

m

)

,

x

2

(

m

)

,

?

?

?

,

x

n

(

m

)

]

R

f

(

m

)

×

n

{X^{(M)}|^M_{m=1} =[x^{(m)}_1 , x^{(m)}_2 , ··· , x^{(m)}_n ] ∈ R^{f^{(m)}×n}

{X(M)∣m=1M?=[x1(m)?,x2(m)?,???,xn(m)?]∈Rf(m)×n,其中

n

n

n 是数据点的数量(

x

j

(

m

)

x^{(m)}_j

xj(m)? 表示

X

(

m

)

X^{(m)}

X(m) 的第

j

j

j 个数据点),

f

(

m

)

f^{(m)}

f(m) 是第

m

m

m 个视图的特征维度。将

U

i

(

m

)

U^{(m)}_i

Ui(m)? 和

V

i

(

m

)

V^{(m)}_i

Vi(m)? 分别表示为第

m

m

m 个视图的第

i

i

i 层映射的基矩阵和获得的表示矩阵。

利用多个视图来处理多视图学习任务的关键在于合理地融合这些视图以产生更准确和鲁棒的结果。基于等权重的不同视图拼接特征进行分析显然是不明智的,因为这种方式会平等对待好的视图和弱的视图。为了利用不同视图共享的信息的互补方面,一个合理的策略是使用适当的权重

α

(

m

)

(

m

=

1

,

.

.

.

,

M

)

α^{(m)}(m = 1, . . ., M)

α(m)(m=1,...,M) 组合视图,并通过引入额外的参数

λ

λ

λ 保持权重分布的平滑性。此外,多视图学习方法寻求找到揭示多个视图共享的共同潜在结构的解决方案,因此在不同视图的最终层中获得的表示矩阵应该是唯一的,即

V

r

(

1

)

=

V

r

(

2

)

=

?

?

?

=

V

r

(

m

)

=

V

r

V_r^{(1)}= V_r^{(2)} = ···= V_r^{(m)} = V_r

Vr(1)?=Vr(2)?=???=Vr(m)?=Vr?。与公式(1)不同的是,我们移除了对

U

i

(

m

)

U_i^{(m)}

Ui(m)? 的非负约束,因此允许输入数据矩阵

X

X

X 具有混合符号,从而扩展了我们模型的适用范围。同时,为了在固定初始化的情况下获得更稳定的数据表示性能,我们希望使用稳健的多视图聚类方法。在本文中,受到

l

2

,

1

l2,1

l2,1-范数 [27]在最近的发展启发,我们进一步利用一种 稀疏诱导范数 来减小数据噪声的影响。我们提出了一种新颖的深度矩阵分解框架,通过求解以下问题来学习多视图聚类:

在这里插入图片描述

其中

(

V

r

)

.

c

(V_r).c

(Vr?).c 表示

V

r

V_r

Vr? 的一行元素,

α

(

m

)

α^{(m)}

α(m) 是第

m

m

m 个视图的权重,

λ

λ

λ 是一个正标量,它可以是另一种形式的正则化参数:

在这里插入图片描述

如我们所见,在我们的模型中,

V

r

V_r

Vr? 的每一行都以1-of-C方案进行编码。主要目的是确保我们解的唯一性。此外,分区结果可以直接获得,无需任何后处理。

由于

λ

λ

λ 可以在一个较大范围内搜索,并且其值的选择对最终的多视图聚类性能至关重要。因此,我们希望在追求良好性能的同时消除这个参数。在本文中,我们提出了一种自动加权策略来解决这个具有挑战性的问题。

3.2. 自动加权的深度MF多视图聚类

受最近提出的迭代重新加权技术[28,29]的启发,我们提出了一种用于多视图聚类的新颖模型,如下所示:

在这里插入图片描述

我们可以看到在其中没有明确定义权重超参数。方程(5)的拉格朗日函数可以定义为:

在这里插入图片描述

其中,

Ψ

Psi

Ψ 表示对

V

i

(

m

)

V_i^{(m)}

Vi(m)? 的约束的拉格朗日乘子,而

Γ

(

Ψ

,

V

i

(

m

)

)

Gamma (Psi,V_i^{(m)})

Γ(Ψ,Vi(m)?) 是从约束条件推导出的形式化项。对方程(6)关于

V

i

(

m

)

V_i^{(m)}

Vi(m)? 求导并将导数设为零,我们有

在这里插入图片描述
alpha 怎么算出来的?
在这里插入图片描述

由于权重

α

(

m

)

α^{(m)}

α(m) 依赖于目标变量

V

i

(

m

)

V_i^{(m)}

Vi(m)? 和

U

i

(

m

)

U_i^{(m)}

Ui(m)?,我们无法直接求解方程(7)。但是,如果将

α

(

m

)

α^{(m)}

α(m) 设置为固定值,方程(7)可以表示为以下问题的解:

在这里插入图片描述

根据

α

(

m

)

α^{(m)}

α(m) 权重是固定的假设,方程(5)的拉格朗日函数也可以应用于方程(9)。如果我们通过求解方程(9)来更新

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)?,则可以相应地进一步更新

α

(

m

)

α^{(m)}

α(m) 的值。这启发我们使用迭代方式优化方程(5)。当提出的迭代算法收敛时,

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)? 的收敛值是根据方程(7)和(8)得到方程(5)的局部最优解。类似地,

α

(

m

)

α^{(m)}

α(m) 被调整为相应的最优值,它们正是所有视图的学习权重。

值得提到的是,我们的模型与之前基于深度结构的多视图学习方法[30,31]不同。主要区别在于[30,31]是基于典型相关分析的。而这些方法只能处理二视图的情况,而我们的模型没有这样的限制。另一个相关的工作是在[32]中提出的,它是为深度多视图聚类(DMVC)设计的。然而,DMVC的残差计算是基于传统的Frobenius范数,对实际问题中的数据噪声敏感。此外,DMVC中获得的数据表示不能直接分配分区结果,因此需要后处理(例如,在[32]中使用的谱聚类算法)为每个数据点分配类标签。此外,DMVC中每个视图的权重是通过引入超参数来计算的,因此最终性能高度依赖于参数搜索。

接下来,我们提出了一种高效的迭代更新算法来解决方程(9)的优化问题。我们将在固定其他变量的情况下优化目标函数中的一个变量。该过程重复进行直到收敛。

3.3. 优化
在优化之前,我们通过将每个视图

X

(

m

)

X^{(m)}

X(m) 近似分解为

U

1

(

m

)

V

1

(

m

)

T

U^{(m)}_1V^{(m)T}_1

U1(m)?V1(m)T? 来进行预训练,其中

V

1

(

m

)

R

n

×

k

1

V^{(m)}_1∈R^{n×k_1}

V1(m)?∈Rn×k1? 和

U

1

(

m

)

R

f

(

m

)

×

k

1

U^{(m)}_1∈R^{f^{(m)}×k_1}

U1(m)?∈Rf(m)×k1?。然后进一步将表示矩阵分解为

V

1

(

m

)

U

2

(

m

)

V

2

(

m

)

T

V^{(m)}_1≈U^{(m)}_2V^{(m)T}_2

V1(m)?≈U2(m)?V2(m)T?,其中

V

2

(

m

)

R

n

×

k

2

V^{(m)}_2∈R^{n×k_2}

V2(m)?∈Rn×k2? 和

U

2

(

m

)

R

k

1

×

k

2

U^{(m)}_2∈R^{k_1×k_2}

U2(m)?∈Rk1?×k2?。这里将

k

1

k_1

k1? 和

k

2

k_2

k2? 定义为第1层和第2层的维度。请注意,预训练过程可以通过简单地使用k-means来完成,因为松弛的k-means等价于矩阵分解方法[33]。该过程将重复进行,直到所有层都完成预训练。

公式(9)是怎么转化为公式(10)的?
在这里插入图片描述
计算

U

i

(

m

)

U_i^{(m)}

Ui(m)? 的方法。

U

i

(

m

)

U_i^{(m)}

Ui(m)? 进行优化等价于最小化以下问题:

在这里插入图片描述

J

U

J_U

JU? 关于

U

i

(

m

)

U_i^{(m)}

Ui(m)? 进行偏导数计算,我们有:

在这里插入图片描述
把D视为常数了,为什么视为常数了?
其他的就和Multi-View Clustering via Deep Matrix Factorization 这一篇推导的一样了

将方程(14)设为0,得到以下更新规则:

在这里插入图片描述

计算

V

i

(

m

)

(

i

<

r

)

V_i^{(m)}(i < r)

Vi(m)?(i<r) 的方法。

V

i

(

m

)

V_i^{(m)}

Vi(m)? 进行优化等价于最小化方程(10):

在这里插入图片描述

J

V

J_V

JV? 关于

V

i

(

m

)

V_i^{(m)}

Vi(m)? 的偏导数进行计算:

在这里插入图片描述
同上

计算

V

r

V_r

Vr?(即

V

i

(

m

)

,

i

=

r

V_i^{(m)},i=r

Vi(m)?,i=r)的方法。

V

r

V_r

Vr? 进行优化等价于求解方程(10):
Vr 怎么求解的?
在这里插入图片描述
在这里插入图片描述

其中,

x

i

(

m

)

x_i^{(m)}

xi(m)? 是

X

(

m

)

X^{(m)}

X(m) 的第

i

i

i 个数据点,

v

i

v_i

vi? 是

V

T

V^T

VT 的第

i

i

i 列,

d

i

(

m

)

d_i^{(m)}

di(m)? 是

D

(

m

)

D^{(m)}

D(m) 的第

i

i

i 个对角元素。方程(20)中的优化问题可以通过将数据解耦并独立地为其分配聚类指示符来解决。

换句话说,对于固定的特定

j

j

j ,我们解决以下问题:

在这里插入图片描述

这里我们定义

v

=

[

v

1

,

v

2

,

?

?

?

,

v

C

]

T

R

C

×

1

v = [v_1, v_2, ··· , v_C]^T ∈ R^{C×1}

v=[v1?,v2?,???,vC?]T∈RC×1。由于

v

v

v 满足1-of-C编码方案,有

C

C

C 个候选解可以成为方程(21)的解。因此,我们可以进行一次详尽的搜索,找到方程(21)的解,如下所示:

在这里插入图片描述
3.4.收敛性分析

为了证明所提算法的收敛性,我们需要利用[34]引入的引理:
引理1. 对于任意正实数

a

a

a 和

b

b

b,成立以下不等式:

在这里插入图片描述
定理1. 在算法1中,更新的

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)? 将单调递减方程(9)(即方程(5))的目标函数,直到收敛。

证明.
假设在每次迭代中,通过交替更新得到的

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)? 分别为

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)? 。根据方程(16)和(23),很明显

U

i

(

m

)

U_i^{(m)}

Ui(m)? 和

V

i

(

m

)

V_i^{(m)}

Vi(m)? 都是封闭形式的解。考虑到权重

α

(

m

)

=

1

/

2

X

(

m

)

?

U

1

(

m

)

U

2

(

m

)

?

?

?

U

r

(

(

m

)

V

r

T

2

,

1

α^{(m)}=1/2sqrt{∥X^{(m)}?U^{(m)}_1U^{(m)}_2···U_r(^{(m)}V^T_r∥_{2,1}}

α(m)=1/2∥X(m)?U1(m)?U2(m)????Ur?((m)VrT?∥2,1?
?在当前迭代中是固定的,我们有:

在这里插入图片描述

将方程(25)和(26)两边相加,我们得到:

在这里插入图片描述

因此,我们证明了当前迭代的目标值小于或等于上一次迭代的目标值。换句话说,目标函数随着迭代单调递减,因此收敛是确保的。最后,我们完成了证明。

**加粗样式**