关于t-sne 可视化方法的 原理与推理 (一)

1.在很多领域中,高维(dimension)数据的可视化已经日益变成一种非常重要而亟需解决的一个问题。这种问题主要源自于
人们无法直观理解高维空间中的数据,比较人们的思维普遍还存在于三维空间中来处理、理解事物。
经过科学家的能力,在可视化技术中出现了非常不错的方法,而主要的方法就是通过降维的手段来处理数据,并投影到二维
或三维空间中,主流的有 PCA(主成分分析)、MDS(multi-dimensional scaling 多维尺度分析 类似于谱聚类,尽最大努力保留原
先样本的近似度距离)、ISOmap(等距离映射),这些都是常规的流形学习中尽量保持原先距离信息的降维手段(线性的),但是很多
情况下由于一些异常值信息的存在,导致在降维之后的数据中仍然保留异常信息与其他一般信息的相对距离,因此在降维后
的一个比较 小的平面中的距离的时候可能会 使得相似的距离过于集中,而不相似的距离太过于分散,为了平衡(trade-off)
降维后的距离同时不失去原有信息的情况下,才会出现SNE ,T-SNE等等基于概率分布的降维手段。
2.例子 ,比如说一个关于 心脏疾病的细胞核(Street at al., 1993)拥有大约30个纬度变量的数据,还有些关于图片的信息以及
文字统计信息(TF-IDF)拥有上千纬度。这些信息都是高维表示的,无法直观理解,很多现成的技术( Important techniques include
 iconographic displays such as  Chernoff faces (Chernoff, 1973), pixel-based techniques (Keim, 2000), and techniques that represent  the dimensions in the data as vertices
 in a graph (Battista et al., 1994). )得到的降维通常是高于2维的
投影后的方差最大,左下角为0 右下角为1,这个两个类分得很开,一般来说这种区别是很明显的,所以横轴是一个主成分,右图是一个无标签数据,那么大家还能识别这个类吗?
pca能够做得更好吗?这个空间是非线性的,简单的欧式距离是无法满足这些距离特征的,因此很多时候会保留局部特性如下图
非线性空间的样子如下图


其他可视化方法的

3. X = { x 1 ; x 2 ;...; x n }为输入空间, Y ={ y 1 ; y 2 ; ...; y n }  为降维之后的空间,一般的可视化降维手段展现较低纬度的空间 Y,并且在Y空间中,尽量保证或保留原来重要的结构
信息(如:距离)。PCA,MDS一般是线性手段,而很多非线性技术主要是保留原有数据的局部特征。
    1.Sammon mapping 2.CCA 3. SNE 4.ISOmap 5.MAU 6 .LLE(局部线性嵌入) 7 LE(拉普拉斯矩阵谱)
有时候这些方法对于人造的数据的表现非常不错,然后在现实中表现不佳,或者说总体来说这些方法无法同时保留 原先数据的局部以及全局特征。
    t-SNE 方法同时保持了原有数全体与局部结构的特性。因此表现非常不错
进入学习T-SNE阶段
4.T-SNE 是 SNE发展而来的,因此先了解SNE对我们了解T-SNE非常有帮助
SNE 全名 stochastic  neighbor embedding 
                 
  1. 输入空间原先具备的局部相似性,xi为输入空间数据
        其中p{i|i} = 0
                    用一张图显示,这个黄点距离也就越大。
这有别于欧式距离计算方法,它是一种条件概率也就是 :对于xi点来说,任一一个xj点作为xi邻居的概率是多少?而概率这是我们人们理解事物的一个非常重要的侧面。这样的伟大创作
无法用言语来形容,只能膜拜了。。。这个系数很有意思,就类似于聚类算法中的轮廓系数,也是一个点在高维空间中的非常重要的特性。

  1. 输出空间具备的局部相似性
        其中q{i|i} = 0
  1. 目标函数 KL散度.
        散度衡量的是信息增益的损失,也就是在SNE迭代过程中,每次都会与原分布进行对比,为了保证两个分布之间尽量相近,那么就是要最小化目标KL散度(非对称)
        然而不能让每个点都参与迭代,因为这样耗时耗力,吃力不讨好,一般就是选择其中的几个领域节点来迭代,因此也叫做neighbor,换句话说,SNE主要针对的是局部特性( s i)。
        
     因此 ,最终的关键点就是方差 s i ,每个数据点对应分布Pi方差都是不一样的,很直观的表现就是密度越集中的地方,方差
越小,如何衡量方差就是sne的关键要在,因为这里唯一不确定的是方差这个超参数。

      4.困惑度
Perp(Pi) = 2 ^ (H(Pi))
该熵值很容易理解为一种不确定性,这种不确定性越大,值越大,在本文中可以看成是一种能量,而且没有什么比喻比这更贴切的了。这种能量是
每个点都固有的,最重要的是困惑度还可以理解为有效的邻居数。一般都是整数的,也是需要做调整的。一般来说比较好的参数在5-50之间 【1】

SNE通常使用梯度下降法去解决优化目标问题,最后式子成如下,还是很简单的
初始yi,然后添加一个步长因子(学习率可大可小),一般是方差的一半,最后收敛到最优的那个yi就是最优解
为了方便理解,此迭代因子可以理解为每个点(分子)在平面上移动的速度快慢,而移动的快慢右两股力决定,一股力由其他点现存的值决定,其他的点离这个点越远,那么分子运动得越
剧烈,另一股力是由配错率 ,决定,如果配错率很低,那么就跑得慢,配错率越高就越快。

而初始化也是一个比较讲究的部分,因为初始化的好坏对优化一个目标的收敛快慢与效果有着很大的影响。

然而这样的方法仍然不是最优的,因为很可能会出现局部最优,因此将会以模拟退火概率性地跳出寻找是否有最优解的方法。在很大程度上可以做到全局最优。


  1. t -sne 为什么会出现???它的出现是出于什么目的,累了。。。下面再出吧

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值