无法在 GPU 上运行 Torch 代码

我尝试在 Torch 教程中运行代码,但是当我想要在 GPU 上使用 :cuda() 时,我不停地收到以下错误

/opt/zbstudio/bin/linux/x64/lua: /home/andybug/torch/install/share/lua/5.1/nn/THNN.lua:110: **v 函数的第三个参数不正确(无法将 'struct THCudaTensor ' 转换为 'struct THCudaLongTensor ') stack traceback: [C]: in function 'v' /home/andybug/torch/install/share/lua/5.1/nn/THNN.lua:110: in function 'ClassNLLCriterion_updateOutput' ...bug/torch/install/share/lua/5.1/nn/ClassNLLCriterion.lua:41: in function 'forward' ...ug/torch/install/share/lua/5.1/nn/StochasticGradient.lua:35: in function 'train' /home/andybug/Documents/NLP/lua torch/torch-prac/main.lua:74: in main chunk [C]: at 0x00404f08

我在 Google 上搜索了这个问题,但没有有效的答案,尝试重新安装 nn、cunn 等,但都没有解决该问题。

点赞
用户3010063
用户3010063

你传递给 ClassNLLCriterion 的目标(即 forward 函数的第二个参数)需要是一个 CudaTensor

2016-09-30 20:46:03
用户2204511
用户2204511

我在将Coco数据加载为Cuda张量时遇到了相同的问题。由于加载Pascal2012数据没有问题,我以为是数据加载器或迭代器有问题(我正在使用torchnet的并行数据集迭代器)。重装cutorch后我发现有些问题。然后重新安装了Cuda(我使用的是8版本),因为它与其他版本(7.5)发生了冲突,并最终从头开始安装了torch。现在一切都像魔术一样运行。

2016-10-13 10:29:59