Pytorch--创建Tensor

1、Import from numpy

在这里插入图片描述

torch.from_numpy()# 转化维Tensor
np.ones([2,3])#创建2行3列的数组

2、Import from List

在这里插入图片描述

tensor()#后面可以加List
FloatTensor()#后面可以加List也可以直接定义tensor的shape

3、uninitialized

在这里插入图片描述

Torch.empty()#创建一个空的Tensor
Torch.FloatTensor(d1, d2, d3)#创建一个shape为[d1,d2,d3]的tensor

4、set default type

设置默认类型
在这里插入图片描述

torch.set_default_tensor_tpye(torch.DoubleTensor)

5、rand/rand_like, randint

在这里插入图片描述

rand#随机数来自区间[0, 1)的均匀分布,张量的形状由变量参数.size定义。
rand_like#返回一个与输入相同大小的张量,该张量由区间[0,1)上的均匀分布的随机数填充。 
randint#min,max,shape
>>> torch.randint(3, 10, (2, 2))
tensor([[4, 5],
        [6, 7]])

6、randn

在这里插入图片描述
#返回一个充满随机数的张量,这些随机数来自均值为0、方差为1的正态分布(也叫标准正态分布)。

>>> torch.randn(4)
tensor([-2.1436,  0.9966,  2.3426, -0.6366])
>>> torch.randn(2, 3)
tensor([[ 1.5954,  2.8929, -1.0923],
        [ 1.1719, -0.4709, -0.1996]])

7、normal

torch.normal
返回一个从独立的正态分布中抽取的随机数的张量,其平均值和标准差是给定的。
平均值是一个张量,包含每个输出元素的正态分布的平均值。
std是一个张量,包含每个输出元素的正态分布的标准差。
Mean和std的形状不需要匹配,但每个张量中的元素总数需要相同。

>>> torch.normal(mean=torch.arange(1., 11.), std=torch.arange(1, 0, -0.1))
tensor([  1.0425,   3.5672,   2.7969,   4.2925,   4.7229,   6.2134,
          8.0505,   8.1408,   9.0563,  10.0566])

8、full

在这里插入图片描述

>>> torch.full((2, 3), 3.141592)
tensor([[ 3.1416,  3.1416,  3.1416],
        [ 3.1416,  3.1416,  3.1416]])

9、arange/range

在这里插入图片描述

 arange#从区间[start, end]中取值,并从起点开始进行公差步长。

range和python重复不推荐使用

10、linspace/logspace

在这里插入图片描述
linspace

torch.linspace(start, end, steps, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor

在这里插入图片描述

对start到end进行steps-1次切割

>>> torch.linspace(3, 10, steps=5)
tensor([  3.0000,   4.7500,   6.5000,   8.2500,  10.0000])
>>> torch.linspace(-10, 10, steps=5)
tensor([-10.,  -5.,   0.,   5.,  10.])
>>> torch.linspace(start=-10, end=10, steps=5)
tensor([-10.,  -5.,   0.,   5.,  10.])
>>> torch.linspace(start=-10, end=10, steps=1)
tensor([-10.])

logspace

torch.logspace(start, end, steps, base=10.0, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) → Tensor

在这里插入图片描述

>>> torch.logspace(start=-10, end=10, steps=5)
tensor([ 1.0000e-10,  1.0000e-05,  1.0000e+00,  1.0000e+05,  1.0000e+10])
>>> torch.logspace(start=0.1, end=1.0, steps=5)
tensor([  1.2589,   2.1135,   3.5481,   5.9566,  10.0000])
>>> torch.logspace(start=0.1, end=1.0, steps=1)
tensor([1.2589])
>>> torch.logspace(start=2, end=2, steps=1, base=2)
tensor([4.0])

11、Ones/zeros/eye

在这里插入图片描述

torch.ones()全1
torch.zero()全0
torch.eye()单位矩阵
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值