Windows Server 2019 + Caffe 설치 및 예제 테스트

| 2020년 3월 9일 | 0 Comments

 

안녕하세요 기술지원팀 이경근입니다.

오늘은 오픈 소스로 제공되고 있는 딥 러닝 프레임워크 중에서도 표현식, 속도, 모듈성에 중점을 두고 개발되었으며, 이미지 처리에 특화된 Caffe에 대해 다뤄보겠습니다.

Windows 환경에서 Caffe 설치를 진행하겠으며, Caffe 설치를 위해 사전에 설치해야 할 필수/옵션 설치 항목은 아래와 같습니다.

 

위의 내용은 Caffe 배포 사이트에 명시된 내용이며, 각 항목을 차례로 설치하도록 하겠습니다. 가장 하단의 내용을 보면 CMake 와 Python의 경로는 PATH에 등록되어야 한다는 내용을 확인 할 수 있습니다. 이 부분은 설치 화면에서 설정하도록 하겠습니다.

테스트 환경 및 설치할 프로그램 버전 정보는 다음과 같습니다.

 

*  설치 환경

  • 운영 체제(OS) : Windows Server 2019
  • 그래픽 카드(GPU) : GeForce RTX 2080
  • Visual Studio 2015 Community
  • CMake 3.6
  • Python 3.5
  • CUDA 8.0
  • cuDNN v5

 

1. Visual Studio 2015 Community 설치

https://my.visualstudio.com/downloads 링크로 이동합니다.

 

검색바에 ‘visual studio 2015 community’를 검색합니다. 이후 설치 환경(x64, Korean, EXE)을 설정한 뒤 설치 파일을 다운로드합니다.

 

설치 유형을 ‘기본값’으로 지정하고 Visual Studio 설치를 진행합니다.

 

Visual Studio 설치가 완료되면 다음으로 넘어갑니다.

 

2. CMake 3.6 설치

https://cmake.org/files/v3.6/ 링크로 이동합니다.

 

‘cmake-3.6.0-rc1-win64-x64.msi’ 파일을 다운로드 합니다.

 

PATH 등록을 위해 ‘Add CMake to the system PATH for the current user’를 체크하고 설치를 진행합니다.

 

CMake 설치가 완료되면 다음으로 넘어갑니다.

 

3. Python 3.5 설치

https://www.python.org/downloads/windows 링크로 이동합니다.

 

Python 3.5.0 항목에서 ‘Windows x86-64 executable installer’ 파일을 다운로드 합니다.

 

PATH 등록을 위해 ‘Add Python 3.5 to PATH’를 선택하고 ‘Install Now’로 설치를 진행합니다.

 

Python 설치가 완료되면 명령 프롬프트(cmd)를 실행합니다.

 

Python에서 패키지를 설치하고 관리하는 도구로 pip를 사용합니다. pip를 이용하여 Caffe에 필요한 각종 패키지를 설치하도록 하겠습니다.

먼저 cmd 에서 ‘python -m pip install –upgrade pip’ 명령을 사용하여 pip를 최신 버전으로 업그레이드합니다.

 

이후 ‘python -m pip install –user numpy scipy matplotlib scikit-image’ 명렁어로 패키지들을 설치합니다. 이 과정에서 의존성으로 묶여있는 다른 패키지들도 같이 설치됩니다.

설치가 완료되면 다음으로 넘어갑니다.

 

4. CUDA Toolkit 8.0 설치

https://developer.nvidia.com/cuda-80-ga2-download-archive 링크로 이동합니다.

 

사용하는 시스템 환경에 맞춰서 각 항목을 선택합니다. Windows, x86_64, Server 2016, exe (local)를 차례로 선택한 뒤 ‘Base Installer’를 다운로드 합니다.

 

설치 옵션을 ‘빠른 설치’로 지정하고 CUDA 설치를 진행합니다.

 

CUDA Toolkit 설치가 완료되면 다음으로 넘어갑니다.

 

5. cuDNN v5 설치

https://developer.nvidia.com/rdp/cudnn-archive 링크로 이동합니다.

 

‘Download cuDNN v5 for CUDA 8.0’ 항목을 선택하고 ‘cuDNN v5 Library for Windows 10’을 다운로드 합니다.

 

다운로드한 파일을 C드라이브 아래에 ‘cuDNN’ 이라는 이름으로 압축을 해제하고 내용을 확인합니다.

 

6. Caffe 설치

https://github.com/BVLC/caffe/tree/windows 링크로 이동합니다.

 

우측의 ‘Clone or download’를 누른 뒤 하단에 창이 나오면 ‘Download ZIP’으로 다운로드 합니다.

 

다운로드한 파일을 C드라이브 아래에 ‘caffe’ 라는 이름으로 압축을 해제하고 내용을 확인합니다.

 

Caffe를 빌드하기 전 ‘C:\caffe\scripts’ 폴더 내부의 ‘build_win.cmd’ 파일 설정을 진행해야 합니다. 해당 파일을 우클릭한 후 ‘편집’을 누릅니다.

 

‘build_win.cmd’ 파일 내용을 보면 ninja와 관련된 구문 2개가 보입니다. WITH_NINJA의 값을 1로 설정하고 빌드를 진행할 경우 ninja 관련 오류가 발생하기 때문에 WITH_NINJA 값을 모두 0으로 변경합니다.

 

cuDNN의 사용을 위해 cuDNN의 경로를 위와 같이 지정한 뒤 ‘build_win.cmd’ 파일을 저장합니다.

 

명령 프롬프트 창을 열고 caffe 설치 경로로 이동합니다. 이후 ‘scripts\build_win.cmd’를 입력하여 Caffe 빌드를 진행합니다.

 

위와 같이 오류 없이 빌드가 완료되면 Caffe 설치가 마무리됩니다.

 

7. Caffe 예제 테스트

이제 Caffe 에서 기본적으로 제공하는 mnist 샘플 예제를 이용하여 테스트를 진행해보겠습니다. mnist는 손으로 쓴 숫자들에 대한 데이터 베이스로써 머신 러닝에서 테스트 용도로 많이 사용되는 내용입니다.

 

먼저 ‘Windows PowerShell’을 실행합니다. 이후 caffe 설치 경로로 이동한 뒤 ‘.\data\mnist\get_mnist.ps1’ 로 스크립트 파일을 실행하여 mnist에 대한  data를 다운로드합니다.

 

위처럼 보안 경고가 뜨는 경우 ‘R’을 입력하여 계속 진행합니다.

 

다운로드가 완료되면 해당 data를 DB로 변환해야합니다. 먼저 ‘C:\caffe\examples\mnist\create_mnist.ps1’ 파일을 우클릭하여 ‘편집’을 누릅니다.

 

하단의 $BUILD\convert~ 로 시작하는 2개의 문장에 ‘\Release’를 삽입하여 $BUILD\Release\convert~ 형태로 경로를 수정한 뒤 파일을 저장합니다.

 

PowerShell에서 ‘.\examples\mnist\create_mnist.ps1’ 로 스크립트 파일을 실행하여 data를 DB로 변환합니다. 이 과정에서 lmdb 파일이 생성됩니다.

 

이제 data를 Caffe를 이용하여 학습을 시켜보도록 하겠습니다. 먼저 ‘C:\caffe\examples\mnist\train_lenet.ps1’ 파일을 우클릭하여 ‘편집’을 누릅니다.

 

하단의 $BuildDir\tools\caffe.exe~ 로 시작하는 문장에 ‘\Release’를 삽입하여$BuildDir\tools\Release\caffe.exe~ 형태로 경로를 수정한 뒤 파일을 저장합니다.

 

PowerShell에서 ‘.\examples\mnist\train_lenet.ps1’ 로 스크립트 파일을 실행하여 학습을 진행합니다. 위와 같이 결과가 출력되며 정확도(accuracy) 99%로 테스트가 완료되었음을 확인할 수 있습니다.

이상으로 Caffe 설치 및 예제 테스트를 마치도록 하겠습니다.

 

 

Category: WINDOWS

Avatar

About the Author ()