Command Palette
Search for a command to run...
Blagoev Nikolay Ersoy O\u011fuzhan Chen Lydia Yiyu

초록
분산되고 약한 계산 노드(예: 여러 현장 인스턴스)에서 대형 언어 모델(LLM)을 훈련시키는 것은 훈련 비용을 낮추고 모델의 민주화를 가능하게 합니다. 그러나 이 방법의 불가피한 도전 과제는 노드의 고장과 운영자의 스케줄링 정책으로 인해 노드가 교체되는 것입니다. 이로 인해 모델의 일부인 단계(stage)를 잃게 됩니다. 기존의 고장 복구 방식은 주기적으로 전체 모델의 사본을 추가 저장소에 전송하는 체크포인팅(checkpointing) 또는 중복 계산(redundant computation)을 사용하는 것입니다. 이러한 방식은 고장이 발생하지 않는 경우에도 상당한 통신 및/또는 계산 오버헤드를 초래하며, 큰 모델이 있는 환경에서는 확장성이 떨어집니다.본 논문에서는 체크포인팅 없이 실패한 단계를 가장 가까운 이웃 단계들의 가중 평균으로 대체하여 효율적인 복구 방법인 CheckFree를 제안합니다. 최신 기술과 달리, CheckFree는 추가적인 계산이나 저장 공간이 필요하지 않습니다. 그러나 이웃 단계들의 평균을 사용하기 때문에, CheckFree는 중간 단계의 고장만 복구할 수 있습니다. 이를 보완하기 위해, 우리는 처음과 마지막 단계의 충돌도 견딜 수 있도록 순서대로 파이프라인 실행(out-of-order pipeline execution)을 활용한 CheckFree+ 방법을 확장했습니다. 순서대로 파이프라인이 실행됨에 따라, 해당 단계들의 동작은 이웃 단계들에 의해 모방되므로, CheckFree+는 즉시 이웃에서 가중치를 복사하여 복구할 수 있습니다. (de)임베딩 레이어((de)embedding layers)를 복구하기 위해서는, CheckFree+는 이 레이어들을 이웃 단계로 복사하는데, 이는 비교적 작은 저장 공간 오버헤드만 필요로 합니다.우리는 LLaMa 모델(모델 크기는 124M부터 1.5B까지)에서 다양한 고장 빈도(5-10%)로 우리의 방법을 광범위하게 평가했습니다. 저고장률과 중간 고장률(5-10%)의 경우, CheckFree와 CheckFree+는 벽시계 시간(wall-clock time)으로 측정된 수렴성(convergence) 면에서 체크포인팅과 중복 계산보다 12% 이상 우수한 성능을 보였습니다. 우리의 두 제안 모두 다음 링크에서 제공되는 코드를 통해 실행될 수 있습니다: https://github.com/gensyn-ai/CheckFree.