- 子空间聚类算法概述
现实世界中,大部分应用场景所需要用到的数据都不会是独立出来的某一类数据,而是多类数据集的混合。如果直接对混合数据进行处理,一是训练后所得的结果不理想,二是所需要的计算时间开销很大。因此,在对数据进行训练之前,先对原数据集进行预处理,将原数据集看成多个数据类的混合数据,每个数据类都是一个subspace。如果能使用一些方法将联合数据集中的data points分类到具体的所属子空间中去,再对自空间进行训练,会大大提高效率。现行存在的subspace clustering算法可以分成4类:1.iterative, 2.algebraic, 3.statistical, 4.spectral clustering-based methods.
- iterative, 主要有两个步骤。第一步是将样本点分配到对应的子空间中以及第二步是将每个子空间适配到对应的聚类。这两步交替迭代进行直到收敛。这种方法不仅对初始化要求敏感而且很容易得到的是一个局部解。此外,这些方法通常需要知道子空间的维数和数量。基于迭代统计的方法,作为一种迭代方法,也包含这两步。这些算法假设每个子空间中的数据样本分布符合高斯分布并且在上述两个步骤中通过使用最大期望方法交替执行。同样地,基于迭代统计的方法也具有一般的基于迭代的方法的缺点。
- algebraic, 基于因式分解的代数方法尝试着寻找两个矩阵,这两个矩阵的积接近于给定的数据矩阵,使得其中一个系数矩阵的支持模式提供样本的分割。当子空间是独立的时候,这些方法能够正确地聚类数据样本,但是当子空间是独立的这一条件违反的时候,就不能够得到正确的聚类结果。而且,他们对数据里面的噪声和异常值非常敏感。为了处理这些噪声和异常值,将额外的正则项被加进来改进这些算法
- statistical,基于