PyTorch 설치 및 환경 설정

PyTorch를 사용하기 위해서는 먼저 시스템에 설치하고, 적절한 개발 환경을 설정해야 합니다. 설치 과정은 사용자가 선택한 운영 체제와 하드웨어에 따라 다를 수 있으며, 특히 GPU를 사용할 경우 CUDA의 버전과 호환성을 고려해야 합니다. 다음에서는 다양한 환경에서 PyTorch를 설치하는 방법을 상세히 설명하겠습니다.

1. 기본 설치 방법

PyTorch는 다양한 설치 옵션을 제공합니다. 기본적으로는 pipconda를 통해 설치할 수 있으며, 원하는 옵션에 따라 CPU 버전 혹은 GPU(CUDA) 버전을 선택할 수 있습니다. PyTorch 공식 홈페이지(https://pytorch.orgarrow-up-right)에서 설치 옵션을 선택할 수 있으며, 이 사이트에서는 필요한 명령어를 자동으로 생성해 줍니다.

1.1 pip를 이용한 설치

Python 패키지 인덱스인 pip를 사용하여 PyTorch를 설치할 수 있습니다. 기본적인 설치 명령은 다음과 같습니다:

pip install torch torchvision torchaudio

이 명령어는 CPU 버전의 PyTorch를 설치합니다. 만약 GPU를 사용하여 연산을 가속화하고자 한다면 CUDA가 설치된 환경이어야 하며, 해당 버전에 맞는 CUDA 지원 버전의 PyTorch를 설치해야 합니다.

예를 들어, CUDA 11.8을 지원하는 PyTorch를 설치하려면 다음과 같은 명령어를 사용합니다:

pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

이렇게 설치된 PyTorch는 CUDA 11.8을 이용하여 GPU에서 연산을 수행할 수 있습니다. CUDA 버전은 사용자가 미리 설치한 CUDA Toolkit의 버전과 호환되는지 반드시 확인해야 합니다.

1.2 conda를 이용한 설치

conda는 파이썬 패키지뿐만 아니라 다양한 라이브러리와 도구를 쉽게 설치할 수 있도록 해주는 패키지 관리자입니다. conda를 통해 PyTorch를 설치할 수 있으며, 이 방법은 특히 여러 라이브러리 간의 의존성 문제를 자동으로 해결해 주기 때문에 유용합니다. conda를 사용한 기본적인 설치 명령은 다음과 같습니다:

conda install pytorch torchvision torchaudio cpuonly -c pytorch

위 명령어는 CPU 버전의 PyTorch를 설치합니다. GPU를 이용하고 싶다면 다음과 같이 CUDA 버전을 명시하여 설치할 수 있습니다:

conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia

여기서 pytorch-cuda=11.8 부분은 사용자가 설치하고자 하는 CUDA 버전을 지정하는 부분입니다. -c pytorch-c nvidia 옵션은 각각 PyTorch와 NVIDIA의 공식 채널에서 패키지를 다운로드받는 것을 의미합니다.

2. 개발 환경 설정

PyTorch를 설치한 후에는 효율적으로 코드를 작성하고 디버깅하기 위해 개발 환경을 구성하는 것이 중요합니다. 이 섹션에서는 Python 가상환경을 활용하여 작업 환경을 관리하고, GPU 사용 설정을 확인하는 방법에 대해 설명하겠습니다.

2.1 가상환경 설정

다양한 프로젝트에서 서로 다른 버전의 라이브러리와 의존성을 사용할 경우가 많습니다. 따라서 가상환경을 활용하여 프로젝트별로 독립적인 환경을 구축하는 것이 좋습니다. virtualenvconda를 통해 가상환경을 설정할 수 있으며, conda는 가상환경과 패키지 설치 모두를 지원하기 때문에 편리합니다.

이렇게 하면 pytorch_env라는 이름의 가상환경이 생성되고, 이후에는 이 환경을 활성화한 상태에서만 패키지를 설치하거나 사용할 수 있습니다. 필요에 따라 pytorch_env 대신 다른 이름을 사용할 수 있습니다.

2.2 GPU 사용 설정 확인

PyTorch가 설치된 후, 제대로 GPU를 인식하고 사용하는지 확인하는 것이 중요합니다. 이를 위해 다음 Python 코드를 실행하여 GPU가 인식되는지 확인할 수 있습니다:

이 코드를 실행하면 CUDA가 설치되어 있고 GPU가 제대로 인식될 경우 해당 GPU의 이름이 출력됩니다. CUDA가 인식되지 않으면 CPU를 사용하게 됩니다. GPU를 활용하여 학습 속도를 대폭 개선할 수 있으므로, 특히 딥러닝 모델을 학습할 때는 GPU 사용 여부를 꼭 확인해야 합니다.

3. CUDA와 CUDNN 설치

PyTorch를 GPU에서 실행하기 위해서는 NVIDIA의 CUDA와 CUDNN 라이브러리가 필요합니다. CUDA는 GPU에서의 병렬 계산을 가능하게 해주는 플랫폼이며, CUDNN은 딥러닝 가속을 위한 NVIDIA의 라이브러리입니다. PyTorch는 CUDA와 CUDNN을 자동으로 설치할 수 있지만, 종종 직접 설치하는 것이 더 안정적일 수 있습니다.

3.1 CUDA Toolkit 설치

CUDA Toolkit은 NVIDIA의 공식 웹사이트에서 다운로드할 수 있습니다. 시스템의 운영 체제에 맞는 버전을 선택한 후, 설치를 진행합니다. 설치 과정 중 GPU 드라이버, CUDA, 그리고 관련 도구들이 함께 설치됩니다. 설치 후에는 환경 변수를 설정해야 CUDA가 정상적으로 인식될 수 있습니다.

CUDA 설치 후, 버전을 확인하려면 다음 명령어를 사용할 수 있습니다:

이 명령어를 통해 CUDA 버전이 출력되면, 성공적으로 설치된 것입니다. 설치된 CUDA 버전은 PyTorch에서 지원하는 버전과 호환되어야 하며, 설치 시 PyTorch 공식 홈페이지에서 호환성을 확인하는 것이 좋습니다.

3.2 CUDNN 설치

CUDNN은 딥러닝 가속을 위한 CUDA 라이브러리입니다. NVIDIA의 공식 웹사이트에서 다운로드할 수 있으며, CUDNN 설치 파일을 다운로드한 후, 해당 파일을 CUDA의 includelib 디렉토리에 복사하여 설치를 완료합니다.

설치 후 CUDNN 버전을 확인하려면, 다음과 같이 Python 코드를 실행할 수 있습니다:

이 명령어가 성공적으로 실행되고, CUDNN의 버전이 출력되면 CUDNN이 제대로 설치된 것입니다. CUDNN 설치는 PyTorch의 GPU 성능에 큰 영향을 미치므로 필수적인 과정입니다.

4. PyTorch 설치 확인 및 테스트

PyTorch 설치와 환경 설정이 완료된 후에는 간단한 테스트 코드를 통해 정상적으로 동작하는지 확인하는 것이 좋습니다. 아래의 예제 코드를 통해 PyTorch가 설치되었는지, 그리고 GPU를 사용할 수 있는지 확인할 수 있습니다.

4.1 설치 확인

아래의 Python 코드를 실행하여 PyTorch의 버전과 현재 사용 가능한 디바이스(GPU 또는 CPU)를 확인할 수 있습니다:

이 코드는 PyTorch가 설치된 버전을 출력하고, GPU가 사용 가능한 경우 CUDA 버전과 GPU 이름을 확인해 줍니다.

4.2 간단한 텐서 연산 테스트

PyTorch 설치를 확인하기 위한 또 다른 방법으로, 간단한 텐서 연산을 실행해 볼 수 있습니다. 다음은 텐서를 생성하고 기본 연산을 수행하는 코드입니다:

이 코드가 에러 없이 실행되면, PyTorch가 정상적으로 설치된 것입니다.

5. 개발 환경 도구 및 추천 에디터

PyTorch를 효율적으로 사용하려면, 코딩과 디버깅을 위한 적절한 개발 환경을 설정하는 것이 중요합니다. Python 프로젝트에서는 코드 작성과 디버깅을 위해 인기 있는 에디터나 통합 개발 환경(IDE)를 사용하는 것이 일반적입니다.

5.1 Visual Studio Code (VS Code)

VS Code는 가벼운 텍스트 에디터이지만, 다양한 확장 프로그램을 설치하여 강력한 기능을 제공할 수 있습니다. 특히 Python을 위한 확장 프로그램을 통해 코드 완성, 디버깅, 코드 포맷팅 기능을 사용할 수 있습니다. VS Code를 사용하여 PyTorch 코드를 작성하려면 Python 확장을 설치하고, pylintblack 같은 코드 품질 도구를 추가로 설정하는 것을 추천합니다.

5.2 Jupyter Notebook

PyTorch를 사용하여 데이터 분석과 딥러닝 모델을 개발할 때, Jupyter Notebook은 특히 편리한 도구입니다. Jupyter Notebook에서는 코드를 셀 단위로 실행할 수 있어, 데이터 시각화나 모델의 학습 과정을 단계별로 확인할 수 있습니다. PyTorch 코드를 테스트하거나 실험을 수행할 때 자주 사용됩니다.

Jupyter Notebook 설치 후, jupyter notebook 명령을 실행하면 웹 브라우저에서 Notebook 인터페이스를 사용할 수 있습니다.

6. Docker를 이용한 PyTorch 환경 설정

Docker는 소프트웨어를 컨테이너로 패키징하여 일관된 환경을 제공해주는 도구입니다. 이를 통해 개발 환경의 의존성 문제를 해결할 수 있으며, 다양한 시스템에서도 동일한 환경에서 PyTorch를 실행할 수 있습니다. Docker를 사용하면 프로젝트를 배포할 때도 편리하며, 특히 여러 환경에서 PyTorch를 테스트할 때 유용합니다.

6.1 Docker 설치

Docker는 다양한 운영 체제에서 사용할 수 있으며, Docker 공식 웹사이트(https://www.docker.comarrow-up-right)에서 다운로드하고 설치할 수 있습니다. 설치 후에는 Docker가 제대로 작동하는지 확인하기 위해 다음 명령어를 실행해봅니다:

이 명령어를 실행하여 Docker의 버전이 출력되면, Docker가 정상적으로 설치된 것입니다.

6.2 PyTorch Docker 이미지 다운로드

NVIDIA는 PyTorch용 Docker 이미지를 제공하며, 이를 통해 GPU 환경에서의 PyTorch 사용이 훨씬 간편해집니다. CUDA를 지원하는 NVIDIA Docker 이미지를 사용하기 위해서는 nvidia-docker를 설치해야 합니다.

먼저, NVIDIA Docker를 설치합니다:

이제 Docker Hub에서 PyTorch 이미지를 다운로드합니다. CPU 버전과 GPU 버전을 선택할 수 있으며, GPU를 사용하려면 nvidia/cuda 이미지를 사용해야 합니다. 아래는 PyTorch와 CUDA 11.8을 포함한 Docker 이미지를 다운로드하는 예시입니다:

6.3 Docker 컨테이너 실행

Docker 이미지 다운로드가 완료되면, 이를 이용해 컨테이너를 실행할 수 있습니다. Docker를 이용해 PyTorch 환경을 구축하는 경우, 다음 명령어로 컨테이너를 실행할 수 있습니다:

위 명령어는 GPU를 사용하여 PyTorch 컨테이너를 실행하는 예시입니다. --gpus all 옵션을 통해 모든 GPU를 사용하도록 설정할 수 있으며, -it 옵션은 상호작용 모드를 의미합니다. --rm 옵션은 컨테이너 종료 시 자동으로 삭제되도록 설정합니다.

컨테이너가 실행되면, 내부에서 PyTorch 코드를 작성하고 테스트할 수 있는 환경이 갖춰집니다. Docker 컨테이너 내부의 쉘에서 다음과 같이 PyTorch를 확인할 수 있습니다:

이 명령어가 정상적으로 실행되면, Docker 환경에서의 PyTorch 설정이 완료된 것입니다.

7. 다양한 운영 체제에서의 설치 방법

운영 체제별로 PyTorch 설치와 환경 설정에 차이가 있을 수 있습니다. 여기서는 Windows, Linux(Ubuntu), 그리고 macOS에서의 PyTorch 설치 방법을 설명합니다.

7.1 Windows에서의 설치

Windows에서 PyTorch를 설치할 때 주의해야 할 점은 CUDA 드라이버와의 호환성입니다. 먼저, GPU 드라이버와 CUDA Toolkit이 올바르게 설치되어 있어야 합니다. Windows 환경에서 pipconda를 사용하여 설치할 수 있으며, Anaconda Prompt를 사용하는 것이 좋습니다.

또한, Windows에서 CUDA를 사용하기 위해서는 Visual Studio가 설치되어 있어야 합니다. Visual Studio는 CUDA Toolkit과 함께 설치하는 것이 일반적입니다.

7.2 Ubuntu에서의 설치

Ubuntu에서는 apt-get을 이용해 GPU 드라이버와 CUDA Toolkit을 설치할 수 있으며, 이후 pipconda를 사용하여 PyTorch를 설치하면 됩니다. 일반적으로 Ubuntu에서는 PyTorch가 원활하게 작동하며, GPU 사용 설정도 간편합니다.

설치 후, nvidia-smi 명령어로 GPU가 제대로 인식되는지 확인할 수 있습니다.

7.3 macOS에서의 설치

macOS에서는 CUDA가 지원되지 않으므로 GPU 가속을 사용할 수 없습니다. 따라서 CPU 버전의 PyTorch를 설치하게 됩니다. pipconda를 통해 간단히 설치할 수 있습니다:

macOS에서는 GPU 가속을 사용할 수 없지만, 최근 M1 칩과 M2 칩을 위한 Metal 지원이 추가되었으므로 Apple Silicon 기반의 Mac에서는 torch.backends.mps를 통해 GPU 가속을 사용할 수 있습니다. 관련 설정은 추가로 Apple Developer 문서를 참조할 수 있습니다.

Last updated