美文网首页Pytorch
pytorch | Tensor和Variable

pytorch | Tensor和Variable

作者: yuanCruise | 来源:发表于2019-07-19 23:47 被阅读0次
1.Tensor

Tensor是pytorch中最基本的构件,可以像numpy一样进行矩阵计算,最主要的是Tensor支持GPU加速运算。而且Tensor的运算与numpy的运算基本相似,但有部分高级的矩阵计算Tensor并不支持,比如计算特征值特征向量等。因此numpy还是有存在的必要的。

小练习
创建一个float32,大小3*2,随机初始化的tensor,并将其转换为numpy类型。
#方式1
x = torch.randn(3,2).type(torch.FloatTensor)
#方式2
x = torch.randn(3,2).float()
x_array = x.numpy()


小练习
创建一个float32,4*4的全1矩阵,将矩阵中的2*2矩阵修改为2.
x = torch.ones(4,4).float()
x[1:3,1:3] = 2
print(x)
1  1  1  1
1  2  2  1
1  2  2  1
1  1  1  1
[torch.FloatTensor of size 4*4]
2.Variable

tensor是Pytorch中非常高效数据格式,但用tensor构建神经网络还远远不够,为了构建计算图,所以Variable是不可或缺的数据形式。Variable是对tensor的封装。
Variable有三个属性:

  • .data:tensor本身
  • .grad:对应tensor的梯度
  • .grad_fn:该Variable是通过什么方式获得的
3.多图预警

相关文章

网友评论

    本文标题:pytorch | Tensor和Variable

    本文链接:https://www.haomeiwen.com/subject/qucdlctx.html