多维尺度分析法(MDS)

💡 一、MDS 是什么?------ 高维世界的"翻译官"

想象一下,你手里有一张记录了世界上所有城市之间"旅行时间"的表格(这是一个高维数据 ,因为旅行时间包含了距离、交通、地形等多种复杂因素)。现在,你想要把这些城市画在一张二维平面地图上,就像我们平时用的地图一样。

多维尺度分析法(Multidimensional Scaling,简称 MDS),就是扮演这个"翻译官"的角色。

MDS 的核心目标:

在一个低维空间(通常是二维或三维)中,重新排列你的数据点(比如城市),使得它们在低维空间中的相对距离 ,尽可能地与它们在原始高维世界中的"差异程度"保持一致。

简单来说,MDS 是一种数据可视化降维 技术,它关注的不是数据点的具体数值,而是数据点之间的关系

🗺️ 二、MDS 的适用场景:找到"感觉"上的相似性

MDS 最擅长处理那些难以直接用数值衡量的"相似度"或"差异度"。

场景 原始数据("差异") MDS 后的可视化效果
市场研究 消费者对不同品牌(如可乐、雪碧、芬达)的"相似度评分"。 在二维图上,相似的品牌会聚集在一起,让你一眼看出哪些是竞争对手。
心理学 实验对象对不同情绪词汇(如"愤怒"、"悲伤"、"平静")的感知差异。 情绪词汇会根据它们的"感觉"上的相似性被分组。
地理学 城市之间的实际距离(如用户提供的例子)。 将城市映射到平面上,还原出它们的地理相对位置。
生物信息学 不同物种基因序列的差异程度。 差异小的物种在图上距离近,形成进化树的雏形。

通俗例子:品牌定位图

假设你调查了 5 种饮料的相似度。MDS 可能会给你一张图:

  • "可口可乐"和"百事可乐"挨得很近(因为它们很相似)。
  • "雪碧"和"七喜"挨得很近(都是柠檬味汽水)。
  • "红牛"离它们都比较远(因为它是功能饮料)。

MDS 成功地把消费者主观的"感觉" ,转化成了一张客观的"地图"

📐 三、MDS 的输入与输出

MDS 的数据处理流程非常清晰:

项目 内容 关键点
输入 一个样本间的距离矩阵 (或叫不相似度矩阵)。 MDS 不需要原始的高维数据,只需要知道"A和B有多不同"。
输出 每个样本在低维空间(通常是 2D 或 3D)中的坐标位置 这些坐标就是你用来画图的 X 轴和 Y 轴数据。

距离矩阵的例子(城市距离):

A城 B城 C城 D城
A城 0 3 4 7
B城 3 0 2 5
C城 4 2 0 4
D城 7 5 4 0

MDS 的任务就是找到 A、B、C、D 四个点在平面上的坐标,使得它们之间的欧氏距离(平面上的直线距离)尽可能接近上面表格中的数值。

⚖️ 四、MDS 的基本思想:最小化"压力"(Stress)

MDS 如何判断自己"翻译"得好不好呢?它使用一个叫做 Stress (压力)的指标作为损失函数

  1. 原始距离 :高维世界中 A 和 B 的差异(dijd_{ij}dij)。
  2. 低维距离 :低维地图上 A 和 B 的直线距离(d^ij\hat{d}_{ij}d^ij)。

Stress 函数 就是计算所有点对的"原始距离"和"低维距离"之间的差距平方和

Stress(X)=∑i<j(dij−d^ij)2∑i<jdij2 \text{Stress}(X) = \sqrt{\frac{\sum_{i<j} (d_{ij} - \hat{d}{ij})^2}{\sum{i<j} d_{ij}^2}} Stress(X)=∑i<jdij2∑i<j(dij−d^ij)2

  • 目标 :通过调整低维坐标 XXX,最小化 Stress 值
  • 意义:Stress 越小,说明低维地图上的相对位置越能准确地反映原始数据中的差异关系。
  • 实现:MDS 会使用迭代优化算法(如 SMACOF)来不断微调坐标,直到 Stress 值达到最小。

🔬 五、MDS 的两种类型:度量与非度量

MDS 根据它对"距离"的理解程度,分成了两种主要类型:

类型 度量型 MDS (Metric MDS) 非度量型 MDS (Non-metric MDS)
特点 要求精确 :低维距离要与原始距离成比例(线性关系)。 要求相对 :只要求低维距离的顺序 与原始距离的顺序一致
适用场景 原始距离是数值可靠的(如欧氏距离、曼哈顿距离、实际的物理距离)。 原始距离是主观 的、感知 的或等级的(如"非常相似"、"有点相似"、"完全不同")。
通俗理解 "我要求翻译后的距离是原始距离的 1/1000。" "我只要求翻译后,最远的点还是最远,次远的还是次远。"

非度量型 MDS 在处理消费者感知、心理学数据等主观性较强的场景时,更为灵活和常用。

🆚 六、MDS 与其他降维方法的区别

MDS 并不是唯一的降维方法,但它有着独特的关注点:

方法 核心思想 保持的关系 关注点
MDS 几何还原:最小化高维与低维的距离差异。 全局距离关系 强调整体结构的匹配。
PCA 统计投影:找到方差最大的投影方向。 数据的协方差结构 强调信息量的最大保留。
t-SNE / UMAP 流形学习:保留数据点之间的局部邻域结构。 局部相似性 强调聚类效果近邻关系

总结:

  • 如果你想在低维空间中还原高维世界的"地图" ,让点与点之间的相对位置 尽可能准确,请用 MDS
  • 如果你想找到数据中最重要的几个特征 (主成分),请用 PCA
  • 如果你想让相似的数据点紧密地聚在一起 ,形成清晰的簇,请用 t-SNE/UMAP

🌟 七、MDS 的额外补充:结果解读

当你得到 MDS 降维后的二维图时,如何解读它?

  1. 轴的意义(维度) :MDS 的坐标轴本身没有预设的意义 (不像 PCA 的主成分)。你需要根据图上点的分布,人为地 赋予轴意义。
    • 例子:在饮料品牌定位图中,你可能会发现 X 轴代表"甜度高低",Y 轴代表"功能性强弱"。
  2. 点的距离 :图上两点之间的距离,就是它们在原始数据中的差异程度
    • 距离近:非常相似,可以视为同类或强竞争者。
    • 距离远:差异很大,属于不同类别。
  3. Stress 值 :永远要关注 MDS 输出的 Stress 值。
    • Stress < 0.10:拟合效果很好,低维图能很好地代表原始数据。
    • Stress > 0.20:拟合效果较差,说明原始数据结构太复杂,用 2D 或 3D 很难准确表达,可能需要更高的维度或换用其他降维方法。

MDS 就像是把一个立体的、复杂的雕塑,想办法压平到一张纸上。它不是完美无缺的,但它能以最直观的方式,展示出数据点之间"谁和谁更像"的几何关系。

相关推荐
科研面壁者15 分钟前
SPSS——独立样本T检验
数据库·人工智能·机器学习·信息可视化·数据分析·spss·数据处理
云栈开源日记17 分钟前
Python 开发技术栈梳理:从数据库、爬虫到 Django 与机器学习
数据库·爬虫·python·学习·机器学习·django
ToTensor1 小时前
Tree of Thoughts:让大语言模型像人类一样思考
人工智能·语言模型·自然语言处理
shangjian0074 小时前
AI大模型-评价指标-相关术语
人工智能·算法
江河地笑4 小时前
opencv、cmake、vcpkg
人工智能·opencv·计算机视觉
海边夕阳20065 小时前
【每天一个AI小知识】:什么是卷积神经网络?
人工智能·经验分享·深度学习·神经网络·机器学习·cnn
一只会写代码的猫5 小时前
可持续发展中的绿色科技:推动未来的环保创新
大数据·人工智能
胡萝卜3.06 小时前
掌握C++ map:高效键值对操作指南
开发语言·数据结构·c++·人工智能·map
松岛雾奈.2306 小时前
机器学习--PCA降维算法
人工智能·算法·机器学习
5***79006 小时前
机器学习社区机器学习社区:推动技术进步与创新的引擎
人工智能·机器学习