PyTorch와 CUDA 기반 딥러닝 환경 구축 가이드

PyTorch란?

PyTorch는 Torch 라이브러리를 기반으로 개발된 오픈소스 딥러닝 프레임워크로, 파이썬을 중심 언어로 사용합니다. 현재 리눅스 재단 산하의 독립 프로젝트로 운영되며, 컴퓨터 비전 및 자연어 처리 분야에서 널리 활용되고 있습니다.

주요 특징

  • 동적 계산 그래프: 실행 시점에 연산 그래프가 생성되기 때문에 디버깅과 실험이 직관적입니다. 이는 개발 중 실시간으로 연산 흐름을 조정할 수 있게 해줍니다.
  • 자동 미분 지원: torch.autograd 모듈을 통해 역전파 자동화가 가능하여, 복잡한 신경망의 기울기 계산을 간편하게 처리할 수 있습니다.
  • 확장 가능한 생태계: torchvision(이미지), torchaudio(오디오), torchtext(텍스트) 등 전문화된 서브 라이브러리를 제공하여 데이터 로딩 및 사전 학습 모델 활용을 용이하게 합니다.

Miniconda를 이용한 환경 관리

Miniconda는 Anaconda의 경량 버전으로, conda 패키지 매니저와 파이썬만 포함되어 있어 필요한 패키지를 최소 단위로 설치하고 관리하기에 적합합니다. 특히 여러 프로젝트 간 의존성 충돌을 방지하는 격리된 가상 환경을 쉽게 구성할 수 있습니다.

설치 절차

  1. 공식 사이트에서 운영체제에 맞는 Miniconda 설치 파일 다운로드
  2. 설치 과정 중 경로를 시스템 드라이브(C:\) 외부(D:\ 또는 E:\)로 지정 추천
  3. 설치 후 시작 메뉴에서 Anaconda Prompt 실행

기본 명령어 요약

# 가상 환경 생성 (Python 3.9 기준)
conda create -n pytorch_env python=3.9

# 환경 활성화
conda activate pytorch_env

# 환경 비활성화
conda deactivate

# 설치된 환경 목록 확인
conda env list

# 특정 환경 삭제
conda env remove -n pytorch_env

# 패키지 목록 저장
pip freeze > requirements.txt

# 미러 서버 설정 (예: Tsinghua)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

CUDA 및 cuDNN 설정

NVIDIA GPU를 활용한 딥러닝 학습을 위해서는 CUDA Toolkit과 cuDNN 라이브러리가 필수입니다. CUDA는 GPU 연산을 위한 개발 도구 세트이며, cuDNN은 딥러닝 커널(합성곱, 풀링 등)을 고도로 최적화한 라이브러리입니다.

호환 가능한 CUDA 버전 확인

Windows 사용자는 다음 방법으로 현재 드라이버가 지원하는 최대 CUDA 버전을 확인할 수 있습니다:

nvidia-smi

출력 결과 상단에 표시되는 "CUDA Version"은 설치된 그래픽 드라이버가 지원하는 최대 버전을 의미하며, 반드시 그 이하 버전의 CUDA Toolkit을 설치해야 합니다.

CUDA Toolkit 설치

  1. CUDA Toolkit 아카이브 페이지 방문
  2. 운영체제 및 버전 선택 (예: Windows 11)
  3. 로컬에 설치 후, 설치 경로 예시: D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1
  4. 설치 완료 후 터미널에서 다음 명령어로 검증:
    nvcc -V

성공적으로 설치되면 CUDA 컴파일러 버전 정보가 출력됩니다.

추가 검증: Demo Suite 테스트

설치 디렉터리 내 extras\demo_suite 폴더로 이동하여 다음 명령어 실행:

cd "D:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\extras\demo_suite"
deviceQuery.exe
bandwidthTest.exe

두 프로그램 모두 Result = PASS를 반환하면 정상 작동합니다.

cuDNN 설치

  1. cuDNN 아카이브에서 CUDA 버전과 정확히 일치하는 버전 다운로드 (예: CUDA 12.x → cuDNN for CUDA 12.x)
  2. 압축 해제 후 나타나는 bin, include, lib 폴더를 CUDA 설치 경로의 동일한 이름 폴더에 덮어쓰기
  3. 환경 변수가 자동으로 설정되므로 추가 작업 없이 사용 가능

PyTorch 설치 준비

공식 사이트(https://pytorch.org/get-started/locally/)에서 OS, 패키지 관리자(pip/conda), Python 버전, CUDA 버전을 선택하면 설치 명령어를 자동 생성해 줍니다.

예시 (CUDA 12.1 기준):

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

인터넷 연결이 제한된 환경에서는 아래 주소에서 대응하는 whl 파일을 수동 다운로드 후 설치할 수 있습니다:

https://download.pytorch.org/whl/torch_stable.html

IDE 통합: PyCharm에서 환경 사용

  1. PyCharm 프로젝트 설정 열기
  2. Project Interpreter 설정 진입
  3. 기존 conda 환경 선택: Conda Environment → Existing environment
  4. Interpreter 경로 지정 (예: D:\Miniconda3\envs\pytorch_env\python.exe)
  5. 확인 후 해당 환경의 패키지 자동 감지

기초 테스트 코드

설치가 완료되었는지 확인하기 위해 간단한 스크립트를 실행해 보세요:

import torch

# CPU/GPU 장치 확인
print("Device:", "GPU" if torch.cuda.is_available() else "CPU")

# 텐서 생성 및 연산 테스트
x = torch.rand(3, 3)
y = torch.rand(3, 3)
z = x + y
print("Tensor addition result:\n", z)

# CUDA 사용 가능 여부
if torch.cuda.is_available():
    print("CUDA device count:", torch.cuda.device_count())
    print("Current device:", torch.cuda.current_device())
    print("Device name:", torch.cuda.get_device_name())

정상적으로 GPU 정보와 랜덤 텐서 연산 결과가 출력되면 설치 성공입니다.

태그: PyTorch CUDA cuDNN Miniconda 딥러닝

5월 24일 10:29에 게시됨