에러 해결책 모음/Python 에러 해결책 모음
[RuntimeError]: Can't call numpy() on Tensor that requires grad.
LKBaekjoon
2024. 7. 23. 11:24
반응형
파이썬에서 prediction한 이미지 값을 show 하고 싶어서 image.show 했다가 에러가 떴다...
찾아보니 Tensor 값 자체를 numpy로 변환하지 않고 바로 이미지로 출력하려고 시도하면 발생하는 에러였다.
image = np.array(masks_pred)
image = Image.fromarray(image)
image.show()
내가 변환하고자 하는 masks_pred 값이 loss에서 backward를 계산하는데 사용될 수 있다는 뜻으로, requires_grad 값이 True라서 발생하는 문제였다.
친절하게도 에러 다음에 해결법이 나와있다. Use tensor.detach().numpy() instead.
바로 numpy array로 변환하는게 아니라, detach로 떼놓은 다음에 numpy 배열로 바꿔주면 된다!
반응형