이태우

고려대학교 음성정보처리연구실 박사과정

모두의연구소 딥러닝연구실 DeepLAB 연구원




Torch7 설치하는 방법 까다로우시죠?

모두의연구소 DeepLAB의 이태우 연구원님이 설치방법을 정리해 놓았습니다.


원본 링크 : https://docs.google.com/document/d/18sTMqVFDSFvNaz8xIo40Wm9XBSrMX8spTDGr4F0XXi8/edit#


모두의연구소 페이지와 모두의연구소 커뮤니티에 오시면 더 많은 정보를 만나보실 수 있습니다.

모두의연구소 페이스북 페이지 : https://www.facebook.com/lab4all

모두의연구소 커뮤니티 그룹 : https://www.facebook.com/groups/modulabs




토치(Torch7) 시작하기



작성일: 2015년 3월 30일 ~ 2015년 4월 23일

고려대학교 음성정보처리연구실, 모두의연구소 딥러닝 연구실 DeepLAB

이태우 (twlee@speech.korea.ac.kr)




목차

1. 설치

1.1 CUDA 설치

1.2 cuDNN 설치

1.3 Torch7 설치

1.4 iTorch 설치

2. GTC 2015 Torch7 튜토리얼

d




크리에이티브 커먼즈 라이선스

이 저작물은 크리에이티브 커먼즈 저작자표시 4.0 국제 라이선스에 따라 이용할 수 있습니다.




고친 날짜 및 내용

2015.10.2.

쿠다, cuDNN, 토치, itorch 설치 방법들을 2015년 10월 상황에 맞게 새로 고침.




1. 설치


 저처럼 토치(Torch7)를 처음 써보는 사람에게는 토치를 자신의 피시(PC)에 설치하는 것부터 어려운 것 같습니다. 1 장에서는 사용자의 피시가 포맷되어 우분투 14.04 운영체제만 설치된 상태라 가정하고 토치 설치 과정을 적어보았습니다. 피시는 인터넷에 연결되어 있다고 가정하였습니다. 설치 과정은 다음 환경에서 시험되었습니다.

1) Ubuntu 14.04.3 64-bit, ASUS Z97-A, Intel I7-4790, 32GB RAM, GTX Titan X.


1.1 쿠다(CUDA) 설치


 토치를 온전히 사용하기 위해서는 쿠다가 반드시 설치되어 있어야 합니다. 대쉬 보드에서 'Additional Drivers’를 실행합니다.


그리고 아래 그림 같이 Additional Drivers 탭에서 첫 번째 항목(‘Using NVIDIA binary driver …’)을 선택하고 'Apply Changes’를 클릭합니다.


컴퓨터를 껐다 켭니다.

그리고 터미널에 다음 명령어를 입력합니다.

$ lspci -vnn | grep -i VGA -A 12

실행 결과에 'Kernel driver in use: nvidia'라고 나오면 설치가 잘 된 것입니다.


https://developer.nvidia.com/cuda-toolkit-70 으로 가서 우분투 14.04 런파일 인스톨러 RUN 파일을 ~/Download 폴더에 내려받습니다.


Ctrl + Alt + F1 키를 눌러 콘솔 모드로 로그인합니다. 그리고 다음 명령어들을 입력합니다. 설치할 때, 그래픽스 드라이버는 이미 설치하였으므로 다시 설치하지 않을 수도 있습니다. 쿠다 툴킷, OpenGL, 쿠다 샘플들을 인스톨러가 제안하는 기본 디렉토리에 설치합니다.

$ cd ~/Downloads

$ sudo apt-get update

$ chmod +x ./cuda_7.0.28_linux.run

$ sudo service lightdm stop

$ sudo ./cuda_7.0.28_linux.run

$ sudo service lightdm restart


환경 변수를 설정합니다.

$ gedit ~/.bashrc


홈(home) 디렉토리 안에 있는 .bashrc 파일 맨 끝에 다음 명령어들을 추가합니다.

export CUDA_HOME=/usr/local/cuda

export LD_LIBRARY_PATH=${CUDA_HOME}/lib64

PATH=${CUDA_HOME}/bin:${PATH}

export PATH

로그아웃하였다가 다시 로그인합니다.

쿠다 에스디케이(SDK) 샘플들을 컴파일합니다. (이 과정은 생략될 수도 있습니다). 터미널에서 다음 명령어들을 실행합니다.

$ cd /usr/local/cuda/bin

$ ./cuda-install-samples-7.0.sh  ~

$ cd ~/NVIDIA_CUDA-7.0_Samples

$ sudo apt-get install -y build-essential

$ make


컴파일이 잘 되었는지 시험해봅니다.

$ cd 1_Utilities

$ cd deviceQuery

$ ./deviceQuery

설치가 잘 되었다면, 그 결과가 아래 그림처럼 출력됩니다 (출력 내용은 다를 수도 있습니다).


참고 자료

  1. http://docs.nvidia.com/cuda/cuda-getting-started-guide-for-linux/ (2015.4.15. 확인).

  2. http://www.r-tutor.com/gpu-computing/cuda-installation/cuda6.5-ubuntu (2015.4.7. 확인).

  3. http://corpocrat.com/2014/11/03/how-to-setup-caffe-to-run-deep-neural-network/ (2015.4.23. 확인).

  4. http://www.binarytides.com/install-nvidia-drivers-ubuntu-14-04/ (2015.10.1. 확인).



1.2 cuDNN 설치


https://developer.nvidia.com/cuDNN에서 cuDNN을 내려받습니다. cuDNN은 쿠다 Registered Developer Program에 등록된 사람만 내려받을 수 있습니다. 쿠다 7.0 그리고 compute capability 3.0 이상 그래픽스 카드와 드라이버 또한 미리 설치되어 있어야 합니다.


내려받은 파일(cudnn-7.0-linux-x64-v3.0-prod.tgz)의 압축을 풉니다. 그 압축이 풀려 생긴 폴더로 들어갑니다. 그리고 다음 명령어들을 실행합니다.

$ sudo cp ./lib64/libcudnn.so /usr/local/cuda-7.0/lib64

$ sudo cp ./lib64/libcudnn.so.7.0 /usr/local/cuda-7.0/lib64

$ sudo cp ./lib64/libcudnn.so.7.0.64 /usr/local/cuda-7.0/lib64

$ sudo cp ./lib64/libcudnn_static.a /usr/local/cuda-7.0/lib64

$ sudo cp ./include/cudnn.h /usr/local/cuda-7.0/include


참고 자료

  1. http://corpocrat.com/2014/11/03/how-to-setup-caffe-to-run-deep-neural-network/ (2015.4.23. 확인)



1.3 Torch7 설치


다음 명령어들을 실행합니다.

$ sudo curl -sk https://raw.githubusercontent.com/torch/ezinstall/master/install-deps | bash
$ git clone https://github.com/torch/distro.git ~/torch --recursive
$ cd ~/torch; ./install.sh

 curl은 서버에서 또는 서버로 파일을 자동으로 전송하는 프로그램 입니다. -s 옵션은 진행 상황을 화면에 표시하지 않도록 설정합니다. -k 옵션은 인증 절차를 생략하도록 설정합니다. curl 명령어를 통해 다운로드 받아진 스크립트 파일은 '| bash' 명령어로 터미널에서 실행됩니다. git clone 명령어는 원격 저장소에 있는 파일들을 내 컴퓨터의 ~/torch 밑으로 복사합니다. install-deps.sh 스크립트는 LuaJIT와 Torch를 설치하는 데 필요한 패키지들을 설치합니다. install-deps.sh 스크립트는 Mac, Ubuntu, Fedora 환경을 지원합니다. install.sh 스크립트는 LuaJIT와 LuaRocks를 설치하고 lua 패키지 관리자인 LuaRocks를 사용하여  torch와 nn과 같은 주요 패키지들을 설치합니다. source ~/.bashrc 명령어는 PATH 변수에 torch를 추가합니다.


터미널 창을 닫았다가 다시 엽니다. 토치를 실행합니다.

$ cd ~/torch

$ th

그리고 아래 그림 같이 명령어들을 실행해 봅니다.

th> ?를 입력하면 도움말을 볼 수 있습니다.


만약 torch를 지우고 싶다면, 터미널에 다음 명령어를 입력합니다.

$ rm -rf ~/torch


새 패키지들의 설치 및 관리는 luarocks로 합니다.

$ th file.lua 명령어는 file.lua 파일을 torch로 실행합니다.

$ th -h 명령어는 Lua 코드를 실행시키는 데 적용할 수 있는 옵션들을 보여줍니다.

$ th -h

Usage: th [options] [script.lua [arguments]]


Options:

 -l name            load library name

 -e statement       execute statement

 -h,--help          print this help

 -a,--async         preload async (libuv) and start async repl (BETA)

 -g,--globals       monitor global variables (print a warning on creation/access)

 -gg,--gglobals     monitor global variables (throw an error on creation/access)

 -x,--gfx           start gfx server and load gfx env

 -i,--interactive   enter the REPL after executing a script


Torch를 종료할 때는 <Ctrl> + D 를 누르고 y를 입력합니다.


참고 자료

  1. http://torch.ch/docs/getting-started.html#_ (2015.3.30. 확인).

  2. http://rogerdudler.github.io/git-guide/index.ko.html (2015.3.30. 확인).




1.4 iTorch 설치


pip, ipython, itorch를 차례대로 설치합니다.


[pip 설치]

$ sudo apt-get install -y python-pip python-dev

$ sudo pip install --upgrade pip

$ sudo pip install --upgrade virtualenv


[Anaconda 설치]

https://www.continuum.io/downloads 에서 리눅스용 파이썬 2.7 버전을 ~/Downloads 폴더 밑에 내려받습니다. 그리고 다음 명령어들을 실행합니다.

$ cd ~/Downloads

$ sudo ./Anaconda-2.3.0-Linux-x86_64.sh

터미널 창을 닫았다가 다시 엽니다.


[ipython 설치]

$ sudo pip install --upgrade "ipython[all]"


[itorch 설치]

$ cd ~; git clone https://github.com/facebook/iTorch.git

$ cd iTorch

$ sudo apt-get install -y luarocks

$ luarocks install image

$ luarocks make


참고 자료

  1. http://www.saltycrane.com/blog/2010/02/how-install-pip-ubuntu/ (2015.4.10. 확인).

  2. http://ipython.org/ipython-doc/stable/install/install.html (2015.4.10. 확인).

  3. https://github.com/facebook/iTorch (2015.4.10. 확인).

  4. http://ipython.org/install.html (2015.10.1. 확인).

  5. https://github.com/ipython/ipython/releases (2015.10.2. 확인).




2. GTC 2015 Torch7 튜토리얼


 여기에서 Deep Learning with Torch.ipynb 파일을 다운로드 받습니다. 다운로드 받은 파일이 있는 폴더로 이동하여, 터미널을 열고, itorch notebook을 실행합니다.


또한 웹 브라우저에는 아래 그림처럼 프로그램이 실행될 것입니다.

Deep Learning with Torch.ipynb 파일을 클릭하여 그 파일을 실행시킵니다.


이제 튜토리얼을 따라가며 Torch를 실행해봅니다. 각 코드 셀은 ▶ 버튼을 클릭하여 실행시킬 수 있습니다. 실행 결과는 아래 그림처럼 그 코드 셀 아래에 표시됩니다.



참고 자료

  1. (영어)http://nbviewer.ipython.org/github/soumith/talks/blob/master/gtc2015/Deep%20Learning%20with%20Torch.ipynb (2015.4.2. 확인)

  2. (한국어)http://nbviewer.ipython.org/github/LeeTaewoo/gtc15/blob/master/Deep%20Learning%20with%20Torch.ipynb (2015.4.14. 확인)



❖ 틀렸거나 보완할 점을 본문에 댓글로 또는 저에게 이메일로 알려 주시면 감사하겠습니다.


저작자 표시 비영리 변경 금지
신고

+ Recent posts