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

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

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

아나콘다 설치

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

install_anaconda-7fe5f

파이썬 2.7과 3.6 버전의 윈도우즈용 설치 파일이 있습니다. 텐서플로우 바이너리 패키지는 현재 파이썬 3.5 버전만 지원하므로 아나콘다의 파이썬 3.6 버전을 설치한 다음 파이썬 3.5 버전의 환경을 추가하여 텐서플로우를 설치하겠습니다. 텐서플로우의 바이너리는 64비트용이므로 32비트 머신에서는 직접 컴파일하여 설치해야 합니다. 여기서는 텐서플로우 컴파일에 대해서는 다루지 않습니다. 아나콘다의 파이썬 3.6 버전 64비트 인스톨러를 다운받습니다.

install_anaconda-bf672

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

install_anaconda-c5439

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

install_anaconda-4213b

텐서플로우 설치

Anaconda Prompt 들어온 후 파이썬의 pip 명령으로 텐서플로우를 설치합니다.

>pip install tensorflow

install_anaconda-1b720

설치가 완료된 후 IPython 쉘을 실행하여 tensorflow 모듈을 임포트합니다. 아무런 메세지가 뜨지 않으면 정상적으로 설치에 성공한 것입니다.

>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

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

  1. 신경만

    아래의 명령어를 실행하면
    (py35)…>pip install tensorflow

    ——————————————————————————————————-
    Could not find a version that satisfies the requirement tensorflow <from version : )
    no matching distrivution found for tensorflow
    ——————————————————————————————————-

    이런 에러가 발생합니다.

    좋아요

    응답
  2. 최원우

    아나콘다 프롬프트에서는 import는 되는데 쥬피터 노트북에서는 import가 안되는데 무슨 이유일까요

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      텐서플로를 설치한 콘다 환경에서 주피터 노트북을 실행하셨다면 임포트가 되어야 정상입니다. 환경이 맞는지 검토해 보시면 좋을 것 같습니다.

      좋아요

      응답
  3. Jay

    “텐서플로첫거름” 41페이지, 샘플 코드를 실행해보니

    AttirbuteError: moduel ‘tensorflow’ has no attribute ‘placeholder’ 라고 뜹니다.

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      아마도 현재 폴더 안에 tensorflow.py 나 tensorflow 서브 폴더가 있지 않을까 생각됩니다. 파일 이름이나 폴더 이름을 tensorflow로 하지 말아 주세요. ^^

      좋아요

      응답
  4. 이필립

    안녕하세요?
    jupyter notebook을 주로 사용하신다고 하셨는데요.
    pycharm 같은 에디터는 안쓰시나요?
    그거랑 비교해서 어떤 이점이 더 많은지도 알고 싶습니다.
    왕초보의 질문이었습니다.^^

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      저도 production에 사용할 .py 코드를 만들 때는 파이참 커뮤니티 에디션을 사용합니다.^^ 주피터 노트북은 코드의 결과가 함께 저장되기 때문에 탐색적인 분석이나 학습 용도로 사용하기가 좋습니다. 파이참에서도 노트북 파일을 지원하긴 하지만 아직은 조금 불편한 것 같습니다. 주피터 노트북을 ide스럽게 확장한 주피터랩(https://github.com/jupyterlab/jupyterlab)도 개발되고 있어서 기대를 많이 하고 있습니다. : )

      좋아요

      응답
  5. 처음과끝

    텐서플로우 까는것 까지는 되는데 계속 이런 메세지가 뜹니다.
    import 모듈이 없다고 하는것 같습니다. 조언을 부탁 드립니다.

    >>> import tensorflow as tf
    Traceback (most recent call last):
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 18, in swig_import_helper
    return importlib.import_module(mname)
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\importlib\__init__.py”, line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    File “”, line 985, in _gcd_import
    File “”, line 968, in _find_and_load
    File “”, line 957, in _find_and_load_unlocked
    File “”, line 666, in _load_unlocked
    File “”, line 577, in module_from_spec
    File “”, line 938, in create_module
    File “”, line 222, in _call_with_frames_removed
    ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py”, line 41, in
    from tensorflow.python.pywrap_tensorflow_internal import *
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 21, in
    _pywrap_tensorflow_internal = swig_import_helper()
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 20, in swig_import_helper
    return importlib.import_module(‘_pywrap_tensorflow_internal’)
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\importlib\__init__.py”, line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    ImportError: No module named ‘_pywrap_tensorflow_internal’

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File “”, line 1, in
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\__init__.py”, line 24, in
    from tensorflow.python import *
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\__init__.py”, line 49, in
    from tensorflow.python import pywrap_tensorflow
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py”, line 52, in
    raise ImportError(msg)
    ImportError: Traceback (most recent call last):
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 18, in swig_import_helper
    return importlib.import_module(mname)
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\importlib\__init__.py”, line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    File “”, line 985, in _gcd_import
    File “”, line 968, in _find_and_load
    File “”, line 957, in _find_and_load_unlocked
    File “”, line 666, in _load_unlocked
    File “”, line 577, in module_from_spec
    File “”, line 938, in create_module
    File “”, line 222, in _call_with_frames_removed
    ImportError: DLL load failed: 지정된 모듈을 찾을 수 없습니다.

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last):
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow.py”, line 41, in
    from tensorflow.python.pywrap_tensorflow_internal import *
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 21, in
    _pywrap_tensorflow_internal = swig_import_helper()
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py”, line 20, in swig_import_helper
    return importlib.import_module(‘_pywrap_tensorflow_internal’)
    File “C:\Program Files\Anaconda3\envs\tensorflow\lib\importlib\__init__.py”, line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
    ImportError: No module named ‘_pywrap_tensorflow_internal’

    Failed to load the native TensorFlow runtime.

    See https://www.tensorflow.org/install/install_sources#common_installation_problems

    for some common reasons and solutions. Include the entire stack trace
    above this error message when asking for help.

    좋아요

    응답
      1. 처음과끝

        cuDNN path를 어떻게 잡나요?
        C:\Program Files\Anaconda3\Library\bin
        C:\Program Files\Anaconda3\Scripts
        C:\Program Files\Anaconda3
        이렇게 3개를 잡았는데 cuDNN5.1을 설치했는데 경로를 알수가 없습니다.

        좋아요

      2. 로드홈 글의 글쓴이

        엇.. 저는 리눅스에서만 설치해 봐서 잘 모르겠네요. 리눅스에서는 lib64 폴더와 include 폴더를 /usr/local/cuda 밑으로 복사해 주었거든요. 윈도우즈에서 cuDNN 설치하는 사례가 올라가 있는 블로그들을 찾아 보시는 게 좋을 것 같습니다.

        좋아요

  6. 처음과끝

    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
    C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\libnvvp
    Cuda 경로는 이렇게 되어 있습니다.
    근데 cuDNN5.1경로 지정을 어떻게 했는지 기억이 안납니다.
    압축 풀어서 3개의 파일을 경로 지정을 한것 같은데 기억이 안나네요.
    텐서플로우 사이트의 설명을 이해를 잘 못하고 있습니다.

    좋아요

    응답
  7. 처음과끝

    비주얼 스튜디오2017이 충돌을 하는것 같습니다.
    삭제하고 나니 잘 돌아 갑니다.^^
    텐스플로루 사이트에 설명이 있었는데 이해를 못해서 헤매었네요.
    수고하세요.

    Liked by 1명

    응답
  8. hyojae park

    처음에 conda create -n py35 anaconda입력후
    Proceed ([y]/n) 에서 y 를 누른뒤로 진행이 멈추는데 이유가 뭘까요,,,,ㅠㅠ

    좋아요

    응답
      1. hyojae park

        conda create -n python=3.5
        만 걸고 아나콘다 옵션을 없애면 진행되는걸 보니 네트워크 문제일지도 모르겠는데
        30분 기다려도 먹통이어서 눈물나네영 ㅠㅠ

        좋아요

  9. 이승진

    아나콘다 프롬프트 실행시에
    C:\User\lee\Anaconda3\Scripts\acrivate.bat은(는) 내부 또는 외부 명령, 실행할수 있는 프로그램, 또는 배치 파일이 아닙니다라고 뜨는데 어떻게 해야하나요? ㅜㅜ

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      혹시 권한 문제가 아닐까요? 아나콘다를 개인 계정 아래 설치하거나 아나콘다 프롬프트를 관리자 권한으로 실행해 보세요.

      좋아요

      응답
  10. 홍성철

    안녕하십니까 항상 포스팅 잘 보고있습니다. 저는 텐서플로우를 공부하려는 학생입니다. 개인 데스크탑에 Ubuntu환경에서 tensorflow를 설치하려고 하는데 처음에 nvidia drive를 까는데 제가 참고한 자료에서는 NVIDIA Corporation :[그래픽카드 종류] 가 적혀있는데 저의 경우에는 ‘ 알 수 없음’ (제 그래픽 카드는 GALAX GEFORCE GTX 1060 입니다.) 이라고 적혀있습니다. 밑에’ binary driver – version 384′ 가 뜨기는 하지만 tensorflow를 설치하고 import를 하면 다음과 같은 에러가 자꾸 뜨는 바람에 혹시나 해서 여쭤봅니다. 알려주시면 감사하겠습니다.

    ImportError: libcusolver.so.8.0: cannot open shared object file: No such file or directory

    $ sudo ldconfig /usr/local/cuda-9.0/lib64 를 터미널에 치면 해결되는 경우도 있다는데 저 같은 경우는 ‘심볼릭(?)이 아닙니다’ 라는 오류만 발생합니다.

    – Cuda를 설치할 때 다음 자료를 참고했습니다.
    $ echo -e “\n## CUDA and cuDNN paths” >> ~/.bashrc
    $ echo ‘export PATH=/usr/local/cuda-8.0/bin:${PATH}’ >> ~/.bashrc
    $ echo ‘export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:${LD_LIBRARY_PATH}’ >> ~/.bashrc
    – CuDnn은 이것을 참고했습니다.
    $ tar xzvf cudnn-8.0-linux-x64-v5.1.tgz
    $ which nvcc
    /usr/local/cuda-8.0/bin/nvcc
    $ sudo cp cuda/lib64/* /usr/local/cuda-8.0/lib64/
    $ sudo cp cuda/include/* /usr/local/cuda-8.0/include/
    $ sudo chmod a+r /usr/local/cuda-8.0/lib64/libcudnn*
    $ sudo chmod a+r /usr/local/cuda-8.0/include/cudnn.h

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      흠. 저도 1060을 쓰는데 특별한 문제는 겪지 못했습니다. 정확한 원인은 모르겠지만 대부분 path 지정의 문제로 보는 것 같습니다. 다시 재설치를 해 보시는 것과 아래 패키지를 설치해 보는 것을 추천해 드립니다.
      $ sudo apt install nvidia-cuda-dev
      (https://stackoverflow.com/questions/43558707/tensorflow-importerror-libcusolver-so-8-0-cannot-open-shared-object-file-no)

      좋아요

      응답
  11. 최만규

    Could not fetch URL https://pypi.python.org/simple/tensorflow/: There was a problem confirming the ssl certificate: [SSL : CERTIFICATE_VERIFY_FALED] certificate verify failed -skipping

    Could not find a version that satisfies the requirement tensorflow (from version : )
    no matching distrivution found for tensorflow

    64비트 윈7 인데 설치가 안됩니다..

    좋아요

    응답
  12. 임찬수

    안녕하세요.. 아래와 같이 에러가 나오는데 해결방법이 어떻게 되는지 알고 싶습니다.

    (C:\ProgramData\Anaconda3) C:\Users\c15658\Documents>conda create –no-shortcuts
    -n py35 python=3.5 anaconda
    Fetching package metadata …
    CondaHTTPError: HTTP 000 CONNECTION FAILED for url
    Elapsed: –

    An HTTP error occurred when trying to retrieve this URL.
    HTTP errors are often intermittent, and a simple retry will get you on your way.

    SSLError(MaxRetryError(‘HTTPSConnectionPool(host=\’repo.continuum.io\’, port=443
    ): Max retries exceeded with url: /pkgs/main/win-64/repodata.json.bz2 (Caused by
    SSLError(SSLError(“bad handshake: Error([(\’SSL routines\’, \’ssl3_get_server_c
    ertificate\’, \’certificate verify failed\’)],)”,),))’,),)

    (C:\ProgramData\Anaconda3) C:\Users\c15658\Documents>

    좋아요

    응답
    1. 로드홈 글의 글쓴이

      에러가 나는 원인에 대해선 잘 모르겠습니다만 텐서플로 설치를 위해 파이썬 3.5 환경을 만드실 필요가 없습니다. 위에서도 언급했듯이 파이썬 3.6에서도 이젠 텐서플로가 잘 설치됩니다. ^^

      좋아요

      응답
      1. 임찬수

        김사합니다 ^^
        다르게 한번 시도해 봐야겠습니다.
        아직 초보가 우왕좌왕 하네요 ㅎㅎ

        좋아요

답글 남기기

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

WordPress.com 로고

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

Twitter 사진

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

Facebook 사진

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

Google+ photo

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

%s에 연결하는 중