余弦相似度和相关系数以及z-score之间的关系
向量
a
a
a和
b
b
b之间的余弦相似度只与他们之间的角度有关:
c
o
s
θ
=
a
⋅
b
∥
a
∥
∥
b
∥
cos\theta = \frac{a\cdot b}{\|a\| \|b\|}
cosθ=∥a∥∥b∥a⋅b
应用余弦相似度的时候,很多情况下向量都是非负的(比如文档中词项的频次向量)。在这些时候,余弦相似度也是非负的。
向量
x
x
x的“
z
z
z-score”向量一般地定义如下:
z
=
x
−
x
ˉ
s
x
z=\frac{x-\bar{x}}{s_x}
z=sxx−xˉ
其中 x ˉ = 1 n ∑ i x i \bar{x}=\frac{1}{n}\sum_ix_i xˉ=n1∑ixi且 s x 2 = ( x − x ˉ ) 2 ‾ s_x^2=\overline{(x-\bar{x})^2} sx2=(x−xˉ)2,分别是 x x x的均值和标准差。也就是说, z x z_x zx是 x x x标准化之后的结果,是 x x x的标准化版本。
对于向量
x
x
x和向量
y
y
y,他们的相关性系数为:
ρ
x
,
y
=
(
z
x
z
y
)
‾
\rho_{x,y}=\overline{(z_xz_y)}
ρx,y=(zxzy)
因而,如果一个向量
a
a
a的均值为0,那么它的方差为
s
a
2
=
1
n
∥
a
∥
2
s_a^2=\frac{1}{n}\lVert{a}\rVert^2
sa2=n1∥a∥2。因此,其单位向量和
z
z
z-score的关系为:
a
^
=
a
∥
a
∥
=
z
a
n
\hat{a}=\frac{a}{\lVert{a}\rVert}=\frac{z_a}{\sqrt n}
a^=∥a∥a=nza
所以,如果向量
a
a
a和向量
b
b
b是中心化的(也就是均值为0),那么它们的余弦相似度和它们的相关性系数是一样的。
太长不看:余弦相似度是向量方向上的单位向量的点积。而皮尔森相关系数是向量中心化后之间的余弦相似度。一个向量的" z z z-score变换"是将中心化的向量缩放到 n \sqrt{n} n大小。
原文:Is there any relationship among cosine similarity, pearson correlation, and z-score?