반응형
1. 왜 AI 개발 환경 구성이 중요한가?
AI 프로젝트를 시작하기 전, 개발 환경을 올바르게 설정하는 것은 모델 학습만큼 중요합니다.
환경 구성이 잘못되면 다음과 같은 문제가 발생할 수 있습니다.
- 라이브러리 버전 충돌
- GPU가 인식되지 않아 학습 속도 저하
- 코드 실행 환경이 다른 팀원과 달라 재현 불가능
1.1 환경 구성 목표
- 독립된 Python 실행 환경 구성
- 필수 라이브러리 설치
- GPU(CUDA) 설정
- 코드 작성과 실행을 편리하게 하는 도구 준비
2. 필수 도구 개요
2.1 Anaconda
- Python 환경과 패키지 관리를 한 번에 할 수 있는 툴
- 프로젝트별 가상환경을 만들어 라이브러리 충돌 방지
2.2 Jupyter Notebook
- 웹 브라우저에서 Python 코드를 작성·실행할 수 있는 대화형 환경
- 데이터 분석과 실험 기록에 최적
2.3 GPU (CUDA + cuDNN)
- 대규모 딥러닝 학습 속도를 CPU 대비 수십~수백 배 향상
- NVIDIA GPU 기반 CUDA 환경 필요
3. Anaconda 설치 및 환경 만들기
Anaconda 다운로드: https://www.anaconda.com/download
설치 후 터미널(또는 Anaconda Prompt) 실행
새로운 가상환경 생성
conda create -n ai_env python=3.10
환경 활성화
conda activate ai_env
필수 라이브러리 설치
conda install numpy pandas matplotlib scikit-learn pip install tensorflow torch
4. Jupyter Notebook 설치 및 실행
설치
conda install jupyter
실행
jupyter notebook
브라우저에서
http://localhost:8888
접속새로운 Python 노트북 생성 후 코드 실행 가능
5. GPU 환경 설정 (NVIDIA 기준)
5.1 CUDA와 cuDNN 설치
- CUDA Toolkit 다운로드: https://developer.nvidia.com/cuda-downloads
- cuDNN 다운로드: https://developer.nvidia.com/cudnn
- 설치 후 환경변수에
CUDA_PATH
등록
5.2 GPU 인식 확인 (TensorFlow 예시)
import tensorflow as tf
print("TensorFlow version:", tf.__version__)
print("GPU available:", tf.config.list_physical_devices('GPU'))
출력 예시
TensorFlow version: 2.15.0
GPU available: [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
6. 실습 – 환경 검증 노트북 만들기
Jupyter Notebook에서 다음 코드를 실행해봅니다.
import numpy as np
import tensorflow as tf
import torch
print("NumPy version:", np.__version__)
print("TensorFlow GPU:", tf.config.list_physical_devices('GPU'))
print("PyTorch GPU:", torch.cuda.is_available())
print("PyTorch CUDA version:", torch.version.cuda)
예상 출력
NumPy version: 1.26.4
TensorFlow GPU: [PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU')]
PyTorch GPU: True
PyTorch CUDA version: 12.1
7. 오늘의 핵심 요약
- Anaconda로 프로젝트별 독립 Python 환경 구성
- Jupyter Notebook으로 대화형 코딩 가능
- GPU 설정은 학습 속도에 큰 영향을 미침
- 설치 후 반드시 환경 검증 코드를 실행해 GPU 동작 확인
반응형
'개발 창고 > Server' 카테고리의 다른 글
머신러닝 기본 개념: 지도·비지도·강화학습 쉽게 이해하기 (5) | 2025.08.11 |
---|---|
Kubernetes Secret: 민감 정보 안전하게 관리하기 (2) | 2025.08.09 |
Kubernetes Job: 완전 종료 보장형 일회성 작업 관리 (3) | 2025.08.08 |
Kubernetes CronJob 완전 정복 : 정해진 스케줄에 반복 실행되는 작업을 안정적으로 관리하는 방법 (2) | 2025.08.07 |
Kubernetes Secret 완전 정복 : 민감한 데이터를 안전하게 저장하고 관리하는 방법 (2) | 2025.08.06 |