矩阵的各种范数
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' ) %求矩阵A的Frobenius范数,矩阵元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