【机器学习】【无监督学习——降维】什么是T-SNE?它跟PCA有什么区别?深入解析t-SNE:从理论到实践的降维可视化指南

📑 摘要

本文全面深入地介绍了t-SNE(t-分布随机邻域嵌入)这一强大的非线性降维算法。从基础理论到实际应用,文章系统地阐述了t-SNE的核心原理、数学推导、参数调优以及在MNIST数据集上的具体实现。通过与PCA的对比分析,详细说明了t-SNE在保持数据局部结构方面的独特优势。文章还提供了完整的Python实现代码,展示了如何将高维数据可视化,并对结果进行定量分析。无论是机器学习研究者还是实践者,都能从本文获得对t-SNE的深入理解和实用指导。

关键词:t-SNE、降维算法、数据可视化、机器学习、MNIST数据集

什么是t-SNE降维?

t-SNE(t-Distributed Stochastic Neighbor Embedding,t分布邻域嵌入)是一种非线性降维方法,专注于在高维数据中保留点与点之间的局部结构。它特别适用于可视化高维复杂数据,如图像、文本或嵌入向量等。

t-SNE的核心思想

  1. 相似性建模:t-SNE通过计算概率分布来衡量高维空间中点与点之间的相似性,并尝试在低维空间中保留这些相似性。
  2. 目标函数:通过优化Kullback-Leibler散度(KL散度),使高维空间中邻近的点在低维空间中保持接近。
  3. 局部结构:强调点之间的局部关系,而不强求全局结构的保留。

t-SNE与PCA的区别

对比维度 PCA(主成分分析) t-SNE
方法类型 线性降维 非线性降维
核心目标 最大化数据在低维空间中的方差 保留高维空间中点对点的局部相似性
全局 vs 局部 适合保留全局结构 强调局部结构
速度和效率 快速,计算复杂度低 较慢,计算复杂度高
结果解释 降维后的主成分具有明确的线性意义 降维结果仅用于可视化和聚类分析
应用场景 特征提取、压缩维度 数据可视化、模式发现、聚类分析

核心区别

  1. PCA关注全局结构:通过寻找主要方向的线性变换,将高维数据投影到低维,适用于数据整体特征提取和降维。
  2. t-SNE关注局部结构:通过概率建模,让高维中“相似”的点在低维空间保持接近,更适合复杂非线性数据的可视化。

总结

  • 如果目标是快速特征提取并保持数据的全局性,选择 PCA
  • 如果需要深入分析数据的局部特性或用于数据可视化,t-SNE 是不二之选。

t-SNE的核心原理

1. 高维空间中的相似性计算

在高维空间中,相似性由条件概率表示。给定点 i 和点 j,定义点 j 相对于点 i 的相似度 p_{j|i} 为:

p j ∣ i = exp ⁡ ( − ∥ x i − x j ∥ 2 / 2 σ i 2 ) ∑ k ≠ i exp ⁡ ( − ∥ x i − x k ∥ 2 / 2 σ i 2 ) p_{j|i} = \frac{\exp\left(-\|x_i - x_j\|^2 / 2\sigma_i^2\right)}{\sum_{k \neq i} \exp\left(-\|x_i - x_k\|^2 / 2\sigma_i^2\right)} pji=k=iexp(xixk2/2σi2)exp(xixj2/2σi2)

其中:

  • x_i 和 x_j 是高维空间中的两个数据点
  • σ_i 是控制点 i 的局部范围的参数,通常通过一个特定的perplexity值(困惑度)自适应地计算

高维空间中任意两点的联合概率分布为:

p i j = p j ∣ i + p i ∣ j

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

宸码

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值