在GPU上加速
回顾基本训练过程(MINIST)
数据准备
导包、设计训练参数
1 | import torch |
下载数据
1 | train_loader = torch.utils.data.DataLoader( |
前向传播
参数初始化
1 | w1, b1 = torch.randn(200, 784, requires_grad=True),\ |
搭建网络
1 | def fforward(): |
定义加速器和loss函数
1 | optimizer = optim.SGD([w1,b1,w2,b2,w3,b3],lr = learning_rate)#传入需要计算梯度的参数和learning_rate |
反向传播
1 | for epoch in len(epochs): |
测试
1 | test_loss = 0 |
GPU加速
比较好的博客:
http://www.feiguyunai.com/index.php/2019/04/30/python-ml-25-pytorch-gpu/
[自己的实验环境应该是单GPU环境]
创建一个GPU实例
1 | device = torch.device('cuda: 0' if torch.cuda.is_available() else'cpu')#首先要先判断是否有可用的GPU |
把需要计算的量加载到设备上
1 | net = MLP().to(deivce) |