什么是 多维尺度分析(MDS)?
多维尺度分析(MDS)是一组把对象放入低维坐标空间,使坐标间距离尽量逼近给定不相似度的方法。
快速了解
| 全称 | Multidimensional Scaling |
|---|---|
| 创建时间 | Classical Scaling 源于 1930 年代;Roger Shepard 与 Joseph Kruskal 于 1960 年代建立 Non-metric MDS |
| 规范文档 | 官方规范 |
工作原理
区分 Classical、Metric 与 Non-metric 目标
Classical MDS 对不相似度平方做双中心化,得到类似 Gram Matrix 的矩阵,再用最大的正特征值与对应特征向量生成坐标。如果输入是中心化观测的精确欧氏距离,该结果与 PCA Score 在旋转和镜像意义下等价。负特征值说明不相似度无法在请求的欧氏几何中精确实现。
Metric MDS 直接最小化不相似度数值与嵌入距离之差。Non-metric MDS 则拟合单调变换,主要保留顺序;Kruskal 原始表述为这种假设定义了量化 Stress 标准。
把不相似度构造视为模型的一部分
距离矩阵可以来自数值特征、评分、编辑成本、领域比较或图上路径。必须声明其尺度、缺失值策略、对称化规则与对角线约定。算法允许任意 Dissimilarity 输入,不代表这些数值在统计上有意义或属于欧氏距离。
当任务依赖 Metric Geometry 时,应检查 Triangle Inequality Violation;对 Classical MDS 检查负特征值,并同时检查重复对象、断连或被删失 Pair 及转换敏感度。除非外部分析提供证据,不应把坐标轴解释成有名称的原始特征。
联合评估 Stress、初始化与规模成本
迭代 Stress Minimization 属于非凸优化,不同初始坐标可能落入不同局部解。因此要比较多次初始化,记录最优值和拟合分布。当前 scikit-learn MDS 文档支持 Metric、Non-metric、预计算不相似度、Classical Initialization,以及 Normalized 或 Raw Stress 形式。
两两矩阵需要二次存储,限制完整 MDS 的样本规模。应比较不同目标维度的 Fit,尽可能使用留出或重采样不相似度,并按距离区间检查 Residual,不能只接受一个汇总 Stress 或一张好看的地图。
主要特点
- 以两两不相似度矩阵作为核心输入
- 输出坐标只在刚体变换与平移意义下确定
- 包含 Classical Eigensolver、Metric Stress 与 Non-metric 保序变体
- 可通过负特征值或持续残差暴露非欧氏输入
- 通常需要二次规模的两两存储与计算
- 必须检查拟合、稳定性、残差与可解释性
常见用途
- 可视化只有两两不相似度而没有原始特征的对象
- 从地理或网络距离表恢复近似坐标
- 映射人工相似度判断并保留其顺序结构
- 审查某种距离定义能否形成有用低维表示
- 作为 Isomap 内部最终的距离嵌入阶段
示例
Loading code...常见问题
Classical、Metric 与 Non-metric MDS 有什么区别?
Classical MDS 对双中心化距离平方矩阵做特征分解;Metric MDS 通过 Stress 拟合距离数值;Non-metric MDS 拟合单调关系,主要保留不相似度顺序。三者目标与诊断不能互换。
Classical MDS 与 PCA 有什么关系?
当不相似度来自中心化观测的欧氏距离时,Classical MDS 会在旋转、镜像与 Component Sign 意义下恢复与 PCA 相同的主坐标子空间。原始特征不可用时,MDS 仍可直接从距离开始。
MDS 的 Stress 衡量什么?
Stress 衡量输入不相似度,或 Non-metric MDS 拟合后的 Disparity,与输出 Configuration 中距离之间的不一致。Normalization 与 Weighting 定义会影响数值,不同公式的结果不能直接比较。
为什么 MDS 每次运行结果可能不同?
迭代式 Metric 与 Non-metric MDS 可能从不同初始坐标收敛到不同局部最优。应使用多次启动、固定 Seed、检查收敛,并在比较 Configuration 前完成旋转与镜像对齐。
MDS 能在不重新拟合时嵌入新对象吗?
标准 MDS 通常是 Transductive,因为所有坐标由完整两两不相似度联合拟合。部分 Classical 或 Landmark 形式存在 Out-of-sample Extension,但需要新对象到冻结参考集的距离,并单独验证。