Windows10에서 tensorflow, lightgbm 등 머신러닝 GPU 환경 세팅하는 법 총정리

Categories:

Updated:

3 minute read

1. Python 3.7 다운로드

https://www.python.org/downloads/windows/

python 3.7.x 64bit Windows x86-64 executable installer 다운로드.

python

인스톨러를 실행시키고 ‘Add Python 3.7 to PATH’에 체크한 뒤 Install Now로 Python 다운로드.

python


2. OpenCL 환경 세팅

그래픽 카드를 머신러닝 연산에 활용하기 위한 툴들을 다운로드한다.

1) 엔비디아 그래픽카드가 장착되어있는지 확인.

2) Visual Studio 2017 다운로드

https://visualstudio.microsoft.com/ko/downloads/

19-04-06 기준 2019도 출시되었으나, https://docs.nvidia.com/cuda/archive/10.0/cuda-installation-guide-microsoft-windows/index.html#system-requirements 에서 확인할 수 있듯이, CUDA10이 vs2019를 지원하지 않기 때문에 2017로 설치. 커뮤니티 버전으로 다운로드하면 된다.

vs2017

Visual Studio Installer에서 ‘C++를 사용한 데스크톱 개발’에 체크하고 설치.

vs2017

3) CUDA 10.0 설치.

https://developer.nvidia.com/cuda-10.0-download-archive

19-04-06 기준 최신 버전은 10.1이나, https://www.tensorflow.org/install/gpu 에 따르면 텐서플로우가 10.0을 지원하므로 10.0으로 설치.

cuda10

4) CUDA 10.0 용 최신 cuDNN 설치

https://developer.nvidia.com/cudnn

엔비디아에 로그인해야만 다운로드 할 수 있다.

cudnn

압축 파일이 다운로드 되는데 압축을 풀고, 폴더 안에 있는 ‘cuda’ 폴더를 C:\tools 폴더 안으로 이동시킨다.

cudnn

5) 컴퓨터 재부팅


3. LightGBM GPU 환경 세팅

catboost나 xgboost는 다른 환경을 세팅하지 않아도 parameter에 gpu를 사용하라고 명시하기만 하면 gpu를 사용하지만, lightgbm은 gpu 버전을 설치하기 위한 별도의 환경을 설정해줘야 한다.

1) Cmake 설치

https://cmake.org/download/

cmake

설치 할 때 ‘Add CMake to the system PATH for all users’를 체크

cmake

2) Boost Binaries ‘boost_1_69_0-msvc-14.1-64.exe’ 설치

https://bintray.com/boostorg/release/boost-binaries/1.69.0#files

boost

설치 할 때 다음과 같은 경고가 뜰 수 있는데, ‘추가 정보’를 눌러 설치를 진행한다.

boost


4. PATH 추가

다음 세 가지 경로를 시스템 PATH에 추가한다. 텐서플로우 gpu 버전이 정상적으로 작동하기 위해 필요한 작업이다.

  • C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\extras\CUPTI\libx64
  • C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\include
  • C:\tools\cuda\bin

윈도우 하단 바에 검색 버튼을 누르고 ‘시스템 환경 변수’라고 치면 아래와 같은 순서로 시스템 변수 Path에 새로운 경로를 만들 수 있다.

path


5. VirtualEnv 생성하기

라이브러리들을 설치할 때는 가상 환경을 만들고 진행하는 것이 좋다.

  1. 명령 프롬프트에 pip install virtualenv을 입력해 가상환경 패키지를 설치한다.
  2. virtualenv gpu를 입력해서 ‘gpu’라는 이름의 가상 환경을 만든다.
  3. call gpu\scripts\activate 를 입력해서 가상 환경을 활성화시킨다.

virtualenv


6. 데이터 과학과 머신러닝에 필요한 파이썬 패키지 설치

가상 환경이 활성화되어 있는 명령 프롬프트에 다음을 입력해서 패키지를 설치한다.

pip install numpy pandas matplotlib seaborn scikit-learn tqdm jupyter tensorflow-gpu catboost xgboost optuna multiprocess category_encoders tables

install packages

pip install lightgbm --install-option=--gpu

install lightgbm


패키지 간략 소개

  1. NumPy: 수학 연산
  2. Pandas: 데이터 분석
  3. Matplotlib: 데이터 시각화
  4. seaborn: high-level 데이터 시각화
  5. scikit-learn: 기본적인 데이터 과학 및 머신 러닝 도구 제공
  6. tqdm: for loop을 돌 때 진행바를 표시
  7. jupyter: 데이터 과학 코딩을 위한 필수 도구
  8. TensorFlow: 딥러닝
  9. LightGBM: 그래디언트 부스팅, 성능 좋음
  10. CatBoost: 그래디언트 부스팅
  11. XGBoost: 그래디언트 부스팅
  12. Optuna: Bayesian hyperparameter optimizer
  13. multiprocess: 윈도우에서 멀티프로세싱을 더 쉽게 할 수 있게 해줌
  14. Category Encoders: 카테고리를 숫자화
  15. Tables: pandas의 dataframe 및 series을 hdf 포맷으로 저장할 수 있게 해줌

Leave a Comment