球面上的双随机邻居嵌入笔记(Doubly Stochastic Neighbor Embedding on Spheres )
introduction:SNE存在比较严重的拥挤问题,这种拥挤问题的产生主要是由于SNE倾向于把高阶的数据点放在中心,而把低阶的数据点放在外围这就造成了数据的拥挤问题,为了解决这个问题在2003年Laurens van der Maaten和Geoffrey Hinton提出了t-SNE来解决这个问题。本文作者做出的技术改进是:首先引入了快速归一化的方法,把相似矩阵归一化为双随机,那么所有的数据点就具有相等的相似度。用球面的替代平面的嵌入空间从而实现去中心化而且当输入的矩阵是双随机矩阵的时候,低维空间的数据点将会嵌入到球体的周围(通过下面的图形可以发现),这有助于不同镞数据之间的相似性,如果输入领域图(neighborhoodgraph)是非对称的可以将其转化为双随机矩阵。其次,如果输入的矩阵是双随机的那么数据点通常会分布在球上, 根据这种现象本文将二维欧氏嵌入空间替换为三维空间中的球体,从而实现去中心化来避免出现“拥挤问题”。
通过上面左边t-SNE数据可视化和右面DSNES可视化可以直观的发现DSNES的效果明显要优于t-SNE可视化的效果,有效的解决了拥挤问题。
method:输入矩阵P是个非负对称矩阵(nonnegative and symmetric matrix ),如果节点的度(即P的行和或列和)分布高度不均匀,高阶节点的吸引力更大而低阶节点的吸引力更小(在t-SNE的KL散度梯度下降过程中,将下降的结果视为引力和斥力作用的结果)。所以这就会造成拥挤问题的出现。为了解决这个问题,对图亲和力进行规范化使图的节点具有相同的度。使得矩阵的和约束同样对于双随机也有同样的定义。
如果给定的矩阵是一个非规范化矩阵(non-normalized matrix),我们可以应用Sinkhorn-Knopp的方法将其投影到最近的双随机矩阵P,通过这种方式来保证矩阵的稀疏性。这种方法的原理是:初始化P=S并迭代以下更新规则,直到P收敛,对于所有的i都有,对于所有的i、j也有。
通过以下方法也可以构造双随机矩阵:假设反对称矩阵,