maxframe.tensor.linalg.matrix_norm#

maxframe.tensor.linalg.matrix_norm(x, *, keepdims=False, ord='fro')[源代码]#

计算矩阵(或矩阵堆栈)``x`` 的矩阵范数。

此函数与 Array API 兼容。

参数:
  • x (array_like) -- 输入数组,其形状为 (..., M, N),且最内两维构成 MxN 矩阵。

  • keepdims (bool, optional) -- 如果设置为 True,则在结果中保留用于计算范数的轴,并将其大小设为一。默认值:False。

  • ord ({1, -1, 2, -2, inf, -inf, 'fro', 'nuc'}, optional) -- 范数的阶数。详情请参见 numpy.linalg.normNotes 下的表格。

参见

numpy.linalg.norm

通用范数函数

示例

>>> import maxframe.tensor as mt
>>> from maxframe.tensor import linalg as LA
>>> a = mt.arange(9) - 4
>>> a.execute()
array([-4, -3, -2, ...,  2,  3,  4])
>>> b = a.reshape((3, 3))
>>> b.execute()
array([[-4, -3, -2],
       [-1,  0,  1],
       [ 2,  3,  4]])
>>> LA.matrix_norm(b).execute()
7.745966692414834
>>> LA.matrix_norm(b, ord='fro').execute()
7.745966692414834
>>> LA.matrix_norm(b, ord=np.inf).execute()
9.0
>>> LA.matrix_norm(b, ord=-np.inf).execute()
2.0
>>> LA.matrix_norm(b, ord=1).execute()
7.0
>>> LA.matrix_norm(b, ord=-1).execute()
6.0
>>> LA.matrix_norm(b, ord=2).execute()
7.3484692283495345
>>> LA.matrix_norm(b, ord=-2).execute()
1.8570331885190563e-016 # may vary