UMAP数据降维方法

开展数据降维的主要目的是更易于数据可视化,并识别高维数据集中的关键结构,将它们保存在低维嵌入中,减轻维数灾难,减少共线性带来的影响。常见的数据降维算法分为线性与非线性两大类。主成分分析(PCA)算法是 应用最为广泛的线性降维算法之一,能够快速寻找到原始变量的线性组合,通过保留少量的主成分,表征原始数据的主要特征。但是,PCA等线性算法不能处理高维到低维数据的非线性映射。

t-SNE(t-distributed stochastic neighbor embedding,t-分布随机邻域嵌入)、UMAP(Uniform Manifold Approximation and Projection,均匀流行近似和投影)是目前最流行的两种非线性降维算法,也是当前机器学习算法的应用研究热点之一,能够从数据中学习非线性模式,与PCA等算法相比,非线性降维算法能更好的分离样本。t-SNE算法不去寻找原始数据之间的逻辑组合关系,而是关注数据集中邻近样本之间的相似性,在低维空间中再现这些相似性。该算法的主要缺点是计算时间长,且不能对新数据进行预测。

UMAP算法工作原理与t-SNE类似,都是在高维空间中寻找距离,但测量距离的方式不同。UMAP算法假设数据样本均匀(Uniform)分布在拓扑空间(Manifold)中,沿着流形搜索数据并计算样本之间的距离,把数据样本近似(Approximation)映射(Projection)到低维空间,在低维再现这些距离。也就是说,该算法主要是学习高维空间中的流形结构,并找到该流形的低维表示方法。UMAP算法的特点决定了它的计算速度优于t-SNE算法,能够同时保留局部结构和全局结构。UMAP算法的本质是从高维数据中构建一个加权图,用边缘强度来表示一个点与另一个点的 “接近程度” ,然后将这个图映射到低维度上,在这个过程中需要确定关键的超参数,建立起数学模型。

n_neighbors:指定用于近似最近邻点的数量。较大的值关注更多的全局结构,较小的值关注更多的局部结构。

min_dist:低维空间中样本之间的最小距离。这个参数控制了UMAP将点紧密地聚集在一起的程度。

metric:UMAP将使用哪种距离度量来测量沿流形的距离,如euclidean距离、manhattan距离等,默认一般采用欧氏距离。

n_epochs:优化步骤的迭代次数。

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注