Pytorch中的张量简介与创建

1. Tensor概念

张量是一个多维师叔祖,它是标量、向量、矩阵的高维拓展
在这里插入图片描述

2.Tensor创建一:直接创建

torch.tensor(
	data,
	datype = None,
	device = None,
	requires_grad = False,
	pin_memory = False)

torch.tensor()
功能 : 从 data 创建 tensor

  • data : 数据,可以是 list,numpy
  • dtype :数据类型,默认与 data 的一致
  • device : 所在设备,cuda/ cpu
  • requires_grad : 是否需要梯度
  • pin_memory : 是否存在于锁页内存

3.Tensor创建二:依据数值创建

torch.from_numpy(ndarray)
功能 : 从 numpy 创建 tensor
注意事项:从 torch.from_numpy创建的tensor与原ndarray共享内存,当修改其中一个的数据,另外一个也将会被改动。

3.1 torch.zeros()

功能:依size创建全0张量

torch.zeros(
	*size,
	out = None,
	dtype = None,
	layout = torch.strided,
	device = None,
	requires_grad = False
	)
  • size: 张量的形状,如(3,3)、(3,224,224)
  • out : 输出的张量
  • layout : 内存中的布局形式,有 strided,sparse_coo等
  • device : 所在设备,gpu/cpu

3.2 torch.zeros_like()

功能 : 依input形状创建全0张量

torch.zeros_like(
	input,
	dtype = None,
	layput = None,
	device = None,
	requies_grad = False)
  • input : 创建与input同形状的全0张量
  • dtype:数据类型
  • layout:内存中布局形式

3.3 torch.ones()

torch.ones(
	*size,
	out = None,
	dtype = None,
	layout = torch.strided,
	device = None,
	requires_grad = False
	)

3.4 torch.ones_like()

torch.ones_like(
	input,
	dtype = None,
	layput = None,
	device = None,
	requies_grad = False)

3.5 torch.full()

功能: 自定义数值填充

3.6 torch.full_like()

功能: 自定义数值填充

3.7 torch.arange()

功能: 创建等差的1维张量
注意事项: 数值区间为 [start,end)

  • start: 数列起始值
  • end: 数列结束值
  • step:数列公差,默认为1

3.8 torch.linspace()

功能:创建均分的1维张量
注意事项:数值区间 [start,end],均分间隔 = (start - end)/steps

  • start : 数列起始值
  • end : 数列结束值
  • steps: 数列长度

3.9 torch.logspace()

功能 : 创建对数均分的1维张量
注意事项:长度为 steps,底为space

  • start : 数列起始值
  • end : 数列结束值
  • steps: 数列长度
  • base: 对数函数的底,默认为10

3.10 torch.eye()

功能: 创建单位对角矩阵(2维张量)
注意事项: 默认为方阵

  • m : 矩阵行数
  • n : 矩阵列数

4.Tensor创建三:依据概率创建

4.1 torch.normal()

功能 : 生成正态分布(高斯分布)

  • mean : 均值
  • std : 标准差

4.2 torch.rand()

4.3 torch.rand_like()

功能: 在区间 [0,1)上,生成均匀分布

4.4 torch.randint()

4.5 torch.randint_lie()

功能:区间 [low,high)生成整数均匀分布

  • 37
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值