I am comparing dimension reduction techniques and I am utilizing them for data visualizations onto a plane – projections in 2D space.

The input into a projection/dimension reduction techniques is a symmetric similarity matrix which is constructed from many items. The goal of the projection is in the task of visualizing similar items close to each other.

I have chosen and described already two techniques – PCA and t-SNE. They are clearly different and have some aspects. For example, the resulting visualizations of t-SNE are better than PCA since t-SNE preserves small pairwise distances and my goal is in the finding the similarities of items, not about preserving the large distances and maximizing variance as PCA does. Just as PCA is a wrong choice in this, I would like to find another approach maybe distinct from PCA, t-SNE.

But what could be another technique to compare them to? Multidimensional scaling?

I would like it to be another well-performing and often used technique. There are publications which describe many (FODOR, Imola K. A survey of dimension reduction techniques. Lawrence Livermore National Lab., CA (US), 2002...) but I would like to get a fast advice which technique's performance could be great to compare with PCA and t-SNE.

Big thanks to you for a response!


closed as too broad by Michael Chernick, mdewey, kjetil b halvorsen, jld, amoeba May 8 '18 at 21:14

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • $\begingroup$ There are many dimensionality reduction methods. There's no way to make a principled recommendation for a single one based on the information in your question. The best bet would be to read through some review papers and see what fits your data and goals. $\endgroup$ – user20160 Apr 28 '18 at 21:29
  • $\begingroup$ You can find some insight towards making your choice from this paper: academia.edu/31452116/… $\endgroup$ – Dynamic Stardust Apr 28 '18 at 21:52
  • $\begingroup$ @DynamicStardust thank you very much, there are nicely described the ideas of the methods in short $\endgroup$ – xdaniel Apr 28 '18 at 23:56
  • $\begingroup$ @user20160 thank you too, it doesn't need to be one recommendation – I updated the question accordingly $\endgroup$ – xdaniel Apr 28 '18 at 23:57
  • $\begingroup$ Having attempted to do this some in the past I think that, unless it's a well studied problem (MNIST) that you may simply need to try many different dimensionality reduction techniques and see what works best for your data. For small pairwise maybe try Isomap if t-SNE didn't work. Good luck. $\endgroup$ – PixelatedBrian Apr 30 '18 at 8:48

If you want to actually run some such methods I'd recommend looking at scikit-learn's manifold package. It contains methods like Locally Linear Embedding, Isomap, Local Tangent Space Alignment and spectral techniques (the ones based on Laplacian of kNN graph). In addition to that, the page I linked also contains explanations, links to relevant articles and computational complexity.

There is also a recent algorithm that was compared to t-SNE by its authors - UMAP (Uniform Manifold Approximation and Projection). It uses tougher math than algos from sklearn.manifold, but it should be interesting as the authors suggest it is fundamentally faster than t-SNE.


Not the answer you're looking for? Browse other questions tagged or ask your own question.