大規模なモデルを効率的に展開するにはどうすればよいでしょうか? CMU の最新の LLM 推論と MLSys 最適化テクノロジーに関する 10,000 語のレビュー

大規模なモデルを効率的に展開するにはどうすればよいでしょうか? CMU の最新の LLM 推論と MLSys 最適化テクノロジーに関する 10,000 語のレビュー

人工知能(AI)の急速な発展を背景に、大規模言語モデル(LLM)は、言語関連のタスクにおける優れたパフォーマンスにより、AI分野における重要な原動力となっています。しかし、これらのモデルがさまざまなアプリケーションで普及するにつれて、その複雑さと規模により、導入とサービスに前例のない課題が生じています。 LLM の展開とサービスは、特に低レイテンシと高スループットを必要とするシナリオでは、集中的なコンピューティング強度と膨大なメモリ消費に直面します。LLM サービスの効率を改善し、展開コストを削減する方法は、現在の AI およびシステム分野で解決すべき緊急の問題となっています。

カーネギーメロン大学の Catalyst チームは、最新のレビュー論文で、機械学習システム (MLSys) の観点から、最先端の LLM 推論アルゴリズムからこれらの課題に対処するシステムへの革命的な変化を詳細に分析しています。このレビューの目的は、効率的な LLM サービスの現状と将来の方向性を包括的に理解し、研究者や実務者に貴重な洞察を提供して、効果的な LLM 展開の障壁を克服し、AI の未来を再構築するのに役立つことです。

論文リンク: https://arxiv.org/abs/2312.15234

論文の第一著者はカーネギーメロン大学の博士研究員であるXupeng Miao氏であり、共著者には助教授のTianqi Chen氏とZhihao Jia氏が含まれている。さらに、他の学生著者も CMU Catalyst Group 研究所の出身で、CMU の Zhihao Jia 氏と Tianqi Chen 氏が共同議長を務めています。この研究所は、機械学習アルゴリズム、システム、ハードウェアなどの最適化技術を統合して、自動化された機械学習システムを構築することに取り組んでいます。これまで、当研究所は、LLM大規模モデル関連システムの研究と応用を促進するために、SpecInfer、MLC-LLM、SpotServe [ASPLOS'24]などのオープンソースプロジェクトも立ち上げてきました。研究室ホームページ: https://catalyst.cs.cmu.edu.

概要

このレビューでは、300 以上の関連論文を網羅し、既存の LLM 推論技術を体系的に検討し、アルゴリズムの革新システムの最適化という2 つの側面から紹介します。これを踏まえて、本論文では、既存の研究を明確かつ詳細に分類する方法を設計し、さまざまな方法の利点と限界を強調し、各方法に関する関連論文をカテゴリ別に収集して紹介しています。さらに、この論文では、システムの設計と実装の観点から、現在主流となっているLLM 推論フレームワークの詳細な比較と分析も行っています。最後に、著者は、今後どのように LLM 推論の効率を継続的に向上させていくかについて展望し、技術レベルでの6 つの潜在的な開発方向を提案します。

分類

アルゴリズムの革新

このセクションでは、デコード アルゴリズムアーキテクチャ設計モデル圧縮など、大規模な Transformer モデル推論のネイティブ パフォーマンスの欠陥を改善するために提案されたさまざまなアルゴリズムと手法の包括的な分析を提供します。

デコード アルゴリズム: このセクションでは、図 2 に示す LLM の推論最適化プロセスのためのいくつかの新しいデコード アルゴリズムについて説明します。これらのアルゴリズムは、計算の複雑さを軽減し、生成タスクにおける言語モデル推論の全体的な効率を向上させるように設計されています。

  • 非自己回帰デコード: 既存の LLM の主な制限は、出力トークンを 1 つずつ順番に生成するデフォルトの自己回帰デコード メカニズムです。この問題を解決するための代表的な研究方向は、自己回帰生成パラダイムを放棄し、単語の依存性を破壊し、ある程度の条件付き独立性を仮定し、出力トークンを並列にデコードする非自己回帰デコード[97、104、108、271]である。しかし、このような方法のデコード速度は向上しているにもかかわらず、ほとんどの非自己回帰法の出力品質は、自己回帰法ほど信頼できるものではありません。
  • 投機的推論:もう一つのタイプの作業は、投機的実行[47]のアイデアを通じて並列デコードを達成することです。自己回帰 LLM 推論プロセスの各デコード手順は、次にどのトークンを生成するかを決定する条件分岐を含むプログラム実行ステートメントとして考えることができます。投機的推論[51, 155]は、まず小さなスクラッチモデルを使用して複数段階のデコード予測を行い、次にLLMでこれらの予測を同時に検証して加速を実現します。ただし、LLM に投機的デコードを適用する場合、デコード予測を軽量かつ十分に正確にする方法や、LLM の助けを借りて効率的な並列検証を実現する方法など、いくつかの実際的な課題がまだ残っています。 SpecInfer[177]は、ツリーベースの投機的デコードとツリーアテンションを初めて導入し、低遅延LLMサービスシステムの実装を提案した。このメカニズムは、その後の多くの研究[48、118、168、185、229、236、274、310]にも直接採用された。
  • 早期終了:このタイプの方法は、主にLLMの深い多層構造を使用して、中間層で事前に推論を開始します。中間層の出力は分類器を介して出力トークンに変換できるため、推論のオーバーヘッドが削減されます[117、147、163、167、234、272、282、291、308]。これらは適応コンピューティングとも呼ばれます[68、219]。
  • カスケード推論:このタイプの方法は、異なるサイズの複数のLLMモデルをカスケードして、それぞれ異なる複雑さの推論要求を処理します。代表的な研究には、CascadeBERT [157]とFrugalGPT [53]があります。

建築設計:

  • 構成の縮小: モデル構成を直接縮小します。
  • 注意の簡素化:最近多くの研究が行われており、主に以前の長いシーケンスの効率的な注意メカニズム[240]をLLMに適用してコンテキストを短縮し、KVキャッシュと注意の複雑さを減らし、デコード品質をわずかに低下させています(スライディングウィンドウ[129、299]、ハッシュ[198]、拡張[74]、動的選択など)。表 1 は、最近人気の高いいくつかの方法と以前の研究との対応をまとめたものです。


  • 活性化共有:このタイプの方法は、主に注意計算の中間活性化を共有することで推論メモリのオーバーヘッドを削減します。代表的な研究にはMQA [220]とGQA [32]があります。
  • 条件付きコンピューティング: このタイプの方法は、主に最近人気の Mistrial 7Bx8 モデルなどのスパース専門家混合 (Sparse MoE) モデルを指します。
  • リカレントユニット:TransformerはRNNモデルに取って代わりましたが、注意機構の2次複雑性を考慮して、RWKV [200]、RetNet [235]、状態空間モデル[91、102、103、176]など、リカレントユニット機構をLLMに再導入する試みは諦められていません。

モデル圧縮:

  • 知識蒸留: このタイプの方法では、大規模な教師モデルを監督として使用して、小規模な生徒モデルをトレーニングします。これまでのアプローチのほとんどはホワイトボックス蒸留[106、133、214、233、255]を検討しており、教師モデル全体のパラメータにアクセスする必要がある。 APIベースのLLMサービス(ChatGPTなど)の出現により、いくつかのブラックボックス蒸留モデルが大きな注目を集めています[238、59、273、201、313]。これらのモデルは通常、モデルパラメータが少なく、元のLLM(GPT-4 [195]など)と比較して、さまざまな下流タスクで同等のパフォーマンスを示します。
  • ネットワーク剪定:過去数年間、ネットワーク剪定手法[180, 215, 215]が広く研究されてきましたが、すべての手法がLLMに直接適用できるわけではありません。再トレーニングによって生じる可能性のある高い計算コストを考慮し、剪定によって基礎となるシステム実装の効率向上が達成できるかどうかを評価する必要があります。大まかに分けると構造化剪定[80, 149, 174, 216, 172]と半構造化スパース化[40, 87, 232, 251, 276]などがある。

システム最適化

このセクションでは、LLM の計算セマンティクスを変更せずに LLM 推論を高速化するための LLM 推論システム最適化手法を研究します。この研究の目的は、低ビット量子化、並列コンピューティング、メモリ管理、リクエストスケジューリング、カーネル最適化など、大規模言語モデル推論に使用される基礎システムとフレームワークを改善することで、システム効率を向上させることです。詳細については、元の論文を参照してください。

ソフトウェアフレームワーク

この論文では、最も先進的なオープンソースの GPU ベースの LLM 推論システムのいくつかを詳細に分析し、さまざまな側面から設計と実装の違いをまとめています。

今後の方向性

  • 専用ハードウェア アクセラレータの開発: 生成 LLM サービスの効率を大幅に向上させるには、専用ハードウェア アクセラレータ、特にハードウェアとソフトウェアの共同設計アプローチの開発と改善に大きく依存する可能性があります。たとえば、メモリ ユニットを処理ユニットに近づけたり、LLM アルゴリズムのデータ フローに合わせてチップ アーキテクチャを最適化したりすることで、これらのハードウェア最適化により、ソフトウェア レベルでの LLM 推論の利便性と機会が大幅に向上します。
  • 効率的で効果的なデコード アルゴリズム: より効率的なデコード アルゴリズムを開発すると、サービスの効率が大幅に向上します。リアルタイム アプリケーションをより高速に生成する必要性から、有望な方向性として一般化された投機的推論が挙げられます。これにより、同じ生成品質を維持しながら大幅な高速化を実現できます。 SpecInfer で指摘されているように、一般化された投機的推論では、ドラフト トークンを生成するための小さなモデルは、カスタム関数、リコール メソッド、さらには早期停止メカニズムや非自己回帰デコードなどの任意の高速トークン生成方法に置き換えることができます。
  • 長いコンテキスト/シーケンス シナリオの最適化: アプリケーション シナリオが複雑になるにつれて、より長いコンテキストまたはシーケンスを処理する需要が高まり続けます。長いシーケンスのワークロードを処理する LLM では、アルゴリズムとシステムの両方の課題に対処する必要があります。アルゴリズムの面では、長さの一般化の失敗という問題が依然として存在し、「中間損失」が発生する可能性もあります。現在の解決策は、シーケンスの長さを可能な限り短くし、リコール強化、シーケンス圧縮、キャッシュを通じて関連情報を保存することです。
  • 代替インフラストラクチャの探索: 現在、LLM 分野では Transformer モデルと自己注意メカニズムが主流ですが、代替アーキテクチャの探索は将来の研究の有望な方向性です。たとえば、最近のいくつかの研究では、純粋な MLP (多層パーセプトロン) アーキテクチャを使用して注意メカニズムを置き換える、注意を必要としない方法が検討されており、これにより、LLM 推論最適化の現状が変化する可能性があります。
  • 複雑な環境での展開の調査: LLM アプリケーションが拡大するにつれて、さまざまな複雑な環境での展開の調査と最適化が将来の重要な方向性になります。この調査は、従来のクラウドベースの展開に限定されず、エッジ コンピューティング、ハイブリッド コンピューティング (クラウド + エッジ)、分散コンピューティング、安価なプリエンプティブ リソースも含まれます。
  • 特定の要件への自動適応: アプリケーション固有の要件の多様性により、パラメータ効率の高い微調整、ベクトル データベースの取得、マルチモーダル ロードなど、さまざまな革新的な LLM サービス最適化の機会が生まれます。これらの固有の課題には、LLM サービス テクノロジーを既存の IT インフラストラクチャに自動的かつスムーズに統合し、最適化の領域を LLM ライフサイクル全体に拡張することも必要です。

要約する

一般的に、このレビューは、LLM サービスの最適化に関する現在の研究の包括的な概要を提供するだけでなく、この分野における将来の調査と開発の方向性も示しています。これらの高度なソリューションに関する深い洞察を得ることで、研究者や実務者は、実際のアプリケーションに大規模な言語モデルを展開する際に直面する課題をより深く理解し、対処できるようになります。

<<:  NeRF を放棄し始めていますか?ガウススプラッティングが自動運転のシナリオで人気があるのはなぜですか?

>>: 

推薦する

ディープラーニングに加えて、これらの開発の方向性も理解する必要があります

[[214266]] AI の究極の未来は人間の知能に到達し、それを上回ることであることに疑いの余地...

システムアーキテクト、アルゴリズムエンジニア、人工知能エンジニアはどの程度の数学を学ぶ必要がありますか?

昨日、ネットユーザーから、数学オリンピックを勉強したことがないのにシステムアーキテクトになれるかと質...

8つの一般的なアルゴリズムのアイデアを説明する1つの記事

アルゴリズムとデータ構造は、常にプログラマーの基本的なスキルでした。データ構造の基本インフラストラク...

1行のコードで大規模モデルのパフォーマンスが10%向上、開発者は無料でランチを楽しめる

大規模なモデルを微調整するための「無料ランチ」ができました。たった 1 行のコードで、パフォーマンス...

...

機械学習は簡単になっていますが、ソフトウェアエンジニアリングはまだ難しいです

これはレビュー記事です。 それは偏りもあります。 スペシャリストではなく、物事を作ったり問題を解決し...

AI に役立つ 7 つの優れたオープンソース ツール

ビジネスニーズを予測するには、AI を活用し、研究開発を新たなレベルに引き上げる必要があります。この...

科学者らは脳の信号を読み取り「操作」できる新たな神経電子システムを開発

海外メディアの報道によると、コロンビア大学の研究チームは、脳の信号を「操作」し、病的な結合を阻害でき...

ロボット工学の未来:人間とロボットのコラボレーション

IoT テクノロジー、ロボット、人間が相互運用されると、高度なロボット機能が実現され、新しいアプリケ...

...

オープンソース!香港中文大学、MIT、復旦大学が初のRNA基礎モデルを提案

タンパク質分野とは異なり、RNA 分野の研究では十分な注釈付きデータが不足していることがよくあります...

フロントエンドインテリジェンスは、AIがセキュリティに着地するための第2の足掛かりになりつつある

近年、セキュリティ業界のデータ量は飛躍的に増加しており、バックエンド サーバーはますます多くのデータ...

自動運転の時代が加速するにつれ、支援システムは自動車の標準装備になるかもしれない

近年、自動運転分野で優位に立ち、自動車産業の発展の主導権を握るために、多くの国が自動運転の路上テスト...

現在世界で最も重要な古典的アルゴリズムトップ10

今日の世界では、数え切れないほどの古典的なアルゴリズムが発見または作成されてきました。最も価値あるア...

企業が人工知能を活用してサービスをパーソナライズする方法

パーソナライズされたサービスが大きなメリットをもたらすことは間違いありません。うまく行けば、投資収益...