리눅스 Python 3.5.3 환경에서 Tensorflow를 'pip install tensroflow'로 설치 후 MNIST 예제를 실행하기 위해서 아래 코드를 수행했습니다.
# MNIST 데이터를 다운로드 한다.
from tensorflow.examples.tutorials.mnist import input_data
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
그런데 아래와 같은 에러가 확인됩니다.
ImportError: No module named 'tensorflow.examples.tutorials'
Python 2.x 버전으로 변경해 봐도 동일한 문제가 확인됩니다.
아래 명령어를 이용해서 설치된 tensorflow의 버전을 확인해 보면, version 2.0을 사용하고 있습니다.
>>> import tensorflow as tf
>>> tf.__version__
virtualenv 환경을 이용해서 시험했는데, venv 폴더 하위에서 mnist 관련 examples 폴더는 없었습니다. github에서 tensorflow version 2.0을 살펴보면 example 폴더가 정상적으로 존재하는 것은 확인했습니다. 다운로드만 되지는 않은 것으로 보입니다.
다시 시험을 위해서 모두 지우고, virtualenv 환경을 다시 한번 셋업했습니다. 이번에는 Python 3.5 버전에 맞는 tensorflow를 아래 명령어를 이용해서 직접 설치했습니다. (https://www.tensorflow.org/install/pip 참조)
pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.14.0-cp35-cp35m-linux_x86_64.whl
이후에는 MNIST 다운로드가 실행되었습니다.
Tensorflow version을 확인해 보면 "1.14.0"으로 확인되었으며, 아래와 같이 input_data.py 파일도 확인할 수 있었습니다.
./venv/lib/python3.5/site-packages/tensorflow/examples/tutorials/mnist/input_data.py
정확한 이유는 알기 어렵지만, python 3.5.x와 관련해서는 tensorflow version 2.0이 아닌 1.14.0으로 해야 example import 에러를 회피할 수 있는 것으로 생각됩니다. github에서 tensorflow version 2.0에 example 폴더가 정상적으로 존재하므로, github에서 직접 다운로드하는 해결책이 있을 것으로 보이지만, 진행해 보지는 않았습니다.