【问题标题】:RuntimeError: Expected a 'cuda' device type for generator but found 'cpu'RuntimeError: 期望生成器的“cuda”设备类型,但发现“cpu”
【发布时间】:2022-04-07 18:56:36
【问题描述】:

我正在尝试训练 PeleeNet pytorch 并得到以下错误

train.py第 80 行

pelee_voc 火车配置

【问题讨论】:

    标签: pytorch


    【解决方案1】:

    我有同样的问题,但在 ubuntu20.04 我曾尝试以mentioned 的身份关闭随机播放,这很有效,但它不正确,因为它会使你的训练变得更糟。

    保持随机播放并按照以下步骤操作,这些会根据 pytorch 版本而有所不同:

    1. 在位于 anaconda 或任何地方的“site-packages/torch/utils/data/sampler.py”文件中。
    • [修改第116行]:generator = torch.Generator()
      • 更改为generator = torch.Generator(device='cuda')
    • [修改第126行]:yield from torch.randperm(n, generator=generator).tolist()
      • 更改为yield from torch.randperm(n, generator=generator, device='cuda').tolist()

    不同版本的行号可能不同,但需要注意的是在函数中添加device='cuda'

    希望对你有帮助!!!

    【讨论】:

      【解决方案2】:

      在数据加载器中关闭 shuffle 参数解决了这个问题。 得到了答复表here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-27
        • 2020-10-08
        • 2020-04-08
        • 2020-03-07
        • 2022-10-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多