大規模モデルのトレーニングと展開のための主要なテクノロジー

2016 年から現在まで、モデル サイズは 18 か月ごとに 40 倍、2019 年から現在まで 18 か月ごとに 340 倍に増加しています。

しかし、それに比べてハードウェアの成長率は遅く、2016 年以降、GPU の性能は 18 か月ごとに 1.7 倍に増加しており、モデルサイズとハードウェアの成長の差は徐々に拡大しています。大量のメモリ使用量、大量のコンピューティング電力消費、高コストなどのボトルネックが、AIGC 業界の急速な発展を大きく妨げています。これに関連して、Luchen Technology の創設者である You Yang 氏は、分散型トレーニングが不可欠であると考えています。

写真:スピーチをするLuchen Technology創設者You Yang氏

基本的な大規模モデル構造は、モデル トレーニングのインフラストラクチャを提供します。

まず、Google が開拓した Transformer 大型モデルは、今日のすべての大規模モデルの中で最も基本的なアーキテクチャです。Transformer は現在、MLP、CNN、RNN に次いで 4 番目に重要な深層学習アルゴリズム アーキテクチャとなっています。

第 2 に、Google は、最初の大規模以前のモデルである BERT をリリースし、大規模な水平モデルを事前トレーニングするトレンドを引き起こしました。BERT は、従来の一方向言語モデルを使用したり、次のように 2 つの一方向言語モデルを組み合わせたりしないことを強調しました。浅いスプライシング手法は事前認識トレーニングに使用されますが、新しいマスク言語モデル (MLM) は深い双方向言語表現を生成するために使用されます。

第三に、ViT Google は、Transformert を使用した最初の大規模ビジュアル モデルを提案しました。ViT は、画像タスクを実行するための CNN パワー ハイブリッド メソッドの代わりにビジュアル トランスフォーマーとして使用されます。著者は、事前認識トレーニングをさらに行うことでパフォーマンスが向上すると仮説を立てています。他の既存モデルからの拡張性があり、テクニカル モデルと比較して、ViT は比較的拡張性が高いです。

第 4 に、Google は Transformer のフィードフォワード ネットワーク (FFN) レイヤーを MoE レイヤーに置き換え、MoE レイヤーをデータ並列処理と巧みに組み合わせました。データ並列トレーニング中に、モデルはトレーニング クラスターに数回コピーされました。MoE の機能は次のとおりです。マルチチャネルデータ並列処理にAl-to-Al通信を導入することで実現。

これらの基本的な大型モデル構造に基づいて、ここ数年の大型モデルの開発プロセスでは、GPT-3、T5、Swin Transformer、Switch Transformer など、いくつかの画期的な大型モデルが登場しました。

GPT-3: OpenAI によってリリースされた最初の数百億規模の大規模モデルは非常に画期的なものになるはずです。今日の大規模モデルはすべて GPT-3 に対してベンチマークされています。GPT-3 は依然として独自の一方向言語モデル認識トレーニングを続けています。ただし、今回はモデル サイズが 1,750 億に増加し、45 TB のデータがトレーニングに使用されました。

T5 (Text-to-Text Transfer Transformer): Google T5 は、すべての NLP タスクを Text-to-Text (テキストからテキスト) タスクに変換します。その最も重要な役割は、NLP 事前トレーニング分野全体に共通のフレームワークを提供し、すべてのタスクを 1 つの形式に変換することです。

Swin Transformer: Microsoft Asia Research が提案した Swin Transformer の新しいビジュアル Transformer で、コンピュータ ビジョンの一般的なバックボーンとして使用できます。視覚エンティティのスケールの大きな違いや、テキスト内の単語と比較した画像内のピクセルの解像度の高さなど、ドメイン間の違いにより、Transformer を言語から視覚に適応させるという課題が生じます。

1兆を超える規模の疎な大規模モデルSwitch Transformer:1兆を超えるパラメータを含む言語モデルを訓練できる技術で、パラメータ数をGPT-3の1,750億から1.6兆まで高速で直接増加させます。 Google によって以前に開発された言語モデル T5-XXL は 4 倍高速です。

さらに、より画期的な大規模モデルは、Pathways 上に実装された大規模オラクル モデル PaLM です。

分散フレームワーク Pathways: Pathways の多くの重要なアイデアは、TPU 計算を表現および実行するための XLA、分散 CPU 計算を表現および実行するための TensorFlow グラフとエグゼキュータ、Python プログラミング フレームワークに基づく JAX、および TensorFlow APL を効果的に使用することにより、既存のシステムから得られます。これらのモジュールを使用すると、既存の水平モデルに多くの変更を加えることなく Pathways を実行できます。

PaLM モデル: PaLM で目を引くのは、モデルに 5,400 億のパラメーターがあり、新世代 AI フレームワーク Pathways を使用してトレーニングされていることです。モデル構造は最適化の多くの側面も提供しており、これらの技術的な最適化には、ReLU の代わりに SwiGLU アクティベーション機能、並列レイヤー技術 (Parallel Layers)、マルチクエリ アテンション (Multi-Query Attendance) など、既存の優れた研究成果が活用されています。エンコーディング(RoPE)、共有入力および出力ワード埋め込み、バイアスパラメータの削除(バイアスなし)など。

PaLM モデルも、Transformer に Decoder 部分を重ねて形成されており、5,400 億個のパラメーターを持ち、新世代 AI フレームワーク Pathways を使用してトレーニングされています。

大規模分散トレーニングの現在の主な技術ルート

大規模な分散トレーニングの現在の主な技術ルートは、並列トレーニング技術です。分散トレーニング並列テクノロジーは、トレーニング プロセス中に GPU クラスター (複数のマシンと複数のカード) を使用することで、ニューラル ネットワークのトレーニング速度を向上させます。

データの並列処理: 同じセットアップとモデルが複数回複製され、そのたびにデータの異なるコピーが供給され、処理が並列して実行され、各トレーニング ステップの最後にすべてのコピーが同期されます。

テンソル並列処理: 各テンソルは複数のチャンクに分割されるため、テンソルの各シャードは指定された GPU に配置されます。処理中、各シャードは別の GPU で並列処理され、結果はステップの最後に同期されます。

パイプライン並列処理: モデルは複数の GPU に垂直に (ボリュームごとに) 分割されるため、単一 GPU には 1 つ以上のモデル レイヤーのみが配置され、各 GPU はパイプラインの異なるステージを並行して処理し、その一部を処理します。バッチのデータ。

2021 年に設立された Luchen Technology は、「AI の生産性の解放」に取り組むグローバル企業です。主な事業は、分散型 AI 開発および展開プラットフォームを構築することで、企業が大規模モデルの実装コストを削減し、トレーニングと推論の効率を向上できるよう支援することです。

Luchen のオープンソース インテリジェント システム アーキテクチャ Colossal-AI テクノロジには 2 つの大きな特徴があります: 1 つは、導入コストを最小限に抑え、大規模な AI モデルのトレーニングと導入の効率を大幅に向上させることができます。ラップトップで簡単なソース コードを記述するだけで、Colossal-AI をクラウドやスーパーコンピューターに自動的に展開できます。

通常、大規模なモデル (GPT-3 など) のトレーニングには 100 個を超える GPU が必要ですが、Colossal-AI を使用すると必要なコンピューティング リソースは半分だけです。ローエンドのハードウェアでも、Colossal-AI は 2 ~ 3 倍大きなモデルをトレーニングできます。

2 つ目は、コンピューティング効率を最大化することであり、並列コンピューティング テクノロジのサポートにより、Colossal-AI はハードウェア上で AI モデルをトレーニングし、パフォーマンスを大幅に向上させます。Luchen オープンソースの目標は、大規模な AI モデルのトレーニング速度を 10 倍以上高速化することです。

おすすめ

転載: blog.csdn.net/bruce__ray/article/details/131024027