【每天一个知识点】子空间聚类(Subspace Clustering)
“子空间聚类(Subspace Clustering)”是一种面向高维数据分析的聚类方法,它通过在数据的低维子空间中寻找簇结构,解决传统聚类在高维空间中“维度诅咒”带来的问题。
子空间聚类简介
在高维数据分析任务中,如基因表达、图像识别、文档聚类和传感器数据挖掘等,数据往往分布在多个不同低维子空间中,传统的聚类算法(如 K-means、谱聚类)假设所有样本共享同一个空间,这在实际中会导致聚类性能下降。子空间聚类正是为了解决这一问题而提出,它旨在同时识别数据中的多个簇及其对应的子空间,使得每个簇不仅包含相似的样本,还具有特定的属性维度或特征组合。
子空间聚类的核心思想
子空间聚类认为,数据在高维空间中往往只在部分维度上表现出聚类结构,也就是说,不同簇可能“活跃”在不同的子空间中。例如,在基因表达矩阵中,不同细胞类型可能只在某些基因上表达出差异性,而在其他基因上无明显模式。子空间聚类的目标是同时学习:
-
样本分组:哪些数据点属于同一个簇;
-
子空间结构:每个簇所处的低维特征子空间(即相关维度)。
子空间聚类的典型方法
-
代数方法(Algebraic methods)
X=XZ+E
如 SSC(Sparse Subspace Clustering) 和 LRR(Low-Rank Representation),它们基于一个假设:样本可以表示为其所在子空间内其它样本的线性组合。
例如:其中 Z 是稀疏或低秩系数矩阵,E 是噪声。
-
谱方法(Spectral-based methods)
利用上述表示系数矩阵 ZZ 构建相似图,对其进行谱聚类。比如 SSC + Spectral Clustering。 -
几何方法(Geometric methods)
假设每个簇在某一线性子空间中,利用投影、平面拟合等方式识别这些子空间。例如 GPCA(Generalized Principal Component Analysis)。 -
深度学习方法(Deep Subspace Clustering)
如 DSC、DSC-Net、SubCo、以及你提到的 DCCMAF 也可看作具有子空间聚类特性的模型(通过多层特征提取 + 融合 + 自监督方式学习复杂的子空间结构)。
子空间聚类的适用场景
-
单细胞RNA测序数据分析(scRNA-seq):不同细胞类群在特定基因组合上聚类;
-
图像聚类:不同姿态、人脸或背景构成不同的子空间;
-
文本聚类:语义主题可投影到不同词向量子空间中;
-
高维传感器数据:多个时间序列段可能在不同变量组合上形成子簇。
子空间聚类与传统聚类对比
特性 | 传统聚类方法 | 子空间聚类方法 |
---|---|---|
维度处理方式 | 所有维度等价 | 寻找有用子空间 |
簇的形状 | 球状或任意形状 | 通常是线性子空间 |
对高维数据的适应性 | 差 | 强,尤其适合高维稀疏数据 |
输出结果 | 聚类标签 | 聚类标签 + 子空间结构 |