Pytorch常用函数用法归纳:创建tensor张量

1.torch.arange()

(1)函数原型

torch.arange(start,end,step,*,out,dtype,layout=,device,requires_grad)

(2)参数说明:

参数名称 参数类型 参数说明
start Number 起始值,默认值为0
end Number 结束值,取不到,为开区间
step Number 步长值,默认为1
out Tensor 输出的张量,,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtype torch.dtype

期望返回的张量的数据类型,如果是None,则使用全局默认值,如果未给出dtype,则从其他输入参数推断数据类型,如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值,否则被推断为torch.int64

layout torch.layout 返回张量的期望 layout,默认值为torch.strided
device torch.device 返回张量的期望设备。如果是默认值None,则使用当前设备作为默认张量类型,对于CPU类型的张量,则device是CPU;若是CUDA 类型的张量,则device是当前的CUDA 设备
requires_grad bool autograd是否记录返回张量上的梯度。默认值为False,表示不记录

(3)函数功能:

返回大小为[(end-start)/step]的一维张量,其值为区间[start,end)中给定步长为step的等间隔取值

2.torch.range()

(1)函数原型:

torch.range(start,end,step,*,out,dtype,layout,device=None,requires_grad)

(2)参数说明:

参数名称 参数类型 参数说明
start Number 起始值,默认值为0
end Number 结束值,可以取到,为闭区间
step Number 步长值,默认为1
out Tensor 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtype torch.dtype

期望返回的张量的数据类型,如果是None,则使用全局默认值;如果未给出dtype,则从其他输入参数推断数据类型;如果start、end或stop中的任何一个是浮点数,则dtype被推断为默认值;否则被推断为torch.int64

layout torch.layout 返回张量的期望layout,默认值为torch.strided,对性能影响不大
device torch.device 返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备
requires_grad bool autograd是否记录返回张量上的梯度。默认值为False,表示不记录

(3)函数功能:

返回大小为[(end-start)/step]的一维张量,其值为区间[start,end]中给定步长为step的等间隔取值

3.生成随机数组成的Tensor张量:

(1)函数原型:

1.torch.rand(*size,generator,out,dtype,layout,device,requires_grad)
2.torch.randn(*size,generator,out,dtype,layout,device,requires_grad)
3.torch.randint(low,high,*size,generator,out,dtype,layout,device,requires_grad)
4.torch.randperm(n,generator,out,dtype,layout,device,requires_grad)
5.torch.normal(mean,std,size,generator,out)

(2)参数说明:

参数名称 参数类型 参数说明
size int/list/tuple 生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的
generator torch.Generator,optional 用于控制生成随机数的种子,是可选参数
low int,optional 生成的随机tensor所属整数区间的下界,默认值为0
high int 生成的随机tensor所属整数区间的上界
n int 生成随机整数排列的区间上界,即这些整数排列中最大值+1
mean Tensor 生成的随机tensor服从的正态分布的均值向量
std Tensor 生成的随机tensor数服从的正态分布的标准差向量
out Tensor 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
dtype torch.dtype

期望返回的张量的数据类型,对于torch.randint()和torch.randperm()来说默认值为torch.int64,而对于其他函数如果是None则使用全局默认值

layout torch.layout 返回张量的期望layout,默认值为torch.strided,对性能影响不大
device torch.device 返回张量的设备。默认值None表示使用当前设备作为默认张量类型;对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备
requires_grad bool autograd是否记录返回张量上的梯度。默认值为False表示不记录

(3)函数功能:

1.生成由[0, 1)之间均匀分布的随机数组成的给定size大小的tensor张量;
2.生成由从标准正态分布(均值为0,标准差为1)中采样的随机数组成的指定size大小的tensor张量;
3.生成由指定范围[low,high)内的随机整数组成的指定size大小的tensor张量
4.生成一个从[0,n)的随机整数排列的tensor张量
5.生成由服从给定均值mean和标准差std的正态分布的随机数组成的指定size大小的tensor张量;
size参数不是必须的,当省略size参数时生成的tensor大小由mean和std决定

4.生成由固定值组成的Tensor张量 

(1)函数原型:

1.torch.ones(*size,out,dtype,layout,device,requires_grad)
2.torch.ones_like(input,dtype,layout,device,requires_grad)
3.torch.zeros(*size,out,dtype,layout,device,requires_grad)
4.torch.zeros_like(input,dtype,layout,device,requires_grad)
5.torch.fill(*size,fill_value,out,dtype,layout,device,requires_grad)
6.torch.eye(n,m,out,dtype,layout,device,requires_grad)
7.torch.empty(*size,out,dtype,layout,device,requires_grad)
8.torch.empty_like(input,out,dtype,layout,device,requires_grad)

(2)参数说明:

参数名称 参数类型 参数说明
size int/list/tuple 生成tensor的维度大小,可以是int类型的数或者是一个由int类型数组成的list或tuple,若为int则表示此时生成的tensor是一维的
input torch.Tensor 输入张量,新张量的大小将与此张量相同
dtype torch.dtype

期望返回的张量的数据类型;

对于torch.zeros_like()和torch.ones_like()来说默认值为None,如果是None则使用和张量input一致的类型;而对其他函数来说如果为None使用全局默认类型

out Tensor 输出的张量,表明创建后tensor赋予哪个变量,通常情况下不会设置该参数
layout torch.layout 返回张量的期望layout,默认值为torch.strided,对性能影响不大
device torch.device

返回张量的设备,默认值None表示使用当前设备作为默认张量类型;

对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备

requires_grad bool autograd是否记录返回张量上的梯度。默认值为False表示不记录
fill_value Number 指定填充到生成Tensor张量中的值
n int 生成的单位矩阵的行数
m int,optional 生成的单位矩阵的列数,默认情况下省略m,此时生成的是一个方阵

(3)函数功能:

1.生成给定size大小的一个全为1的Tensor张量
2.生成和输入张量input大小一致的一个全为1的Tensor张量
3.生成给定size大小的一个全为0的Tensor张量
4.生成和输入张量input大小一致的一个全为0的Tensor张量
5.生成给定size大小并且全为给定值fill_value的一个Tensor张量
6.生成大小为n*n的单位矩阵,是一个二维Tensor张量,默认情况下为方阵
7.生成给定size大小的一个填满未初始化数据的Tensor张量
8.生成和输入张量input大小一致的一个填满未初始化数据的Tensor张量

4.生成由现有数据值组成的Tensor张量 

(1)函数原型:

1.torch.tensor(data,dtype,device,requires_grad)
2.torch.from_numpy(ndarray)

(2)参数说明:

参数名称 参数类型 参数说明
data list/Numpy数组/tuple/scalar 表示用于创建张量的数据,生成的Tensor维度和data一致
dtype torch.dtype,optional 期望返回的张量的数据类型;默认值None表示和给定的内容的类型保持一致
device torch.device,optional

返回张量的设备,默认值None表示使用当前设备为默认张量类型;

对于CPU类型的张量则device是CPU;若是CUDA 类型的张量则device是当前的CUDA 设备

requires_grad bool,optional autograd操作是否记录返回张量上的梯度,默认值为False表示不记录
ndarray numpy.ndarray 用于创建张量的numpy数组,生成的Tensor维度和data一致

(3)函数功能:

1.根据给定的输入数据data创建一个指定大小的Tensor张量
2.根据给定的输入numpy数组创建一个指定大小的Tensor张量

相关推荐

  1. Pytorch函数用法归纳:创建tensor

    2024-06-08 00:30:03       31 阅读
  2. Pytorch函数用法归纳:Tensor之间的计算

    2024-06-08 00:30:03       23 阅读
  3. PyTorch核心--tensor !!

    2024-06-08 00:30:03       54 阅读
  4. PyTorch(Tensor)的生成

    2024-06-08 00:30:03       48 阅读
  5. PyTorch运算函数

    2024-06-08 00:30:03       25 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-08 00:30:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-08 00:30:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-08 00:30:03       82 阅读
  4. Python语言-面向对象

    2024-06-08 00:30:03       91 阅读

热门阅读

  1. Pytorch中Tensor的类型对应表

    2024-06-08 00:30:03       27 阅读
  2. 油封包装的关键注意事项

    2024-06-08 00:30:03       30 阅读
  3. 行列视(RCV)系统由哪几部分组成?

    2024-06-08 00:30:03       25 阅读
  4. Log4j日志级别介绍

    2024-06-08 00:30:03       28 阅读
  5. 数据结构:哈夫曼树及其哈夫曼编码

    2024-06-08 00:30:03       27 阅读