NCSC
基础知识
高维数据的挑战
什么是子空间聚类
余弦相似度
相似度度量(Similarity),即计算个体间的相似程度,相似度度量的值越小,说明个体间相似度越小,相似度的值越大说明个体差异越大。
摘要
- 没有利用到谱聚类
- 可以扩展到更大的数据集上
- 确定一对点是否位于同一子空间上的一种分类器。
- 两个亲和矩阵,一个来自分类器,另一个来自子空间自我表达(监督协作方案中的训练)
1.introduce
NCSC
2.相关工作
2.1子空间聚类
根据亲和矩阵构造分类:
- 基于因式分解的方法
- 基于模型的方法
- self-expressiveness based methods(基于自我保护的方法)(现在是主流,因为他的凸公式和理论分析的存在)
self-expressiveness based methods:
- 基本思想:一个点可以用来自同一子空间的其他点的线性组合来表示。
- 优点:
- 1.它对噪声和离群点更有鲁棒性(健壮性)
2.自表达亲和力的计算复杂度不随子空间及其维数呈指数增长;
3.它还利用非局部信息,而不需要指定邻域的大小
KSSC(Kernel sparse subspace clustering):
- 优点:受益于预定义的核函数,如多项式或径向基函数(RBF),以将问题转换在高维(可能是无限的)再生的核希尔伯特空间中。
- 缺点:然而,目前仍然不清楚如何为不同的数据集选择适当的核函数,也不能保证由核技巧生成的特征空间非常适合线性子空间聚类。
DSCN(Deep Subspace Clustering Networks):
- idea:解决子空间聚类中产生的非线性问题,其中数据非线性映射到一个具有卷积自编码器的潜在空间,并在编码器和解码器之间引入了一个新的自表达层,以促进亲和矩阵的端到端学习。
- 缺点:虽然DSC网络的总体性能优于传统的子空间聚类方法,但即使对于中型问题,它们的计算成本和内存占用也会变得难以承受。
解决子空间聚类可扩展性的一些尝试:
- SSC-OMP(The SSC-Orthogonal Matching Pursuit):
idea:用OMP算法代替大规模凸优化过程来表示亲和矩阵
缺点:然而,SSC-OMP牺牲了聚类性能,转而支持加速计算,而且当数据点的数量非常大时,它仍然可能会失败。 - k-SCN(k-Subspace Clustering Networks):
benifit:可适用于大多数据集
idea:这是通过绕过亲和矩阵的构造,从而避免谱聚类来实现的,并将k-子空间聚类的迭代方法(曾,2000;布拉德利和曼加萨里安,2000)引入到一个深度结构中。
不足:虽然k-SCN开发了两种更新子空间和网络的方法,但它仍然与迭代方法有相同的缺点,例如,它需要良好的初始化,并且似乎很容易出现异常值。
2.2Model fitting(模型拟合)
区分离群点和来自干净样品的噪声样品以促进训练是一个积极的研究课题。
RANSAC(Random Sample Consensus随机样本共识):
- effect:将模型拟合到被噪声损坏的点的云上。
- 不足:在子空间上使用RANSAC(Yang等人,2006年)在大规模问题中似乎不是正确的做法,因为RANSAC需要大量迭代才能达到可接受的拟合。
课程学习(Bengio等人,2009年)开始从简单的样本中学习一个模型,并逐渐将模型适应于更复杂的模型,模仿人类的认知过程。
集合学习(Dietterich,2000)试图通过训练不同的模型来提高机器学习算法的性能,然后汇总它们的预测。
2.3深度聚集(Deep Clustering)
利用深度神经网络的一些方法
DEC(Deep Embedded clustering):
- idea:作者建议对堆叠式自动编码器(SAE)进行预训练(Bengio等人,2007年),并使用基于Student-t分布的正则化器对编码器进行微调,以实现集群友好的嵌入。
- downside:DEC对网络结构和初始化很敏感。
GAN:
- 采用各种形式的生成对抗网络(GAN)进行聚类,如info-GAN(陈等,2016)和ClusterGAN(穆吉等,2018),两者都打算加强潜在空间的识别特征来同时生成和聚类图像。
DAC(The Deep Adaptive image Clustering):
使用完全卷积神经网络(Springenberg等人,2014年)作为初始化来执行自我监督学习,并在各种聚类基准上取得了显著的效果。 然而,对网络结构的敏感性似乎再次成为DAC关注的问题。
our idea:
在本文中,我们通过协同学习两个模块,将子空间聚类表述为一个二元分类问题,一个用于图像分类,另一个用于子空间亲和力学习。我们不是在整个数据集上执行光谱聚类,而是以随机的方式训练我们的模型,从而导致了子空间聚类的可伸缩范式。
3.Proposed Method
- idea:识别一对点是否位于同一子空间上。
两个置信图
3.1 Binary Classification(二进制分类法)
计算
A
c
A_c
Ac的公式:
3.2 Self-Expressiveness Affinity
self-expressiveness:从线性子空间 { S i } i = 1 k \left \{S_i\right\}^k_{i=1} {Si}i=1k得出的一个数据点 X i X_i Xi可以通过来自同一子空间的其他点的线性组合来表示。
-
the self-expressivenss可以简单地将其表示为X=XC,其中C是系数矩阵。
-
学习亲和矩阵的损失函数可以写成:
其中,||.||p表示一个矩阵范数。
要处理数据损坏,可以将宽松版本导出为:
在这里,λ是一个平衡正则化项和数据保真度项的加权参数。
A
s
A_s
As得到公式:
其中,cmax是当前行的非对角线条目的最大绝对值。请注意,As(i,j)位于[0,1]中。
等同于
3.3 Collaborative Learning(协作学习)
协作学习:
- 分类模块:倾向于提取更抽象和有区别的特征
分类亲和力Ac(i、j)接近零,则强烈表明xi和xj不同(即负样本)。
- 自表达模块:侧重于捕捉数据样本之间的成两相关性。
只有当 X i X_i Xi和 X j X_j Xj来自同一子空间时,子空间的亲和力As(i,j)是非零的,这意味着As可以用于挖掘类似的对(即正样本)。
让这两个模块相互协作地进行监督。
协作损失函数
其中,
- 1 ( ⋅ ) 1(·) 1(⋅)是返回1或者0 的指示函数,
- α(称为协作率)控制Lpos和Lneg的贡献。 可以将其设置为正置信对与负置信对的数量之比,也可以对其进行微调以获得更好的性能。
- u 、 l {u、l} u、l是阈值参数,
-
H
H
H是熵函数,定义为
3.4 Loss Function(损失函数)
四个主要部分组成:
- 将输入数据 X X X通过encoder得到特征表示 Z Z Z;
- 通过自表达层得到 Z C ZC ZC ,权值C学习子空间亲和力;
- 将自表达层后的卷积解码器,即ZC映射回输入空间 X ^ \hat{X} X^;
- 输出k维预测向量的多层分类器,可以构造分类亲和力矩阵。
我们的损失函数由协作学习损失和子空间学习损失两部分组成,它们可以写为:
- Θ表示神经网络参数,
- λ c l λ_{cl} λcl表示协作学习损失的权重参数。
- L s u b ( X ; Θ , A s ) L_{sub}(X;Θ,As) Lsub(X;Θ,As)是通过自表达层训练亲和矩阵的损耗。
- 结合式(3)和卷积自动编码器的重构损失,得到:
在训练阶段之后,我们不再需要运行解码器和自我表达层来推断标签。我们可以通过分类器输出ν直接推断出集群标签:
,其中 s i s_i si是图像 x i x_i xi的集群标签。
4.优化和训练
三阶段的训练策略
- 来训练自动编码器和自我表达层,更新子空间的亲和力 A s A_s As;
- 训练分类器;
- 共同训练;
5.实验
details:
- 集群数k设置为10
- 预训练Auto-encoder为60轮,学习率为 1.0 × 1 0 − 3 1.0 × 10^{−3} 1.0×10−3
- 设置 λ1 = 10 在所有的实验中,稍微更改每个数据集的 l l l和 u u u。
- 对于MNIST,three-layer convolutional encoder。
- 激活函数——ReLU
- batch size to 5000
- Adam优化
- set the learning rate to 1.0 × 1 0 − 5 1.0 × 10^{−5} 1.0×10−5 the auto-encoder and 1.0 × 1 0 − 3 1.0 × 10^{−3} 1.0×10−3 for other parts in all training stages.
评判标准:
- ACC
- NMI
- ARI
结果
在MNIST
fashion-MNIST
Stanford Online Products