官方文档:https://pytorch.org/docs/stable/generated/torch.norm.html?highlight=norm#torch.norm

函数:

norm(input, p='fro', dim=None, keepdim=False, out=None, dtype=None)Returns the matrix norm or vector norm of a given tensor.

参数:

  • input (Tensor) – 输入张量
  • p (int, float, inf, -inf, ‘fro’, ‘nuc’, optional) – 范数顺序.
    Default: 'fro',此时p为Frobenius范数计算中的幂指数值
 The following norms can be calculated:=====  ============================  ==========================ord    matrix norm                   vector norm=====  ============================  ==========================None   Frobenius norm                2-norm'fro'  Frobenius norm                --'nuc'  nuclear norm                  --Other  as vec norm when dim is None  sum(abs(x)**ord)**(1./ord)=====  ============================  ==========================
  • dim (int, 2-tuple of ints, 2-list of ints, optional):进行范数计算的维度
dim 可以进行范数计算的情况
int vector norm
2-tuple of ints matrix norm
None input是二维tensor,matrix norm可以进行范数计算
input是一维tensor,vector norm可以进行范数计算
input是超过二维的tensor,vector norm将被应用到最后的dim


Example:

import torch
from torch import tensora = tensor([[[1, 2, 3, 4], [1, 2, 3, 4]],[[0, 2, 3, 4], [0, 2, 3, 4]]], dtype=torch.float32)
print(a.shape)
a0 = torch.norm(a, p=2, dim=0)       # 对0 dim求vector 2-norm
a1 = torch.norm(a, p=2, dim=1)       # 对1 dim求vector 2-norm
a2 = torch.norm(a, p=2, dim=2)       # 对2 dim求vector 2-norm
a3 = torch.norm(a, p=2, dim=(0, 1))  # 对0,1 dim求matrix 2-norm
a4 = torch.norm(a, p=2, dim=None)    # input是超过二维的tensor,vector norm将被应用到最后的dim
print(a0)
print(a1)
print(a2)
print(a3)
print(a4)

Out:

torch.Size([2, 2, 4])
tensor([[1.0000, 2.8284, 4.2426, 5.6569],[1.0000, 2.8284, 4.2426, 5.6569]])
tensor([[1.4142, 2.8284, 4.2426, 5.6569],[0.0000, 2.8284, 4.2426, 5.6569]])
tensor([[5.4772, 5.4772],[5.3852, 5.3852]])
tensor([1.4142, 4.0000, 6.0000, 8.0000])
tensor(10.8628)
  • keepdim(bool, optional)– 是否保持输入时的维度. Default: False
b0 = torch.norm(a, p=2, dim=0, keepdim=True)
b1 = torch.norm(a, p=2, dim=0, keepdim=False)   # 就是刚才的a0
print(b0.shape)
print(b1.shape)

Out:

torch.Size([1, 2, 4])
torch.Size([2, 4])
  • out (Tensor, optional) – 结果张量.
  • dtype (:class:torch.dtype, optional): 返回的tensor的数据类型. Default: None.

解析torch.norm函数相关推荐

  1. PyTorch中torch.norm函数详解

    torch.norm() 是 PyTorch 中的一个函数,用于计算输入张量沿指定维度的范数.具体而言,当给定一个输入张量 x 和一个整数 p 时,torch.norm(x, p) 将返回输入张量 x ...

  2. Pytorch中torch.repeat()函数解析

    一. torch.repeat()函数解析 1. 说明 官网:torch.tensor.repeat(),函数说明如下图所示: 2. 函数功能 torch.tensor.repeat()函数可以对张量 ...

  3. Pytorch中torch.unsqueeze()和torch.squeeze()函数解析

    一. torch.squeeze()函数解析 1. 官网链接 torch.squeeze(),如下图所示: 2. torch.squeeze()函数解析 torch.squeeze(input, di ...

  4. Pytorch中torch.argmax()函数解析

    一. torch.argmax()函数解析 1. 官网链接 torch.argmax(),如下图所示: 2. torch.argmax(input)函数解析 torch.argmax(input) → ...

  5. Pytorch中torch.numel(),torch.shape,torch.size()和torch.reshape()函数解析

    一. torch.numel()函数解析 1. 官网链接 torch.numel(),如下图所示: 2. torch.numel()函数解析 torch.numel(input) → int 返回输入 ...

  6. torch.norm

    torch.norm 范数1,绝对值求和 范数2,平方和求开根号2 范数3,平方和求开根号3 import torch import torch.tensor as tensora = tensor( ...

  7. torch 常用函数

    norm 范式 import numpy as np np_data=[1,2] torch_data = torch.from_numpy(np.asarray(np_data).astype(np ...

  8. 利用反汇编手段解析C语言函数

    利用反汇编手段解析C语言函数 通过在 Visual C++6.0 下反汇编一个 32 位 C语言程序的部分代码来解析解释函数调用的具体过程. 函数调用过程 函数调用过程主要由参数传递.地址跳转.局部变 ...

  9. pytorch torch.norm(input, p=2) → float、torch.norm(input, p, dim, out=None) → Tensor(求范数)

    torch.norm 用法1: torch.norm(input, p=2) → float 返回输入张量input 的p 范数. 参数: input (Tensor) – 输入张量 p (float ...

  10. 代码阅读 | torch.sort函数

    知识点https://blog.csdn.net/u012495579/article/details/106117511网友讲得非常清晰了. 代码如下: lengths = [17,17,19,23 ...

最新文章

  1. Python 标准库之 subprocesss
  2. signature=0a26d8967069103efeee67346aac0529,Construction of Thinned Gated Single-Assignment Form
  3. Java Learning Path(四) 方法篇
  4. Lazy延迟实例对象
  5. 《Python Cookbook 3rd》笔记(3.11):随机选择
  6. Python科学计算扩展库numpy中的广播运算
  7. C++ 初识类与对象
  8. HashMap源码分析(保姆式注解):三大方法(构造、Put、Remove) ;附带面试考点及博主免费答疑
  9. JS实现双人五子棋简易游戏(上)
  10. 简单几步教你如何看k线图图解
  11. 22-3-批量对excel文件重命名
  12. Adobe Flash player 过期
  13. 【填充插件】自定义填充图案制作插件
  14. 联想td430服务器装系统,ThinkServerRAID300阵列配置基本操作
  15. python 绘制五星红旗(包含三角函数)
  16. android MediaPlayer 源码分析 1
  17. ModuleNotFoundError: No module named ‘_ctypes‘的解决方案
  18. Python的安装与卸载
  19. ML机器学习算法(一): 基于逻辑回归的分类预测
  20. 【蓝桥杯】九宫重排(BFS+康拓展开)

热门文章

  1. 同是4G标准,TD和FDD谁更快?
  2. 身份证号码验证处理工具类
  3. logistic人口模型python代码_人口模型(马尔萨斯vslogistic).ppt
  4. 共享OrCAD9.2pSpice9.2+multisim下载地址
  5. 杭电OJ刷题指南(ACM)
  6. 计算机必备专用英语词汇
  7. 手机电子词典_如何把手机变成一款英语学习神器?
  8. 计算机算法基础总结(借鉴、整理)
  9. Andriod 对号错号
  10. WhiteSmoke无限试用