안녕하세요? QGIS 3 출시를 앞두고 현재 QGIS 2.99 버전이 배포 중인데요, 이 버전을 이용하여
딥러닝 API '케라스(Keras)'와 백엔드 엔진 '텐서플로(TensorFlow)' 설정방법을 정리해 보겠습니다.
QGIS 2.99 버전의 설치는 아래 OSGeo4W 네트워크 설치관리자에서 qgis-dev를 선택하시면 됩니다.
OSGeo4W 네트워크 설치관리자 (64 bit) | https://www.qgis.org/ko/site/forusers/download.html
아래와 같이 Advanced Install 선택 후, qgis-dev를 설치합니다. 파이썬 3에서 HDF5 파일을 읽고 쓰는 python3-h5py도 미리 설치합니다.
QGIS 2.99에서 사용할 배치 파일은 아래와 같이 2개입니다.
- C:\OSGeo4W64\OSGeo4W.bat
- C:\OSGeo4W64\bin\qgis-dev-g7.2.2.bat
OSGeo4W Shell을 우클릭하고 '관리자 권한으로 실행'합니다.
윈도우용 텐서플로는 파이썬 3.5 이상을 요구하는데,
QGIS 2.99 버전은 아래와 같이 파이썬 3.6 버전을 지원합니다.
혹시 python3이 실행되지 않으면 o4w_env.bat 파일의 환경변수 설정을 확인해 보시기 바랍니다.
set PYTHONHOME=%OSGEO4W_ROOT%\apps\Python36 set PYTHONPATH=%OSGEO4W_ROOT%\apps\Python36
케라스와 텐서플로는 CPU 또는 GPU 상에서 실행하도록 환경설정할 수 있는데요, 텐서플로는 보통 GPU상에서
확연히 빠르게 동작합니다. 텐서플로 GPU 버전 설치를 위해서는 아래 3가지 부분이 사전에 충족되어야 합니다.
- 엔비디아 쿠다 툴킷(NVIDIA CUDA Toolkit) 8.0 설치
- 엔비디아 쿠디엔엔(NVIDIA cuDNN) 6 또는 6.1 설치
- 쿠다 연산능력(CUDA Compute Capability)이 3.0 이상인 GPU 카드 확인
위 3가지 부분은 이전에 작성한 아래 글을 참고하시기 바랍니다.
R에서 딥러닝 API '케라스(Keras)' 설치하기 | http://blog.daum.net/geoscience/1161
쿠다 설치가 끝나면 o4w_env.bat의 path에 아래 경로를 추가합니다.
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\bin
이제 텐서플로와 케라스를 순차적으로 설치합니다.
# Install TensorFlow with CPU support only python3 -m pip install tensorflow # Install TensorFlow with GPU support python3 -m pip install tensorflow-gpu # Install Keras python3 -m pip install keras
아래와 같이 케라스가 정상적으로 임포트됩니다. 이제 QGIS 파이썬 콘솔에서 케라스를 이용할 수 있습니다.
백엔드 엔진을 교체하고 싶은 경우에는 사용자 계정 폴더에 .keras > keras.json 내용을 변경하시면 됩니다.
자, 이제 QGIS에서 딥러닝 학습을 해볼 수 있습니다.
케라스 엠니스트 예제를 QGIS 파이썬 콘솔에서 실행한 예입니다.
소스: https://github.com/fchollet/keras/blob/master/examples/mnist_mlp.py