인터넷 안 되는 윈도우 PC에 텐서플로우 설치

배경

  • 사내에서 텐서플로우로 뭘 하려면 역시 업무 PC에 텐서플로우를 설치해야 함.
  • 그에 비해 텐서플로우 공홈 설치 문서는 인터넷 연결을 전제함에 비해, 보안이라는 미명 하에 외부 인터넷 차단하는, *&*%^$ 같은 조직이 생각 외로 많음.
  • 이런 서버 사이드는 리눅스(Linux)가 짱짱맨이다 보니 리눅스 가정하는 정보가 많음. 다만 상당히 많은 회사가 여전히 업무 PC OS로 윈도우 씀 (개발 1도 모르는 사장님도 오피스는 써야 한다. 그런데 엑셀은 정말 훌륭하다).

간단 요약

  1. 준비물: Anaconda, Protocol Buffer conda 패키지, Tensorflow conda 패키지
  2. 준비물을 수단과 방법을 가리지 말고 설치하고자 하는 PC의 디스크에 저장한다. (그 구체적인 방법까지 이 글에 쓸 순 없다. 읽는 분 사정이 모두 다를 거라.)
  3. 아나콘다 ( Anaconda ) 설치 – 너무 간단해서 따로 설명 안 함.
  4. 프로토콜 버퍼 ( Protocol Buffer ) 설치
    D:\tools\Anaconda3\pkgs> conda install protobuf-3.5.1-py36_vc14_3.tar.bz2
  5. 텐서플로우 ( Tensorflow ) 설치
    D:\tools\Anaconda3\pkgs> conda install tensorflow-1.4.0-py36_0.tar.bz2

상기 순서를 준수해야 함.

주요 Q&A

  • 왜 아나콘다를? 생짜 파이썬 배포판 대비 통계/분석 등의 파이썬 라이브러리를 선탑재하고 있어서 편하다. 파이썬 하려는 이유가 통계/분석/수치 처리/빅데이터/인공지능 같은 것 때문에 하려는 것이라면 정말 아나콘다 사용 권장.
  • conda는 뭐임? 아나콘다에서 쓰고 있는 CLI 패키지 관리자. 생짜 파이썬에 기본적으로 들어 있는 것은 pip.
  • 프로토콜 버퍼는 왜 설치하나? 텐서플로우가 프로토콜 버퍼를 필요로 한다(전문가스러운 말로는 ‘의존성이 있다’고 한다). 이거 없이 텐서플로우 쓴 파이썬 코드 돌리면 아래와 비슷한 에러가 날 것이다.
    D:\Documents\PycharmProjects\tensorflow>python hello.py
    Traceback (most recent call last):
      File "D:/Documents/PycharmProjects/tensorflow/hello.py", line 1, in 
        import tensorflow as tf
      File "D:\Tools\Anaconda3\lib\site-packages\tensorflow\__init__.py", line 24, in 
        from tensorflow.python import *
      File "D:\Tools\Anaconda3\lib\site-packages\tensorflow\python\__init__.py", line 52, in 
        from tensorflow.core.framework.graph_pb2 import *
      File "D:\Tools\Anaconda3\lib\site-packages\tensorflow\core\framework\graph_pb2.py", line 6, in 
        from google.protobuf import descriptor as _descriptor
    ModuleNotFoundError: No module named 'google'
    
    Process finished with exit code 1
    
    D:\Documents\PycharmProjects\tensorflow>
  • 프로토콜 버퍼 말고 다른 패키지에 대한 의존성은 없나? 당연히 있지만 아나콘다에 선탑재된 거라 설치 작업을 따로 할 필요 없다.
  • 왜 pip 기준으로 안 쓰고 conda 기준으로 글을 썼나? 맨 첨엔 pip로 설치 시도했다. 그런데 pip용 protocol buffer 패키지에서 win64 용 패키지를 못 찾아 ‘포기하려 했다’. 그런데 conda 패키지론 win64용 프로토콜 버퍼 conda 패키지가 있었다. 에다가 pip는 설치할 때 옵션도 줘야 하지만 conda는 그딴 거 필요 없더라.
  • 버전은 어떻게 되나? 아나콘다는 Anaconda 3 5.0.1(파이선 3.6이 들어 있음), 텐서플로우는 1.4, 프로토콜 버퍼는 3.5.1
  • 텐서플로우 버전은 1.4로 고른 이유는? 글 쓰는 시점 기준 텐서플로우 공홈 의 API 문서가 1.4 버전이라 그렇다.

인터넷 안되는 환경에서 고군분투하시는 분들에게 도움이 되길!

Advertisements

인터넷 안 되는 윈도우 PC에 텐서플로우 설치”에 대한 답글 1개

  1. 안녕하세요! 좋은 정보 감사합니다! 알려주신 방식으로 tensor flow를 설치하였는데 import 하려고 하면 absl 이라는 모듈이 없다고 나오는데 혹시 관련 정보 아시는게 있을까요?

      1. 감사합니다 ㅎㅎ 잘 설치해서 잘 사용중입니다><

답글 남기기

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

WordPress.com 로고

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

Google+ photo

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

Twitter 사진

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

Facebook 사진

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

%s에 연결하는 중