AWSが開発した目的に特化したアクセラレータを使用することで、機械学習ワークロードのエネルギー消費を最大90%削減できます
Using AWS-developed purpose-specific accelerators can reduce energy consumption of machine learning workloads by up to 90%.
従来、機械学習(ML)エンジニアは、モデルのトレーニングとデプロイメントのコストと性能のバランスを重視してきました。最近では、持続可能性(エネルギー効率)が顧客にとって追加の目的になっています。これは重要です。なぜなら、MLモデルのトレーニングを行い、トレーニングされたモデルを使用して予測(推論)を行うことは、非常にエネルギーを消費するタスクであるためです。さらに、私たちの周りのアプリケーションの多くがMLで充満しており、新しいMLパワードアプリケーションが毎日構想されています。代表的な例として、OpenAIのChatGPTがあります。これは最新の大規模言語モデル(LMM)で動作しています。GPT-3は、以前の世代のLLMであり、1750億のパラメータを持ち、数千のアクセラレータを備えたクラスタで数か月間連続してトレーニングを行う必要があります。Carbontrackerの調査によると、GPT-3のトレーニングは、専用のハードウェアアクセラレータのクラスタを使用して、最大85トンのCO2相当を排出する可能性があります。
AWSは、MLプラクティショナーがワークロードの環境への影響を低減するための方法をいくつか提供しています。その1つは、AI/MLワークロードを持続可能に設計するための指導を提供することです。また、Amazon SageMaker Studioなどの管理されたMLトレーニングおよびオーケストレーションサービスを提供することで、MLリソースを自動的に削減およびスケーリングアップし、コストとリソースを節約するためのさまざまなツールを提供することもあります。もう1つの主要なイネーブラーは、エネルギー効率の高い専用のアクセラレータを開発することで、MLモデルのトレーニングとデプロイメントを可能にすることです。
この投稿の焦点は、持続可能なMLのレバレッジとしてのハードウェアです。私たちは、AWSによって設計され、ML推論およびトレーニングワークロードに特化した目的に合わせて設計された、最近のAWS InferentiaおよびAWS Trainiumの性能と電力消費の実験結果を紹介します。
持続可能なMLのためのAWS InferentiaおよびAWS Trainium
現実的なアプリケーションでAWS InferentiaおよびAWS Trainiumのエネルギー削減ポテンシャルについての実際の数値を提供するために、私たちはいくつかの電力消費ベンチマーク実験を実施しました。私たちは、以下の主要な基準を考慮してこれらのベンチマークを設計しました。
- Sealとは、大規模な3Dポイントクラウドに対して自己教示学習のための2Dビジョンファウンデーションモデルを活用し、「任意のポイントクラウドシーケンスをセグメント化する」AIフレームワークです
- NVIDIA CEO:クリエイターは生成的AIによって「スーパーチャージ」されるでしょう
- 量産自動運転におけるBEVパーセプション
- まず、MLアクセラレータだけでなく、コンピュート、メモリ、ネットワークを含めた、テストワークロードに直接関連するエネルギー消費を捕捉することを確認しました。したがって、私たちはテストセットアップで、そのレベルで電力消費を測定しました。
- 次に、トレーニングおよび推論ワークロードを実行する際に、すべてのインスタンスがそれぞれの物理的なハードウェアの限界で動作していることを確認し、その限界に達した後にのみ測定を行い、比較可能性を確保しました。
- 最後に、この投稿で報告されたエネルギー削減が実際の現実世界のアプリケーションで達成できることを確認したかったため、ベンチマークおよびテストには、顧客にインスピレーションを与える一般的なMLユースケースを使用しました。
結果は以下のセクションで報告されています。
推論実験:LayoutLMを使用したリアルタイムドキュメント理解
トレーニングとは異なり、推論は定義された完了ポイントを持たない連続的なワークロードであり、MLワークロードのライフサイクル全体でのリソース消費の大部分を占めています。推論を適切に行うことは、高いパフォーマンス、低コスト、および持続可能性(より良いエネルギー効率)を実現するために重要です。推論タスクでは、顧客は通常、入力需要に追いつくために一定の推論レートを達成することを目的としています。
この投稿で紹介する実験は、銀行や保険などの産業で一般的なアプリケーションであるリアルタイムドキュメント理解ユースケースに着想を得たものです。具体的には、ドキュメント画像処理と情報抽出に使用される事前トレーニング済みのtransformerモデルであるLayoutLMを選択しました。1時間あたり1,000,000の推論を目標SLAとし、この要件を満たす2つのハードウェア構成を指定します。1つはAWS Inferentiaを搭載したAmazon EC2 Inf1インスタンスを使用し、もう1つは推論タスクに最適化された比較可能なアクセラレーテッドEC2インスタンスを使用します。実験中、両方のハードウェア構成の推論性能、コスト、およびエネルギー効率を測定するために、いくつかの指標を追跡しました。結果は以下の図に示されています。
推論ベンチマークのパフォーマンス、コスト、およびエネルギー効率の結果
AWS Inferentiaは、推論スループットを6.3倍高速化しています。したがって、Inferentiaを使用すると、同じリアルタイムのLayoutLMベースのドキュメント理解ワークロードを、より少ないインスタンスで実行できます(6つのAWS Inferentiaインスタンス対33の他の推論最適化された加速EC2インスタンス、82%の削減に相当)、プロセス中に10分の1未満(-92%)のエネルギーを使用しながら、推論あたりのコストが著しく低く(推論1百万回あたり2米ドル対25米ドル、91%のコスト削減に相当)。
トレーニング実験:ゼロからBERT Largeをトレーニング
トレーニングは、推論とは異なり、頻繁に繰り返される有限のプロセスです。MLエンジニアは、トレーニング時間を短縮しつつコストを抑えるために、高いクラスターパフォーマンスに興味を持っています。エネルギー効率は二次的な(しかし成長している)関心事です。AWS Trainiumでは、トレーニングパフォーマンスを高く保ちながら、コストを最適化し、環境への影響を減らすことができます。
これを示すために、自然言語理解のユースケースであるチャットボットベースの質問応答や会話応答予測などに使用される人気のある言語モデルであるBERT Largeを選択します。よく機能するBERT Largeモデルをゼロからトレーニングするには、通常、450百万シーケンスを処理する必要があります。私たちは、それぞれが16のインスタンスで構成され、同じ日にBERT Largeをゼロからトレーニングできる2つのクラスター構成を比較します。最初のものは従来の加速EC2インスタンスを使用しています。二番目のものは、AWS Trainiumを搭載したAmazon EC2 Trn1インスタンスを使用しています。再び、トレーニングパフォーマンス、コスト、および環境への影響(エネルギー効率)の両方をベンチマークに採用しました。結果は以下の図に示されています。
トレーニングベンチマークのパフォーマンス、コスト、およびエネルギー効率の結果
実験では、AWS Trainiumベースのインスタンスは、シーケンス処理量に関して、同等のトレーニング最適化された加速EC2インスタンスに比べて1.7倍の高速化を実現し、合計トレーニング時間を43%削減しました(同等の加速EC2インスタンス上の4時間に対して2.3時間)。その結果、Trainiumベースのインスタンスクラスターを使用すると、ゼロからBERT Largeをトレーニングするための合計エネルギー消費量は、同じサイズの同等の加速EC2インスタンスクラスターに比べて約29%低くなります。これらのパフォーマンスおよびエネルギー効率の利点は、コストの改善にも繋がります:BERT MLワークロードのトレーニングコストは、Trainiumインスタンス上で約62%低くなります(完全なトレーニング実行あたりUSD 787対USD 2091)。
AWS用途別アクセラレーターの使用を開始する
ここで実施された実験はすべて、自然言語処理(NLP)領域の標準モデルを使用していますが、AWS InferentiaおよびAWS Trainiumは、LLMsや最も複雑な生成AIアーキテクチャ(GPT-3など)を含む、多様な複雑なモデルアーキテクチャで優れたパフォーマンスを発揮します。これらのアクセラレーターは、100億以上のパラメーターを持つモデルや、安定した拡散などのコンピュータビジョンモデルなど、特に優れた性能を発揮します(詳細については、モデルアーキテクチャ適合性ガイドラインを参照してください)。実際、多くのお客様が、さまざまなMLユースケースでInferentiaおよびTrainiumをすでに使用しています。
AWS InferentiaおよびAWS Trainiumベースのインスタンスでエンドツーエンドのディープラーニングワークロードを実行するには、AWS Neuronを使用できます。Neuronは、ディープラーニングコンパイラ、ランタイム、TensorFlowやPyTorchなどの最も人気のあるMLフレームワークにネイティブに統合されたツールを含むエンドツーエンドのソフトウェア開発キット(SDK)です。Neuron SDKを使用して、既存のTensorFlowまたはPyTorchディープラーニングMLワークロードをInferentiaおよびTrainiumに簡単にポートし、同じよく知られたMLフレームワークを使用して新しいモデルを構築できます。より簡単にセットアップするには、必要なパッケージや依存関係の多くが含まれているディープラーニング用のAmazon Machine Images(AMI)を使用できます。さらに簡単には、Amazon SageMaker Studioを使用できます。これにより、TensorFlowやPyTorchがInferentiaおよびTrainiumでネイティブにサポートされます(例については、aws-samples GitHubリポジトリを参照してください)。
最後に、InferentiaおよびTrainiumはディープラーニングワークロードに特化していますが、XGBoostやLightGBMなどのより単純なMLアルゴリズムは、CPUベースのインスタンスでも十分にパフォーマンスを発揮する場合があります。この場合、AWS Graviton3への移行は、同等の加速EC2インスタンスに比べて、同じパフォーマンスのために最大60%のエネルギーを使用します。
結論
持続可能でエネルギー効率の高い方法でMLワークロードを実行することは、パフォーマンスやコストを犠牲にすることを意味するという一般的な誤解があります。しかし、AWSの目的に特化した機械学習用アクセラレータを使用することで、MLエンジニアはそのようなトレードオフを行う必要はありません。代わりに、AWS InferentiaやAWS Trainiumなど、高度に特化したディープラーニングハードウェア上でディープラーニングワークロードを実行し、同等のアクセラレートされたEC2インスタンスタイプよりも大幅に優れた低コスト、高性能、およびより優れたエネルギー効率(最大90%)を同時に提供できます。InferentiaとTrainiumでMLワークロードを実行を開始するには、AWS Neuronのドキュメントをチェックするか、サンプルノートブックの1つを起動してください。また、この記事で説明された多くのトピックをカバーするSustainability and AWS silicon(SUS206)のAWS re:Invent 2022トークもご覧いただけます。
We will continue to update VoAGI; if you have any questions or suggestions, please contact us!
Was this article helpful?
93 out of 132 found this helpful
Related articles
- PyTorchモデルのパフォーマンス分析と最適化—Part2
- あなたのLLMアプリケーションは公開に準備ができていますか?
- 中国における大量生産自動運転の課題
- 量子AI:量子コンピューティングの潜在能力を機械学習で解き明かす
- SRGANs:低解像度と高解像度画像のギャップを埋める
- このGoogleのAI論文は、さまざまなデバイスで大規模な拡散モデルを実行するために画期的なレイテンシー数値を集めるための一連の最適化を提示しています
- LLM-Blenderに会いましょう:複数のオープンソース大規模言語モデル(LLM)の多様な強みを活用して一貫して優れたパフォーマンスを達成するための新しいアンサンブルフレームワーク