玩命加载中 . . .

深度学习基础知识汇总


常见距离指标(Distance Metrics)

在机器学习、数据挖掘和统计分析中,距离(Distance)或相似度(Similarity)用于衡量两个对象之间的差异程度。根据比较对象的不同,常见距离指标通常可以分为两类:

  1. 点之间的距离(Point-to-Point Distance)
  2. 分布之间的距离(Distribution Distance)

一、点之间的距离(Point Distance)

设两个向量:

表示两个样本在 $n$ 维空间中的位置。


1 闵可夫斯基距离(Minkowski Distance)

闵可夫斯基距离是一类广义距离度量,很多常见距离都是它的特殊情况。

其中:

  • $p$ 为距离阶数
  • $x_i, y_i$ 为向量在第 $i$ 维的值

特殊情况

曼哈顿距离(Manhattan Distance)

当 $p=1$ 时:

表示在网格路径中的最短距离。


欧氏距离(Euclidean Distance)

当 $p=2$ 时:

这是最常见的距离度量。


切比雪夫距离(Chebyshev Distance)

当 $p \to \infty$ 时:

表示各维度差值的最大值。


2 余弦距离(Cosine Distance)

余弦距离用于衡量两个向量之间的方向差异

余弦相似度

取值范围:

  • $1$:方向完全相同
  • $0$:正交
  • $-1$:方向完全相反

余弦距离

常用于:

  • 文本相似度
  • 向量检索
  • embedding 相似度计算

3 马氏距离(Mahalanobis Distance)

马氏距离考虑了数据特征之间的协方差关系

其中:

  • $S$ 为数据协方差矩阵
  • $S^{-1}$ 为协方差矩阵的逆
  • $(x-y)^T$ 为转置

特点:

  • 能够消除不同特征尺度影响
  • 考虑特征相关性
  • 常用于异常检测

二、分布之间的距离(Distribution Distance)

当比较对象为概率分布时,需要使用分布距离。

设两个离散概率分布:


1 KL 散度(Kullback-Leibler Divergence)

KL 散度用于衡量一个概率分布相对于另一个分布的信息损失。

连续形式:

性质:

  • 非对称
  • 取值范围

常见应用:

  • 变分推断
  • VAE
  • 分布匹配

2 JS 散度(Jensen-Shannon Divergence)

JS 散度是 KL 散度的对称版本

定义:

其中:

性质:

  • 对称
  • 有界

应用:

  • GAN
  • 分布相似度度量

3 Wasserstein 距离(Earth Mover Distance)

Wasserstein 距离衡量将一个分布变换为另一个分布所需的最小代价。

直观理解:

将概率分布看作一堆“土”,
Wasserstein 距离表示把这堆土搬运为另一堆所需的最小工作量。

数学定义:

其中:

  • $\Pi(P,Q)$ 为所有联合分布集合
  • $\gamma(x,y)$ 为运输方案

应用:

  • WGAN
  • 分布学习
  • 生成模型训练

三、常见距离总结

类型 距离 特点
点距离 Minkowski 广义距离
点距离 Euclidean 最常用
点距离 Cosine 衡量方向
点距离 Mahalanobis 考虑协方差
分布距离 KL Divergence 信息差异
分布距离 JS Divergence 对称KL
分布距离 Wasserstein 分布运输距离


文章作者: 鹿卿
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 鹿卿 !
评论
  目录