您的位置:首页 > 房产 > 家装 > 融资平台有哪些_锡林郭勒建站_必应搜索引擎地址_平台推广员是做什么的

融资平台有哪些_锡林郭勒建站_必应搜索引擎地址_平台推广员是做什么的

2024/12/23 10:57:26 来源:https://blog.csdn.net/m0_48241022/article/details/144409878  浏览:    关键词:融资平台有哪些_锡林郭勒建站_必应搜索引擎地址_平台推广员是做什么的
融资平台有哪些_锡林郭勒建站_必应搜索引擎地址_平台推广员是做什么的

torch.linalg.norm 是 PyTorch 中用于计算张量范数(Norm)的函数。范数是线性代数中的一个重要概念,用于量化向量或矩阵的大小或长度。这个函数可以处理任意形状的张量,支持多种类型的范数计算。

1.函数签名 

torch.linalg.norm(input, ord=None, dim=None, keepdim=False, dtype=None) -> Tensor

参数说明

  • input:
    要计算范数的张量。

  • ord (可选):
    范数的类型,决定范数的计算公式。常见值:

    • None(默认):计算 Frobenius 范数(矩阵)或 2 范数(向量)。
    • 1: 1 范数(列绝对值之和,或向量绝对值之和)。
    • 2: 2 范数(Euclidean 范数,平方和的平方根)。
    • 'fro': Frobenius 范数(矩阵的元素平方和开方)。
    • inf: 无穷范数(矩阵的行绝对值和最大值)。
    • -inf: 负无穷范数(矩阵的行绝对值和最小值)。
  • dim (可选):
    指定计算范数的维度。

    • 若为 None,计算整个张量的范数。
    • 若指定为单个或多个维度,则按维度计算范数。
  • keepdim (布尔,可选):
    如果为 True,结果会保留被归约的维度,维度的大小为 1

  • dtype (可选):
    指定计算中使用的数据类型,常用于提高数值精度。

返回值

返回计算出的张量范数。结果是一个标量或一个张量(取决于是否指定 dim 参数)。

常见用法示例

(1) 计算向量的 2 范数

计算向量的欧几里得长度(平方和的平方根)。

import torchx = torch.tensor([3.0, 4.0])
norm = torch.linalg.norm(x)
print(norm)  # 输出: 5.0 (因为 sqrt(3^2 + 4^2) = 5)

(2) 计算矩阵的 Frobenius 范数

A = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
norm = torch.linalg.norm(A, ord='fro')
print(norm)  # 输出: 5.4772 (因为 sqrt(1^2 + 2^2 + 3^2 + 4^2) ≈ 5.4772)

 (3) 按维度计算范数

B = torch.tensor([[1.0, 2.0], [3.0, 4.0]])
norm_dim0 = torch.linalg.norm(B, ord=1, dim=0)
print(norm_dim0)  # 输出: tensor([4., 6.]) (列绝对值之和)norm_dim1 = torch.linalg.norm(B, ord=1, dim=1)
print(norm_dim1)  # 输出: tensor([3., 7.]) (行绝对值之和)

 (4) 计算无穷范数

C = torch.tensor([[1.0, -2.0], [3.0, -4.0]])
inf_norm = torch.linalg.norm(C, ord=float('inf'))
print(inf_norm)  # 输出: 7.0 (最大行绝对值和)

 (5) 计算负无穷范数

neg_inf_norm = torch.linalg.norm(C, ord=float('-inf'))
print(neg_inf_norm)  # 输出: 3.0 (最小行绝对值和)

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com