My understanding of tSNE is that probability distributions are optimized in a way to maintain Euclidean (by default) distances (on average) when transforming from the input to the output space. If that is the case, when transforming from 2D to another 2D space, wouldn't the identity transformation be the ideal tSNE? I know that tSNE transformation is a somewhat random process, but I'd expect distances to be maintained generally.

By contrast, when applying a tSNE to the following data, the result has a very different distribution of distances. Note in particular the distribution of red dots:


enter image description here


enter image description here

This example has been produced using

from sklearn.manifold import TSNE
tsne = TSNE(random_state=1).fit_transform(data)

compare https://scikit-learn.org/stable/modules/generated/sklearn.manifold.TSNE.html

  • $\begingroup$ Have you looked at your distances matrices ? It is fairly possible that two differents looking graphes have similar distance matrices. $\endgroup$ Commented Oct 28, 2020 at 9:42
  • 1
    $\begingroup$ tSNE does not preserve distance, here is a good blog that presents various experiments with t-SNE : distill.pub/2016/misread-tsne $\endgroup$
    – mprouveur
    Commented Oct 28, 2020 at 15:10
  • $\begingroup$ @mprouveur thanks, that's a good read! "The t-SNE algorithm adapts its notion of “distance” to regional density variations in the data set. As a result, it naturally expands dense clusters, and contracts sparse ones, evening out cluster sizes." $\endgroup$
    – bers
    Commented Oct 28, 2020 at 21:42


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.