本文主要是介绍关于范数的介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
作者:Faaany
链接:https://www.zhihu.com/question/21868680/answer/136376374
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
要更好的理解范数,就要从函数、几何与矩阵的角度去理解,我尽量讲的通俗一些。
我们都知道,函数与几何图形往往是有对应的关系,这个很好想象,特别是在三维以下的空间内,函数是几何图像的数学概括,而几何图像是函数的高度形象化,比如一个函数对应几何空间上若干点组成的图形。
但当函数与几何超出三维空间时,就难以获得较好的想象,于是就有了映射的概念,映射表达的就是一个集合通过某种关系转为另外一个集合。通常数学书是先说映射,然后再讨论函数,这是因为函数是映射的一个特例。
为了更好的在数学上表达这种映射关系,(这里特指线性关系)于是就引进了矩阵。这里的矩阵就是表征上述空间映射的线性关系。而通过向量来表示上述映射中所说的这个集合,而我们通常所说的基,就是这个集合的最一般关系。于是,我们可以这样理解,一个集合(向量),通过一种映射关系(矩阵),得到另外一个几何(另外一个向量)。
那么向量的范数,就是表示这个原有集合的大小。
而矩阵的范数,就是表示这个变化过程的大小的一个度量。
那么说到具体几几范数,其不过是定义不同,一个矩阵范数往往由一个向量范数引出,我们称之为算子范数,其物理意义都如我上述所述。
以上符合知乎回答问题的方式。
接下来用百度回答方式:
0范数,向量中非零元素的个数。
1范数,为绝对值之和。
2范数,就是通常意义上的模。
无穷范数,就是取向量的最大值。
具体怎么用,看不同的领域,看你来自计算机领域 用的比较多的就是迭代过程中收敛性质的判断,如果理解上述的意义,在计算机领域,一般迭代前后步骤的差值的范数表示其大小,常用的是二范数,差值越小表示越逼近实际值,可以认为达到要求的精度,收敛。
总的来说,范数的本质是距离,存在的意义是为了实现比较。比如,在一维实数集合中,我们随便取两个点4和9,我们知道9比4大,但是到了二维实数空间中,取两个点(1,1)和(0,3),这个时候我们就没办法比较它们之间的大小,因为它们不是可以比较的实数,于是我们引入范数这个概念,把我们的(1,1)和(0,3)通过范数分别映射到实数和 3 ,这样我们就比较这两个点了。所以你可以看到,范数它其实是一个函数,它把不能比较的向量转换成可以比较的实数。
在上面的例子里,我们用的范数是平方求和然后再开方,范数还有很多其他的类型,这个就要看具体的定义了,理论上我们也可以把范数定义为只比较x轴上数字的绝对值。
PS:我这里说的是向量范数。;)
什么一范数二范数也是用来度量一个整体,比如两个个班的人比较高度,你可以用班里面最高的人(无穷范数)去比较,也可以用班里所有人的身高总和比较(一范数),也可以求平均(几何平均?忘记了。。)(类似二范数)。
举一个简单的例子,一个二维度的欧氏几何空间 R ^2就有欧氏范数。在这个向量空间的元素(譬如:(3,7))常常在笛卡儿坐标系统被画成一个从原点出发的箭号。每一个向量的欧氏范数就是箭号的长度。
这篇关于关于范数的介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!