【发布时间】:2020-10-08 19:43:23
【问题描述】:
有人可以帮我追踪以下错误的根源吗?我不明白 GPU 和 CPU 之间的切换发生在哪里,因为我从一开始就指示 collab 使用 GPU。
同样在错误堆栈跟踪之后,它指向标签,这里可能有什么问题?
提前致谢!
【问题讨论】:
标签: python pytorch google-colaboratory
有人可以帮我追踪以下错误的根源吗?我不明白 GPU 和 CPU 之间的切换发生在哪里,因为我从一开始就指示 collab 使用 GPU。
同样在错误堆栈跟踪之后,它指向标签,这里可能有什么问题?
提前致谢!
【问题讨论】:
标签: python pytorch google-colaboratory
我建议看一下这个youtube 系列以了解 pytorch 的工作原理。
对于你的问题,我想你会在这个video找到你的答案
这个想法是您需要指定要将数据和模型放在 GPU 上。使用方法.to(device),如果您的 GPU 可用,则设备是 cuda,否则您的 cpu,您需要对数据执行相同操作。
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
你还需要处理你的数据,我假设你有一个 for 循环来迭代你的批处理,所以你可以这样做:
for batch in train_loader:
***
x, y = batch[0].to(device), batch[1].to(device)
***
【讨论】:
.to(device),但我仍然收到此错误。