スクラッチからのLLM構築、パート34b――バイグラムからGPT-2へ、ひとつずつコンポーネントを追加(JAX)
本記事は長期連載の集大成。著者はSebastian Raschkaの書籍を元に、ノートのみを頼りにスクラッチからLLMを構築・訓練。PyTorch版のコードを一切参照せず、JAXを使用。当初は入力と同じ系列を出力するだけの「A-to-Aモデル」から出発し、LayerNormやTransformerブロックなどを段階的に追加。最終的にGPT-2 Small相当のモデルをRTX 3090で37時間15分かけて訓練し、損失3.418を達成。これは同等のPyTorchモデル(3.538)や元のGPT-2 small(3.499)を上回る結果となった。