인공지능

tensorflow MNIST 예제 import 실패 (ImportError: No module named 'tensorflow.examples.tutorials') + tensorflow 1.x 버전 install시 오류 (Could not find a version that satisfies the requirement tensorflow==1.13.1)

Seungmin 2021. 9. 30. 01:00

해당 오류는 tensorflow 1.x 버전은 python 3.7 이상을 지원하지 않기 때문에 발생한다.

따라서 3.6 버전으로 재설치가 필요한데, root 환경에서의 개발이면 파이썬을 통째로 재설치, anaconda 환경에서의 개발이라면 해당 환경을 활성화시킨 상태의 Anaconda Prompt에서

conda install python=3.6.4

를 입력하면 따로 제거작업 없이 python 버전의 다운그레이드가 진행된다.

python 버전을 3.6.x 로 성공적으로 다운그레이드 시켰다면 이제 원래 진행하려던 pip install tensorflow==1.xx.x 명령어가 오류없이 제대로 실행되는 것을 확인할 수 있다.

단, 파이썬 버전을 다운그레이드 하면 기존 numpy가 호환이 되지 않는다. 따라서 구버전의 재설치가 필요하다.

참조 : https://ainfosec.tistory.com/19

pip uninstall numpy

pip install numpy==1.17

이제 문제가 완전히 해결됐음을 확인할 수 있다.

 

처음엔 이 오류를 수정하지 않고 tensorflow 2.x 버전을 설치하여 MNIST 실습을 진행하려 했으나 tensorflow 2.x 버전엔 MNIST 샘플 데이터셋을 포함한 여러 example 자료들이 포함되어 있지 않아 어쩔 수 없이 1.x 버전으로 설치하려다 맞닥뜨렸다.


Flow

tensorflow 1.x 버전 설치 실패 → tensorflow 2.x 버전으로 대체 → ModuleNotFoundError: No module named 'tensorflow.examples' 오류 발생 → 2.x 버전에는 MNIST 데이터 셋 등 여러 예제 데이터를 포함한 examples 폴더 부재 → examples 폴더를 이식하려 했으나 환경이 꼬일 것 같고 추후 어떤 문제가 또 발생할지 몰라 tensorflow 1.x 버전을 재설치 하기로 결정 → 1.x 버전은 python 3.7 이상을 지원하지 않음 → anaconda 환경에서 python을 3.6 버전으로 재설치 → tensorflow 1.13.1 설치 성공 →