文章目录

  • 一、TSNE参数解析
  • 二、案例

  TSNE的定位是高维数据可视化。对于聚类来说,输入的特征维数是高维的(大于三维),一般难以直接以原特征对聚类结果进行展示。而TSNE提供了一种有效的数据降维模式,是一种非线性降维算法,让我们可以在2维或者3维的空间里展示聚类结果。

一、TSNE参数解析

  t-SNE是一个可视化高维数据的工具。它将数据点之间的相似性转换为联合概率,并试图最小化低维嵌入数据和高维数据联合概率之间的KL散度。t-SNE具有非凸的代价函数,即不同的初始化可以得到不同的结果。

class sklearn.manifold.TSNE(n_components=2, *, perplexity=30.0, early_exaggeration=12.0,
learning_rate=200.0, n_iter=1000, n_iter_without_progress=300, min_grad_norm=1e-07, metric='euclidean',
init='random', verbose=0, random_state=None, method='barnes_hut', angle=0.5, n_jobs=None,
square_distances='legacy')

sklearn.manifold.TSNE
优化TSNE
How to Use t-SNE Effectively想要具体了解参数含义与控制的可以参考这几个网站,我暂时没时间细细琢磨这些

二、案例

from sklearn.manifold import TSNE
from sklearn.datasets import load_iris,load_digits
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
import osdigits = load_digits()
X_tsne = TSNE(n_components=2,random_state=33).fit_transform(digits.data)
X_pca = PCA(n_components=2).fit_transform(digits.data)ckpt_dir="images"
if not os.path.exists(ckpt_dir):os.makedirs(ckpt_dir)plt.figure(figsize=(10, 5))
plt.subplot(121)
plt.scatter(X_tsne[:, 0], X_tsne[:, 1], c=digits.target,label="t-SNE")
plt.legend()
plt.subplot(122)
plt.scatter(X_pca[:, 0], X_pca[:, 1], c=digits.target,label="PCA")
plt.legend()
plt.savefig('images/digits_tsne-pca.png', dpi=120)
plt.show()


从结果可以看出PCA降到二维后基本混到一起来,很难进行区分。而t-SNE的效果非常的不错。
无监督学习之t-SNE


如果对您有帮助,麻烦点赞关注,这真的对我很重要!!!如果需要互关,请评论留言或私信!


TSNE—聚类结果可视化相关推荐

  1. Nature Methods | TooManyCells:单细胞聚类和可视化方法

    2020年3月2日宾夕法尼亚大学的Gregory W. Schwartz等研究人员在nature methods上发表了题为TooManyCells identifies and visualizes ...

  2. python用tsne降维图像_python代码实现TSNE降维数据可视化教程

    TSNE降维jne免费资源网 降维就是用2维或3维表示多维数据(彼此具有相关性的多个特征数据)的技术,利用降维算法,可以显式地表现数据.(t-SNE)t分布随机邻域嵌入 是一种用于探索高维数据的非线性 ...

  3. R语言层次聚类(hierarchical clustering):数据缩放、PCA聚类结果可视化、fpc包的clusterboot函数通过bootstrap重采样的方法评估hclust层次聚类的稳定性

    R语言层次聚类(hierarchical clustering):数据缩放.PCA聚类结果可视化.fpc包的clusterboot函数通过bootstrap重采样的方法评估hclust层次聚类的稳定性 ...

  4. R语言层次聚类(hierarchical clustering):特征缩放、抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员)、基于主成分分析的进行聚类结果可视化

    R语言层次聚类(hierarchical clustering):特征缩放.抽取hclust中的聚类簇(cutree函数从hclust对象中提取每个聚类簇的成员).基于主成分分析的进行聚类结果可视化 ...

  5. 流行学习、流形学习家族、局部线性嵌入LLE、随机投影(Random Projection)、t-SNE降维及可视化

    流行学习.流形学习家族.局部线性嵌入LLE.随机投影(Random Projection).t-SNE降维及可视化 目录 流行学习.流形学习家族.局部线性嵌入LLE.随机投影(Random Proje ...

  6. 层次聚类定义、层次聚类过程可视化、簇间距离度量、BIRCH、两步聚类、BIRCH算法优缺点

    层次聚类定义.层次聚类过程可视化.簇间距离度量.BIRCH.两步聚类.BIRCH算法优缺点 目录

  7. GMM / MoG 聚类 Matlab 可视化 实现

    GMM / MoG 聚类 Matlab 可视化 实现 GMM介绍 EM进行参数求解 GMM动态可视化 GMM的Matlab动态可视化代码 参考书籍:<计算机视觉 模型.学习和推理> GMM ...

  8. 基于Jupyter 完成聚类输出可视化效果+Excel数据处理输出分布饼图

    基于Jupyter 完成聚类输出可视化效果+Excel数据处理输出分布饼图 一.根据计科18大类学生的成绩数据(选取两个特征:1.平均成绩GPA: 2.面向对象程序设计成绩),将计科18大类学生分成 ...

  9. 高斯混合模型(GaussianMixture Model, GMM)聚类、可视化最优协方差形式、通过TSNE进行结果可视化分析、抽取核心特征因子

    高斯混合模型模型: sklearn.mixture.GaussianMixture 混合高斯模型(Gaussian Mixture Model,简称GMM)是用高斯概率密度函数(正态分布曲线)精确地量 ...

  10. K均值聚类(KMeans)、可视化选取最佳K值、通过TSNE进行结果可视化分析、抽取核心特征因子

    K-means算法是很典型的基于距离的聚类算法,采用距离作为相似性的评价指标,即认为两个对象的距离越近,其相似度就越大.该算法认为簇是由距离靠近的对象组成的,因此把得到紧凑且独立的簇作为最终目标. k ...

最新文章

  1. POJ2796 Feel Good(单调栈)
  2. 从零开始机器学习比赛经验(bird分享)
  3. HDD与OS的江湖恩怨
  4. nyoj-716 River Crossing(动态规划)
  5. bitmap xml大小 安卓_一张壁纸让安卓用户手机系统崩溃,包括三星、小米、一加等...
  6. Jfinal 显示欢迎页 index.jsp
  7. [html] html5都有哪些新的特性?移除了哪些元素?
  8. 玩游戏显示服务器不稳定,FPS不稳定是什么原因?玩游戏FPS低怎么办?
  9. Office 365 API平台概览
  10. knex入门学习使用方法
  11. Oracle Instance and Database
  12. 电路板中的常见电子元器件种类汇总
  13. 笔记本插拔电源声音怎么关_在笔记本电脑运行时将其拔出再插回电源是否安全?
  14. 外呼系统与网络电话有什么差别?应该怎么选?
  15. 云南艺术学院艺考开考 万人追逐艺术梦
  16. 2.修道士和野人问题
  17. 拿到赛季第五冠和职业生涯排名赛
  18. ippbx出现单通故障解决过程总结
  19. 关于股市的大起大落有感!
  20. scala-第一章-初始scala

热门文章

  1. [转载]针对IIS7以上的ASP.NET网站自定义错误页面与异常日志总结
  2. 猜数字游戏的提示 (Master-Mind Hints, UVa 340)
  3. Netty优雅退出机制和原理
  4. ABAP术语-Business Components
  5. ASP.NET Linux部署(2) - MS Owin + WebApi + Mono + Jexus
  6. java IO流、集合类部分小知识点总结
  7. 【转】linux常用命令:find、grep
  8. Liferay中配置MySQL数据库的两种方法
  9. Linux操作系统中sed工具常见用法
  10. NameNode和SecondaryNameNode的工作机制