范数和距离
在某些情况下,可以通过范数来定义距离。例如,对于向量空间
R
d
\mathbb{R}^d
Rd,可以通过范数
∥
⋅
∥
\Vert ·\Vert
∥⋅∥定义距离。
范数是测量单个向量大小的工具,而距离是测量两个点或向量之间间隔的工具。通过范数可以定义距离,但距离的概念更加广泛,涵盖了更为复杂和多样的度量方法。
接下来讨论的情况都是通过范数定义距离
距离度量函数 d ( ⋅ , ⋅ ) d(·,·) d(⋅,⋅)必须满足以下的性质:
- 非负性: ( x , y ) ≥ 0 , ∀ x , y (\boldsymbol{x},\boldsymbol{y}) \geq 0, \forall \boldsymbol{x},\boldsymbol{y} (x,y)≥0,∀x,y
- 自反性: d ( x , y ) = 0 , 当且仅当 x = y d(\boldsymbol{x},\boldsymbol{y}) = 0, 当且仅当\boldsymbol{x}=\boldsymbol{y} d(x,y)=0,当且仅当x=y
- 对称性: d ( x , y ) = d ( y , x ) , ∀ x , y d(\boldsymbol{x},\boldsymbol{y})=d(\boldsymbol{y},\boldsymbol{x}), \forall \boldsymbol{x},\boldsymbol{y} d(x,y)=d(y,x),∀x,y
- 三角不等式: d ( x , y ) + d ( y , z ) ≥ d ( x , z ) , ∀ x , y , z d(\boldsymbol{x},\boldsymbol{y})+d(\boldsymbol{y},\boldsymbol{z}) \geq d(\boldsymbol{x},\boldsymbol{z}), \forall \boldsymbol{x},\boldsymbol{y},\boldsymbol{z} d(x,y)+d(y,z)≥d(x,z),∀x,y,z
其中: x = ( x 1 , . . . , x d ) , y = ( y 1 , . . . , y d ) \boldsymbol{x} =(x_1,...,x_d), \quad \boldsymbol{y}=(y_1,...,y_d) x=(x1,...,xd),y=(y1,...,yd)
闵可夫斯基度量(Minkowski metric)
l p ( x , y ) = ( ∑ i = 1 d ∣ x i − y i ∣ p ) 1 / p , p ≥ 1 \mathcal{l}_p(\boldsymbol{x},\boldsymbol{y})=(\sum_{i=1}^{d}|x_i-y_i|^p)^{1/p},\quad p \geq 1 lp(x,y)=(i=1∑d∣xi−yi∣p)1/p,p≥1
欧氏距离(Euclidean distance) | l 2 范数 \mathcal{l}_2范数 l2范数
闵可夫斯基度量
p
=
2
p=2
p=2时:
l
2
(
x
,
y
)
=
(
∑
i
=
1
d
∣
x
i
−
y
i
∣
2
)
1
/
2
=
∥
x
−
y
∥
2
\mathcal{l}_2(\boldsymbol{x},\boldsymbol{y})=(\sum_{i=1}^{d}|x_i-y_i|^2)^{1/2}=\Vert \boldsymbol{x}-\boldsymbol{y} \Vert_2
l2(x,y)=(i=1∑d∣xi−yi∣2)1/2=∥x−y∥2
曼哈顿距离(Manhattan distance) | l 1 范数 \mathcal{l}_1范数 l1范数
闵可夫斯基度量
p
=
1
p=1
p=1时:
l
1
(
x
,
y
)
=
∑
i
=
1
d
∣
x
i
−
y
i
∣
=
∥
x
−
y
∥
1
\mathcal{l}_1(\boldsymbol{x},\boldsymbol{y})=\sum_{i=1}^{d}|x_i-y_i|=\Vert \boldsymbol{x}-\boldsymbol{y} \Vert_1
l1(x,y)=i=1∑d∣xi−yi∣=∥x−y∥1
切比雪夫距离(Chebyshev distance) | l ∞ 范数 \mathcal{l}_\infty范数 l∞范数
闵可夫斯基度量
p
=
∞
p=\infty
p=∞时:
l
∞
(
x
,
y
)
=
max
i
=
1
,
.
.
.
,
d
∣
x
i
−
y
i
∣
=
∥
x
−
y
∥
∞
\mathcal{l}_{\infty}(\boldsymbol{x},\boldsymbol{y})=\underset{i=1,...,d}{\max}|x_i-y_i|=\Vert \boldsymbol{x}-\boldsymbol{y} \Vert_{\infty}
l∞(x,y)=i=1,...,dmax∣xi−yi∣=∥x−y∥∞
红色是欧氏距离
橙色是曼哈顿距离
绿色是切比雪夫距离
马氏距离 (Mahalanobis distance)
d
(
x
,
y
)
=
(
x
−
y
)
T
S
−
1
(
x
−
y
)
d(\boldsymbol{x},\boldsymbol{y})= \sqrt{(\boldsymbol{x}-\boldsymbol{y})^T S^{-1}(\boldsymbol{x}-\boldsymbol{y})}
d(x,y)=(x−y)TS−1(x−y)
马氏距离考虑了数据分布的协方差矩阵
S
S
S,对高维数据和不同尺度的数据具有较好的鲁棒性。
相似度
余弦相似度(Cosine Similarity) | 夹角余弦
S
i
m
i
(
x
,
y
)
=
cos
θ
=
x
T
y
∥
x
∥
2
⋅
∥
y
∥
2
=
∑
i
=
1
d
x
i
y
i
∑
i
=
1
d
∣
x
i
∣
2
⋅
∑
i
=
1
d
∣
y
i
∣
2
Simi(\boldsymbol{x},\boldsymbol{y})= \cos \theta=\frac{\boldsymbol{x}^T\boldsymbol{y}}{\Vert \boldsymbol{x} \Vert_2 \cdot \Vert \boldsymbol{y} \Vert_2 }=\frac{\sum_{i=1}^dx_iy_i}{\sqrt{\sum_{i=1}^d|x_i|^2} \cdot \sqrt{\sum_{i=1}^d|y_i|^2} }
Simi(x,y)=cosθ=∥x∥2⋅∥y∥2xTy=∑i=1d∣xi∣2⋅∑i=1d∣yi∣2∑i=1dxiyi
夹角越小,余弦值越接近1,表明两个向量越相似。相比距离度量函数,余弦相似度更注重两个向量在方向上的差异,而不关注向量的长度。
杰卡德相似度 (Jaccard Similarity):
sim
(
A
,
B
)
=
∣
A
∩
B
∣
∣
A
∪
B
∣
\text{sim}(A,B) = \frac{|A \cap B|}{|A \cup B|}
sim(A,B)=∣A∪B∣∣A∩B∣
杰卡德相似度用于衡量两个集合之间的相似度,范围在 [0, 1] 之间。
皮尔逊相关系数 (Pearson Correlation Coefficient)
ρ
x
,
y
=
cov
(
x
,
y
)
σ
x
σ
y
\rho_{\boldsymbol{x},\boldsymbol{y}} = \frac{\text{cov}(\boldsymbol{x},\boldsymbol{y})}{\sigma_{\boldsymbol{x}} \sigma_{\boldsymbol{y}}}
ρx,y=σxσycov(x,y)
皮尔逊相关系数适用于度量两个连续变量之间的关系强度和方向,范围在 [-1, 1] 之间。对于数据分布要求,理想情况下,变量应服从正态分布,但在实际应用中,这一要求常常被放宽。当你想要检验两个变量之间是否存在线性关系时,计算皮尔逊相关系数是一个很有用的方法。
- 1 表示完全正相关:即一个变量增加,另一个变量也按相同比例增加。
- -1 表示完全负相关:即一个变量增加,另一个变量按相同比例减少。
- 0 表示没有线性相关:即一个变量的变化并不会导致另一个变量系统性的变化。