pytorch的模块
Pytorch 官方文档链接: https://pytorch.org/docs/stable
torch.nn:神经网络相关api
torch.option: 优化算法
torch.utils.data : dataset,dataLoader
1.pytorch和tensorflow区别
2.tensor(向量)相关操作
形状:
声明一个tensor:
squeeze操作:压缩一个维度
unsqueeze操作:
Transpose:维度对调
cat:联合几个tensor
3.运行设备设置
pytorch默认是在CPU上计算,如果在GPU上跑要特别声明下:
x = x.to('cpu')
x = x.to('cuda')
torch.cuda.is_available() #检查设备状态
4.怎么计算梯度Gradient
import torch
import numpy as npx = torch.tensor([[1.,0.],[-1.,1.]],requires_grad=True)
y = x.pow(2) #这里是每个元素的平方
print(y)
z = x.pow(2).sum() #所有元素的平方和
print(z)
z.backward() #z值对每个矩阵元素反向求导
g = x.grad
print(g)x_num = np.array([[4.,3.],[-1.,1.]])
y_num = x_num**2
print(y_num)
print(sum(sum(y_num)))
输出结果:
Linear Layer:
nn.Linear(in_features, out_features)
nn.sigmoid()
nn.ReLU()
Loss functions:
nn.MSELoss() #均方误差损失
nn.CrossEntropyLoss() #交叉熵损失
构造自己的神经网络:

