有时候,我们需要度量向量的尺度。在机器学习中,我们通常用Lp 范数来度量向量的尺度:
其中
p∈R,p≥1
范数,包括
Lp 范数,是将向量映射到非负值的函数,并且满足下面的性质,使得他们类似于点之间的距离:
- f(x)=0⇒x=0
- f(x+y)≤f(x)+f(y)(三角不等式)
- ∀α∈R,f(αx)=|α|f(x)
L2范数是欧几里得范数。它仅仅是原点到点x的欧几里德距离。它可能是机器学习中最常用的范数。并且也常用x的平方来度量向量的尺度,通过xTx就能计算出来。
L2 范数的平方在数学上和计算上都比L2范数有效。例如,L2 范数的平方对x中每个元素的导数只依赖于x的每个元素。而L2范数的导数依赖于整个向量。在许多情境中,L2 范数的平方可能是不方便的,因为在原点附近增长非常慢。在一些机器学习应用中,区别零元素和极小元素是非常重要的,对于这些情况,我们转向在所有位置增长速率一样的函数,但是依然保持数学的简明特性:L1范数。L1范数可以简化为:
当在机器学习中,当零和非零元素之间的区别非常重要时,我们通常使用
L1范数。每次
x 的一个元素从零移动到
e,L1范数就增长
e。
有时,我们通过计算向量中非零元素的数目来度量它的尺度(当我们用L1范数时,我们经常用它替代该函数)。一些作者将此函数参考为 l0范数,但是这个术语不正确,因为按比例改变向量没有改变非零项的数目。
另一个在机器学习中常见的范数是l∞范数,叫做最大范数。这个范数简化如下:
例如,向量中最大元素的值。
有时,我们可能希望度量矩阵的尺度。在深度学习的情景中,最常用的方式是Frobenius范数:
它和向量的
L2范数是相似的。
两个向量的点乘可以重写成范数的形式。特别地,
其中
θ是
x和
y之间的角度。
















