这些基于相关性的距离是否满足三角不等式?


13

对于分层聚类,我经常看到以下两个“量度”(它们并不是完全正确),用于测量两个随机变量和之间的距离: \ newcommand {\ Cor} {\ mathrm {Cor}} \ begin {align} d_1(X,Y)&= 1- | \ Cor(X,Y)|,\\ d_2(X,Y)&= 1-(\ Cor(X,Y))^ 2 \ end {align} 中的一个一个满足三角不等式?如果是这样,除了进行暴力计算之外,我还应该证明它吗?如果它们不是指标,那么简单的反例是什么?XY

d1(X,Y)=1|Cor(X,Y)|,d2(X,Y)=1(Cor(X,Y))2

您可能对审阅本文感兴趣:arxiv.org/pdf/1208.3145.pdf
克里斯

Answers:


5

d_1上的三角形不等式将产生: \ newcommand {\ Cov} {\ mathrm {Cov}} \ newcommand {\ Cor} {\ mathrm {Cor}} \ newcommand {\ Var} {\ mathrm {Var}}d1

d1(X,Z)d1(X,Y)+d1(Y,Z)1|Cor(X,Z)|1|Cor(X,Y)|+1|Cor(Y,Z)||Cor(X,Y)|+|Cor(Y,Z)|1+|Cor(X,Z)|

这似乎是很容易克服的不平等。通过使XZ独立,我们可以使右侧尽可能小(恰好一个)。那么我们可以找到左侧超过1 的Y吗?

如果并且和具有相同的方差,则,对于相似,因此左侧远高于1,违反了不平等现象。R中违反的示例,其中和是多元法线的组成部分:Y=X+ZXZCor(X,Y)=220.707Cor(Y,Z)XZ

library(MASS)
set.seed(123)
d1 <- function(a,b) {1 - abs(cor(a,b))}

Sigma    <- matrix(c(1,0,0,1), nrow=2) # covariance matrix of X and Z
matrixXZ <- mvrnorm(n=1e3, mu=c(0,0), Sigma=Sigma, empirical=TRUE)
X <- matrixXZ[,1] # mean 0, variance 1
Z <- matrixXZ[,2] # mean 0, variance 1
cor(X,Z) # nearly zero
Y <- X + Z

d1(X,Y) 
# 0.2928932
d1(Y,Z)
# 0.2928932
d1(X,Z)
# 1
d1(X,Z) <= d1(X,Y) + d1(Y,Z)
# FALSE

尽管请注意,此构造不适用于您的:d2

d2 <- function(a,b) {1 - cor(a,b)^2}
d2(X,Y) 
# 0.5
d2(Y,Z)
# 0.5
d2(X,Z)
# 1
d2(X,Z) <= d2(X,Y) + d2(Y,Z)
# TRUE

在这个阶段,我没有发现对进行理论上的攻击,而是发现更容易处理R中的协方差矩阵,直到出现一个不错的反例为止。允许,和可得出:d2SigmaVar(X)=2Var(Z)=1Cov(X,Z)=1

Var(Y)=Var(X+Y)=Var(X)+Var(Z)+2Cov(X,Z)=2+1+2=5

我们还可以研究协方差:

Cov(X,Y)=Cov(X,X+Z)=Cov(X,X)+Cov(X,Z)=2+1=3
Cov(Y,Z)=Cov(X+Z,Z)=Cov(X,Z)+Cov(Z,Z)=1+1=2

则平方相关为:

Cor(X,Z)2=Cov(X,Z)2Var(X)Var(Z)=122×1=0.5
Cor(X,Y)2=Cov(X,Y)2Var(X)Var(Y)=322×5=0.9
Cor(Y,Z)2=Cov(Y,Z)2Var(Y)Var(Z)=225×1=0.8

则而且因此三角形不等式受到了较大的限制。d2(X,Z)=0.5d2(X,Y)=0.1d2(Y,Z)=0.2

Sigma    <- matrix(c(2,1,1,1), nrow=2) # covariance matrix of X and Z
matrixXZ <- mvrnorm(n=1e3, mu=c(0,0), Sigma=Sigma, empirical=TRUE)
X <- matrixXZ[,1] # mean 0, variance 2
Z <- matrixXZ[,2] # mean 0, variance 1
cor(X,Z) # 0.707
Y  <- X + Z
d2 <- function(a,b) {1 - cor(a,b)^2}
d2(X,Y) 
# 0.1
d2(Y,Z)
# 0.2
d2(X,Z)
# 0.5
d2(X,Z) <= d2(X,Y) + d2(Y,Z)
# FALSE

5

让我们有三个矢量(也可能是变量或个人),,和。并且我们将它们每个标准化为z分数(平均值= 0,方差= 1)。XYZ

然后根据余弦定理(“余弦定律”),两个标准化向量(例如X和Y)之间的平方欧氏距离为,其中(余弦相似度) Pearson归因于向量的z标准化)。从我们的考虑中,我们可以安全地省略常数乘数。dXY2=2(n1)(1cosXY)cosXYrXY2(n1)

因此,问题中表达的距离为如果公式不忽略相关系数的符号,则为平方的欧几里德距离。d1(X,Y)=1|Cor(X,Y)|

如果的矩阵 s恰好是gramian(正半定),则“ d1”距离的平方根是欧几里得距离,这当然是度量。矩阵不大 在欧几里得空间中距离距离不太收敛时,通常是一种情况或接近一种情况。由于度量是比欧几里得更宽的一类,因此距离“ sqrt(d1)”的给定矩阵可能会经常出现度量。|r||r|

至于“ d1”本身,它是“类似” 欧几里德距离的平方,绝对是非度量的。即使是真正的平方欧几里德距离也不是公制的:它有时违反三角不等式原理。[在聚类分析中,欧几里德距离的平方非常常用;但是,大多数这样的情况实际上意味着要在非平方距离上进行分析,平方的只是用于计算的便捷输入。]要查看它(大约是平方欧几里德),让我们绘制三个向量。d

在此处输入图片说明

向量是单位长度的(因为是标准化的)。角度(,,)的余弦分别为,,。这些角度在向量之间传播相应的欧几里德距离:,,。为简单起见,这三个向量都在同一平面上(因此和之间的角度是另外两个的总和)。在这个位置上,距离平方对三角形不等式的违反最为明显。αβα+βrXYrXZrYZdXYdXZdYZXZα+β

因为,如您所见,绿色正方形区域优于两个红色正方形的总和:。dYZ2>dXY2+dXZ2

因此关于

d1(X,Y)=1|Cor(X,Y)|

距离可以说不是公制。因为即使所有最初都是正数,距离仍然是欧几里得,它本身并不是度量标准。rd2

第二距离是多少?

d2(X,Y)=1(Cor(X,Y))2

由于在标准向量的情况下的相关性为,因此为。(实际上,是线性回归的,该数量是因变量与与预测变量正交的东西的平方相关性的平方。)在这种情况下,请绘制向量的正弦,并使其平方(因为我们在谈论距离):rcos1r2sin21r2SSerror/SStotalsin2

在此处输入图片说明

尽管在视觉上不是很明显,但是绿色正方形再次大于红色区域。sinYZ2sinXY2+sinXZ2

可以证明。在平面上,。平方双方,因为我们对感兴趣。sin(α+β)=sinαcosβ+cosαsinβsin2

sin2(α+β)=sin2α(1sin2β)+(1sin2α)sin2β+2sinαcosβcosαsinβ=sin2α+sin2β2[sin2αsin2β]+2[sinαcosαsinβcosβ]

在最后一个表达式中,两个重要术语用括号括起来。如果两个中的第二个大于(或可以大于)第一个,则,并且“ d2”距离超出三角不等式。在我们的图片中也是如此,其中约为40度,约为30度(项1为,项2为)。“ D2”不是指标。sin2(α+β)>sin2α+sin2βαβ.1033.2132

不过,“ d2”距离的平方根-正弦不相似度-是公制的(我相信)。您可以在我的圈子中使用各种和角度进行操作以确保。“ d2”是否也将在非共线设置中显示为度量标准(即三个向量不在平面上)-我暂时不能说,尽管我暂时假设会。αβ


3

另请参阅我写的这份预印本:http : //arxiv.org/abs/1208.3145。我仍然需要花一些时间并正确提交。摘要:

我们使用保留度量的简单工具,研究了余弦相似度和Pearson和Spearman相关性到度量距离的两类转换。第一类将反相关的对象最大程度地分开。先前已知的转换属于此类。第二类整理相关和反相关的对象。产生度量距离的这种转换的一个示例是应用于中心数据时的正弦函数。

您的问题的结果是d1d2实际上不是度量标准,而d2的平方根实际上是适当的度量标准。


2

没有。

最简单的反例:

对于,无论您的是什么,都根本没有定义距离。X=(0,0)Y

任何常数序列都具有标准偏差,因此在 ... 的定义中导致被零除。σ=0Cor

最多是一个数据空间子集的指标,不包括任何常数序列。


好点子!我必须在其他地方提到的预印本中提到这一点。
micans,2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.