Как исправить «входные и скрытые тензоры не на одном устройстве» в pytorch - PullRequest
0 голосов
/ 25 сентября 2019

Когда я хочу поставить модель на графический процессор, возникает ошибка!Он сказал, что входы на GPU, но скрытое состояние на CPU.Однако все они были помещены в ГПУ.Я использую

for m in model.parameters():
    print(m.device) #return cuda:0

, чтобы увидеть все состояние модели на устройстве с графическим процессором.Ошибка «RuntimeError: входные и скрытые тензоры не на одном устройстве, найденный входной тензор на cuda: 0 и скрытый тензор на процессоре»

Сервер Windows 10 Pytorch 1.2.0 + cuda 9.2 cuda 9.2 cudnn 7.6.3 для куда 9,2

if torch.cuda.is_available():

    model = model.cuda()

if torch.cuda.is_available():
    `test= test.cuda() #test is the Input`

1 Ответ

1 голос
/ 25 сентября 2019

Вам нужно переместить модель, входы и цели в Cuda

if(torch.cuda.is_available()):

   rnn.cuda()# rnn is your model 
   inputs = inputs.cuda() 
   target = target.cuda()
...