Using GPT-NeoX (Andonian et al., 2021) based on Megatron-DeepSpeed (Shoeybi et al., 2019; Microsoft, 2020), we train autoregressive decoder-only transformers with a causal language modeling objective. The models use Pre-LN. Each model is trained using the same tokenizer as Black et al. (2022), which was trained exclusively on the Pile via the BPE algorithm (Sennrich et al., 2016). For all models, we train with the AdamW optimizer (Loshchilov and Hutter, 2019) using a batch size of 1104 and a sequence length of 2048. An epoch of training approximately corresponds to \(132,366\) total training steps. As mentioned in the previous section, we reset the optimizer states between datasets. We consider two model sizes 405M and 9.6B parameters (referred to as 10B in this work) including embeddings. We train the smaller models using data parallelism across 46 6 GPU nodes using a micro-batch size of 4. The larger model is trained using tensor parallelism(Shoeybi et al., 2020) spanning six GPUs within a node and pipeline parallelism(Huang et al., 2019) spanning four nodes; that is, each model replica spans 24 GPUs across four nodes. We train this model on 276 nodes using gradient accumulation of 4 steps. Each model uses optimizer sharding via ZeRO-1 (Rajbhandari et al., 2020), activation checkpointing (Chen et al., 2016), activation partitioning across tensor parallel ranks, and mixed precision FP16/FP32 to reduce GPU memory consumption and fully utilize NVIDIA tensor cores during training. We provided an extended description of all hyperparameters in the appendix (Table. 13).
GPT-NeoX(Andonian et al., 2021)를 기반으로 Megatron-DeepSpeed(Shoeybi et al., 2019; Microsoft, 2020)를 사용하여, 우리는 causal language modeling objective를 가진 autoregressive decoder-only transformers를 훈련합니다. 이 모델은 Pre-LN을 사용합니다. 각 모델은 Black et al. (2022)과 동일한 tokenizer를 사용하여 훈련됩니다. 이 tokenizer는 BPE algorithm(Sennrich et al., 2016)을 통해 Pile 전용으로 훈련되었습니다. 모든 모델에 대해 우리는 AdamW optimizer(Loshchilov and Hutter, 2019)를 사용하여 batch size 1104, sequence length 2048로 훈련합니다. 훈련의 한 epoch는 대략 \(132,366\)의 총 훈련 단계에 해당합니다. 이전 섹션에서 언급했듯이 데이터 세트 간에 optimizer 상태를 재설정합니다. 우리는 embedding을 포함하여 405M 및 9.6B parameters(이 작업에서는 10B라고 함)의 두 가지 모델 크기를 고려합니다. 작은 모델은 micro-batch size 4를 사용하여 46 6 GPU 노드에 걸쳐 data parallelism을 사용하여 훈련합니다. 더 큰 모델은 노드 내 6개의 GPU에 걸친 tensor parallelism(Shoeybi et al., 2020)과 4개의 노드에 걸친 pipeline parallelism(Huang et al., 2019)을 사용하여 훈련됩니다. 즉, 각 모델 replica는 4개의 노드에 걸쳐 24개의 GPU에 걸쳐 있습니다. 이 모델은 276개의 노드에서 gradient accumulation 4단계를 사용하여 훈련합니다. 각 모델은 훈련 중에 GPU 메모리 소비를 줄이고 NVIDIA tensor cores를 완전히 활용하기 위해 ZeRO-1(Rajbhandari et al., 2020), activation checkpointing(Chen et al., 2016), tensor parallel ranks에 따른 activation partitioning, 혼합 정밀도 FP16/FP32를 통해 optimizer sharding을 사용합니다. 모든 hyperparameters에 대한 자세한 설명은 부록(표 13)에서 확인할 수 있습니다.
GPT-NeoX(Andonian et al., 2021)를 기반으로 훈련합니다. (쇼이비 등, 2019; Microsoft, 2020)를 기반으로, 우리는 인과적 언어 모델링 목표를 가진 자동 회귀 디코더 전용 트랜스포머를 훈련합니다. 이 모델은 사전-LN을 사용합니다. 각 모델은 Black et al.과 동일한 토큰화기를 사용하여 훈련됩니다. (2022), BPE 알고리즘(Sennrich et al., 2016)을 통해 파일 전용으로 훈련된 (2022). 모든 모델에 대해 AdamW 옵티마이저(Loshchilov and Hutter, 2019)를 사용하여 배치 크기 1104, 시퀀스 길이 2048로 훈련합니다. 훈련의 한 에포크는 대략 \(132,366\)의 총 훈련 단계에 해당합니다. 이전 섹션에서 언급했듯이 데이터 세트 간에 옵티마이저 상태를 재설정합니다. 임베딩을 포함하여 405M 및 9.6B 파라미터(이 작업에서는 10B라고 함)의 두 가지 모델 크기를 고려합니다. 작은 모델은 마이크로 배치 크기 4를 사용하여 46 6 GPU 노드에 걸쳐 데이터 병렬 처리를 사용하여 훈련합니다. 더 큰 모델은 노드 내 6개의 GPU에 걸친 텐서 병렬 처리(Shoeybi et al., 2020)와 4개의 노드에 걸친 파이프라인 병렬 처리(Huang et al., 2019)를 사용하여 훈련됩니다. 즉, 각 모델 복제본은 4개의 노드에 걸쳐 24개의 GPU에 걸쳐 있습니다. 이 모델은 276개의 노드에서 4단계의 그라디언트 누적을 사용하여 훈련합니다. 각 모델은 훈련 중에 GPU 메모리 소비를 줄이고 NVIDIA 텐서 코어를 완전히 활용하기 위해 ZeRO-1(Rajbhandari et al., 2020), 활성화 체크포인팅(Chen et al., 2016), 텐서 병렬 순위에 따른 활성화 파티셔닝, 혼합 정밀도 FP16/FP32를 통해 옵티마이저 샤딩을 사용합니다. 모든 하이퍼파라미터에 대한 자세한 설명은 부록(표 13)에서 확인할 수 있습니다.