본문 바로가기

프로그래밍

윈도우에서 tensorflow 개발 환경 세팅

갑자기 머신러닝이 공부하고 싶어졌습니다. [모두를 위한 머신러닝](hunkim.github.io/ml) 사이트를 통해서 공부하기로 했습니다. 예제 구현을 tensorflow를 통해서 하셨더라고요. 텐서플로우에 마침 관심이 있기도 해서 저 또한 예제를 텐서플로우로 따라가기로 마음먹었습니다. 그래서 시작한 개발 환경 구축... 
이 포스팅을 통해 윈도우10 머신에서 별도의 리눅스 설치 없이 텐서 플로우 개발 환경을 구축하는 방법을 공유할까 합니다.  **중요!!!! 윈도우 10 프로페셔널 및 엔터프라이즈에서만 동작합니다!!!! 차후 Docker for Windows가 윈도우 10 홈 버젼도 지원할 거라고 하네요.**

제가 개발 환경 구축할 때 중요시하는 것이 딱 두가지 입니다.

  1. 자동완성이 가능한 에디터
  2. 원클릭으로 코드를 실행.

이거 두개만 되면 일단 만족합니다. 그래서 결론은 ide…

해야할 일은 딱 두가지 입니다.

  1. ide 설치
  2. ide와 실행환경 연동

보통, 2번을 안하는 경우가 많은데요. 그건 ide가 똑똑해서 설치될 때 실행환경이 해당 pc에 있으면 자동으로 잡아줘서 그렇습니다.

그럼 1번부터…

python ide를 뒤지기 시작했습니다. 사실 많이 안찾아봤어요. 제가 사랑하는 인텔리제이를 만드는 jetbrain에서 python ide인 pycharm을 만든다는 사실을 알고 그대로 pycharm으로 굳혔습니다.
pycharm의 경우 커뮤니티(무료) 버젼이 있고, 유료 버전이 있는데, 저는 유료 버전으로 설치했습니다.
다운로드 링크는 여기입니다.

설치는 그냥 yes yes 하시면 됩니다.

자… 이제 설치한 pycharm과 실행환경을 연동할 차례입니다.
사실 이 포스팅의 본론은 여기서부터 입니다.
왜냐하면, 텐서플로우가 윈도우 환경에서 돌아가지 않기 때문입니다. 따라서, 기존의 윈도우 파이썬 실행 환경이 아닌 tensorflow를 설치한 python 실행 환경을 만들어줘야 하고 pycharm을 그 실행환경과 연동해야 합니다.

그럼 우선 tensorflow가 설치된 python 실행환경을 만들어보겠습니다.
여기로 가셔서 Get Docker for Windows 라고 적힌 버튼을 눌러서 docker engine을 설치해줍니다.

docker를 아주 대략적으로 설명드리면 소프트웨어를 실행할 수 있는 독자적인 환경을 제공하는 소프트웨어입니다. 그 독자적인 환경 하나 하나를 컨테이너라고 부릅니다. 더 궁금하신 분들은 구글 서치 고고!! 

설치하고 나면 커맨드 프롬프트를 띄우고(윈도우 키 + r 누르고 ‘cmd’ 입력) 거기다가 docker라는 명령어를 쳐서 docker가 실행되고 있는지 확인합니다.

이제 docker engine이 돌아가고 있는 겁니다. docker ps라는 명령어를 치면 아무것도 테이블 헤더 정보만 있고 아무런 내용이 없을 겁니다. 이제 docker를 통해 tensorflow를 파이썬 실행 환경을 만들어보겠습니다.

 docker run tensorflow/tensorflow

위에 명령어를 커맨드 창에 치시면 뭔 이상한 영어가 막 나오면서 마지막에 Use Control-C to stop this server and shut down 어쩌고 저쩌고 할 겁니다. 그냥 컨트롤 C 누르세요. 그러면 다시 커맨드를 입력할 수 있을 겁니다. 다시 한 번 docker ps를 쳐보겠습니다.

처음에 쳤던 docker ps 와는 다르게 테이블 헤더 밑에 내용이 있는 것을 보실 수 있을 것입니다. docker ps가 현재 돌고 있는 컨테이너 목록을 보는 명령어이고, 그말인즉슨, 현재 컨테이너 하나가 돌고 있는 것입니다. 그리고 이 컨테이너에는 tensorflow가 설치된 python 실행 환경이 있습니다.

이걸로 tensorflow가 설치된 python 실행 환경 구축은 완료가 되었습니다.

마지막으로 pycharm의 python 실행 환경을 해당 컨테이너와 연동하겠습니다.
pycharm을 키고 대충 프로젝트 하나 만듭니다. File > Settings > Project: ‘프로젝트명’ > Project Interpreter 로 들어가셔서 톱니바퀴 모양의 버튼을 누른 후 Add Remote를 해줍니다. 팝업 창이 뜰 것인데, 거기다가 Docker 를 골라주시고, New 버튼을 눌러서 새롭게 뜬 팝업창에 Name은 마음데로, API URL은 http://localhost:2375 로 해주시고, 나머지는 다 지워주세요. 그리고 ok 버튼 눌러줍니다. 그러면 다시 원래 팝업창으로 돌아가서 server는 아까 지은 이름으로 된 것을 골라주시고, image name 에는 tensorflow/tensorflow:latest , python interpreter path에는 python이라고 적어줍니다. 그리고 ok 버튼 클릭해서 팝업창을 종료합니다. 원래 세팅창으로 돌아왔고 이제는 project interpreter 셀렉트 박스에서 *.*.* Docker (tensorflow/tensorflow:latest) 라고 적혀있는 것을 골라주고 ok 버튼 누릅니다.

python 파일 하나 만드시고 아래 명령어를 파일에다가 적었을 때 빨간줄이 그어지지 않았다는 것은 tensorflow가 설치된 python 실행 환경과 연동이 되었다는 뜻입니다.

import tensorflow

이제부터는 pycharm에서 마음껏 자동완성의 기능을 누리시고, 파일에서 실행 버튼을 눌러서 결과를 확인하실 수 있습니다.

사실 위에 tensorflow 설치된 python 실행환경 만든다고 커맨드 창에 들어가서 명령어 친 부분은 사실 필요가 없습니다. 저도 적는 중에 알았습니다. 그리고 docker for windows가 윈도우 10 프로페셔널, 엔터프라이즈 급에서만 현재 지원이 되서 위의 포스팅 방법으로는 다른 버젼 쓰시는 분들이 따라할 수 없습니다만...  window 10 홈이나 window 7,8 쓰시는 분들도 vm 생성을 통해서 docker 실행환경을 구축할 수 있고, pycharm을 vm의 docker engine에 연결하면 마찬가지로 윈도우에서 편한 개발 환경을 구축할 수 있습니다.  다음은 자세한 방법이 담긴 링크입니다. http://www.netinstructions.com/how-to-install-and-run-tensorflow-on-a-windows-pc/


'프로그래밍' 카테고리의 다른 글

spring boot 2, http/2, undertow  (0) 2019.12.23
Jquery Ajax cache 문제  (0) 2016.07.23
coursera 스칼라 2주차  (0) 2015.05.18
coursera 스칼라 1주차  (0) 2015.05.18
[이펙티브 자바] 챕터 3 - 공통 메서드  (0) 2015.04.08