Skip to content

yjoonjang/distributed-train

Repository files navigation

distributed-train

distributed-train은 분산 처리 기술을 활용하여 모델 학습의 효율성을 극대화하는 방법을 실습하는 과정입니다.

1. 데이터 분산 처리 (DP & DDP)

  • 1_dp_tutorial.py: **DataParallel(DP)**을 사용한 분산 학습 실습.
  • 2_ddp_tutorial.py: **DistributedDataParallel(DDP)**을 사용한 고성능 분산 학습 실습.
  • 이 두 실습을 통해 데이터 분산 처리 방식의 차이를 이해하고, 각 방식의 장단점을 파악합니다.

2. 모델 분산 처리 (PP, TP, MP)

  • 4_mp_with_accelerate_tutorial.ipynb: Accelerate 라이브러리의 MP을 사용한 분산 학습 실습.

3. Mixed Precision Training

관련 블로그: Mixed Precision Training

  • 3_mixed_precision_tutorial.py: Mixed Precision Training 기법을 사용하여 학습 속도를 높이고 메모리 사용량을 줄이는 방법을 실습합니다.

4. Deepspeed (ZeRO)

관련 블로그: ZeRO-DP

  • 5_zero_dp_tutorial.py: ZeRO-DP 기법을 활용하여 메모리 최적화된 분산 처리 방법을 실습합니다.

말평 실습 with deepspeed

  • teddysum에서 주최하는 일상 대화 요약의 베이스라인 모델인 llama-3-Korean-Bllossom-8BDeepspeed를 적용하여 모델을 fine-tuning 합니다.
  • bash scripts/finetune.sh명령어를 통해 Deepspeed를 활용한 분산 학습을 실습합니다.
  • 이 단계를 통해 Deepspeed의 ZeRO 최적화 기법을 활용한 대규모 모델 학습의 성능 향상을 직접 경험할 수 있습니다.

About

Repository for all distributed training skills

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published