【零散知识】t-SNE聚类

前言:

{

    神经网络实践部分还是卡在硬件上,之前试了一下华为云里的深度学习服务[1],感觉这只是为训练加速用的,远程调试还是不容易,最好还是在本机上进行。所以我先买了新的内存条,调试还是在本地进行。

    这次更新的还是零散知识,涉及到之前在工作的时候见到的t-SNE聚类(t-distributed stochastic neighbor embedding)。

}

正文:

{

    t-SNE聚类本质上是一种降维和可视化技术[2]。首先讨论SNE,定义原始维度数据和对应低维数据各自的相似度量,见式1和式2[3]。

式1

   

式2

    其中xi和xj是两个原始维度数据,yi和yj是对应的低维数据。可以看到式1和式2的值都和相似度成反比,而SNE就是要最小化两者的差异。

    因此可以看出,SNE在对数据进行降维的时候尽量使得两种数据中的距离关系尽量一致。

    现在说t-SNE。t-SNE设y服从t分布,如式3[2]。

式3

    y是未知的,需要进行训练优化。[2]中使用的优化方法是梯度下降,损失如式4[2]。

式4

    另外,t分布的方差似乎不参与优化,是被主动设置的。

}

结语:

{

    [2]和[3]中都给出了困惑度,但都没有用到优化过程中,不知道是做什么用的。见式5。

式5

    参考资料:

    {

        [1]https://www.huaweicloud.com/product/dls.html

        [2]https://www.infosec-wiki.com/?p=433118

        [3]https://www.jianshu.com/p/8a2a69e66be7

    }

}

猜你喜欢

转载自blog.csdn.net/fish_like_apple/article/details/83098592