RuntimeError: Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same 오류 해결방법
이름 그대로 데이터 형식이 달라서 생기는 문제로 모델의 weight는 torch.FloatTensor로 cpu에 있는데 input은 Gpu에 있어서 생기는 문제다.
weight를 cpu에서 gpu로 옮기거나 input을 gpu에서 cpu로 옮기면 된다.
나는 weight를 gpu로 옮겼다.
model.train()전에 model.to(DEVICE)를 하면 된다.
model.to(DEVICE) # 모델을 GPU로 이동
model.train()
여기서 DEVICE는 cuda를 의미한다.
DEVICE = "cuda" if torch.cuda.is_available() else "cpu"
해결되었다.