我们都知道,函数与几何图形往往是有对应的关系,这个很好想象,特别是在三维以下的空间内,函数是几何图像的数学概括,而几何图像是函数的高度形象化。
但当函数与几何超出三维空间时,就难以获得较好的想象,于是就有了映射的概念,进而引入范数的概念。
当我们有了范数的概念的后,我们就可以引出两个向量的距离的定义,这个向量可以是任意维数的。通过距离的定义,进而我们可以讨论逼近程度,从而讨论收敛性、求极限。
计算机领域用的比较多的就是迭代过程中收敛性质的判断,一般迭代前后步骤的差值的范数表示其大小,常用的是二范数,差值越小表示越逼近实际值,可以认为达到要求的精度,收敛。
总的来说,范数存在的意义是为了实现比较距离。比如,在一维实数集合中,我们随便取两个点4和9,我们知道9比4大,但是到了二维实数空间中,取两个点(1,0)和(3,4),这个时候我们就没办法比较它们之间的大小,因为它们不是可以比较的实数,于是我们引入范数这个概念,把我们的(1,0)和(3,4)通过范数分别映射到实数1 和 5 ,这样我们就比较这两个点了。所以你可以看到,范数它其实是一个函数,它把不能比较的向量转换成可以比较的实数。
在数学上,对于向量范数的定义,就是只要满足以下三条性质的函数,我们就可以称为它为范数。
(条件1的 ↔ \leftrightarrow ↔ 的意思就是当且仅当的意思)
所以,范数的是一个宽泛的概念,有很多种,但是我们一般只会用到常用的范数,接下来我们介绍常用的向量范数。
∥ x ∥ 0 = ∑ i = 1 k ∣ x i ∣ 0 \|x\|_0=\sum_{i=1}^k|x_i|^0 ∥x∥0=i=1∑k∣xi∣0
意义:非0元素个数
评价:L0范数表示向量中非零元素的个数。L0范数的这个属性,使其非常适用于机器学习中的稀疏编码。在特征选择中,通过最小化L0范数来寻找最少最优的稀疏特征项。但是,L0范数的最小化问题是NP难问题。而L1范数是L0范数的最优凸近似,它比L0范数要更容易求解。因此,优化过程将会被转换为更高维的范数(例如L1范数)问题。
∥ X ∥ 1 = ∑ i = 1 n ∣ x i ∣ \|X\|_1=\sum_{i=1}^n{|x_i|} ∥X∥1=i=1∑n∣xi∣
意义:各个元素的绝对值之和
∥ X ∥ 2 = ( ∑ i = 1 n x i 2 ) 1 2 \|X\|_2=(\sum_{i=1}^{n}{x_i^2})^{\frac{1}{2}} ∥X∥2=(i=1∑nxi2)21
意义:每个元素平方和再平方根
评价:L2范数是最常用的范数了,我们用的最多的度量距离欧氏距离就是一种L2范数。在回归里面,有人把加了L2范数项的回归c称为“岭回归”(Ridge Regression),有人也叫它“权值衰减(weight decay)”。它被广泛的应用在解决机器学习里面的过拟问题合。
为什么L2范数可以防止过拟合?回答这个问题之前,我们得先看看L2范数实际上是什么。
L2范数是指向量各元素的平方和然后求平方根。我们让L2范数的规则项最小,可以使得的每个元素都很小,都接近于0,但与L1范数不同,它不会让它等于0,而是接近于0,这是有很大的区别的。而越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。为什么越小的参数说明模型越简单?因为当限制了参数很小,实际上就限制了多项式某些分量的影响很小,这样就相当于减少参数个数。
∥ X ∥ p = ( ∑ i = 1 n ∣ x i ∣ p ) 1 p W h e r e p ≥ 1 \|X\|_p=(\sum_{i=1}^n{|x_i|^p})^\frac{1}{p}\\ Where \quad p\ge1 ∥X∥p=(i=1∑n∣xi∣p)p1Wherep≥1
意义:每个元素p次方和再p次方根
∥ X ∥ ∞ = max 1 ≤ i ≤ n ∣ x i ∣ \|X\|_\infty=\max_{1\le i\le n}|x_i| ∥X∥∞=1≤i≤nmax∣xi∣
意义:向量的p-范数的p取无限大即为向量的无穷范数
跟向量的范数定义类似,只不过矩阵的范数的性质比向量的范数性质多了一条相容性。
我们直接引出矩阵的范数定义:
∥ A ∥ 1 = max j ∑ i = 1 m ∣ a i , j ∣ \|A\|_1=\max_j\sum_{i=1}^m|a_{i,j}| ∥A∥1=jmaxi=1∑m∣ai,j∣
意义:矩阵的列向量的和的最大值
∥ A ∥ 2 = λ max ( A T A ) = λ 1 W h e r e λ 1 i s t h e m a x i m u m e i g e n v a l u e o f A T A \|A\|_2=\sqrt{\lambda_{\max}(A^TA)}=\sqrt \lambda_1 \\ Where \quad \lambda_1 \; is\; the\; maximum\; eigenvalue\; of A^TA ∥A∥2=λmax(ATA)=λ1Whereλ1isthemaximumeigenvalueofATA
意义: A T A A^TA ATA矩阵的最大特征值的开平方
特征值相当于是两个维度的压缩,相当于是从矩阵的维度里面找到最大的, A T A A^TA ATA很重要我们线代老师提了一嘴,我给忘记了。
——梁子
∥ A ∥ ∞ = max i ∑ j = 1 i ∣ a i , j ∣ \|A\|_{\infty}=\max_i\sum_{j=1}^i|a_{i,j}| ∥A∥∞=imaxj=1∑i∣ai,j∣
意义:矩阵的行向量的和的最大值
∥ A ∥ F = ( ∑ i = 1 m ∑ j = 1 n ∣ a i , j ∣ 2 ) 1 2 \|A\|_F=(\sum_{i=1}^m\sum_{j=1}^n|a_{i,j}|^2)^{\frac{1}{2}} ∥A∥F=(i=1∑mj=1∑n∣ai,j∣2)21
也可以描述为:
∣ ∣ A ∣ ∣ F = T r ( A A T ) ||A||_F=\sqrt{Tr(AA^T)} ∣∣A∣∣F=Tr(AAT)
矩阵的迹不懂看这里
意义:Frobenius范数,即矩阵元素绝对值的平方和再开平方。感觉和向量的2范数类似
参考文献1
参考文献2