t_SNE 非线性降维基础原理

简介: 本文记录了个人关于 非线性降维算法 t-SNE(t-Distributed Stochastic Neighbor Embedding)的学习理解,以供参考学习

1、PCA 线性降维

PCA 作为一种线性降维算法,它的线性体现在其本质是观察坐标系替换的时候,新坐标轴的生成本质是原始特征的一个线性组合,最后通过删减可解释方差最小的主成分完成数据的特征降维。

2、非线性降维

对于非线性降维算法,在于它不是寻找基于原始特征线性组合的方式生成新观察坐标系,而是关注数据集中相邻样本之间的相似性,并试图在低维空间中再现这些相似性。

2.1 t_SNE 降维策略

t_SNE 算法策略在于首先计算了高维空间中样本与样本间的欧式距离并转换为相似性分数,然后在一个二维空间上通过随机化所有样本并持续移动这些样本(移动过程基于KL散度建模),使得它们在二维空间中彼此间的距离与原始高维空间中的距离分布尽可能相似完成降维。

优点: t_SNE 相比 PCA 方法主要更好地 突出 数据集中的成簇特征。
缺点

  • ①生成的( tsne_1 和 tsne_2 特征轴 ) 不具有可解释性,因为它们不代表原始特征的逻辑组合,像 PCA 方法就可以清楚的根据特征向量解析主成分轴上原始特征的方差贡献情况。
  • ② t-SNE 在低维空间中的距离主要用来反映簇内样本间的相似性,但 簇间的距离不具有意义。比如对于在 t-SNE 中展示的3个集簇:两个距离很近,第三个距离另外两个很远,但不能说前两个簇彼此之间的相似性比它们与第三个集群之间的相似性更高。
  • 主要用于可视化,很难用于其他目的。

2.2 基本过程

step.1 首先计算原始高维空间内两两样本间的 欧式距离;然后通过高斯函数模型(高斯核)将距离度量矩阵转换成样本间的相似性分数矩阵 $X_{raw}$。由于 高斯核 受样本方差的影响,直接转换出的相似性分数对于一些稀疏的簇可能无法表征簇特征(因为样本间相似度变得很低),所以为了不同 $\sigma$ 参数计算的相似性分数变得可比同时在矩阵中突出簇特征,需要对原始的分数基于行进行比例归一化处理($p_{ij\_scale} = \frac {p_{ij}}{sum(p_i)}$)。

step.2 接下来初始化两个 tsne特征轴 并生成随机分布的所有样本。在这个二维空间内计算样本间的距离,并使用 t-分布概率密度函数 转换距离矩阵为相似性分数矩阵$X_{new}$。

t-SNE 本质是方法源于 SNE 降维策略提出的优化方法,SNE 在低维空间下也使用高斯函数来表达两点之间的相似度,但在低维后容易发生 crowding problem (拥挤问题,指的是各个簇聚集在一起无法区分)。 t-SNE 方法的提出主要是为了解决前者降维后所发生的 拥挤问题,在低维空间下使用了 t分布 替代高斯分布来表达两点之间的相似度, t分布 相比高斯分布函数曲线更平坦和具有更长的拖尾,这意味着高维空间内中低等相似的两个样本在低维空间的距离需要被放大(同理缩小相似样本的距离), t-分布概率密度函数 转换出的相似度才能与高斯核的结果相同。因此 t分布 的引入很好地满足了使得同一簇内的点(距离较近)聚合的更紧密,不同簇之间的点(距离较远)更加疏远的可视化目标。

step.3 最后一步就是根据两个相似性分数矩阵 $X_{raw}$ 和 $X_{new}$ 的差异性,使用 KL散度统计量 建模优化目标,计算梯度来移动初始化的系列样本点,使得每个样本都向高维特征空间中靠近它的样本点 靠拢,并 远离 高维特征空间中远离它的其它样本点。从而逐渐减少两个相似性分数矩阵的差异,也就是两个矩阵的KL散度统计量,一定迭代次数后收敛在低 KL 散度的获得tsne降维结果。
$$ C = \sum_{i}KL(P_i\|Q_i) = \sum_i\sum_j{p_{j|i}\log{\frac {p_{j|i}}{q_{j|i}}}}$$
$P$ 是高维空间上的相似性矩阵;$Q$ 是每次迭代后低维空间上的相似性矩阵。

tsne 使用KL散度(相对熵)作为损失函数存在罚分不对称的问题,即对于高维近低维远的情况罚分高(p = 0.99,q= 0.0001,cost = 0.99*log(0.99/0.0001) = 9),反过来对于高维远低维近的极端情况罚分却趋近于零(p = 0.0001,q= 0.99,cost = 0.0009)。从而导致目标点的移动过程中属于高维近低维远情况的移动步长更长($\frac {\partial C}{\partial q} = -\frac {p}{q}$),发生迭代到最后低维空间上出现整体相似的簇之间的距离比与不相似的簇之间的距离还要远的情况。也就是 tSNE 降维结果在全局结构上存在失真可能,所以 t-SNE 通常被认为在低维表示中主要保留相似样本的簇特征,但它不保留全局结构。最终表示中彼此接近的样本可以解释为彼此相似,但不能轻易说出原始数据中哪些样本簇与其它样本簇更相似。


Reference

① t-SNE 算法过程
② tsney与umap的差别
③ Maximizing similarity with t-SNE and UMAP
④ Softmax函数和交叉熵Cross-entropy以及KL散度求导_winycg的博客-CSDN博客_kl散度求导

目录
相关文章
|
7天前
|
云安全 人工智能 运维
阿里云联动百位企业安全专家,共识Agent防御最佳实践
当Agent成为新员工,你的安全边界在哪里?
1922 6
阿里云联动百位企业安全专家,共识Agent防御最佳实践
|
5天前
|
存储 人工智能 关系型数据库
阿里云AI产品与云产品最新组合套餐:Token Plan、AI coding及云服务器和建站等组合优惠价
阿里云推出全新“算力+模型+应用”一站式云与AI组合套餐活动,覆盖从个人开发者到中大型企业的全场景需求。核心亮点为分三档定价的Token Plan订阅服务,支持Qwen3.8-Max-Preview大模型调用,错峰时段最低可享0.2折优惠。活动同步推出AI Coding、智能体部署、云电脑托管、0代码建站等十余类场景化组合,搭配99元/年的普惠云服务器、88元/年的入门数据库等经典特惠产品,还为企业提供1V1定制化AI转型方案,大幅降低了不同用户群体拥抱AI的技术门槛与采购成本。
652 111
|
15天前
|
人工智能 JSON 安全
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
阿里云AI安全产品联动防御Fastjson攻击
2556 13
Fastjson远程代码执行漏洞,阿里云AI安全为您保驾护航
|
7天前
|
人工智能 弹性计算 数据库
阿里云优惠券种类解析:主要券种区别和适用群体及领取和使用指南
2026年阿里云构建了覆盖全用户的七类优惠券,本文逐一拆解了每类优惠券的核心规则、适用人群与使用技巧:大促限定的阶梯满减券分个人、企业双通道,最高可减800元;学生专属300元无门槛券支持全品类通用;按量付费用户可参与消费达标返券形成循环优惠;新用户有低门槛专享满减券尝鲜;老用户可领取系统自动发放的随机福利券;中大型企业迁云可申请最高100万元的专项补贴;云产品通用券还能在活动价基础上实现折上折。不同身份、不同采购场景的用户均可通过精准匹配对应优惠券,最大化享受优惠力度。
462 110
阿里云优惠券种类解析:主要券种区别和适用群体及领取和使用指南
|
13天前
|
人工智能 前端开发 Linux
Codex 桌面版安装 + CC Switch 接入第三方 API 完整教程(2026 最新)
2026最新教程:手把手教你安装Codex桌面版,通过CC Switch v3.17.0一键接入Fenno等国产API(兼容OpenAI Responses格式),跳过账号登录,完整启用代码审查、多步任务与上下文感知功能。零基础友好,全程图文实操。(239字)
1617 2
|
15天前
|
人工智能 自然语言处理 数据挖掘
Qwen3.8-Max-Preview深度全解析:2.4万亿参数旗舰MoE模型+Token Plan限时优惠完整落地指南
2026年7月,全新旗舰级混合专家大模型Qwen3.8-Max-Preview正式开放抢先体验,作为通义千问Qwen3系列规格最高、综合推理能力顶尖的新一代模型,该模型总参数量达到2.4万亿(2.4T),是当前线上可调用的原生多模态旗舰模型,综合推理水准对标海外顶级Fable 5模型,在复杂工程开发、长文档深度分析、多步骤智能体自治、跨境多语言创作、海量数据挖掘五大高难度业务场景实现跨越式性能提升。
1428 2
|
17天前
|
人工智能
Qwen3.8抢先体验!正式版即将发布并开源!
千问Qwen3.8即将开源,参数达2.4T,进化速度以“天”计,实力媲美Fable 5。预览版Qwen3.8-Max已上线阿里Token Plan等平台,限时优惠:日间Credits低至1折,夜间更优,个人/团队版月付仅35元起!
1499 55
|
2天前
Qoder 一周年 × Qwen3.8-Max 正式上线,多重好礼限时领
8月3日,Qwen3.8-Max 正式上线Qoder,迎来Qoder一周年。新老用户可领800次免费调用,下单再赠2000次;夜间(22:00–08:00)调用5折;邀请好友双方得积分与调用额度。
248 0