この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。 大規模言語モデルの応用と微調整と最適化の必要性ChatGPT の登場により、大規模言語モデル (LLM) の普及元年が始まりました。BERT、GPT-4、ChatGLM などのモデルの並外れた機能は、汎用人工知能 (AI) と同様の大きな可能性を示しており、複数の業界や分野から広く注目を集めています。 これらの大規模モデルを特定の分野に深く統合し、特定のタスクに適切に適応させるには、タスクの特性に基づいてこれらのモデルをカスタマイズし、微調整することが重要です。 しかし、パラメータの数が膨大であるため、従来の方法で大規模なモデルを調整するのは困難であり、関係者が微調整技術を習得する必要があるだけでなく、莫大なトレーニングコストもかかります。 近年、パラメータ効率の良い微調整 (PEFT) とプロンプトチューニングの手法が登場しました。これらのテクノロジーは、コストが低く、アプリケーションがシンプルで便利であるため、大規模モデルの従来のチューニング方法に徐々に取って代わりつつあります。 この記事では、現在中国語のアプリケーションシナリオで優れたパフォーマンスを発揮するオープンソースの事前トレーニング済み大規模モデルであるChatGLM-6Bを使用して、オープンソースのプロンプトチューニングコードに最小限の変更を加え、第4世代インテル® Xeon®スケーラブル・プロセッサー[1] -インテル®アドバンスト・マトリックス・エクステンション (インテル® AMX) の新しい組み込みAIアクセラレーションエンジンとサポートソフトウェアツールを組み合わせることで、効率的で低コストの大規模モデルの微調整を実現する方法を紹介します。 Intel®アーキテクチャ ハードウェアに基づく微調整および最適化ソリューションこの論文では、次の 3 つの側面を通じて、第 4 世代Intel® Xeon®スケーラブル プロセッサーに基づく ChatGLM の効率的な微調整と最適化を実現します。 1. Intel® AMXにより、モデルの微調整計算速度が大幅に向上AMX は、第 4 世代Intel® Xeon®スケーラブル プロセッサーに組み込まれた行列乗算アクセラレーターであり、BFloat16 (BF16) または INT8 データ型の行列乗算および加算演算をより高速に処理し、モデルのトレーニングと推論のパフォーマンスを大幅に向上させることができます。 △ 図1.インテル® AMXテクノロジーアーキテクチャー 現在、現在の PyTorch フレームワークは、BF16 自動混合精度関数を通じて AMX アクセラレータを自動的に利用できます。 ChatGLM-6B に関しては、オープンソースの微調整コードの autocast_smart_context_manager() 関数も CPU 自動混合精度をサポートしています。 したがって、微調整を開始するときに CPU の自動混合精度を有効にするだけで、 Intel® AMX を直接活用できます。 △ CPUとGPUの自動混合精度サポートは、chatGLM-6Bオープンソースのprompt-tuningディレクトリのtrainer.pyのautocast_smart_context_manager()関数を通じて実装されています。 具体的な方法は、微調整用の train.sh スクリプトを起動するときに、次の変更を加えることです。 2. Intel® MPIライブラリと組み合わせることで、プロセッサアーキテクチャの特性とマルチコア構成を最大限に活用し、CPUの全体的な効率を最大化します。第 4 世代Intel® Xeon®スケーラブル プロセッサーには最大 60 個のコアを搭載できます。これらのコアは内部的に 4 つのクラスターに編成されています。 理論的には、複数のプロセッサ コアがコンピューティング タスクを並列に処理し、データを共有または交換する必要がある場合、同じクラスター内のコア間の通信遅延は低くなります。 したがって、PyTorch フレームワークを使用してモデルを微調整する場合、同じクラスター上のコア リソースを同じ PyTorch インスタンスに割り当てることができ、単一のインスタンスに対してより理想的なコンピューティング効率を実現できます。 さらに、PyTorch の分散データ並列 (DDP) 機能を活用することで、2 つの CPU 上の 8 つのクラスターのコア リソースをプールして、全体的な効率を最大化できます。 図3. 第4世代インテル® Xeon®スケーラブル・プロセッサーの内部クラスター・アーキテクチャ アプリケーション コードからデータ通信までの全体的な簡素化を実現するために、PyTorch フレームワークはさまざまな分散データ並列バックエンドをサポートしています。その中でも、MPI バックエンド メソッドは最適化のニーズを十分に満たすことができます。 △ 図4. PyTorchがサポートする複数の分散データ並列バックエンド(出典:PyTorch [2]公式サイト) ただし、pip または conda 経由でインストールされた事前コンパイル済みの PyTorch バイナリには、MPI バックエンドがデフォルトの機能としてコンパイルされていません。したがって、MPI プロトコル ツール ライブラリをインストールし、手動でコンパイルして MPI バックエンドのサポートを取得する必要があります。 Intel® MPIライブラリ[3]は、MPICH仕様を実装したマルチ構造メッセージパッシングライブラリであり、 Intel®プロセッサ上で最適なパフォーマンスを実現する高度で複雑なアプリケーションの作成、保守、テストに使用されます。 OFI を使用してすべての通信を処理することで、スループットの向上、レイテンシの低減、プログラミングの簡素化を実現します。 Intel® MPI ライブラリに基づいて PyTorch をコンパイルする手順は次のとおりです。 Intel® MPI ライブラリをダウンロードしてインストールします。 PyTorch コンパイル依存パッケージをインストールします。 PyTorch ソースコードをダウンロードし、コンパイルとインストールを完了します。 MPI バックエンド サポート付きの PyTorch を入手したら、ChatGLM プロンプト調整ディレクトリの main.py のコードを 1 行変更するだけです。 dist.init_process_group (backend ='gloo', world_size=1, rank=0) を次のように変更します。 dist.init_process_group(バックエンド='mpi') △ 図5. 修正前のmain.py △ 図6. 変更されたmain.py 3. Xeon® CPU Maxシリーズに統合されたHBMを活用して、大規模モデルの微調整に必要な大きなメモリ帯域幅を満たす大規模なTransformerベースのモデルは、パラメータ、トレーニングデータ、モデルサイズが非常に複雑であるため、通常、メモリ複雑度はO(n 2 )になります。 つまり、これらの大規模モデルでは、より優れた実行パフォーマンスを実現するために、十分に大きなメモリ帯域幅のサポートが必要になります。 64GBのHBM2e高帯域幅メモリを搭載したIntel® Xeon® CPU Maxシリーズ[4]は、CPU上で大規模モデルを効率的に実行するために最大約1TB/sのメモリ帯域幅サポートを提供します。 CPU には HBM が統合されており、3 つのモードで柔軟に構成できます。
ChatGLM-6B の微調整については、実験結果から、 HBM キャッシュ モードが他の 2 つのモードと比較してパフォーマンスと使いやすさの点で優れていることが示されました。 Intel® Xeon® CPU Max シリーズ製品では、前の 2 つの最適化と組み合わせて、次のコマンド ラインから ChatGLM-6B の微調整を開始できます。 △ 図 7. 32 個の物理コアを備えたデュアルコアIntel® Xeon® CPU Max 9462 サーバーでの微調整の開始 最適化結果上記のシンプルなソフトウェアとハードウェアの包括的な最適化により、高価な GPU ハードウェアを使用せずに ChatGLM-6B モデルの高性能な微調整を実現できます。 注: 上記のコード変更には、Python ツールキット accelerate 0.18.0 と transformers 4.28.0 が必要です。 詳しくは記事末尾の[原文を読む]をクリックしてください。 著者について: |
>>: Nvidiaの生成AIスーパーチップGH200はH100の2倍の計算能力を持つ。黄仁訓:それは狂ったように推論できる
人工知能はすでに多くの業界に大きな影響を与えています。調査会社IDCの調査によると、2019年の人工...
[51CTO.comより引用] 本日、アリババクラウドカンファレンス南京サミットが正式に開催され、ま...
少し前に、「テイラー・スウィフトが中国語を披露」する動画がさまざまなソーシャルメディアプラットフォー...
この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...
AIが脳の信号をリアルタイムで解釈できるようになりました!これはセンセーショナルなことではありませ...
システムに閉じ込められた配達員たちは反撃している。最近、海外のテクノロジーメディアWiredは、プラ...
12月10日、「Ruluo Intelligence Conference 2021・Intelli...
Atari ゲームを使って人工知能を研究するのは、ちょっと現実的ではないと感じますか?これでゲームボ...
少し前に、オープンソースのビッグモデル分野に新しいモデル「易」が導入されました。このモデルはコンテキ...
近年、ウェブホスティング業界は劇的に変化しました。そして、業界を永遠に変える可能性のあるいくつかのト...
今年、新たな AI スタートアップ企業がシリコンバレーとビジネス界全体に衝撃を与えました。 Open...