반응형
UserWarning: Was asked to gather along dimension 0, but all input tensors were scalars; will instead unsqueeze and return a vector
RuntimeError("grad can be implicitly created only for scalar outputs")
위와 같은 에러가 발생했다.
loss.backward() 에서 발생했는데..
loss.shape = ([2]) 로 되어 있기 때문이다.
파이토치 DP를 쓰면서 loss가 gpu 수 만큼 반환하게 되어, vector를 출력하게 된 것이다.
loss.backward()를 위해서는 loss가 scalar이어야 하낟.
따라서 loss.mean().backward()로 수정해주면 된다.
반응형
'Python > PyTorch 공부' 카테고리의 다른 글
[Pytorch] Load state_dict로 인한 out of memory (0) | 2021.12.14 |
---|---|
[PyTorch] model.state.dict() 파라미터 확인하기 (0) | 2021.12.06 |
[PyTorch] RuntimeError: cuDNN error: CUDNN_STATUS_INTERNAL_ERROR (1) | 2021.12.03 |
[PyTorch] Error: one of the variables needed for gradient computation has been modified by an inplace operation (2) | 2021.11.25 |
[PyTorch]GPU와 CUDA 호환 확인하기 (0) | 2021.11.25 |