使用分类数据进行多维缩放

数据挖掘 分类数据 降维 主成分分析
2022-02-25 09:34:01

我在一本书中阅读了以下有关 MDS 的内容:

使用 MDS 需要了解单个特征的单位;也许我们正在使用无法使用欧几里得度量进行比较的特征。例如,一个分类变量,即使编码为整数(0= 圆形,1= 星形,2= 三角形等),也无法使用欧几里得进行比较(圆形更接近星形而不是三角形?)。

我接受上面的说法,但它对MDA的应用提出了几个问题:

  • 鉴于许多传统数据集包含分类特征,这是否意味着 MDA 无法适应这些数据集?
  • 也许将距离测量类型(例如“欧几里得”)更改为其他类型是一种解决方案,但Sklearn没有其他内置选项,更不用说 R,其中cmdscale根本没有选项来指定距离类型。一般如何更改此功能?

另一个问题:我读过PCA是一种MDS(反之亦然),除了前者侧重于方差,后者侧重于保持距离。我是否正确地认为这两个以某种方式“收敛”(例如,在使用两个第一个组件进行可视化的情况下)?

1个回答

MDS 只需要一个距离矩阵来存储每对数据示例之间的距离。如何计算该距离取决于您正在处理的数据类型。如果您只有数值(实值)特征,则可以使用欧几里德距离,但并非总是如此。

例如,如果您同时拥有数值变量和分类变量,则可以对混合数据应用任何度量,例如这个

关于你的第二个问题,我需要进一步澄清。“收敛”是什么意思?您是在问两种算法是否收敛到相同的解决方案?这是您的问题,答案是否定的,因为两种算法的目标不同。MDS 通过尝试将您的数据投影到 2D 平面上为了保持相对距离,PCA 是否通过关注那些具有更多可变性的“方向”来预测数据。