本文にスキップ
AI News HubLIVE
サイト内リライト4 分で読了

Amazon SageMaker AI でアゼルバイジャン語モデルをトレーニング

記事の要約

Azercell Telecom は AWS 生成型 AI イノベーションセンターと協力し、Amazon SageMaker AI 上でアゼルバイジャン語 LLM をトレーニングするための本番環境対応フレームワークを6週間で構築しました。カーネルレベルの最適化によりトレーニングスループットが23%向上し、ピーク GPU メモリ使用量が58%削減され、カスタムトークナイザーによりエンコード効率が2倍になりました。

ソースAWS Machine Learning Blog著者: Aleksei Iancheruk
Amazon SageMaker AI でアゼルバイジャン語モデルをトレーニング
誤りを報告

訂正窓口はまだ利用できません。記事情報をコピーして保存できます。

訂正案内
本文へ

アゼルバイジャン最大の通信事業者である Azercell Telecom は、AWS 生成型 AI イノベーションセンターとの6週間の協業を通じて、Amazon SageMaker AI 上でアゼルバイジャン語の大規模言語モデル(LLM)を構築するための本番環境対応フレームワークを確立しました。このプロジェクトは、形態的に豊かでありながらトレーニングデータが限られている言語に基盤モデルを適応させるという課題に対処するものです。チームは、ml.p5.48xlarge インスタンス上でのカーネルレベルの最適化により、トレーニングスループットを23%向上させ、ピーク GPU メモリ使用量を58%削減しました。さらに、カスタムトークナイザーにより単語あたりのトークン数が半減し、同じコンテキストウィンドウ内で処理できるアゼルバイジャン語テキストの量が実質的に2倍になりました。

フレームワークは、トークナイザー開発、継続事前トレーニング(CPT)、LoRA による教師ありファインチューニングという3つの連続するステージで構成されています。各ステージの成果物が次のステージへの入力となります。トークナイザーステージでは、ベースラインの英語最適化トークナイザー、語彙拡張、カスタム単言語トークナイザーの3つのアプローチを評価しました。その結果、カスタム単言語トークナイザーが最も優れた性能を示し、単語あたりのトークン数をベースラインの3.22から1.59に削減し、エンコード効率を2倍にしました。これは、Llama 3.2 の128kトークンのコンテキストウィンドウにおいて、ベースラインでは約4万語しか収まらないのに対し、最適化されたトークナイザーでは約8万語を収められることを意味します。カスタムトークナイザーがモデリング品質を犠牲にしていないことを確認するため、チームはパープレキシティではなく Bits-Per-Byte(BPB)を使用しました。BPB はバイトレベルで予測品質を測定するため、語彙の違いを正規化できます。検証セットでの BPB は、カスタムトークナイザーを使用したモデルが0.5795、ベースラインが0.6830であり、品質を損なうことなくエンコード効率が向上したことが確認されました。

継続事前トレーニングステージでは、Llama 3.2 1B モデルを Amazon SageMaker AI トレーニングジョブ上で分散トレーニングと Liger Kernel の最適化を用いてアゼルバイジャン語に適応させました。チームは ml.p4d.24xlarge(NVIDIA A100 GPU 8基)と ml.p5.48xlarge(NVIDIA H100 GPU 8基)でベンチマークを実施しました。分散トレーニングには PyTorch の Fully Sharded Data Parallel(FSDP)を採用し、パラメータ、勾配、オプティマイザの状態を GPU 間でシャーディングし、計算に必要な部分だけを動的に収集します。ml.p4d.24xlarge では、FSDP により GPU あたりのモデル状態メモリが9.23 GBから1.17 GBに削減され、より大きなバッチサイズのための余裕が生まれました。Liger Kernel は、一般的な LLM 操作を Triton ベースでメモリ効率よく実装し、複数の操作を単一の GPU カーネル起動に融合することで中間メモリ割り当てを削減します。数値結果は同等であり、統合にはモデルインスタンス化前に1回の関数呼び出しでパッチを適用するだけで済み、FSDP とも変更なしで連携します。

最適化の効果は顕著です。ml.p4d.24xlarge では、最適化スタック全体で最大バッチサイズが DDP の2から14に増加し、7倍の改善となりました。ml.p5.48xlarge では、FSDP に Liger Kernel を追加することで、ピーク GPU メモリ(アクティベーション含む)が64 GBから27 GBに58%削減され、GPU あたりのスループットが63,771トークン/秒から78,319トークン/秒に23%向上しました。事前トレーニングの設定では、カスタムアゼルバイジャン語トークナイザー(語彙数10万)を使用し、トレーニングコーパスは約25億トークンに相当します。トレーニングスクリプトは、設定可能なコンテキストウィンドウ、BFloat16 混合精度、AdamW を用いたコサイン学習率スケジューリング、およびフォールトトレランスのための Amazon S3 への自動チェックポイント保存をサポートします。コンテキストウィンドウは2,048トークンに設定されました。これは、トークン化後のトレーニングサンプルの90%以上がこの長さを下回ったためですが、設定はモデルのネイティブな128kトークン制限までサポートしています。

語彙に新しいトークンを追加する場合、CPT は2段階のアプローチを取ります。第1段階ではモデルのバックボーンを凍結し、埋め込み層のみをトレーニングします。これにより、事前トレーニング済みの知識を損なうことなく、新しいトークン表現をモデルの既存の内部空間に適応させます。第2段階ではパラメータを解凍して完全なトレーニングを行い、モデルがアゼルバイジャン語のパターンを深く学習できるようにします。トレーニングには ml.p4d.24xlarge インスタンス2台(合計16基の A100 GPU)を使用し、FSDP と Liger Kernel の最適化を組み合わせました。第1段階の学習率は0.0032で5,000ステップ、約3.2時間。第2段階の学習率は0.0024で15,000ステップ、約11.9時間でした。有効バッチサイズは224(GPU あたり14 × 16 GPU)で、2,048トークンのコンテキストでは各ステップが約45万トークンを処理し、1エポックあたり約4.3時間と推定されます。

教師ありファインチューニングステージでは、Low-Rank Adaptation(LoRA)を適用して事前トレーニング済みモデルを対話アシスタントに変換します。CPT 後のモデルはアゼルバイジャン語の次のトークンを流暢に予測できますが、対話構造を理解していないため、質問に対しては役立つ回答ではなく、もっともらしい続きを生成するだけです。LoRA は、事前トレーニング済みの重みを凍結し、モデルの注意層とフィードフォワード層に注入された小さな低ランク分解行列をトレーニングすることで、このギャップを効率的に埋めます。構成はランク64、アルファ28、ドロップアウト0.05、ターゲットモジュールは q、k、v、o 投影と gate、up、down 投影、最大シーケンス長1,024です。このコンパクトな設計により、ファインチューニングは単一の GPU で実行でき、計算コストが大幅に削減されます。

トレーニングパイプライン全体は、Amazon SageMaker Unified Studio から SageMaker AI トレーニングジョブとして起動され、各ジョブはカスタムトレーニングスクリプトを指します。ジョブは新しい Amazon EC2 インスタンスをプロビジョニングし、完了後に終了するため、アイドルクラスタのコストなしで実際の計算時間のみを支払います。トレーニングデータとモデルアーティファクトは Amazon S3 に保存され、トレーニングメトリクスは TensorBoard で追跡され、システムメトリクスは Amazon CloudWatch で収集されます。このソリューションは PyTorch、Hugging Face Transformers、Liger Kernel などのオープンソースツールに基づいて構築されています。チームは、分散トレーニングは1B規模の概念実証には必須ではなかったものの、Azercell がより大規模なモデルに拡張する際には不可欠になると指摘しています。このフレームワークは、低リソースまたは形態的に複雑な言語の LLM トレーニングのための再利用可能な青写真を提供します。

要点と分析を開く

記事インテリジェンス

エンジニア上級

要点

  • カスタムトークナイザーにより単語あたりのトークン数が3.22から1.59に減少し、コンテキストウィンドウの実効容量が2倍に。
  • FSDP と Liger Kernel の最適化により、ml.p5.48xlarge でピーク GPU メモリが58%削減され、スループットが23%向上。
  • 2段階の継続事前トレーニングと LoRA ファインチューニングにより、低リソースで形態的に豊かな言語への効率的な適応を実現。

要点と分析は自動生成され、誤りを含む場合があります。原典をご確認ください。