Iterative Deep Subspace Clustering 翻译

Iterative Deep Subspace Clustering 翻译

摘要:

近年来,由于深度神经网络具有良好的特征提取能力,深度学习已广泛应用于子空间聚类问题。 大多数现有方法都是基于自动编码器网络构建的。 在本文中,我们提出了一个无监督深度子空间聚类的迭代框架。 在我们的方法中,我们首先聚类给定数据以更新子空间id,然后用聚类结果更新卷积神经网络(CNN)的表示参数。 通过迭代这两个步骤,我们不仅可以获得给定数据的良好表示,而且可以获得更精确的子空间聚类结果。 对合成数据和现实世界数据的实验表明,我们的方法优于子空间聚类精度的最新技术。

1 引言

在许多计算机视觉应用中,例如人脸识别,纹理识别和运动分割,视觉数据可以通过子空间很好地表征。 此外,高维数据的内在维度通常远小于环境维度。 这推动了子空间聚类技术的发展,该技术同时将数据聚类成多个子空间,并且还为每类数据定位低维子空间。

在过去十年中已经开发了许多子空间聚类算法,包括代数,迭代,统计和谱聚类方法。 在这些方法中,由于其简单性,理论稳健性和经验上的成功,深入研究了谱聚类方法。 这些方法基于位于一个联合子空间的数据的自我表示属性。 这表明子空间中的每个点都可以写成该子空间中剩余数据点的线性组合。 落入此类别的典型方法之一是稀疏子空间聚类(SSC)。 SSC使用\boldsymbol{l}_{1}范数来鼓励自我表示系数矩阵的稀疏性。

尽管这些子空间聚类方法已经显示出令人鼓舞的性能,但我们观察到它们受到以下限制。 首先,大多数子空间聚类方法通过浅层模型学习数据表示,这可能无法捕获大数据的复杂潜在结构。 其次,这些方法需要访问整个数据集作为字典,因此难以处理大规模和动态数据集。 为了解决这些问题,我们认为深度学习可以成为一种有效的解决方案,这要归功于其卓越的表示学习能力和快速的推理速度。 事实上,[19,29,30]最近提出使用深度神经网络来学习聚类的表示。 然而,他们中的大多数并不是以端到端的方式工作,然而这通常被认为是深度学习成功的主要因素。

在这项工作中,我们的目标是在统一的框架中解决无标签图像上的子空间聚类和表示学习。 利用图像的聚类ids作为监督信号来学习表示是一种自然的想法,反过来,表示将有利于子空间聚类。 具体来说,我们首先对给定数据进行聚类以更新子空间ids,然后使用聚类结果更新卷积神经网络(CNN)的表示参数。 通过迭代这两个步骤,我们不仅可以获得给定数据的良好表示,而且可以获得更精确的子空间聚类结果。

这篇文章的主要贡献如下:

1. 我们提出了一个简单但有效的端到端学习框架,以共同学习深度表示和子空间聚类结果;

2. 我们在循环框架中制定联合学习,其中子空间聚类的合并操作表示为前向传递,CNN的表示学习作为反向传递;

3. 对合成数据和现实世界公共数据集的实验结果表明,与最先进的方法相比,我们的方法可以提高聚类精度。

2 相关工作

2.1 子空间聚类

在过去的十年中,子空间聚类方法的兴起在计算机视觉中具有各种应用,例如, 运动分割,人脸聚类图像处理,多视图分析和视频分析。 特别地,在这些工作中,基于谱聚类的方法已经实现了最先进的结果。 这些方法的关键是学习令人满意的亲和度矩阵C,其中C_{ij}表示第i个样本和第j个样本之间的相似性。 给定数据矩阵,其包含来自n个子空间的N个数据点。 SSC [7]旨在找到数据点的彼此的相似性的稀疏表示矩阵C,即X = XC。 由于S_{i}中的每个点可以用S_{i}中的其他点表示,因此总是存在这样的稀疏表示矩阵C. SSC算法通过解决以下优化问题找到C:

其中diag(C)= 0消除了平凡解。 不同的工作在C上采用不同的正则化,其中三种最受欢迎,即基于\boldsymbol{l}_{1}-范数的稀疏性[7,8],基于核规范的低秩[13,25,28]和基于Frobenius范数的稀疏性[18,21]。

2.2 深度学习

在过去几年中,大多数现有的子空间聚类方法关注于如何学习有益于发现固有聚类的良好数据表示。作为最有效的表征学习技术,深度学习已被广​​泛研究用于各种应用,特别是在监督学习的情景中[10,11]。相比之下,只有少数作品致力于无监督情景,这是深度学习所面临的主要挑战之一[6,12]。在工作[24]中,作者采用自动编码器网络进行聚类。具体来说,Tian等人 [24]在稀疏自动编码器框架中提出了一种新颖的图聚类方法。此外,Peng等人[19]通过结合深度神经网络和原始数据的稀疏性信息来执行子空间聚类,提出了一个带有sparsiTY先验的deeP subspAce clusteRing,称为PARTY。该框架在无监督学习中提取低维特征的同时实现了令人满意的性能。

3 提出的方法

3.1 问题表述

是来自不同子空间的数据点的集合。 子空间聚类的目标是根据子空间找到点的分割。 基于联合子空间中数据的自我表示属性,即子空间中的每个点可以写成该子空间中剩余点的线性组合,我们可以通过学习获得位于同一子空间中的点。 最稀疏的组合。 因此,我们需要学习稀疏的自表示系数矩阵C,其中X = XC,并且如果第i和第j个数据点来自不同的子空间,则C_{ij} = 0。

我们的迭代方法旨在同时学习数据表示和子空间聚类结果。 我们首先利用稀疏子空间聚类算法对给定数据进行聚类以更新子空间id,然后利用聚类结果更新卷积神经网络的表示参数。 通过迭代这两个步骤,我们不仅可以获得给定数据的良好表示,而且可以获得更精确的子空间聚类结果。

符号: 我们将数据矩阵表示为,其包含来自n个子空间的N个数据点。 这些数据的簇标签是。 θ是CNN参数,基于此我们获得来自X的深度表示。我们在上加上一个上标, 表示在时间步长t他们的状态。

3.2 一个迭代方法

我们提出了一个迭代框架来组合子空间聚类和表示学习过程。

如图1所示,在时间步t,我们首先聚类数据表示X以获得子空间簇标签yt。 然后将X和y输入CNN以获得表示X.因此,在时间步t

其中SSC是经典的稀疏子空间聚类方法[7],f是提取输入X的深度表示的函数,使用y^{t}训练的CNN。

由于初始化的聚类结果可能不可靠。 我们从最初的过度聚类开始。 如图2所示,我们首先将数据聚类为2个子空间,然后增加聚类数k并迭代直到达到停止标准。

在我们的迭代框架中,我们累积了所有时间步长的损失,这些损失被表述为:

我们假设所需簇的数量是n。 然后我们可以建立一个迭代过程,T = n - 1次步。 我们首先将数据聚类为2个子空间作为初始聚类。 给定这些初始聚类,我们的方法可以学习数据的深层表示。 然后,对于新的数据表示,我们将它们聚类为3个子空间,并使用更新子空间标签学习更新表示。 如算法1中所总结的,我们迭代该过程直到簇的数量达到n。 在每个迭代周期中,我们执行前向和后向传递以分别更新y和θ。 具体来说,在前向传递中,我们在每个时间步长增加一个簇。 在后向传递中,我们运行大约20个epoch来更新θ,并且还基于新表示更新亲和度矩阵C.

4 实验

猜你喜欢

转载自blog.csdn.net/shaodongheng/article/details/83060439