saehm / DruidJS

A JavaScript Library for Dimensionality Reduction
107 stars 9 forks source link

The docs should state which type of MDS is implemented #24

Closed prayerslayer closed 2 years ago

prayerslayer commented 3 years ago

Hi there, thank you for this project. I found it in search for a non-metric MDS implementation in JS, which brings me right to my point.

There are many different flavors of MDS around, see e.g. this survey paper, and they are also not always consistently named: {metric, non-metric, ordinal, generalized, weighted, classical, ...} MDS. Therefore it would be nice if the docs would state explicitly which one is used here.

Judging from the code it seems your implementation is what's often called classical MDS, i.e., the flavor which is not weighted and assumes an Euclidean distance matrix?

Thanks again!

saehm commented 2 years ago

Hey, thank you.

I added it in the docs, I guess it is classical MDS, not weighted but you can choose the distance metric to compute the distance matrix, you could also provide a distance matrix itself to the function.