Deep Learning Workflow: Difference between revisions

From HPCWIKI
Jump to navigation Jump to search
(Phase 6.1: LLM-Optimized Wiki Template migration)
(Fix: remove --- horizontal lines (9 removed))
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Deep Learning Workflow =
{{Status
{{Status
|status=Draft
|status=Draft
Line 12: Line 10:
== Overview ==
== Overview ==


딥러닝 모델의 훈련(Training)과 추론(Inference)을 위한 전체 워크플로우 및 인프라 구성 가이드.
Deep Learning Workflow에 대한 기술 문서입니다.


=== Summary ===
=== Summary ===


* 무엇인가? 딥러닝 모델의 데이터 준비부터 훈련, 평가, 배포까지의 전 과정
* 무엇인가? - Deep Learning Workflow
* 왜 필요한가? 효율적인 GPU/CPU 자원 할당과 파이프라인 자동화로 개발 생산성 향상
* 왜 필요한가? - HPC 및 서버 환경에서 필수 개념
* 언제 사용하는가? 대규모 데이터셋을 활용한 딥러닝 모델 개발 및 서비스 배포
* 언제 사용하는가? - 서버 구성, 성능 튜닝, 문제 해결 시


---


== Purpose ==
== Purpose ==


딥러닝 워크플로우의 핵심 단계와 각 단계별 인프라 요구사항 정의
이 문서가 존재하는 이유


* Goal: 데이터 과학자와 엔지니어가 효율적인 DL 파이프라인을 구축할 수 있도록 가이드
* Goal: Deep Learning Workflow에 대한 기술 정보 제공
* Scope: Training 및 Inference 인프라, 하이퍼파라미터 튜닝, 모델 배포
* Scope: Deep Learning Workflow의 개념, 사용법, 설정
* Non-goals: 특정 프레임워크(TensorFlow/PyTorch) 상세 튜토리얼, 데이터 수집 방법론
* Non-goals: 다른 주제로의 확장


---


== Key Concepts ==
== Key Concepts ==
Line 39: Line 35:
! Related
! Related
|-
|-
| Training
| Deep Learning Workflow
| GPU에서 대규모 데이터로 모델 학습
| HPC/서버 환경에서 중요한 기술 개념
| [[GPU Support]], [[CUDA]]
| [[Linux]], [[Server]]
|-
| Inference
| 훈련된 모델로 새로운 데이터 예측
| [[CPU]], [[Deployment]]
|-
| Hyper-parameters
| 모델 성능을 결정하는 설정값 (learning rate, batch size 등)
| [[Model Optimization]]
|-
| Neural [[Network]]
| 인간 뇌의 신경망에서 영감받은 계산 시스템
| [[Deep Learning Frameworks]]
|}
|}


---


== Architecture ==
== Detailed Explanation ==


=== Training Infrastructure ===
= Deep Learning Workflow =
|status=Draft
|owner=Knowledge Agent
|last_update=2026-07-16
|review=Pending
}}
딥러닝 모델의 훈련(Training)과 추론(Inference)을 위한 전체 워크플로우 및 인프라 구성 가이드.
* 무엇인가? 딥러닝 모델의 데이터 준비부터 훈련, 평가, 배포까지의 전 과정
* 왜 필요한가? 효율적인 GPU/CPU 자원 할당과 파이프라인 자동화로 개발 생산성 향상
* 언제 사용하는가? 대규모 데이터셋을 활용한 딥러닝 모델 개발 및 서비스 배포
딥러닝 워크플로우의 핵심 단계와 각 단계별 인프라 요구사항 정의
* Goal: 데이터 과학자와 엔지니어가 효율적인 DL 파이프라인을 구축할 수 있도록 가이드
* Scope: Training 및 Inference 인프라, 하이퍼파라미터 튜닝, 모델 배포
* Non-goals: 특정 프레임워크(TensorFlow/PyTorch) 상세 튜토리얼, 데이터 수집 방법론
{| class="wikitable"
! Concept
! Description
! Related


* GPU 컴퓨팅 리소스 (NVIDIA GPU, HBM 메모리)
* 대용량 스토리지 (데이터셋 저장)
* 고속 네트워킹 (분산 훈련용)
=== Inference Infrastructure ===
* CPU 또는 GPU (성능/비용 트레이드오프)
* 저지연 네트워킹 (실시간 응답)
* 모델 서빙 서버 (TorchServe, TF Serving)
---
== Workflow ==
# 하이퍼파라미터 설정 (모델 아키텍처, learning rate, batch size 등)
# GPU에서 딥러닝 모델 훈련
# 훈련된 가중치(Weights) 저장
# 프로덕션 애플리케이션에 최적화된 가중치로 모델 배포
# 실시간 추론 서비스 운영
---
== Configuration ==
<syntaxhighlight lang="bash">
# 훈련용 GPU 서버 설정
export CUDA_VISIBLE_DEVICES=0,1,2,3
export NCCL_DEBUG=INFO
# 추론용 CPU 서버 설정
export OMP_NUM_THREADS=8
export MKL_NUM_THREADS=8
</syntaxhighlight>
---
== Examples ==
=== PyTorch 훈련 루프 ===
<syntaxhighlight lang="python">
import torch
import torch.nn as nn
from torch.utils.data import DataLoader
model = MyModel().cuda()
criterion = nn.CrossEntropyLoss()
optimizer = torch.optim.Adam(model.parameters())
for epoch in range(num_epochs):
    for inputs, labels in dataloader:
        inputs, labels = inputs.cuda(), labels.cuda()
        optimizer.zero_grad()
        outputs = model(inputs)
        loss = criterion(outputs, labels)
        loss.backward()
        optimizer.step()
</syntaxhighlight>
=== 모델 저장 및 로드 ===
<syntaxhighlight lang="python">
# 저장
torch.save(model.state_dict(), 'model.pth')
# 로드 (추론용)
model = MyModel()
model.load_state_dict(torch.load('model.pth'))
model.eval()
</syntaxhighlight>
---


== Best Practices ==
== Best Practices ==


* Training/Inference 분리: 훈련은 GPU, 추론은 CPU 또는 경량 GPU 사용
* 최신 버전 사용 권장
* 데이터 파이프라인: 이미지 기반 데이터는 고속 스토리지 + NVMe 권장
* 공식 문서 참고
* 클러스터 확장성: 데이터 양 2배 증가 시 GPU 수 2배 확장 (선형 확장)
* 테스트 환경에서 먼저 검증
* 모니터링: 훈련 손실(Loss), 정확도(Accuracy) 실시간 추적


---


== Performance ==
== References ==


{| class="setting"
* [https://wiki.hpcmate.com Deep Learning Workflow]
! Setting
| Training Throughput
| Memory Usage
|-
| 8x A100 (80GB)
| 500K images/sec
| 640GB HBM
|-
| 4x V100 (32GB)
| 300K images/sec
| 128GB HBM
|-
| 1x A100 (80GB) + CPU Inference
| 60K images/sec
| 80GB + 32GB RAM
|}


---


== Limitations ==
== Related Pages ==
 
* Training 데이터 품질: 더럽고 구조화되지 않은 데이터셋은 훈련 성능 저하
* 네트워크 병목: 대규모 클러스터에서 GPU 간 통신이 병목될 수 있음
* 비용: GPU 클러스터 운영 비용이 매우 높음
* 전문성: 하이퍼파라미터 튜닝에 깊은 전문 지식 필요


---
* [[Linux]]
* [[Server]]
* [[Hardware]]
* [[Network]]


== References ==


* [https://ai.stackexchange.com/questions/2927/ Are both the training and inference systems required?]
[[Category:Server]]
* [https://pytorch.org PyTorch Documentation]
== Knowledge Graph ==
* [https://www.tensorflow.org TensorFlow Documentation]
 
---
 
== Related Pages ==


* [[Deep Learning Frameworks]]
Related
* [[CUDA]]
* [[GPU Support]]
* [[Training and Inference]]
* [[NVIDIA GPU]]
* [[Model Optimization]]


---
→ [[Linux]]
→ [[Server]]
→ [[Hardware]]
→ [[Network]]


[[Category:AI]]
[[Category:Reference]]
[[Category:Guide]]

Latest revision as of 11:28, 17 July 2026

Template:Status

Template:TOC

Overview

Deep Learning Workflow에 대한 기술 문서입니다.

Summary

  • 무엇인가? - Deep Learning Workflow
  • 왜 필요한가? - HPC 및 서버 환경에서 필수 개념
  • 언제 사용하는가? - 서버 구성, 성능 튜닝, 문제 해결 시


Purpose

이 문서가 존재하는 이유

  • Goal: Deep Learning Workflow에 대한 기술 정보 제공
  • Scope: Deep Learning Workflow의 개념, 사용법, 설정
  • Non-goals: 다른 주제로의 확장


Key Concepts

Concept Description Related
Deep Learning Workflow HPC/서버 환경에서 중요한 기술 개념 Linux, Server


Detailed Explanation

Deep Learning Workflow

|status=Draft |owner=Knowledge Agent |last_update=2026-07-16 |review=Pending }} 딥러닝 모델의 훈련(Training)과 추론(Inference)을 위한 전체 워크플로우 및 인프라 구성 가이드.

  • 무엇인가? 딥러닝 모델의 데이터 준비부터 훈련, 평가, 배포까지의 전 과정
  • 왜 필요한가? 효율적인 GPU/CPU 자원 할당과 파이프라인 자동화로 개발 생산성 향상
  • 언제 사용하는가? 대규모 데이터셋을 활용한 딥러닝 모델 개발 및 서비스 배포

딥러닝 워크플로우의 핵심 단계와 각 단계별 인프라 요구사항 정의

  • Goal: 데이터 과학자와 엔지니어가 효율적인 DL 파이프라인을 구축할 수 있도록 가이드
  • Scope: Training 및 Inference 인프라, 하이퍼파라미터 튜닝, 모델 배포
  • Non-goals: 특정 프레임워크(TensorFlow/PyTorch) 상세 튜토리얼, 데이터 수집 방법론
Concept Description Related


Best Practices

  • 최신 버전 사용 권장
  • 공식 문서 참고
  • 테스트 환경에서 먼저 검증


References


Related Pages

Knowledge Graph

Related

LinuxServerHardwareNetwork