在机器学习任务中,通常情况下,数据具有很高的维度,直接展示数据的分布情况很困难,可通过统计分析数据的分布情况来了解数据。统计分析概率分布固然好,也仅仅是个抽象的表示,始终不能对数据有个直观的认识。数据可视化通过降维,在低维空间直观展示数据,大大促进对数据的认识。
t-SNE(t-Distribution Stochastic Neighbor Embedding)是在SNE(Stochastic Neighbor Embedding)基础上演变而来,是一种非线性参数化降维技术,基于流形理论,当然,t-SNE和SNE关于降维的应用很少,而在可视化方面得到大量应用。
高维数据,比如词向量、文档向量、图像等,各个维度关系错中复杂。传统的线性降维技术,比如PCA,往往只关注于均值和方差,并不能很好地保持数据原有的局部结构和全局结构,比如相互靠近的高维相似数据点,在低维表示也应该是相互接近的;不同类别的数据点,应该相互区别。而SNE则解决了这个问题,t-SNE则在SNE的基础上进一步解决了拥挤问题。
SNE将距离转化为概率。高维数据点 xi、xj,其对应的低维数据点 yi、yj,那么其对应的高维空间(对应于方程中的下标h)和低维空间(对应于方程中的下标l)距离为: