向量与矩阵的范数及其在matlab中的用法(norm)

一、常数向量范数

  • L0范数

∥x∥0=def‖x‖0=def向量中非零元素的个数

其在matlab中的用法:

sum( x(:) ~= 0 )
  • L1范数

∥x∥1=def∑i=1m|xi|=|x1|+⋯+|xm|‖x‖1=def∑i=1m|xi|=|x1|+⋯+|xm|,即向量元素绝对值之和

其在matlab中的用法:

norm(x, 1)
  • L2范数

∥x∥2=(|x1|2+⋯+|xm|2)1/2‖x‖2=(|x1|2+⋯+|xm|2)1/2,即向量元素绝对值的平方和后开方

其在matlab中的用法:

norm(x, 2)
  • L∞范数
  • 极大无穷范数

∥x∥∞=max{|x1|,⋯,|xm|}‖x‖∞=max{|x1|,⋯,|xm|},即所有向量元素绝对值中的最大值

其在matlab中的用法:

norm(x, inf)
  • 极小无穷范数

∥x∥∞=min{|x1|,⋯,|xm|}‖x‖∞=min{|x1|,⋯,|xm|},即所有向量元素绝对值中的最小值

其在matlab中的用法:

norm(x, -inf)

二、矩阵范数

诱导范数和元素形式范数是矩阵范数的两种主要类型。

1. 诱导范数

  • L1 范数(列和范数)

∥A∥1=max1⩽j⩽n∑i=1m{|aij|}‖A‖1=max1⩽j⩽n∑i=1m{|aij|},即所有矩阵列向量绝对值之和的最大值

其在matlab中的用法:

norm(A,1)
  • L2 范数

∥A∥2=λi−−√‖A‖2=λi,其中 λiλi 为 ATAATA 的最大特征值。

其在matlab中的用法:

norm(A,2)
  • L∞ 范数(行和范数)

∥A∥∞=max1⩽i⩽m∑j=1n{|aij|}‖A‖∞=max1⩽i⩽m∑j=1n{|aij|},即所有矩阵行向量绝对值之和的最大值

其在matlab中的用法:

norm(A,inf)

2. "元素形式"范数

  • L0 范数

∥A∥0=def矩阵的非零元素的个数‖A‖0=def矩阵的非零元素的个数

其在matlab中的用法:

sum(sum(A ~= 0))
  • L1范数

∥A∥1=def∑i=1m∑j=1n|aij|‖A‖1=def∑i=1m∑j=1n|aij|,即矩阵中的每个元素绝对值之和

其在matlab中的用法:

sum(sum(abs(A)))
  • LF 范数

∥A∥F=def(∑i=1m∑j=1n|aij|2)1/2‖A‖F=def(∑i=1m∑j=1n|aij|2)1/2,即矩阵的各个元素平方之和后开方

其在matlab中的用法:

norm(A,'fro')
  • L∞ 范数

∥A∥∞=maxi=1,⋯,m; j=1,⋯,n{|aij|}‖A‖∞=maxi=1,⋯,m; j=1,⋯,n{|aij|},即矩阵的各个元素绝对值的最大值

其在matlab中的用法:

max(max(abs(A)))
  • 核范数

∥A∥∗=∑i=1nλi‖A‖∗=∑i=1nλi,λiλi 为 AA 的奇异值,即所有矩阵奇异值之和

其在matlab中的用法:

sum(svd(A))

猜你喜欢

转载自blog.csdn.net/eric_e/article/details/85249594