向量范数计算

向量:指具有大小和方向的量。它可以形象化地表示为带箭头的线段。箭头所指:代表向量的方向;线段长度:代表向量的大小。与向量对应的量叫做数量,数量只有大小,没有方向;

范数:是具有“长度”概念的函数。在线性代数泛函分析及相关的数学领域,范数是一个函数,是矢量空间内的所有矢量赋予非零的正长度或大小;


向量的1范数:向量的各元素的绝对值之和

向量范数计算||X||₁ = |1| + |-2| + |3| + |4| = 10

代码1:

Array(1,-2,3,4).map(abs(_)).sum

代码2:

norm(DenseVector(1,-2,3,4),1)


向量的2范数:向量的各元素的平方之和再开平方根

向量范数计算

||X||₂ = (1x1 + -2x-2 + 3x3 + 4x4)^(1/2)  = 5.477225575051661

代码1:

math.sqrt(
  Array(1,-2,3,4).map(v=>{
    math.pow(v,2)
  }).sum

代码2:

norm(DenseVector(1,-2,3,4),2


向量的P范数:向量的各元素的P次方之和再开P次方根

向量范数计算

||X||p = (|1|^p + |-2|^p + |3|^p + |4|^p)^(1/p) 

代码1:

math.pow(
  Array(1,-2,3,4).map(v=>{
    math.pow(abs(v),3)
  }).sum
,1.0/3)

代码2:

norm(DenseVector(1,-2,3,4),3)


向量的负无穷范数:向量的各元素的绝对值中最小的

向量范数计算

||X||-∞ = [1,-2,3,-4] = 1

代码1:

Array(1,-2,3,-4).map(abs(_)).min


向量的正无穷范数:向量的各元素的绝对值中最大的

向量范数计算

||X||∞ = [1,-2,3,-4] = 4

代码1:

Array(1,-2,3,-4).map(abs(_)).maxArray(1,-2,3,-4).map(abs(_)).max


上一篇:leetcode 1848. Minimum Distance to the Target Element (python)


下一篇:通讯录管理系统(C++版)