728x90
torch.nn.modules.module.ModuleAttributeError: 'Model' object has no attribute '_non_persistent_buffers_set'
python에서 pytorch 라이브러리를 이용해 딥러닝 모델을 만들고 해당 모델을 돌릴 때 발생하는 에러다.
알아보니 pytorch 버전이 1.6.x일 때 발생하는 에러다.
pytorch 버전을 1.5.1로 downgrade하면 해당 에러가 해결된다.
python 버전이 3.8로 상향되면서 pytorch에서 라이브러리를 설치할 때 자동으로 1.6.x 버전이 설치된다.
때문에 pytorch 설치 후 다시 downgrade를 해야 해당 에러가 발생하지 않는다.
pytorch를 downgrade하는 방법은 pytorch.org/get-started/previous-versions/ 링크로 가면 나와있다.
anaconda에서 downgrade하는 경우 conda install pytorch==1.5.1 torchvision==0.6.1 -c pytorch 명령어를 치면 된다.
처음에는 pytorch만 downgrade하면 될 줄 알고 conda install pytorch==1.5.1 명령어만 입력했더니 경로를 못찾아서 에러가 났다. conda install pytorch==1.5.1 -c pytorch로 입력해보면 될 지도 모르겠지만, 버전 호환이 안 될 수도 있으니 그냥 하라는 명령어를 그대로 치는 게 나을 것 같다.
728x90