几种常见的降维工具
t-SNE
t-SNE(t-distributed stochastic neighbor embedding)是用于降维的一种机器学习算法,由 Laurens van der Maaten 和 Geoffrey Hinton在08年提出。t-SNE 作为一种非线性降维算法,常用于流形学习(manifold learning)的降维过程中并与LLE进行类比,非常适用于高维数据降维到2维或者3维,便于进行可视化。[1]
UMAP
统一流形逼近和投影 (UMAP) 是一种降维技术,可用于类似于 t-SNE 的可视化,但也可用于一般的非线性降维[2]。
该算法基于对数据的三个假设:
- 数据均匀分布在黎曼流形上
- 黎曼度量是局部常数(或可以近似)
- 歧管是本地连接的
根据这些假设,可以用模糊拓扑结构对流形进行建模。通过搜索具有最接近的等效模糊拓扑结构的数据的低维投影来找到嵌入。
UMAP与 t-SNE 相比,它提供了许多优势,最显着的是提高了速度并更好地保存了数据的全局结构。
UMAP 的核心与 t-SNE 非常相似——两者都使用图形布局算法在低维空间中排列数据。在最简单的意义上,UMAP 构建数据的高维图表示,然后优化低维图以使其在结构上尽可能相似。虽然 UMAP 用于构建高维图的数学是先进的,但它们背后的直觉却非常简单。
为了构建初始的高维图,UMAP 构建了一个叫做“模糊单纯复形”的东西。这实际上只是加权图的表示,边权重表示两个点连接的可能性。为了确定连通性,UMAP 从每个点向外扩展一个半径,当这些半径重叠时连接点。选择这个半径很关键——选择太小会导致小而孤立的集群,而选择太大会将所有东西连接在一起。UMAP 通过根据到每个点n的距离在本地选择半径来克服这一挑战th 最近的邻居。UMAP 然后通过随着半径的增长降低连接的可能性来使图形“模糊”。最后,通过规定每个点必须至少连接到其最近的邻居,UMAP 确保局部结构与全局结构保持平衡。
PCA
主成分分析算法(PCA)是最常用的线性降维方法,它的目标是通过某种线性投影,将高维的数据映射到低维的空间中,并期望在所投影的维度上数据的信息量最大(方差最大),以此使用较少的数据维度,同时保留住较多的原数据点的特性。
PCA降维的目的,就是为了在尽量保证“信息量不丢失”的情况下,对原始特征进行降维,也就是尽可能将原始特征往具有最大投影信息量的维度上进行投影。将原特征投影到这些维度上,使降维后信息量损失最小。[3]
评论区