From e14999720017ab7a3df74fb679a08ca1c811e110 Mon Sep 17 00:00:00 2001 From: ViperEkura <3081035982@qq.com> Date: Sun, 19 Jul 2026 15:25:42 +0800 Subject: [PATCH] Add DPO data generation & training; fix checkpoint labels; switch to WSD scheduler; update optimizer ablations in abstract/conclusion --- data/weight_dist_by_component.png | Bin 102791 -> 0 bytes main.tex | 127 +++++++++++++++++++++--------- 2 files changed, 88 insertions(+), 39 deletions(-) delete mode 100644 data/weight_dist_by_component.png diff --git a/data/weight_dist_by_component.png b/data/weight_dist_by_component.png deleted file mode 100644 index fc9c117c11435e76033bb76f53f4479e4e8378ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 102791 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 diff --git a/main.tex b/main.tex index 64c3b27..b66a419 100644 --- a/main.tex +++ b/main.tex @@ -18,7 +18,7 @@ \DeclareMathOperator{\Var}{Var} \title{End-to-End Training of a 1.2B Transformer with AstrAI \\ - \large Data Pipeline, Distributed Training, and BF16 Numerical Stability via Residual Scaling} + \large Data Pipeline, Distributed Training, and Ablations on Optimizer, Initialization, and BF16 Numerical Stability} \author{AstrAI Contributors} \date{} @@ -34,21 +34,24 @@ JSON-driven BBPE preprocessing with multi-strategy packing, HDF5/mmap storage backends, and a companion SFT pipeline ({\sc Alembic}) with MinHash deduplication and LLM-as-Judge scoring. The 24-layer decoder uses GQA, SwiGLU, RoPE, and RMSNorm, trained with a hybrid Muon/AdamW optimizer and -cosine scheduling under DDP/FSDP. A BF16 stability analysis shows that +WSD (Warmup--Stable--Decay) scheduling under DDP/FSDP. A BF16 stability analysis shows that GPT-2 residual scaling substantially reduces per-block residual variance accumulation, keeping post-training variance well below the overflow threshold of standard initialization; empirically this yields a sustained loss advantage over Kaiming initialization throughout training. -Post-training weight distribution analysis across three -checkpoints---varying optimizer, initialization, and training -budget---confirms that residual-scaled projections maintain narrow -distributions throughout training, preserving the numerical stability -established at initialization. An SVD-based effective rank analysis -further reveals that the model operates near its representational -capacity, with attention Q/O projections consistently showing lower -utilization than K/V projections, a pattern stable across all -configurations and consistent with the low-rank structure induced by -grouped query attention. +Systematic ablations show that the hybrid Muon/AdamW optimizer +outperforms pure AdamW on 2D weight matrices, and that GPT-2 residual +scaling yields a sustained loss advantage over both Kaiming and Normal +initialization throughout training. Post-training weight distribution +analysis across three checkpoints---varying optimizer, initialization, +and training budget---confirms that residual-scaled projections +maintain narrow distributions throughout training, preserving the +numerical stability established at initialization. An SVD-based +effective rank analysis further reveals that the model operates near +its representational capacity, with attention Q/O projections +consistently showing lower utilization than K/V projections, a pattern +stable across all configurations and consistent with the low-rank +structure induced by grouped query attention. \end{abstract} % ====================================================================== @@ -60,8 +63,10 @@ model architecture. Data must be preprocessed and stored efficiently, the training loop must handle distributed parallelism, gradient accumulation, checkpointing, and logging---and numerical pitfalls must be diagnosed and fixed. This paper describes the complete workflow using {\sc AstrAI}~\cite{astrai}, an -open-source framework for Transformer training and inference, and highlights a -BF16 precision issue encountered along the way. +open-source framework for Transformer training and inference. Beyond the +pipeline, we conduct systematic ablations on optimizers (hybrid Muon/AdamW +versus pure AdamW) and initializations (GPT-2 residual scaling, Kaiming, +and Normal), and analyse a BF16 precision issue encountered along the way. % ====================================================================== \section{Data Pipeline} @@ -140,10 +145,33 @@ pipeline proceeds as follows: An optional LLM-as-Judge scoring module provides multi-dimensional quality scores that can be used to filter low-quality samples. -An IFD (Instruction Fulfillment Difficulty) analysis is provided in -Appendix~\ref{app:ifd}. +\subsection{DPO Data Generation} -% ====================================================================== +To construct pairwise preference data for Direct Preference +Optimization, we start from a bilingual (Chinese--English) instruction +set curated by the same MinHash pipeline described above. For each +prompt $x$ in the instruction set, we generate two responses: + +\begin{itemize}[nosep] + \item \textbf{Chosen} $y_w$: generated by the reference model + $\pi_{\text{ref}}$, i.e.~the SFT checkpoint after supervised + fine-tuning on the curated instruction data. + \item \textbf{Rejected} $y_l$: generated by the base model + $\pi_{\text{base}}$, i.e.~the model at the end of pretraining + before any instruction tuning. +\end{itemize} + +Both generations use greedy decoding to eliminate sampling variance and +ensure that the preference signal reflects model capability rather than +decoding randomness. The resulting preference pairs +$(x, y_w, y_l)$ are stored in the same JSONL format used for SFT and +fed directly into the DPO training loop +(Section~\ref{sec:dpo}). Because the base model and the reference +model share the same architecture but differ in instruction-following +ability, the contrast between $y_w$ and $y_l$ is sharp and consistent, +which stabilises the DPO gradient updates. All instructions are +balanced across Chinese and English domains to preserve bilingual +alignment capability during preference optimisation. \section{Model Architecture} % ====================================================================== @@ -231,8 +259,8 @@ The model is trained on next-token cross-entropy loss: \mathcal{L} = -\sum_{t=1}^{T} \log P(x_t \mid x_{