我希望这是发布的正确位置 - 如果不是,我愿意更改为 SO。
无论如何,我使用 MDS 来帮助我找到数据集的二维表示。从本质上讲,这些是多年蛋白质数据中氨基酸残基的 pKa 值 - 其核心是相同尺度的十进制数。有很多职位(~600 行),还有很多年(~12 列)。
我的问题是:MDS 的正确输入是数据矩阵(年与职位),还是我可以放入相关矩阵(年与年)?我问是因为 API 文档与书面描述冲突。
API 文档说数据矩阵:http://scikit-learn.org/stable/modules/generated/sklearn.manifold.MDS.html#sklearn.manifold.MDS(即 n_samples、n_features)。
书面描述说“输入相似度矩阵”:http://scikit-learn.org/stable/modules/manifold.html
最佳答案
如果您将 dissimilarity='euclidean'
传递给初始估计器(或默认情况下),它将采用数据矩阵并为您计算欧几里得距离矩阵。
如果你通过 dissimilarity='precomputed'
,它需要一个相异矩阵。
不过,文档确实不是很清楚。我确信拉取请求在 X
参数的描述中添加一个简短的注释,并澄清 'euclidean'
是默认值(我必须检查源代码),将被接受。
关于python - scikit-learn 的 MDS 的正确输入是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25192093/