본문 바로가기
Deep Learning (AI)/Pytorch Errors

[Pytorch] Inplace error 해결

by 스프링섬머 2023. 7. 29.
728x90
inplace error
- 텐서의 임의의 값을 변경(대체) 헀을 때 gradient가 끊기면서 발생하는 문제
- ex) a = b 이런식으로 대체할 경우에 발생함.
      a += 1 이런식의 표현도 에러가 발생할 수 있음. -> a = a + 1, 이렇게 수행해야 한다.
      a[index] = b 이런식의 표현도 동일.

- 해결책은 clone()을 사용해서 텐서를 복사후에 대체를 하고 넘겨주면 된다.
- ex) c = a.clone()
      c[index] = b
      a = c
      return a

 

728x90