Skip to main content
QUICK REVIEW

[논문 리뷰] Check-N-Run: A Checkpointing System for Training Deep Learning Recommendation Models

Assaf Eisenman, Kiran Kumar Matam|arXiv (Cornell University)|2020. 10. 17.
Stochastic Gradient Optimization Techniques참고 문헌 38인용 수 18
한 줄 요약

Check-N-Run은 페이스북에서 대규모 딥러닝 추천 모델을 훈련하기 위한 확장 가능한 체크포인팅 시스템으로, 증분 체크포인팅과 적응형 양자화를 조합하여 쓰기 대역폭을 6–17배 감소시키고 스토리지 용량을 2.5–8배 감소시키며 훈련 정확도를 손상시키지 않는다. 이는 산업 규모의 훈련 워크로드에서 장애 복구 및 온라인 모델 업데이트에 필수적인 빈번한, 비용 효율적인 체크포인팅을 가능하게 한다.

ABSTRACT

Checkpoints play an important role in training long running machine learning (ML) models. Checkpoints take a snapshot of an ML model and store it in a non-volatile memory so that they can be used to recover from failures to ensure rapid training progress. In addition, they are used for online training to improve inference prediction accuracy with continuous learning. Given the large and ever increasing model sizes, checkpoint frequency is often bottlenecked by the storage write bandwidth and capacity. When checkpoints are maintained on remote storage, as is the case with many industrial settings, they are also bottlenecked by network bandwidth. We present Check-N-Run, a scalable checkpointing system for training large ML models at Facebook. While Check-N-Run is applicable to long running ML jobs, we focus on checkpointing recommendation models which are currently the largest ML models with Terabytes of model size. Check-N-Run uses two primary techniques to address the size and bandwidth challenges. First, it applies incremental checkpointing, which tracks and checkpoints the modified part of the model. Incremental checkpointing is particularly valuable in the context of recommendation models where only a fraction of the model (stored as embedding tables) is updated on each iteration. Second, Check-N-Run leverages quantization techniques to significantly reduce the checkpoint size, without degrading training accuracy. These techniques allow Check-N-Run to reduce the required write bandwidth by 6-17x and the required capacity by 2.5-8x on real-world models at Facebook, and thereby significantly improve checkpoint capabilities while reducing the total cost of ownership.

연구 동기 및 목표

  • 산업 환경에서 테라바이트 규모의 추천 모델을 체크포인팅할 때 발생하는 높은 스토리지 및 네트워크 대역폭 비용을 해결하기 위해.
  • 모델 정확도를 떨어뜨리지 않으면서도 빈번한 체크포인팅을 통해 더 빠른 장애 복구 및 실시간 온라인 추론 업데이트를 가능하게 하기 위해.
  • 쓰기 대역폭과 지속적 스토리지 요구량을 최소화하여 대규모 머신러닝 훈련의 총소유비용(TCO)을 낮추기 위해.
  • 다중 GPU 클러스터를 통해 확장되며 수일 또는 수주간 지속되는 거대한 추천 모델의 확장 가능하고 신뢰할 수 있는 훈련을 지원하기 위해.
  • 정확도를 유지하면서 자원 소비를 크게 줄이는 프로덕션 준비 상태의 체크포인팅 시스템을 제공하기 위해.

제안 방법

  • 추천 모델에서 모델 크기의 주요 원인인 임bedding 테이블의 변경된 부분만 추적하고 저장함으로써 증분 체크포인팅을 적용한다.
  • 장애 복구 빈도에 따라 동적으로 비트 폭(예: 8비트, 4비트)을 선택하는 적응형 양자화를 활용하여 체크포인트 크기를 최소화한다.
  • 최근의 전체 체크포인트와 증분 델타만 유지하는 간헐적 증분 정책을 사용하여 복구 효율성과 스토리지 증가 사이의 균형을 이룬다.
  • 파iped라인 아키텍처를 통해 훈련과 체크포인팅을 분리하여, 훈련을 멈추지 않고 배경에서 체크포인팅 처리를 수행할 수 있도록 한다.
  • 증분 변경 사항과 양자화 파라미터를 추적하기 위해 메타데이터 구조를 통합하여 복구 시 정확한 모델 재구성 가능성을 보장한다.
  • 분산 훈련의 동기적이고 배치 기반의 성격을 활용하여 각 훈련 배치의 끝에서 일관된 체크포인트를 생성한다.

실험 결과

연구 질문

  • RQ1생산 환경에서 테라바이트 규모의 딥러닝 추천 모델을 체크포인팅할 때의 오버헤드를 어떻게 줄일 수 있는가?
  • RQ2대규모 머신러닝 훈련에서 모델 정확도를 유지하면서 쓰기 대역폭과 스토리지 용량을 최소화할 수 있는 기법은 무엇인가?
  • RQ3적응형 양자화와 증분 체크포인팅을 조합하면 정확도 저하 없이 대역폭과 용량 절감을 크게 달성할 수 있는가?
  • RQ4체크포인팅 빈도와 양자화 비트 폭의 선택이 복구 비용과 자원 소비 사이의 트레이드오프에 어떻게 영향을 미치는가?
  • RQ5다양한 체크포인팅 정책(예: 전체, 증분, 연속)이 시간이 지남에 따라 쓰기 대역폭과 스토리지 증가에 미치는 영향은 어떠한가?

주요 결과

  • 체크포인트에서 복원이 최대 한 번 이내로 예상되는 훈련 작업에서 Check-N-Run은 평균 쓰기 대역폭을 최대 17배 감소시키고 최대 스토리지 용량을 최대 8배 감소시킨다.
  • 20회 이상의 복원 이벤트가 발생하는 고장 빈도 환경에서도 시스템은 평균 쓰기 대역폭을 6배 감소시키고 피크 스토리지 용량을 2.5배 감소시킨다.
  • 간헐적 증분 체크포인팅 정책은 시간이 지남에 따라 체크포인트 크기를 안정화시키며 12개의 간격 동안 전체 체크포인팅 대비 33%의 쓰기 대역폭 감소를 달성한다.
  • 장애 빈도에 기반한 비트 폭 선택을 통한 적응형 양자화는 정확도를 유지하면서도 스토리지 및 대역폭 절감에 기여한다.
  • 증분 체크포인팅과 양자화의 조합은 네트워크 및 스토리지 자원 요구량을 최소화하여 대규모 모델 훈련의 총소유비용(TCO)을 감소시킨다.
  • 증분 인덱스와 양자화 파라미터에서 비롯된 메타데이터 오버헤드는 절감 효과와 비선형 비례 관계를 보이며, 향후 최적화 여지가 있음을 시사한다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.