当属性是名义的时,个人的最佳距离函数是多少?

机器算法验证 距离函数 距离 相似之处 关联度量 分类数据
2022-02-07 21:13:46

我不知道在名义(无序分类)属性的情况下使用哪个个体之间的距离函数。我正在阅读一些教科书,他们建议使用简单匹配函数,但有些书籍建议我应该将名义属性更改为二进制属性并使用Jaccard系数。但是,如果名义属性的值不是 2 怎么办?如果该属性中有三个或四个值怎么办?

我应该为名义属性使用哪个距离函数?

1个回答

从技术上讲,为了在名义属性上计算个体之间的差异(相似性)度量,大多数程序首先将每个名义变量重新编码为一组虚拟二元变量,然后计算二元变量的一些度量。这是一些常用的二元相似性和相异性度量的公式。

什么是虚拟变量(也称为 one-hot)?下面是 5 个人,两个名义变量(A 有 3 个类别,B 有 2 个类别)。3 个假人代替 A,2 个假人代替 B。

ID   A    B      A1 A2 A3      B1 B2
1    2    1       0  1  0       1  0
2    1    2       1  0  0       0  1
3    3    2       0  0  1       0  1
4    1    1       1  0  0       1  0
5    2    1       0  1  0       1  0

(没有必要将一个虚拟变量消除为“冗余”,因为我们通常会在使用虚拟变量的回归中这样做。在聚类中没有实践,尽管在特殊情况下您可能会考虑该选项。)

二进制变量有许多度量,但是,并非所有的度量都在逻辑上适合虚拟二进制变量,即以前的名义变量。你看,对于一个名义变量,“两个人匹配”的事实和“两个人不匹配”的事实是同等重要的。但考虑流行的 Jaccard 度量,其中aa+b+c

  • a - 两个人的假人数量 1
  • b - 假人数量 1 代表这个,0 代表那个
  • c - 假人数量 0 代表这个,1 代表那个
  • d - 两个假人的数量 0

这里 mismatch 由两个变体组成;相同的重要性加倍加权,得到公式,称为Dice(在 Lee Dice 之后)或Czekanovsky-Sorensen度量。它更适合虚拟变量。事实上,当所有属性都是名义时,著名的复合高尔系数(推荐给你的名义属性)正好等于 Dice。另请注意,对于虚拟变量 Dice 度量(个体之间)= Ochiai度量(这只是一个bcaa2a2a+b+c余弦) = Kulczynsky 2度量。还有更多信息,1-Dice = 二元Lance-Williams距离,也称为Bray-Curtis距离。看看有多少同义词 - 你一定会在你的软件中找到一些同义词!

Dice 相似系数的直观有效性来自于它只是共现比例(或相对一致性)。对于上面的数据片段,取名义列A并计算5x5平方对称矩阵1(两个人属于同一类别)或0(不属于同一类别)。同样计算 的矩阵B

A    1  2  3  4  5        B    1  2  3  4  5
     _____________             _____________
  1| 1                      1| 1
  2| 0  1                   2| 0  1
  3| 0  0  1                3| 0  1  1
  4| 0  1  0  1             4| 1  0  0  1
  5| 1  0  0  0  1          5| 1  0  0  0  1

将两个矩阵的相应条目相加并除以 2(名义变量的数量) - 这里是 Dice 系数矩阵。(因此,实际上您不必创建假人来计算 Dice,使用矩阵运算您可能会按照刚才描述的方式更快地完成它。)请参阅Dice 上的相关主题以了解名义属性的关联。

尽管 Dice 是在属性为分类的情况下需要(不)相似度函数时使用的最明显的度量,但可以使用其他二元度量 - 如果发现它们的公式满足有关您的标称数据的考虑。

分子中包含的简单匹配(SM 或 Rand)等度量不适合您,因为它们处理 0-0(两个人都没有特定的共同属性/类别)作为匹配项,这对于最初的名义、定性特征来说显然是胡说八道。因此,请检查您计划对虚拟变量集使用的相似性或相异性公式:如果它具有或暗示作为相同性的理由,则不要将该度量用于名义数据。例如,平方欧几里得距离,这个公式变成了二进制数据只是a+da+b+c+dddb+c(在这种情况下与曼哈顿距离或汉明距离同义)确实将视为相同性的基础。实际上,,其中是二进制属性的数量;因此欧几里得距离在信息上与 SM 相等,不应应用于最初的标称数据。dd2=p(1SM)p

但是...

阅读了前面的“理论”段落后,我意识到 - 尽管我写了 - 大多数二进制系数(也包括使用的系数)实际上大部分时间都会起作用。我通过检查确定了从许多名义变量中获得的虚拟变量Dice系数在功能上与许多其他二元度量严格相关(首字母缩略词是 SPSS 中的度量关键字):d

                                                       relation with Dice
    Similarities
       Russell and Rao (simple joint prob)    RR          proportional
       Simple matching (or Rand)              SM          linear
       Jaccard                                JACCARD     monotonic
       Sokal and Sneath 1                     SS1         monotonic
       Rogers and Tanimoto                    RT          monotonic
       Sokal and Sneath 2                     SS2         monotonic
       Sokal and Sneath 4                     SS4         linear
       Hamann                                 HAMANN      linear
       Phi (or Pearson) correlation           PHI         linear
       Dispersion similarity                  DISPER      linear
    Dissimilarities
       Euclidean distance                     BEUCLID     monotonic
       Squared Euclidean distance             BSEUCLID    linear
       Pattern difference                     PATTERN     monotonic (linear w/o d term omitted from formula)
       Variance dissimilarity                 VARIANCE    linear

由于在邻近矩阵的许多应用中,例如在许多聚类分析方法中,在线性(有时甚至是单调)邻近变换下,结果不会改变或平滑变化,因此似乎可以证明大量的除了 Dice 之外的二元测量,以获得相同或相似的结果。但是您应该首先考虑/探索特定方法(例如层次聚类中的链接)如何对给定的邻近度转换作出反应。

如果您计划的聚类或 MDS 分析对距离的单调变换敏感,则最好避免使用上表中标记为“单调”的度量(因此,是的,使用 Jaccard 相似度或非平方欧几里得距离与虚拟距离不是一个好主意,即以前的名义,属性)。