Pytorch: Kesalahan saat melakukan CUDA Conv2d dengan kernel 1x1.

Dibuat pada 23 Jan 2017  ·  3Komentar  ·  Sumber: pytorch/pytorch

Conv2d dengan kernel 1x1 tidak berfungsi pada GPU, meskipun berfungsi dengan baik pada CPU:

net = nn.Conv2d(1, 6, kernel_size=(1,1))
net.cuda()
x = Variable(torch.randn(1, 1, 100, 100))
x.cuda()
net(x)

Pesan eror:

TypeError: FloatSpatialConvolutionMM_updateOutput received an invalid combination of arguments - got (int, torch.FloatTensor, torch.FloatTensor, torch.cuda.FloatTensor, torch.cuda.FloatTensor, torch.FloatTensor, torch.FloatTensor, int, int, int, int, int, int), but expected (int state, torch.FloatTensor input, torch.FloatTensor output, torch.FloatTensor weight, [torch.FloatTensor bias or None], torch.FloatTensor finput, torch.FloatTensor fgradInput, int kW, int kH, int dW, int dH, int padW, int padH)

Saya mencoba menonaktifkan cudnn dengan torch.backends.cudnn.enabled = False tetapi masih mendapatkan pesan kesalahan yang sama.

Saya menggunakan Ubuntu 14.04, Cuda 7.5, Cudnn 5.1.5, Python 3.5.2, dan Pytorch diinstal dari binari.

Komentar yang paling membantu

Untuk memperjelas, alih-alih:

x = Variable(torch.randn(1, 1, 100, 100))
x.cuda()  # This creates a copy on the GPU and immediately discards it. "x" is still on the CPU

Anda harus menulis:

x = Variable(torch.randn(1, 1, 100, 100).cuda())

Semua 3 komentar

Jika Anda melihat lebih dekat pada tipe argumen yang diberikan ke conv, Anda akan melihat bahwa beberapa tensor adalah torch.cuda.FloatTensor s, sementara yang lain adalah torch.FloatTensor s. Anda mungkin lupa mengirim input ke GPU.

Untuk memperjelas, alih-alih:

x = Variable(torch.randn(1, 1, 100, 100))
x.cuda()  # This creates a copy on the GPU and immediately discards it. "x" is still on the CPU

Anda harus menulis:

x = Variable(torch.randn(1, 1, 100, 100).cuda())

Saya pikir lebih baik membuat model.cuda() dan x.cuda() berperilaku secara konsisten untuk menghindari kebingungan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

soumith picture soumith  ·  3Komentar

cdluminate picture cdluminate  ·  3Komentar

ikostrikov picture ikostrikov  ·  3Komentar

eliabruni picture eliabruni  ·  3Komentar

szagoruyko picture szagoruyko  ·  3Komentar