【转载】 t-SNE是什么? —— 使用指南
原文地址:
https://www.cnblogs.com/LuckBelongsToStrugglingMan/p/14161405.html
转者前言:
该文相当于一个 t-SNE 使用指南,写的很好很有知识量。经常在CCF指定的国际A会A刊的论文上看到有论文通过比较两个神经网络最好的t-sne图来比较这两个算法的好坏,由于自己硕士研究生期间已经过机器学习数据可视化领域的技术对这个领域有所了解,这种可视化通俗的来说只是一种数据关系的抽象显示,一般都是关注局部数据特征关系或者再关注一些全局数据关系特点罢了,是难以用这个图来显示不同种算法得到的哪种数据的发布更好,近期实验室学术讨论上大陆博士也在用这种两个算法的t-SNE图来比较两个算法的好坏,这直接激发了实锤这个可视化算法具体用处的想法,因此就有了在网上看到这个博文的指南性说明,感觉博文写的不错,这里转载以作记录之用。
=======================
原文如下:
简短的速记t-SNE的作用,我是阅读了原文和一些博文才敢记录的
原文:Accelerating t-SNE using Tree-Based Algorithms
博文:
https://distill.pub/2016/misread-tsne/;
https://www.deeplearn.me/2137.html;
https://bindog.github.io/blog/2016/06/04/from-sne-to-tsne-to-largevis/;
http://bindog.github.io/blog/2018/07/31/t-sne-tips/
强烈建议阅读PPT:作者怒号:不要瞎用我的t-SNE!
Do's and Don'ts of using t-SNE to Understand Vision Models
=========================
t-SNE:学生t分布随机紧邻映射
目的是将高维的特征向量用低维(2维、3维)点可视化。
数学描述为:将高维特征向量的相似性用概率分布表示,此概率分布密度由高维向量的欧式距离决定,但不是正比关系,因为自己与自己的相似性为1但是条件概率为0;基于这个概率分布,在低维空间中找两个点构成低维空间的概率分布,通过梯度下降优化以上两个高维、低维空间概率分布的KL散度,可以求得低维空间上的两个点之间的关系。
简言之,高维空间上相似的两个向量在低维空间上的对应点更靠近。
注意:
1. t-SNE可视化关键作用在于将相似的特征聚集起来,仅此而已,即不相似的特征分开,相似的特征聚集,也就说尽量不存在不相似的特征重叠!!!
2. t-SNE可视化中任何两蔟集群的【间距都是没有任何意义的】,因为集群之间的距离并不能反映特征的不相似性和相似性!有很多论文都用错了这一点,特别注意,即便所有的超参都设置相同,随机两次的相同实验也不太可能得到相同的集群情况,因为t-SNE是在解决一个非凸优问题!
3. t-SNE可视化中一簇集群的聚集程度【可能也是没有意义的】,注意是可能!还是那么说,t-SNE的聚集程度都是可以通过不同的调参调出来的
4. t-SNE可视化的聚集与分离不能给出模型分类好坏的结论;但是可以作为要处理的数据集是否可被良好分类的引导和启发后面研究的先验
5. 再次重申,t-SNE可视化发现类间不混叠才是他的主要用途,而不同集群的距离和同一集群的聚集程度都没有意义
=========================
【转载】 t-SNE是什么? —— 使用指南的更多相关文章
- 转载:Chrome 控制台不完全指南
Chrome的开发者工具已经强大到没朋友的地步了,特别是其功能丰富界面友好的console,使用得当可以有如下功效: 更高「逼格」更快「开发调试」更强「进阶级的Frontender」 Bug无处遁形「 ...
- 转载:《RESTful API 设计指南》 阮一峰
原文:http://www.ruanyifeng.com/blog/2014/05/restful_api 网络应用程序,分为前端和后端两个部分.当前的发展趋势,就是前端设备层出不穷(手机.平板.桌面 ...
- [转载并收藏]JavaScript 疲劳终极指南:我们行业的真相
这篇文章说的深得我心,特别是前半段. 特此收藏. 中文译文:http://www.zcfy.cc/article/the-ultimate-guide-to-javascript-fatigue-re ...
- jQuery性能优化指南(转载)
现在jquery应用的越来越多, 有些同学在享受爽快淋漓coding时就将性能问题忽略了, 比如我. jquery虽在诸多的js类库中性能表现还算优秀, 但毕竟不是在用原生的javascript开发, ...
- d3.js 入门指南 - 仪表盘
D3的全称是Data-Driven Documents(数据驱动的文档),是一个用来做数据可视化的JavaScript函数库,而JavaScript文件的后缀通常为.js,所以D3被称为D3.js. ...
- d3.js 入门指南
说到数据可视化,我们会行到很多优秀的框架,像echarts.highcharts,这些框架很优雅,健壮,能满足我们对可视化的大部分需求,但是缺点也很明显,就是这些框架几乎是不可定制化的,当遇到特殊的需 ...
- .NET Core 2.0下载和文档
.NET Core 2.0 RTM 正式版2017/8/14 发布.对应发布 ASP.NET Core 2.0 .EF Core 2.0以及.NET Standard 2.0. 你可以通过 Visua ...
- Redis缓存和MySQL数据一致性方案(转)
需求起因 在高并发的业务场景下,数据库大多数情况都是用户并发访问最薄弱的环节.所以,就需要使用redis做一个缓冲操作,让请求先访问到redis,而不是直接访问MySQL等数据库. 这个业务场景,主要 ...
- ARM CORTEX-M3 内核架构理解归纳
ARM CORTEX-M3 内核架构理解归纳 来源:网络 个人觉得对CM3架构归纳的非常不错,因此转载 基于<ARM-CORTEX M3 权威指南>做学习总结: 在我看来,Cotex-M3 ...
- 移动H5前端性能优化指南(转载)
移动H5前端性能优化指南 概述 1. PC优化手段在Mobile侧同样适用2. 在Mobile侧我们提出三秒种渲染完成首屏指标3. 基于第二点,首屏加载3秒完成或使用Loading4. 基于联通3G网 ...
随机推荐
- CentOS7学习笔记(三) 用户和用户组管理
用户管理 Linux中root用户是权限最大的用户,一般情况下只有服务器管理员拥有root用户的使用权,而我们会使用其他用户来连接Linux 创建用户的命令 创建用户的命令是useradd name, ...
- 实验四:WinRAR漏洞
[实验目的] 通过打开rar文件,获取到目标机shell. [知识点] winrar漏洞 [实验原理] 该漏洞是由于WinRAR所使用的一个陈旧的动态链接库UNACEV2.dll所造成的,该动态链接库 ...
- Fastjson基础环境配置与Java基础概念
Preface 此篇系列文章将会从 Java 的基础语法开始,以 Fastjson 的各个反序列化漏洞分析为结尾,详细记录如何从一个具有基础面向对象编程但毫无 Java 基础的小白成长为了解 Fast ...
- Java跳动爱心代码
1.计算爱心曲线上的点的公式 计算爱心曲线上的点的公式通常基于参数方程.以下是两种常见的参数方程表示方法,用于绘制爱心曲线: 1.1基于 (x, y) 坐标的参数方程 x = a * (2 * cos ...
- git 有用配置汇总
背景 git config的不同级别,每一个级别覆盖上一级别的配置,所以.git/config的配置变量会覆盖/etc/gitconfig中的配置变量 git config --system #为整个 ...
- PHP接入苹果支付
Ios苹果支付流程: 客户端先从苹果获取内购Id. 客户端将内购id,金额.用户id等传给服务端获取一个自己服务端生成的订单号. 客户端向苹果发起支付. 支付成功后,客户端从本地拿支付凭证.将支付凭证 ...
- Python性能测试框架:Locust实战教程
01认识Locust Locust是一个比较容易上手的分布式用户负载测试工具.它旨在对网站(或其他系统)进行负载测试,并确定系统可以处理多少个并发用户,Locust 在英文中是 蝗虫 的意思:作者的想 ...
- makedown 笔记
前言 记录一下自己经常忘的makedown指令,不断更新. makedown 添加空格
- SSM配置文件分类及总结
配置组件通常涉及以下几个方面 数据访问配置 配置数据源.JdbcTemplate.事务管理器等,以支持数据库操作. 服务层与DAO层配置 定义服务类和服务实现类.数据访问对象(DAO)的bean,以及 ...
- MES 与 PLC 的几种交互方式
在 MES 开发领域,想要从 PLC 获取数据就必须要和 PLC 有信号交互.高效准确的获取 PLC 数据一直是优秀 MES 系统开发的目标之一.初涉相关系统开发的工程师往往不能很好的理解 PLC 和 ...