“运行时错误:预期所有张量都在同一设备上,但仅在使用笔记本电脑 GPU 时发现至少两个设备,cuda:0 和 cpu”

问题描述 投票:0回答:1

我在使用 GTX 3050 笔记本电脑 GPU 训练模型时遇到此错误。但我在 Google Colab 中训练模型时没有收到此错误。我按照这篇文章中的步骤使用笔记本电脑 GPU 训练我的模型(我之前使用的是 colab)。

我尝试训练的模型是this。有什么可能的解释为什么会发生这种情况吗?

python deep-learning pytorch
1个回答
0
投票

当您的输入张量分配在 CPU 中而模型分配在 GPU 中时,就会发生这种情况。您需要使用

.to('cuda')
将张量传递到 GPU。您引用的 GitHub 存储库内的代码注释中已注明这一点。

参考这个代码,第674行:

 Notes: 1)Dataloaders give normal (non-cuda) tensors by default. They have to be manually cast using the Tensor.to() method.

您还可以看到类似的post,以获得其他答案。

© www.soinside.com 2019 - 2024. All rights reserved.