PyTorch basis
1. 使用PyTorch
import torch
2. Tensor生成
t1 = torch.tensor(1) t2 = torch.tensor(1.) #浮点 t3 = torch.tensor([1, 2]) #向量 t4 = torch.tensor([[1, 2], [3, 4]]) #二维 t5 = torch.tensor([[[1, 2], [3, 4]]]) #三维
3. Tensor的一些属性
t1.dtype #torch.int64 t2.dtype #torch.float32 t1.shape #torch.Size([]) t2.shape #torch.Size([]) t3.shape #torch.Size([2]) t4.shape #torch.Size([2, 2]) t5.shape #torch.Size([1, 2, 2])
4. Tenosr梯度信息
# 声明 x = torch.tensor(4.) w = torch.tensor(3., requires_grad=True) #默认为False b = torch.tensor(3., requires_grad=True) y = w * x + b #tensor(15., grad_fn=<AddBackward0>) y.backward() #通过backward()计算梯度,梯度存储在各tensor的grad属性中 x.grad #none w.grad #4. b.grad #1.
5. PyTorch tensor与Numpy互换
y = nm.array([1, 2]) #int32 z = torch.from_numpy(y) #torch.int32 z = z.numpy() #int32