pytorch 오류 (2) 썸네일형 리스트형 TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first. 오류해결방법 Pytorch(파이토치)를 사용하다보면, TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first. 와 같은 오류 문구가 발생하는 경우가 있습니다. 저와 같은 경우는 아래와 같이 model을 학습하여 모델의 output tensor를 이용하여 작업을 할때 이런 오류가 발생했는데요, 해당 오류가 발생하는 이유는 cuda device (gpu)에 할당되어있는 tensor 객체를 numpy 형태로 변경하려고 할때 발생하는 오류라고 합니다. 위의 코드 같은 경우는 model의 output인 activation에 대해서 np.concatenate() 함수를 사용.. [pytorch] Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same 해당 오류는 model과 입력이 되는 data의 type이 달라서 발생하는 오류이다. 해당 오류의 대부분은 model이나 data가 하나는 gpu에 하나는 cpu에 올라와 있는 상태로 연산할 때 발생한다. 따라서 다음과 같은 사항을 체크하여 오류를 해결한다. 1. model을 gpu에 정확히 올렸는지, model = torch.load("...") model.to("cuda") 2. dataset의 data와 target(label)을 gpu에 정확히 올렸는지, for data, target in trainloader: data, target = data.to(device), target.to(device) #... #training #... 3. gpu를 사용하지 않을 경우, model이나 datase.. 이전 1 다음