Processing math: 100%

[DL Note] 线性代数:范数

1. 向量的范数

1.1. L2 范数

  向量 v长度(或称为L2 范数、欧几里得范数)是非负数 v2,定义为

v2=vv=v21+v22++v2n=iv2i

  如果 vR2 中的向量,比如 v=[ab],可以用 v 表示平面上的几何点 (a,b),此时 v 等于平面内原点到 v 的线段长度。类似地,如果 vR3 中的向量,则 v 表示三维空间中的一个点,v 等于空间内原点到 v 的线段长度。

  两个向量的点积可以用范数来表示,例如

uTv=u2v2cosθ

其中 θuv 的夹角。

  长度为 1 的向量称为单位向量。如果把一个非零向量除以其自身的长度,即乘以 1v,就可以得到一个单位向量,即 u=vv。这种把向量 v 化成单位向量 u 的过程,称为向量 v单位化,此时 uv 方向一致。

  相比 L2 范数本身,L2 范数的平方

v22=vv=iv2i

在求导计算上更加方便。对于任意向量 v,其 L2 范数的平方对于 v 中任意元素的导数只与该元素有关;而 L2 范数由于经过开方,其关于 v 中任意元素的导数都与整个向量有关。

  L2 范数的平方在远点附近增长很慢,在机器学习应用中,如果需要区分恰好是零的元素和很接近零的非零元素,则可以使用 L1 范数。

1.2. L1 范数

  L1 范数的定义为

v1=i|vi|

  L1 范数在各个位置斜率相同,且形式简单。在机器学习应用中,如果零和非零元素之间的差异很重要,则通常会使用 L1 范数。

1.3. Lp 范数

  更一般地,向量 vLp 范数定义为

vp=(i|vi|p)1p

范数将向量映射到一个非负值,具有如下性质:

  1. x=0x=0
  2. x+yx+y(三角不等式)
  3. cR,有 cv=|c|v

1.4. 其他范数

  如果我们只统计向量中非零元素的个数,则得到所谓的“L0 范数”。确切来讲,L0 范数并不是范数,它不满足 1.3 中的性质 3。L1 范数经常作为 L0 范数的替代。

  最大范数 L 定义为向量中具有最大绝对值的元素的绝对值,即

v=maxi|xi|

2. 矩阵的范数

  类似有向量的 L2 范数,矩阵的 Frobenius 范数定义为

AF=i,jA2i,j

即矩阵元素的平方和再开平方。