Tensorflow는 구글에서 개발한 데이터 흐름 프로그래밍을 위한 오픈소스 소프트웨어 라이브러리이다. 제공되는 프로그래밍 언어로는 Python과 c++이 있는데 나는 Python을 쓰도록 하겠다.
내 노트북 스펙:
OS: Window10 (x64)
CPU: Intel(R) i5-6200U
GPU: NVIDIA GeForce 940M
RAM: 8GB
설치 순서참고: 괄호() 안에 있는 버젼은 내가 받은 버젼이다.
Step 0. GPU로 돌릴사람만!
만약 GPU를 사용하여 Tensorflow를 돌려보고 싶다면 CUDA와 cuDnn을 받아야 한다. (CUDA-9.2.148-win10, cuDnn-9.2-win10-x64-v7.1)
CUDA 다운로드 링크: https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64
cuDnn 다운로드 링크: https://developer.nvidia.com/cudnn
CUDA는 실행파일을 받아서 깔면 되고,
cuDnn은 압축을 풀어 bin, include, lib 폴더를 아래의 경로에 넣어준다
“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.2”
Step 1. 아나콘다(Anaconda)를 깔자
다운로드 링크: https://www.anaconda.com/download/
위의 다운로드 링크로 가서 .exe파일 (Anaconda3-5.2.0)을 받아 설치를 한다. 아나콘다를 설치하면 알아서 Python (Python 3.6.5)이 깔리므로 따로 안받아도 된다.
Anaconda가 설치 되었으면 시작메뉴에서 Anaconda Prompt를 실행하여 Python을 쳐보자.
(base) C:\Users\bbangko>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. >>> |
이렇게 >>> 모양이 뜨면 정상적으로 Python이 설치가 된 것이다.
Step 2. 텐서플로우(tensorflow)를 깔자
아나콘다 안에서 가상개발환경을 만들어주고, 그 안에 텐서플로우를 깔아야 한다. CPU버젼과 GPU버젼을 따로 설치하고 싶다면 -gpu를 추가해서 구분 지어줍시다.
conda create -n tensorflow python=3.6 |
conda create -n tensorflow-gpu python=3.6 |
이렇게 하면 가상개발환경 폴더가 만들어진다. 해당 개발환경을 활성화 시키기 위해서는 activate 개발환경이름 명령어를 사용하면 된다.
그러면 각각의 가상개발환경 안에 tensorflow를 깔아주자.
CPU용 Tensorflow
(base) C:\Users\bbangko>activate tensorflow (tensorflow) C:\Users\bbangko>pip3 install --ignore-installed --upgrade tensorflow |
GPU용 Tensorflow
(tensorflow) C:\Users\bbangko>activate tensorflow-gpu (tensorflow-gpu) C:\Users\bbangko>pip3 install --ignore-installed --upgrade tensorflow-gpu |
Step 3. Tensorflow를 테스트 해보자
먼저 CPU용 Tensorflow부터 테스트 해봅시다. 아래 코드를 따라 쳤을때 오류 없이 출력이 된다면 성공!
(base) C:\Users\bbangko>activate tensorflow (tensorflow) C:\Users\bbangko>python Python 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 11:27:44) [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 Wolrd!") >>> sess=tf.Session() 2018-08-04 19:43:46.857283: 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 Wolrd!' >>> |
python에서 cmd명령으로 나가려면 Ctrl+Z 인터럽트를 걸어줍시다
다음 GPU
(tensorflow) C:\Users\bbangko>activate tensorflow-gpu (tensorflow-gpu) C:\Users\bbangko>python Python 3.6.6 |Anaconda, Inc.| (default, Jun 28 2018, 11:27:44) [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 Wolrd!") >>> sess=tf.Session() ... Found device 0 with properties: name: GeForce 940M major: 5 minor: 0 memoryClockRate(GHz): 1.176 ... >>> print(sess.run(hello)) b'Hello Wolrd!' >>> |
메세지 중간에 GPU이름이 뜨면서 잘 작동하는 것을 확인하면 성공!
Step 4. 쥬피터(Jupyter)도 써봅시다.
코딩할때 콘솔창에 한줄 한줄 쓸 수는 없잖슴? 코드를 이쁘게 파일로 관리하기 위해 Jupyter라는걸 써야한다. 다행이도 Anaconda를 설치하면 Jupyter도 같이 깔리니 참으로 다행이다. Jupyter를 실행하는 명령어는 jupyter notebook 이다.
(base) C:\Users\bbangko>activate tensorflow (tensorflow) C:\Users\bbangko>jupyter notebook [I 19:59:38.379 NotebookApp] JupyterLab beta preview extension loaded from C:\ProgramData\Anaconda3\lib\site-packages\jupyterlab [I 19:59:38.380 NotebookApp] JupyterLab application directory is C:\ProgramData\Anaconda3\share\jupyter\lab [I 19:59:38.847 NotebookApp] Serving notebooks from local directory: C:\Users\bbangko [I 19:59:38.847 NotebookApp] 0 active kernels [I 19:59:38.848 NotebookApp] The Jupyter Notebook is running at: [I 19:59:38.848 NotebookApp] http://localhost:8888/?token=faf573e56c15b7568c52adf8c192727bce39e0c957152cba [I 19:59:38.848 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation). [C 19:59:38.851 NotebookApp] Copy/paste this URL into your browser when you connect for the first time, to login with a token: http://localhost:8888/?token=faf573e56c15b7568c52adf8c192727bce39e0c957152cba&token=faf573e56c15b7568c52adf8c192727bce39e0c957152cba [I 19:59:39.914 NotebookApp] Accepting one-time-token-authenticated connection from ::1 |
아래를 보면 로그인 토큰도 던져주는데 기본브라우저가 아닌 크롬에서 작업하고 싶다면 토큰을 크롬의 주소창에 복붙하면 된다. 그리하면 아름다운 UI의 Jupyter가 뜰것이다.
우측상단의 new를 눌러 앞으로 코딩 작업을 할 폴더(Folder) workspace를 만들어줍시다. (경로는 님들 마음대로) 그리고 python코드를 작성할 파일 .ipynb 을 new->Python3를 눌러 생성해보자.
in [ ] : 블록 안에 tensorflow를 import해주는 코드를 작성해보자. 그러면 아래와 같은 에러메세지가 뜨게 될것이다. 뜨지 않으면 땡큐하고 그냥 쓰면 된다. 이 에러를 해결하기 위한 포스트는 다음글을 참고하길 바란다.
이제 신나게 코딩 해봅시다. 화이팅!
'잡 기술 > Tensorflow' 카테고리의 다른 글
[Tensorflow] Jupyter에서 tensorflow를 못찾을 때 virtualenv(Window) (3) | 2018.08.04 |
---|