20210312 -
()
0. 引言
虽然一直在使用TSNE进行数据的可视化,但是都没有具体探究过这个算法的具体原理;同时呢,有时候也会遇到一些很奇葩的数据。
在网上看别人进行TSNE的实际操作,每次画出来数据都特别好看,但是为什么到了我这里的数据,就看起来非常难看?!本篇文章记录一些这方面的内容来进行思考。
1. 具体原理
关于他的具体原理,这里不再过多的去看大量的文章,这里找到一个文章,虽然在数学的部分不怎么理解,但是从他的描述上,我感受到这样一种思想,本质上可视化的过程,是要找到一种映射,这种映射实现的功能就是,在原始空间中两个点距离近,那么在新的空间中也会近。最后达到一个稳定的状态。
(不知道理解的对不对)
特别是后面的这个达到稳定状态的过程,在文章的最后有一个动图能够体现这个过程,这里不贴了,有兴趣可以直接去看。
2. 可分的思考
那么既然这样的话,平时经常遇到一个问题,那就是对分类问题的数据进行tSNE可视化,结果都显示不可分,这种情况怎么办?网上的一些例子,都是利用一些比较好分的数据来进行这个算法的展示,例如前面这个图,虽然不能说完全的线性可分,但是基本上没有太大的难度,分类出来的效果应该也挺高。
但是假如说,通过tSNE可视化出来的数据,非常差,基本上看不到什么可分的迹象,那这种情况应该怎么办?针对这个问题,我查了一些资料。在问答[2]中给出了一些解释,我感觉还算中肯。
答:存在两种层面的解释,理论层面,存在某种分类器,即使他们在这个角度上是混合在一起的,他们依然能够分开;在实际层面,出现这种情况,也代表着能够分开的可能性比较低,通过一些非线性的模型,或者集成,或者堆叠的模型可以帮助提升效果。
从这个解释上来看,那基本上就是没什么戏,虽然可以尝试集成学习。