Pytorch DataLoader 不适用于远程解释器

Pytorch DataLoader doesn't work with remote interpreter

我有以下错误。

Expected: /home/ubuntu/.pycharm_helpers/pydev/pydevd_attach_to_process/attach_linux_amd64.so to exist.

这是代码:

import torch_geometric.transforms as T
category = 'Airplane'
path = osp.join(osp.dirname(osp.realpath(__file__)), '..', 'data', 'ShapeNet')
transform = T.Compose([
    T.RandomTranslate(0.01),
    T.RandomRotate(15, axis=0),
    T.RandomRotate(15, axis=1),
    T.RandomRotate(15, axis=2)
])
pre_transform = T.NormalizeScale()
train_dataset = ShapeNet(path, category, split='trainval', transform=transform,
                         pre_transform=pre_transform)
test_dataset = ShapeNet(path, category, split='test',
                        pre_transform=pre_transform)
train_loader = DataLoader(train_dataset, batch_size=12, shuffle=True, num_workers=6)
test_loader = DataLoader(test_dataset, batch_size=12, shuffle=False,
                         num_workers=6)

当我使用数据加载器从数据集中尝试样本时,调试器崩溃并且 returns 这个错误。

已尝试删除远程助手,但没有解决我的问题。 我的本地机器在 运行 windows 10,远程机器在 运行 Ubuntu 18.04

在这里回答我自己,

我试着遵循这个:https://intellij-support.jetbrains.com/hc/en-us/community/posts/360006791159--pycharm-helpers-pydev-pydevd-attach-to-process-attach-linux-amd64-so-undefined-symbol-AttachDebuggerTracing

但事实证明它效率低下。

相反,从 Dataloader 中删除参数 'num_workers' 解决了这个问题。所以这是一个简单的解决方法。

但是,我还没有解决这个问题。多处理可能是有问题的。但是,如果有人对正在发生的事情有任何了解。我会很乐意接受它。