I have 6,000 points for which I have all pairwise distances in a distance matrix. I want to get an idea whether these data were generated by a mixture of Gaussian distributions so I'm trying to get a visualization. I am trying to apply multidimensional scaling in 2 dimensions using sklearn in Python.

I have four questions:

  1. In all the examples I found, the number of points were very limited (around 20). Is it possible to apply MDS with 6,000 points?
  2. If not, is there any way I can get a better idea whether my data were generated by a mixture of Gaussians? (I want to cluster this data using GMM.)
  3. sklearn uses the function manifold.MDS. One of the parameters of this function is 'random state'. What does it represent?
  4. In this example, the matrix used (X_true) has dimension 20x2. Shouldn't MDS take a distance matrix (i.e., a square matrix)?
  • 1
    $\begingroup$ There in the example, the data are generated and used to compute the matrix of distances. $\endgroup$ – ttnphns Feb 24 '14 at 17:55
  • 2
    $\begingroup$ It is possible to do MDS on 6000x6000 matrix, but it will take time (especially nonmetric MDS). $\endgroup$ – ttnphns Feb 24 '14 at 18:04
  • $\begingroup$ 1. Yes. 2. -- 3. Don't provide any random_state, default value is good enough. 4. Already answered by @ttnphns. $\endgroup$ – amoeba Feb 24 '14 at 23:28
  • $\begingroup$ There are many different types of MDS algorithms. Take a look of those algorithms listed in wikipedia page for "nonlinear dimensinality reduction". Many of them can be applied on large distance matrix. $\endgroup$ – James LI Mar 2 '14 at 21:46

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.