矩阵的各种范数

矩阵的各种范数

1.     n = norm(A,1) %A的列范数,等于A的列向量的1-范数的最大值。

2.     n = norm(A,2) %A的欧几里德范数,和norm(A)相同。

3.     n = norm(A,inf) %求行范数,等于A的行向量的1-范数的最大值即:max(sum(abs(A')))

4.     n = norm(A, 'fro' ) %求矩阵AFrobenius范数,矩阵元p阶范数估计需要自己编程求,

1.     1-范数:列和范数,即所有矩阵列向量绝对值之和的最大值,matlab调用函数norm(A,1)

2.     2-范数:,谱范数,即A'A矩阵的最大特征值的开平方。matlab调用函数norm(x,2)

3.     ∞-范数:,行和范数,即所有矩阵行向量绝对值之和的最大值,matlab调用函数norm(A,inf)

4.     F-范数:Frobenius范数,即矩阵元素绝对值的平方和再开平方,matlab调用函数norm(A,’fro‘)

 

例子

(1)      1范数   norm(a,1)=max(sum(abs(a)))

a=[1 2 3;4 5 6;7 8 9]

a =

    1     2     3

    4     5     6

    7     8     9

norm(a,1)

ans =

   18

>> sum(abs(a))

ans =

   12    15    18

>> max(ans)

ans =

   18

 

(2)2范数

>> norm(a)

ans =

  16.8481

>> norm(a,2)

ans =

  16.8481

 

[V S]=eig(a'*a)

 

V =

 

  -0.4082   -0.7767    0.4797

   0.8165   -0.0757    0.5724

  -0.4082    0.6253    0.6651

 

S =

 

   0.0000         0         0

        0    1.1414         0

        0         0  283.8586

 

>> sqrt(S)

 

ans =

 

   0.0000         0         0

        0    1.0684         0

        0         0   16.8481

(3)∞-范数     norm(a,inf)=max(sum(abs(a),2))                               

norm(a,inf)

ans =

24

sum(abs(a),2)

ans =

    6

   15

24

(4) F-范数          norm(a,'fro')=sqrt(sum(sum(abs(a).^2)))

norm(a,'fro')

ans =

  16.8819

 

>> sum(sum(abs(a).^2))

ans =

  285

>> sqrt(ans)

ans =

  16.8819

矩阵范数是用于衡量矩阵大小的一种度量方式,其定义、性质计算方法如下: ### 定义 矩阵范数是一个从矩阵集合到非负实数集合的函数,满足非负性、齐次性、三角不等式相容性等条件。在数值计算中判断算法解的收敛性时,常用范数近似代替矩阵的最大特征值,虽然不够准确,但计算高效。理论上,范数的概念属于赋范线性空间[^1]。 ### 性质 - **非负性**:对于任意矩阵 \(A\),其范数 \(\|A\| \geq 0\),且 \(\|A\| = 0\) 当且仅当 \(A\) 是零矩阵。 - **齐次性**:对于任意矩阵 \(A\) 任意标量 \(k\),有 \(\|kA\| = |k| \cdot \|A\|\)。 - **三角不等式**:对于任意两个同型矩阵 \(A\) \(B\),有 \(\|A + B\| \leq \|A\| + \|B\|\)。 - **相容性**:对于矩阵 \(A\) \(B\),若它们的乘积 \(AB\) 有意义,则 \(\|AB\| \leq \|A\| \cdot \|B\|\)。此外,矩阵范数 \(M\) 与向量范数 \(V\) 相容,只要 \(\|Ax\|_V \leq \|A\|_M \cdot \|x\|_V\) 对任意矩阵 \(A\) 向量 \(x\) 成立即可。向量范数具有等价性,对均为 \(n\) 维的向量范数 \(\|\cdot\|_{\alpha}\) \(\|\cdot\|_{\beta}\),总能找到与向量无关的正数 \(c_1\) \(c_2\),使 \(c_1 \|x\|_{\alpha} \leq \|x\|_{\beta} \leq c_2 \|x\|_{\alpha}\) (\(\infty\leq2\leq1\))。矩阵的谱半径不大于任意一种范数,但只要任意加一个常数 \(\epsilon\),总不小于一种算子范数(这个算子范数矩阵及常数都有关)[^3]。 ### 计算方法 - **常用矩阵范数的计算**: - **1 - 范数**:\(\|A\|_1 = \max_{1\leq j\leq n} \sum_{i = 1}^{m} |a_{ij}|\),即矩阵元素绝对值之的最大值。 - **2 - 范数**:\(\|A\|_2 = \sqrt{\lambda_{\max}(A^H A)}\),其中 \(\lambda_{\max}(A^H A)\) 是 \(A^H A\) 的最大特征值,\(A^H\) 表示 \(A\) 的共轭转置。在判断算法解的收敛性时,可近似用范数代替矩阵的最大特征值,但不够准确 [^1]。 - **\(\infty\) - 范数**:\(\|A\|_{\infty} = \max_{1\leq i\leq m} \sum_{j = 1}^{n} |a_{ij}|\),即矩阵元素绝对值之的最大值。 - **Frobenius 范数**:\(\|A\|_F = \sqrt{\sum_{i = 1}^{m} \sum_{j = 1}^{n} |a_{ij}|^2}\),即矩阵所有元素的平方的平方根。 - **核范数的计算**:矩阵的核范数矩阵所有奇异值的,奇异值是通过奇异值分解(SVD)得到的,它们是矩阵的非负特征值。核范数的计算公式为 \(\|A\|_* = \sum_{i = 1}^{r} \sigma_i\),其中 \(\sigma_i\) 是矩阵 \(A\) 的奇异值,\(r\) 是矩阵的秩 [^2]。 ### 代码示例 ```python import numpy as np # 定义一个矩阵 A = np.array([[1, 2], [3, 4]]) # 计算 1 - 范数 norm_1 = np.linalg.norm(A, 1) # 计算 2 - 范数 norm_2 = np.linalg.norm(A, 2) # 计算无穷范数 norm_inf = np.linalg.norm(A, np.inf) # 计算 Frobenius 范数 norm_fro = np.linalg.norm(A, 'fro') print("1 - 范数:", norm_1) print("2 - 范数:", norm_2) print("无穷范数:", norm_inf) print("Frobenius 范数:", norm_fro) ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值