torch的使用笔记

Posted 悟乙己

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了torch的使用笔记相关的知识,希望对你有一定的参考价值。

1 安装篇

参考:
[开发技巧]·PyTorch如何使用GPU加速(CPU与GPU数据的相互转换)

安装可以在官方参考代码,最好使用conda
https://pytorch.org/get-started/locally/

conda install pytorch torchvision torchaudio cudatoolkit=10.2 -c pytorch

检测是否可以使用GPU,使用一个全局变量use_gpu,便于后面操作使用

use_gpu = torch.cuda.is_available()
可以使用GPU,use_gpu的值为True,否则为False。当可以使用GPU,我们不想使用,可以直接赋值use_gpu = False

我们在进行转换时,需要把数据,网络,与损失函数转换到GPU上

1.构建网络时,把网络,与损失函数转换到GPU上

model = get_model()
loss_f = t.nn.CrossEntropyLoss()
if(use_gpu):
    model = model.cuda()
    loss_f = loss_f.cuda()

2.训练网络时,把数据转换到GPU上

if (use_gpu):
    x,y = x.cuda(),y.cuda()

3.取出数据是,需要从GPU准换到CPU上进行操作

if(use_gpu):
    loss = loss.cpu()
    acc = acc.cpu()

1.2 自由切换cuda/cpu

#选择使用gpu,如果没有gpu就使用cpu

device = torch.device("cuda" if torch.cuda.is_available() else "cpu")

即将

model=model.cuda()
x=x.cuda()
y=y.cuda()

上边的改为下边的!!!!!!!

model=model.to(device)
x=x.to(device)
y=y.to(device)

如果电脑有gpu可用,调用的还是gpu

2 使用篇

未完待续

以上是关于torch的使用笔记的主要内容,如果未能解决你的问题,请参考以下文章

torch的使用笔记

pytorch 笔记:torch.nn.Linear() VS torch.nn.function.linear()

pytorch笔记 torch.clamp(截取上下限)

pytorch 笔记 torch.roll

pytorch 笔记: 扩展torch.autograd

torch学习笔记