scipy.sparse.linalg.norm¶
- scipy.sparse.linalg.norm(x, ord=None, axis=None)[源代码]¶
稀疏矩阵的范数
此函数能够返回七种不同矩阵范数中的一种,具体取决于
ord
参数。- 参数
- x稀疏矩阵
输入稀疏矩阵。
- ord{非零int,inf,-inf,‘fro’},可选
规范顺序(见下表
Notes
)。Inf的意思是麻木的 inf 对象。- axis{int,整数的2元组,无},可选
如果 axis 是一个整数,它指定 x 沿其计算向量范数。如果 axis 是一个二元组,它指定保存二维矩阵的轴,并计算这些矩阵的矩阵范数。如果 axis 为None,则为向量范数(当 x 是一维)或矩阵范数(当 x 是二维的)返回。
- 退货
- n浮动或ndarray
注意事项
由于某些关联函数(如_MULTI_SvD_NORM)对于稀疏矩阵尚不可用,因此某些顺序未实现。
此文档字符串是根据numpy.linalg.norm修改的。https://github.com/numpy/numpy/blob/master/numpy/linalg/linalg.py
可以计算以下指标:
订单
稀疏矩阵的范数
无
Frobenius范数
“Fro”
Frobenius范数
信息
MAX(SUM(abs(X),axis=1))
-信息
MIN(SUM(abs(X),轴=1))
0
ABS(X).sum(轴=轴)
1
MAX(SUM(abs(X),axis=0))
-1
MIN(SUM(abs(X),轴=0))
2
未实施
-2
未实施
其他
未实施
Frobenius范数由下式给出 [1]:
\(||A||_F = [\sum_{i,j} abs(a_{i,j})^2]^{1/2}\)
参考文献
- 1
G.H.Golub和C.F.Van Loan, 矩阵计算 ,马里兰州巴尔的摩,约翰霍普金斯大学出版社,1985,PG。15个
示例
>>> from scipy.sparse import * >>> import numpy as np >>> from scipy.sparse.linalg import norm >>> a = np.arange(9) - 4 >>> a array([-4, -3, -2, -1, 0, 1, 2, 3, 4]) >>> b = a.reshape((3, 3)) >>> b array([[-4, -3, -2], [-1, 0, 1], [ 2, 3, 4]])
>>> b = csr_matrix(b) >>> norm(b) 7.745966692414834 >>> norm(b, 'fro') 7.745966692414834 >>> norm(b, np.inf) 9 >>> norm(b, -np.inf) 2 >>> norm(b, 1) 7 >>> norm(b, -1) 6