请推荐除t-SNE以外的非确定性降维(Non Deterministic Dimensionality Reduction)算法
好问题!如果你在找 t-SNE 之外的非确定性降维算法,这里有几个实用的选项,附上它们的核心特点和适用场景:
UMAP(Uniform Manifold Approximation and Projection):虽然有人会纠结它算不算严格的非确定性,但默认设置下(比如低维嵌入的随机初始化、随机邻居采样)每次运行结果都会略有不同。它比 t-SNE 快得多,更擅长保留数据的全局结构(能看到 t-SNE 可能压缩掉的大簇),小数据集和超大规模数据集都能hold住。从单细胞RNA测序可视化到图像特征降维,它现在都挺受欢迎的。
原始SNE(Stochastic Neighbor Embedding):这是 t-SNE 的“前辈”算法,本身就是非确定性的——它用概率分布建模高维到低维的映射,优化过程自带随机性。它在保留局部邻域结构上表现出色,但不像 t-SNE 那样解决了“拥挤问题”,可能会出现簇重叠的情况。如果你最关心局部数据关系,且不介意大数据集上的性能稍慢,它依然值得一试。
LargeVis:专门为百万级样本的大规模数据设计的非确定性算法,用随机梯度下降优化嵌入。它平衡了局部结构保留和部分全局上下文,处理大数据的速度比 t-SNE 快很多。如果你在处理海量图像数据集或大规模文本嵌入,这个选项很合适。
参数化t-SNE(Parametric t-SNE):经典 t-SNE 的变体,用神经网络学习高维到低维的映射关系。由于网络权重是随机初始化的,每次运行结果会有差异,但它最大的优势是训练完成后可以为未见过的新数据生成嵌入——这是传统 t-SNE 做不到的。如果你需要降维模型具备泛化到新数据的能力,选它准没错。
扩散映射(Diffusion Maps):它的基础是拉普拉斯特征映射,但如果使用随机采样或近似计算(比如核矩阵的近似),就会带有非确定性。它基于扩散过程捕捉数据的几何结构,适合具有流形结构的数据,比如生物信息学中的样本数据。
内容的提问来源于stack exchange,提问作者user8523104

