Pytorch "Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu!" 에러 해결

2022. 9. 28. 02:32Pytorch

# # GPU에서 추론하기 위해 weight도 cpu가 아니라 GPU에 올리기 위함
# if torch.cuda.is_available():
# model.cuda()
 

보통 이걸로 해결된다. 계산을 해야하는데 하나는 cpu에, 하나는 gpu에 있어서 발생하는 문제로, .cuda() 를 사용하여 텐서 모두 GPU로 올려주면 계산이 가능해진다.

 

이때 저장된 모델을 불러와서 추가 학습을 시킬 경우, optimizer에서 다음과 같은 에러가 연속적으로 발생하는데, 

model = Model()

...

model = model.cuda()

 

이렇게 작성되있을꺼다.

model = Model().cuda()

이렇게 한줄로 바꿔주면... 해결된다

 

 

https://thewayaboutme.tistory.com/384