解析torch.norm函数
官方文档: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函数相关推荐
- PyTorch中torch.norm函数详解
torch.norm() 是 PyTorch 中的一个函数,用于计算输入张量沿指定维度的范数.具体而言,当给定一个输入张量 x 和一个整数 p 时,torch.norm(x, p) 将返回输入张量 x ...
- Pytorch中torch.repeat()函数解析
一. torch.repeat()函数解析 1. 说明 官网:torch.tensor.repeat(),函数说明如下图所示: 2. 函数功能 torch.tensor.repeat()函数可以对张量 ...
- Pytorch中torch.unsqueeze()和torch.squeeze()函数解析
一. torch.squeeze()函数解析 1. 官网链接 torch.squeeze(),如下图所示: 2. torch.squeeze()函数解析 torch.squeeze(input, di ...
- Pytorch中torch.argmax()函数解析
一. torch.argmax()函数解析 1. 官网链接 torch.argmax(),如下图所示: 2. torch.argmax(input)函数解析 torch.argmax(input) → ...
- Pytorch中torch.numel(),torch.shape,torch.size()和torch.reshape()函数解析
一. torch.numel()函数解析 1. 官网链接 torch.numel(),如下图所示: 2. torch.numel()函数解析 torch.numel(input) → int 返回输入 ...
- torch.norm
torch.norm 范数1,绝对值求和 范数2,平方和求开根号2 范数3,平方和求开根号3 import torch import torch.tensor as tensora = tensor( ...
- torch 常用函数
norm 范式 import numpy as np np_data=[1,2] torch_data = torch.from_numpy(np.asarray(np_data).astype(np ...
- 利用反汇编手段解析C语言函数
利用反汇编手段解析C语言函数 通过在 Visual C++6.0 下反汇编一个 32 位 C语言程序的部分代码来解析解释函数调用的具体过程. 函数调用过程 函数调用过程主要由参数传递.地址跳转.局部变 ...
- 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 ...
- 代码阅读 | torch.sort函数
知识点https://blog.csdn.net/u012495579/article/details/106117511网友讲得非常清晰了. 代码如下: lengths = [17,17,19,23 ...
最新文章
- Python 标准库之 subprocesss
- signature=0a26d8967069103efeee67346aac0529,Construction of Thinned Gated Single-Assignment Form
- Java Learning Path(四) 方法篇
- Lazy延迟实例对象
- 《Python Cookbook 3rd》笔记(3.11):随机选择
- Python科学计算扩展库numpy中的广播运算
- C++ 初识类与对象
- HashMap源码分析(保姆式注解):三大方法(构造、Put、Remove) ;附带面试考点及博主免费答疑
- JS实现双人五子棋简易游戏(上)
- 简单几步教你如何看k线图图解
- 22-3-批量对excel文件重命名
- Adobe Flash player 过期
- 【填充插件】自定义填充图案制作插件
- 联想td430服务器装系统,ThinkServerRAID300阵列配置基本操作
- python 绘制五星红旗(包含三角函数)
- android MediaPlayer 源码分析 1
- ModuleNotFoundError: No module named ‘_ctypes‘的解决方案
- Python的安装与卸载
- ML机器学习算法(一): 基于逻辑回归的分类预测
- 【蓝桥杯】九宫重排(BFS+康拓展开)