运行时错误:生成器需要“cuda”设备类型,但发现“cpu”

2024-01-21

我正在努力训练PeleeNet pytorch https://github.com/yxlijun/Pelee.Pytorch并得到以下错误

train.py line 80 enter image description here

pelee_voc train configuration enter image description here


阅读中提供的链接@Dwijay 的回答 https://stackoverflow.com/a/71780879/4332585,我找到了一个不需要您进行任何源代码更改的答案。 事实上,我想说更改 PyTorch 源代码是非常危险的。 但修改的想法Generator是好的。 事实上,默认情况下,随机数生成器在 CPU 上生成数字,但我们希望它们在 GPU 上生成。

因此,实际上应该修改数据加载器实例化以适应默认 cuda 设备的使用。 这一点在这个 GitHub 评论 https://github.com/dbolya/yolact/issues/664#issuecomment-975051339:

data_loader = data.DataLoader(
    ...,
    generator=torch.Generator(device='cuda'),
)

这个修复在 PyTorch 1.11 中对我有用(并且适用于PyTorch 1.10 中的另一个用户 https://github.com/dbolya/yolact/issues/664#issuecomment-1037760604).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

运行时错误:生成器需要“cuda”设备类型,但发现“cpu” 的相关文章

随机推荐