윈도우즈에 아나콘다, 텐서플로 설치하기

텐서플로(TensorFlow)를 사용하려면 파이썬(Python) 개발 환경이 필요합니다. 파이썬 공식 사이트에서 인스톨파일을 다운받아 설치할 수 있지만 과학 계산을 위한 여러 파이썬 패키지를 따로 설치해야 합니다. 대표적으로는 SciPy, NumPy, scikit-learn 등이 있습니다. 이따금 이런 패키지들을 설치할 때 곤란한 경우가 생길 수 있습니다. 그래서 운영체제 환경에 맞게 패키지들을 미리 준비해 놓은 배포판을 많은 사람들이 선호합니다. 특별히 여러 버전의 파이썬에서 실험을 해야한다거나 윈도우즈 환경이라면 더욱 그렇습니다. 텐서플로 뿐만 아니라 머신러닝과 딥러닝을 위한 언어로서 파이썬을 선택했다면 필요한 여러가지 도구를 손쉽게 한 번에 설치해 줄 것입니다.

과학 계산용이거나 범용적으로 가장 인기있는 파이썬 배포판은 아나콘다(Anaconda)입니다. 캐노피(Canopy)나 액티브파이썬(ActivePython) 등도 있지만 아나콘다가 안정적이고 피드백이 빠른 편입니다. 이 글에서는 윈도우즈에 아나콘다와 텐서플로를 설치하고 IPython 쉘과 주피터 노트북(Jupyter Notebook)을 실행하는 과정을 설명하겠습니다.


keras_dl_b딥러닝 입문서 <케라스 창시자에게 배우는 딥러닝>이 출간되었습니다.

이 책에서 텐서플로의 래퍼(wrapper) 라이브러인 케라스(Keras)를 배울 수 있습니다. 딥러닝의 기초는 물론 다양한 실전 모델을 만듭니다. 케라스 창시자인 프랑소와 숄레로부터 딥러닝의 현주소와 미래 전망을 들어 보세요! 🙂

온/오프라인 서점에서 판매 중입니다. [YES24] [교보문고]


아나콘다 설치

브라우저로 아나콘다 다운로드 페이지에 접속합니다.

C0.anaconda

파이썬 2.7과 3.6 버전의 윈도우즈용 설치 파일이 있습니다. 윈도우즈용 텐서플로 바이너리 패키지는 현재 파이썬 3.5 버전 이상만 지원하므로 아나콘다의 파이썬 3.6 버전을 설치해야 합니다. 텐서플로의 바이너리는 64비트용이므로 만약 사용하는 컴퓨터가 32비트라면 텐서플로 소스를 직접 컴파일하여 설치해야 합니다. 텐서플로는 공식적으로 윈도우즈에서 직접 소스를 컴파일하는 것을 지원하지 않습니다. 사용하는 윈도우즈 컴퓨터가 32비트인지 64비트인지 확인하려면 여기를 참고하세요.

텐서플로 1.6버전부터 CPU 버전 바이너리는 AVX(고급 벡터 확장) 명령을 지원하도록 컴파일되어 있습니다. 만약 AVX를 지원하지 않는 CPU를 사용한다면 텐서플로 1.5 버전을 사용해야 합니다(아래 설명). 사용하고 있는 CPU가 AVX 명령을 지원하는지 확인하려면 여기를 참고하세요.

또는 인텔의 프로세서 유틸리티를 사용할 수도 있습니다. 이 프로그램을 다운받아 설치하고 실행하면 다음과 같은 화면을 볼 수 있습니다. 두 번째 탭에서 Advanced Vector Extensions에 ‘예’라고 표시되면 AVX 명령을 지원하는 CPU입니다.

캡처10

이제 AVX를 지원하는 64비트 컴퓨터가 준비되었다고 가정하고 아나콘다의 파이썬 3.6 버전 64비트 인스톨러를 다운받습니다. 주의: 아나콘다 5.3 버전부터 파이썬 3.7 버전을 사용하도록 바뀌었습니다. 텐서플로는 파이썬 3.7 버전의 패키지를 제공하지 않기 때문에 아나콘다 5.3 버전을 설치하면 파이썬 3.6으로 다운그레이드해야 합니다. 이는 번거로운 작업이므로 파이썬 3.6을 사용하는 아나콘다 5.2 버전을 다운받아 설치하는 것이 좋습니다. 아나콘다 5.2 버전은 다음 주소에서 다운로드 받으세요.
https://repo.anaconda.com/archive/Anaconda3-5.2.0-Windows-x86_64.exe

C1.anaconda_download

아나콘다 인스톨러 설치는 보통의 윈도우즈 설치 프로그램과 비슷합니다. 설치 과정을 마치면 시작버튼에 아나콘다 폴더가 추가됩니다.

install_anaconda-c5439

이 다음부터는 Anaconda Prompt에서 명령행 인터페이스를 사용해서 진행하겠습니다.

install_anaconda-4213b

콘다 및 파이썬 패키지 업데이트

Anaconda Prompt에 들어오면 conda 패키지 관리자를 사용할 수 있습니다. 먼저 conda 자체를 업데이트합니다.

>conda update -n base conda

다음엔 설치된 파이썬 패키지를 모두 최신 버전으로 업데이트합니다.

>conda update --all

텐서플로 설치

아나콘다 배포판에는 텐서플로 최신 버전이 늦게 포함되므로 파이썬 기본 패키지 관리자인 pip로 텐서플로를 설치합니다.

>pip install tensorflow

만약 AVX를 지원하지 않는 CPU를 사용하고 있다면 다음과 같이 1.5 버전을 설치합니다.

>pip install tensorflow==1.5.0

텐서플로 1.9.0 버전부터는 콘다를 사용하여 텐서플로를 설치하는 것이 권장됩니다. MKL-DNN 라이브러리에 최적화되어 있어서 CPU만을 사용하는 경우 보다 나은 성능을 기대할 수 있습니다.

>conda install tensorflow

install_anaconda-1b720

설치가 완료된 후 IPython 쉘을 실행하여 tensorflow 모듈을 임포트합니다. 아무런 메세지가 뜨지 않으면 정상적으로 설치에 성공한 것입니다(텐서플로를 임포트할 때 h5py 패키지에서 경고문구가 뜰 수 있습니다. 이는 h5py 패키지의 버그로 향후 버전에서 개선될 것 같습니다. 실제 텐서플로를 사용하는데는 문제가 없으므로 무시하고 진행하면 됩니다).

>ipython
...
In [1]: import tensorflow as tf
In [2]:

install_anaconda-35971

IPython 쉘을 종료하려면 exit 명령을 입력합니다. 데이터 분석을 위해 IPython 쉘도 좋지만 이보다 코드와 실행 결과를 함께 관리할 수 있는 주피터 노트북을 사용하도록 하겠습니다. 주피터 노트북은 로컬 컴퓨터에서 실행되는 웹 서버 프로그램과 비슷합니다. 브라우저로 코드를 실행하면 IPython 커널에게 실행을 명령하고 그 결과를 브라우저로 전달해 줍니다. 주피터 노트북을 실행하려면 아나콘다 프롬프트에서 jupyter notebook 명령을 사용합니다.

>jupyter notebook

주피터 노트북이 실행되면 자동으로 기본 브라우저가 실행되어 주피터 노트북 서버에 접속합니다. 로컬 컴퓨터의 주피터 노트북 서버 주소는 http://localhost:8888/ 입니다. 주피터 노트북을 실행한 현재 폴더를 기본 홈 페이지로 설정됩니다. 이 폴더 하위에 파이썬 주피터 노트북을 만들고 실행할 수 있습니다.

install_anaconda-4b594

Documents 폴더로 들어가서 새로운 파이썬 노트북을 만들어 보겠습니다. 오른쪽 위에 있는 New 버튼을 누르면 새로운 파이썬 3 주피터 노트북을 생성할 수 있습니다.

install_anaconda-b1bc1

새로운 브라우저 탭이 열리면서 Untitled 노트북이 생성됩니다. 첫번째 코드 셀(cell)에 IPython 쉘에서 했던 것처럼 import tensorflow as tf를 입력하고 Shift+엔터 키를 입력합니다. 아무런 메세지가 나오지 않으면 텐서플로를 주피터 노트북에서 사용할 수 있도록 설치에 성공한 것입니다.

install_anaconda-2d827

윈도우즈에 아나콘다, 텐서플로 설치하기”에 대한 146개의 생각

  1. 이경수

    네 감사합니다. 최고 십니다. 다시 하니 성공했습니다. 하하

    (tensorflow) C:\Users\1>python
    Python 3.5.5 |Anaconda, Inc.| (default, Apr 7 2018, 04:52:34) [MSC v.1900 64 bit (AMD64)] on win32
    Type “help”, “copyright”, “credits” or “license” for more information.
    >>> import tensorflow as tf
    >>> hello=tf.constant(‘hello tensorflow’)
    >>> sess = tf.Session()
    2018-07-17 22:54:01.717886: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2
    >>> print(sess.run(hello))
    b’hello tensorflow’

    좋아요

    응답
  2. 이경수

    여러움에 도움 주셔서 정말 감사합니다.

    tensorflow는 잘 깔았습니다.

    anaconda 를 사용하고 있으며, anaconda prompt에서
    python실행시는 tensorflow가 import가 안되고
    반면
    ipython실행시는 tensorflow가 import가 잘됩니다.

    (base) C:\Users\1>python
    Python 3.6.5 |Anaconda, Inc.| (default, Mar 29 2018, 13:32:41) [MSC v.1900 64 bit (AMD64)] on win32
    Type “help”, “copyright”, “credits” or “license” for more information.
    >>> import tensorflow as tf
    Traceback (most recent call last):
    File “”, line 1, in
    ModuleNotFoundError: No module named ‘tensorflow’
    >>> exit()

    (base) C:\Users\1>ipython
    Python 3.6.5 |Anaconda, Inc.| (default, Mar 29 2018, 13:32:41) [MSC v.1900 64 bit (AMD64)]
    Type ‘copyright’, ‘credits’ or ‘license’ for more information
    IPython 6.4.0 — An enhanced Interactive Python. Type ‘?’ for help.

    In [1]: import matplotlib.pyplot as plt

    In [2]:

    가장 중요한것은 anaconda spyder에서 tensorflow를 돌릴려고 합니다.
    그래서 tensorflow용 spyder를 잘 깔아서 tensorflow용 spyder에서는 tensorflow가 잘 import됩니다.

    따라서
    spyder 와
    Spyder(tensorflow) 두개가 모두 깔려 있습니다.

    문제는 spyder(tensorflow)에서 tensorflow는 잘 import되는데 matplotlib가 import가 안됩니다.

    File “C:/Users/1/.spyder-py3/cost function.py”, line 2, in
    import matplotlib.pyplot as plt

    ImportError: No module named ‘matplotlib’

    anaconda spyder에서 matplotlib를 어떻게 import할수 있는지 조언 부탁드립니다.

    감사합니다.

    좋아요

    응답
    1. 박해선 글의 글쓴이

      안녕하세요. 제가 spyder에 대해 잘 모릅니다.^^ python와 ipython에서 텐서플로 임포트 결과가 다르다면 두 실행 파일이 각각 다른 콘다 환경에 설치되어 있기 때문일지 모릅니다. python과 ipython 쉘에서 import sys; print(sys.executable) 라고 실행해서 실행 파일의 경로를 확인해 보세요. (tensorflow) 콘다 환경에서 맷플롯립이 임포트되지 않는다면 (tensorflow) 콘다 환경에서 pip install matplotlib 으로 맷플롯립을 설치해 주세요.

      좋아요

      응답
    1. 박해선 글의 글쓴이

      네 아마도 그런 것으로 압니다. 다음을 시도해 보시겠어요?
      > pip install –trusted-host pypi.org –trusted-host files.pythonhosted.org tensorflow

      좋아요

      응답
  3. 김수한

    앗 답글 되네요….빠른 답변 감사합니다!
    이번에는 “could not find a version that satisfies the requirment pypi.org (from versions : )
    no matching distribution found for pypi.org” 가 떴습니다.
    제가 이것저것 해보다가 아래의 명령으로 파이썬 3.7이 깔린것 같은데요 버전문제일까요?
    “conda create -n tensorflow pip python”

    좋아요

    응답
    1. 박해선 글의 글쓴이

      댓글에 코드 같은게 들어 있으면 자동으로 스팸처리되거든요.^^ 텐서플로는 아직 파이썬 3.7 빌드를 제공하지 않습니다. 3.6으로 콘다 환경을 만들고 설치해 보시겠어요.

      좋아요

      응답
  4. 김태완

    ipython 으로 import tensorflow 하니까 아무 문제 없길레 잘 된줄 알아서 커멘드창에서 python실행하고 tensorflow 를 import하니까
    Traceback (most recent call last):
    File “”, line 1, in
    ModuleNotFoundError: No module named ‘tensorflow’
    라고 뜨네요. 어떻게 해야 하죠?

    좋아요

    응답
    1. 박해선 글의 글쓴이

      이런 경우는 ipython 이 설치된 콘다 환경이 달라서 생기는 문제입니다. 한쪽 환경에만 텐서플로를 설치했기 때문이죠. 아래 두 명령으로 python 실행파일 경로가 같은지 확인해 보세요.

      > python -c “import sys; print(sys.executable)”
      > ipython -c “import sys; print(sys.executable)”

      좋아요

      응답
      1. 박해선 글의 글쓴이

        이상하군요. 같은 파이썬 인터프리터를 사용하면 문제없어야 할 것 같은데요. 다음 명령으로도 확인해 보시겠어요?
        > python -c “import tensorflow”
        > ipython -c “import tensorflow”

        좋아요

      2. 김태완

        (base) C:\Users\taewa>python -c “import sys; print(sys.executable)”
        C:\ProgramData\Anaconda3\python.exe

        (base) C:\Users\taewa>ipython -c “import sys; print(sys.executable)”
        C:\ProgramData\Anaconda3\python.exe

        좋아요

  5. 박성휘

    In [1]: import tensorflow as tf
    C:\ProgramData\Anaconda3\lib\site-packages\h5py\__init__.py:36: FutureWarning: C
    onversion of the second argument of issubdtype from `float` to `np.floating` is
    deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type
    `.
    from ._conv import register_converters as _register_converters

    무엇 때문인지 알고 계신가요…?…. 부탁드려요… ㅠㅠㅠ

    좋아요

    응답
    1. 박해선 글의 글쓴이

      안녕하세요. h5py에서 발생하는 경고 메세지입니다. 사용하는데 문제가 있지는 않습니다. 아마 h5py 최신 버전을 설치하시면 경고 메세지가 안뜰 거에요.

      좋아요

      응답
  6. 박성휘

    우선 정말 감사합니다 덕분에 쉽게 설치을 할 수 있었습니다 다름이아니라

    jupyter notebook에서 tab 기능이 활성하지 못하는 것 같아서 자동완성 기능(tab)이 안되네요.. 혹시 활성화 시킬수 있는 방법 알고 계신지….요…..
    민폐이지만 부탁드려요 혹시 알고 계신가요…….???

    좋아요

    응답
    1. 박해선 글의 글쓴이

      자동 완성 기능을 사용하려면 해당 객체가 메모리에 있어야 합니다. 혹시 객체를 초기화하지 않고 사용하신 것은 아닌지요. IDE의 자동 완성 기능이랑은 조금 다르죠. 🙂

      좋아요

      응답
      1. 박성휘

        제가 객체을 초기화 하는 건 는 잘 몰라서…. numpy을 import 을 하고 np. 치고 했는 데 제 쥬비터는 tab을 인식을 못 하더라고요 주피터 command list 예시에도 없더라고요 그래서 찾아 봤는데 tab(자동완성) 기능 떄문에 커널이 불안정 하게 될떄도 있다고 하더라고 요 그래새서 더 찾아 봤는데 tab을 안될시 사용을 원하면 패키지을 설치 해야 하는 것을 알 았습니다. 도전이 었지만 혹시 몰라 conda prompt 에서 conda install tab 라고 명령을 내리니깐 패키지가 설치가 되었습니다!!!! 그래서 설치 완료 후 주피터 가서 tab 실행을 실행해 보니 되더라구요 ^^ 혹시 tab 가 실행이 안되시거나 tab을 원치 안으시면 tab 패키지을 설치 하거나 제거 하시면 될 것 같아요.!!! ^^ conda prompt에서 패키지 제거 명령 혹시 아시나요?…..??? ㅎㅎ ^^
        선생님 감사합니다. ^^

        Liked by 1명

  7. 황선준

    안녕하세요
    (tensorflow) C:\Users\tjswn>python -c “import sys; print(sys.executable)”
    C:\Users\tjswn\Anaconda3\envs\tensorflow\python.exe

    (tensorflow) C:\Users\tjswn>ipython -c “import sys; print(sys.executable)”
    C:\Users\tjswn\Anaconda3\python.exe

    두개의 경로가 다르고 import tensorflow 할때
    no module named tensorflow가 뜨거든요
    이럴땐 어떡해야하나요?

    좋아요

    응답
    1. 박해선 글의 글쓴이

      안녕하세요. tensorflow 콘다 환경에 ipython이 설치되어 있지 않아 루트 환경의 ipython이 실행되기 때문입니다. tensorflow 콘다 환경이 활성화된 프롬프트에서 conda install ipython 으로 ipython을 설치하면 될거에요. 🙂

      좋아요

      응답
  8. 김우주

    설치를 하는데 자꾸
    could not find a version that satisfies the requirment tensorflow (from version 🙂
    No matching distribution found for tesnsorflow
    라고 나오는데 어떻게 해결을 해야하나요..
    > python -c “import sys; print(sys.executable)”
    > ipython -c “import sys; print(sys.executable)”
    여기서는 같은 경로로 나오는데
    > python -c “import tensorflow”
    > ipython -c “import tensorflow”
    여기서는 경로가 표시가 안되고 에러가 나옵니다..

    좋아요

    응답
    1. 박해선 글의 글쓴이

      파이썬 버전을 확인해 보세요. 텐서플로는 리눅스와 맥에서는 파이썬 2.7, 3.3, 3.4, 3.5, 3.6을 지원하고 윈도에서는 3.5, 3.6만을 지원합니다.

      좋아요

      응답

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중

This site uses Akismet to reduce spam. Learn how your comment data is processed.