PyTorch系列一:安装与入门

1.pip安装PyTorch

sudo pip install torch torchvision

2.导入PyTorch包

import torch

3.Tensor(张量)

# tensor创建
a = torch.Tensor(2, 2)
a = torch.ones(2,2)
# 大小和类型
b = torch.rand(2, 2)
b.size()
b.type()
# 类型转换
a = a.long()
a = a.float()
# tensor转换np.array
c = b.numpy()
# np.array转换tensor
import numpy as np
d = np.array([[1, 3], [2, 4]])
e = torch.from_numpy(d)
# [行操作]沿着行取最大值
x = torch.Tensor(5, 4)
max_value, max_idx = torch.max(x, dim=1)
# [行操作]沿着行求和
sum_x = torch.sum(x, dim=1)
# 求和
z = x+y
z = torch.add(x, y)

4.Variable(变量)
Variable是对Tensor的封装,操作和Tensor是一样的,不过Variabel会放入一个计算图,然后进行前向传播、反向传播以及自动求导。
一个Variable里面包含着三个属性,data,grad和creator,其中creator表示得到这个Variabel的操作,grad表示方向传播的梯度,data表示取出这个Variabel里面的数据。

from torch.autograd import Variable
# requires_grad是否求梯度,默认False
x = Variable(torch.Tensor([5]), requires_grad=True)
y = Variable(torch.Tensor([6]), requires_grad=True)
# 求和
z = torch.sum(9 * x + 9 * y)
z.data
z.grad_fn
# 求x和y的梯度
z.backward()
x.grad
y.grad
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Tensors #Tensors#Tensors和numpy中的ndarrays较为相似,因此Tensor也能够使...
    MiracleJQ阅读 1,666评论 0 1
  • 概述 在新版本中,PyTorch引入了许多令人兴奋的新特性,主要的更新在于 Variable和Tensor的合并 ...
    古de莫宁阅读 6,184评论 0 1
  • 之前有很多小伙伴私信我说文章思想能看懂,但是pytorch的部分因为没有看过pytorch教程所以一脸懵逼。对此我...
    SherlockLiao阅读 3,463评论 1 16
  • 好不容易昨天放晴了一天,今天又是灰蒙蒙小雨的天气。早上跑步1小时,身体暖和了些。恩恩说要妈妈跑步回来才肯起床,只要...
    Moon妈妈阅读 116评论 0 0
  • 今天,我学会做肉丸子了,我很兴奋。爸爸教了我做肉丸子的方法:首先需要买块肉绞成馅,然后往里面放佐料,佐料有:葱、姜...
    昊昊的每一天阅读 268评论 0 0