Morphling: クラウドネイティブで AI を導入する際にコスト削減を最大化するにはどうすればよいでしょうか?

Morphling: クラウドネイティブで AI を導入する際にコスト削減を最大化するにはどうすればよいでしょうか?

クラウドネイティブ技術の活発な発展と、その業界での実装の成熟に伴い、クラウド上の機械学習は大規模かつ産業化された開発に向けて急速に進歩しています。

最近、Morphling は Alibaba のオープンソース KubeDL の独立したサブプロジェクトとして、Cloud Native Computing Foundation (CNCF) サンドボックス プロジェクトになりました。機械学習モデル推論サービスの大規模な産業展開のための自動化された展開構成のチューニング、テスト、および推奨事項を提供することを目的としています。 GPU 仮想化と再利用技術がますます成熟する中で、企業はクラウド ネイティブの利点を十分に享受し、オンライン機械学習サービスのパフォーマンスを最適化し、サービスの展開コストを削減し、実際の産業展開における機械学習のパフォーマンスとコストの課題を効率的に解決できるようになります。さらに、Morphling プロジェクトに関連する学術論文「Morphling: クラウドネイティブ モデル サービングのための高速でほぼ最適な自動構成」が、ACM Symposium on Cloud Computing 2021 (ACM SoCC 2021) に採択されました。

モーフリングはもともと、ゲーム「Dota」のヒーロー「スラーク」を想定したもので、環境の要件に応じて柔軟に形態を変え、戦闘パフォーマンスを最適化できます。 Morphling プロジェクトを通じて、機械学習推論ジョブの柔軟でインテリジェントな展開構成の変更を実現し、サービスのパフォーマンスを最適化し、サービスの展開コストを削減したいと考えています。

背景

クラウド上の機械学習のワークフローは、モデルのトレーニングとモデルの提供という 2 つの部分に分けられます。オフラインでのトレーニング、チューニング、テストの後、モデルはコンテナ形式のオンライン アプリケーションとして展開され、オンライン ライブ ビデオでの対象オブジェクトの認識、オンライン言語翻訳ツール、オンライン画像分類などの中断のない高品質の推論サービスをユーザーに提供します。たとえば、アリババの内部 Taobao コンテンツ ソーシャル プラットフォームである Machine Vision Application Platform (MVAP) は、オンライン機械学習推論エンジンを通じて、Taobao ライブ ブロードキャストの製品ハイライト認識、ライブ ブロードキャストのカバー画像の重複排除、閲覧画像とテキストの分類などのサービスをサポートしています。 Intel のデータによると、大規模推論 (「Inference at Scale」) の時代が到来しており、2020 年までに推論サイクルとトレーニング サイクルの比率は 5:1 を超えると予想されています。 Amazon のデータによると、2019 年に Amazon AWS のモデル推論サービスに対するインフラストラクチャ支出は、機械学習タスクに対する総支出の 90% 以上を占めました。機械学習による推論は、人工知能の実装と収益化の鍵となっています。

クラウド上の推論タスク

推論サービス自体は、特別な長期実行マイクロサービス形式です。クラウド上の推論サービスの導入量が増加するにつれて、そのコストとサービスのパフォーマンスが重要な最適化指標となっています。このため、運用保守チームは、ハードウェア リソース構成、サービス操作パラメータ構成など、推論コンテナを展開する前に適切な構成の最適化を実行する必要があります。これらの最適化構成は、サービス パフォーマンス (応答時間、スループットなど) とリソース利用効率を調整する上で重要な役割を果たします。実際に、テストでは、異なる展開構成によってスループット/リソース使用率が最大 10 倍異なる可能性があることがわかりました。

アリババのAI推論サービスにおける豊富な経験を基に、まずは推論ビジネスについてまとめました。従来のサービス展開の構成と比較すると、次の特徴があります。

高価なグラフィック カード リソースを使用しながらメモリ使用量を低く抑える: GPU 仮想化とタイム シェアリング多重化テクノロジの開発と成熟により、GPU 上で複数の推論サービスを同時に実行できるようになり、コストが大幅に削減されます。トレーニング タスクとは異なり、推論タスクでは、十分にトレーニングされたニューラル ネットワーク モデルを使用して、ニューラル ネットワークを通じてユーザー入力情報を処理して出力を取得します。このプロセスにはニューラル ネットワークの順方向伝播のみが含まれ、ビデオ メモリ リソースの需要は比較的低くなります。対照的に、モデルのトレーニング プロセスにはニューラル ネットワークの逆伝播が含まれ、多数の中間結果を保存する必要があり、ビデオ メモリに大きな負担がかかります。大量のクラスター データから、グラフィック カード全体を 1 つの推論タスクに割り当てると、かなりのリソースの無駄が生じることがわかります。しかし、推論サービス、特に非圧縮ビデオメモリリソースに適切な GPU リソース仕様を選択する方法が重要な問題になります。
パフォーマンス リソースのボトルネックにはさまざまなものがあります。GPU リソースに加えて、推論タスクには複雑なデータの前処理 (ユーザー入力をモデル入力に一致するパラメータに処理する) と結果の後処理 (ユーザーの認識に一致するデータ形式の生成) も含まれます。これらの操作は通常 CPU を使用して実行され、モデル推論は通常 GPU を使用して実行されます。さまざまなサービス ビジネスでは、GPU、CPU、およびその他のハードウェア リソースがサービス応答時間に影響を与える主な要因となり、リソースのボトルネックになる可能性があります。
さらに、コンテナの動作パラメータの構成も、ビジネス展開担当者が調整する必要がある次元になっています。コンピューティング リソースに加えて、コンテナ ランタイム パラメータも、コンテナ サービスで実行される同時スレッドの数、推論サービスのバッチ処理サイズなど、サービス RT、QPS、およびその他のパフォーマンスに直接影響します。

推論サービスの展開構成の最適化

Kubernetes を主流とするクラウドネイティブ テクノロジーは、さまざまな形で新しいアプリケーションの負荷に広く利用されています。 Kubernetes上で機械学習タスク(トレーニングや推論を含む)を構築し、安定的かつ効率的で低コストの導入を実現することが、大手企業がAIプロジェクトやサービスをクラウドに推進するための焦点であり鍵となっています。業界では、Kubernetes フレームワークの下でのコンテナ構成の推論について、まだ調査と実験が進められています。

最も一般的なモードは、人間の経験に基づいてパラメータを手動で構成することですが、これは単純ですが非効率的です。実際の状況では、サービスデプロイヤーは、クラスター管理者の観点から、サービス品質を確保するために、より多くのリソース冗長性を構成する傾向があり、効率よりも安定性を犠牲にして、結果としてリソースの大きな浪費が発生します。または、動作パラメータのデフォルト値を直接使用し、パフォーマンスの最適化の機会を失います。
もう 1 つの選択肢は、リソースの過去の水位プロファイルに基づいて、リソース割り当てをさらに改善し、最適化することです。しかし、私たちの観察と実践により、毎日の資源水位はサービスストレステスト中のトラフィックピークを反映できず、サービス容量の上限を評価できないことがわかりました。第二に、新しく立ち上げられた事業の場合、一般的に、参照できる信頼できる過去の水位情報が不足しています。さらに、機械学習フレームワークの特性により、GPU ビデオメモリの過去の使用量は通常、アプリケーションのビデオメモリに対する実際の需要を正確に反映できません。最後に、コンテナ内でプログラムを実行するパラメータを調整するための履歴データの観点からは、十分なデータ サポートが不足しています。
一般的に、Kubernetes コミュニティには、より一般的なハイパーパラメータ チューニングのための自動パラメータ推奨に関する研究や製品がいくつか存在しますが、業界には機械学習推論サービスを直接対象としたクラウド ネイティブのパラメータ構成システムが欠けています。

AI 推論サービスにおける Alibaba の豊富な経験に基づき、推論サービスの構成とチューニングの問題点は次のとおりです。

自動化されたパフォーマンス テストとパラメータ調整のためのフレームワークの欠如: 構成の反復的な手動調整 - サービス ストレス テストは、展開テストに多大な手動の負担をもたらすため、この方向は現実的に不可能なオプションになります。
安定した非侵入型のサービス パフォーマンス テスト プロセス: 運用環境でオンライン サービスを直接展開してテストすると、ユーザー エクスペリエンスに影響します。
効率的なパラメータ組み合わせチューニング アルゴリズムの要件: 設定する必要のあるパラメータ数の増加を考慮して、多次元パラメータの組み合わせ最適化設定を共同でデバッグし、チューニング アルゴリズムにさらに高い効率要件を提示します。

モーフィリング

上記の課題に対処するため、アリババのクラウドネイティブ クラスター管理チームは、Kubernetes ベースの機械学習推論サービス構成フレームワーク Morphling を開発し、オープンソース化しました。Morphling は、パラメータの組み合わせのチューニングの全プロセスを自動化し、効率的なインテリジェント チューニング アルゴリズムと組み合わせることで、推論ビジネスの構成チューニング プロセスを Kubernetes 上で効率的に実行できるようにし、実際の業界展開における機械学習のパフォーマンスとコストの課題を解決します。

Morphling は、パラメータ調整プロセスに対してさまざまなレベルのクラウドネイティブ抽象化を実行し、ユーザーに簡潔で柔軟な構成インターフェイスを提供し、基盤となるコンテナ操作、データ通信、サンプリング アルゴリズム、およびストレージ管理をコントローラーにカプセル化します。具体的には、Morphling のパラメータ調整とパフォーマンスストレステストでは、実験トライアルワークフローを採​​用しています。

Experiment は最もユーザーフレンドリーな抽象化レイヤーです。ユーザーはインタラクションを通じて、機械学習モデルの保存場所、チューニングする構成パラメータ、テスト回数の上限などを指定し、特定のパラメータチューニングジョブを定義できます。
各パラメータ調整ジョブ実験に対して、Morphling は別の抽象化レイヤーである trial を定義します。トライアルは、基盤となる Kubernetes コンテナ操作をカバーする、特定のパラメータの組み合わせに対するパフォーマンス テスト プロセスをカプセル化します。各トライアルでは、Morphling はテスト パラメータの組み合わせに従って推論サービス コンテナを構成および起動し、サービスの可用性と正常性状態を検出し、サービスに対してストレス テストを実行して、応答時間の遅延、サービス スループット、リソース利用効率など、構成下でのコンテナのサービス パフォーマンスを測定します。テスト結果はデー​​タベースに保存され、実験にフィードバックされます。
Morphling は、インテリジェントなハイパーパラメータ調整アルゴリズムを使用して、パフォーマンス テスト (トライアル) 用に少数の構成の組み合わせを選択します。各テストラウンドの結果はフィードバックとして使用され、次にテストするパラメータのセットを効率的に選択します。仕様ポイントの徹底的なサンプリングを回避するために、ポートレート サンプリング アルゴリズムの内部コア ドライバーとしてベイズ最適化を使用します。フィッティング関数を継続的に改良することで、低いサンプリング レート (<20%) のストレス テスト オーバーヘッドで、ほぼ最適なコンテナー仕様の推奨結果を提供します。

この反復的なサンプリングとテストを通じて、最適化された構成の組み合わせの推奨事項が最終的にビジネス展開担当者にフィードバックされます。

同時に、Morphling は管理および制御スイートである Morphling-UI を提供します。これにより、ビジネス展開チームは、インターフェイス上のシンプルで使いやすい操作を通じて、推論ビジネス構成チューニング実験を開始し、チューニング プロセスを監視し、チューニング結果を比較することができます。

タオバオコンテンツソーシャルプラットフォームにおけるMorphlingの実践

Alibaba の豊富な内部オンライン機械学習推論シナリオと多数の推論サービスインスタンス要件により、Morphling の実装検証のための直接的な実装実践とテストフィードバックが提供されます。その中で、アリババ・タオバオのコンテンツソーシャルプラットフォームのマシンビジョンアプリケーションプラットフォーム(MVAP)チームは、オンライン機械学習推論エンジンを通じて、タオバオのライブブロードキャストの商品ハイライト認識、ライブブロードキャストのカバー画像の重複排除、閲覧画像とテキストの分類などの業務をサポートしています。

2020年のダブルイレブンショッピングフェスティバルでは、Morphlingを使用してAI推論コンテナの仕様テストと最適化を実行し、パフォーマンスとコストの最適ソリューションを見つけました。同時に、アルゴリズムエンジニアリングチームは、タオバオのビデオ視聴サービスなど、リソースを大量に消費する推論モデルを対象にモデル定量化と分析を行い、AIモデル設計の観点から最適化しました。これにより、最小限のリソースでダブルイレブンショッピングフェスティバルのピークトラフィックをサポートしながら、ビジネスのパフォーマンスが低下しないようにし、GPUの使用率を大幅に向上させ、コストを削減しました。

学術的探究

推論サービスのパラメータ調整プロセスの効率を向上させるために、アリババクラウドネイティブクラスタ管理チームは、推論ビジネスの特性に基づいて、メタ学習と少数ショット回帰の使用をさらに検討し、より効率的でサンプリングコストの低い構成のチューニングアルゴリズムを実装して、「高速、小規模サンプルサンプリング、低テストコスト」という実際の業界のチューニング要件を満たすとともに、クラウドネイティブで自動化されたチューニングフレームワークも実現しました。関連する学術論文「Morphling: クラウドネイティブ モデル サービングのための高速でほぼ最適な自動構成」が、ACM Symposium on Cloud Computing 2021 (ACM SoCC 2021) に採択されました。

近年、クラウド上でのAI推論タスクの最適化された展開に関するトピックが、主要なクラウドコンピューティングおよびシステム関連学術誌や会議で活発に取り上げられ、学術研究のホットな話題となっています。検討される主なトピックには、AI モデルの動的な選択、デプロイメント インスタンスの動的な拡張と縮小、ユーザー アクセスのトラフィックのスケジューリング、GPU リソースの完全な利用 (動的なモデルの読み込みやバッチ サイズの最適化など) が含まれます。しかし、大規模な業界慣行に基づいてコンテナレベルの推論サービスの展開を最適化する研究が行われるのは今回が初めてです。

アルゴリズムの観点から見ると、パフォーマンス チューニングは、古典的なハイパーパラメータ チューニングの問題です。ベイズ最適化などの従来のハイパーパラメータ調整方法では、高次元 (複数の構成項目) および大規模な検索空間での調整問題に対処することが困難です。たとえば、AI 推論タスクの場合、CPU コア数、GPU メモリ サイズ、バッチ サイズ、GPU モデルの 4 つの次元 (構成項目) で「組み合わせ最適化」ハイパーパラメータ チューニングを実行します。各構成項目には 5 ~ 8 個のオプション パラメーターがあります。したがって、組み合わせケースのパラメータ検索空間は 700 以上にもなります。実稼働クラスターのテストで蓄積された経験に基づくと、AI 推論コンテナの場合、サービスの起動、ストレス テスト、データ レポートまで、一連のパラメータの各テストに数分かかります。同時に、AI 推論サービスには多くの種類があり、頻繁な更新と反復、限られたデプロイメント エンジニア、限られたテスト クラスター コストが伴います。このような大規模な検索空間で最適な構成パラメータを効率的にテストすることは、ハイパーパラメータ調整アルゴリズムに新たな課題をもたらします。

この論文では、さまざまな AI 推論サービスにおいて、最適化が必要なさまざまな構成 (GPU メモリやバッチ サイズなど) がコンテナーのサービス パフォーマンス (QPS など) に与える影響は「安定しており、類似している」という点が中心の観察結果であり、これは視覚化された「構成とパフォーマンス」のサーフェスに反映されています。異なる AI 推論インスタンスでは、「構成 - パフォーマンス」サーフェスの形状は似ていますが、構成がパフォーマンスに与える影響の度合いとキー ノードは値の点で異なります。

上の図は、3 つの AI 推論モデルについて、<CPU コア数と GPU メモリ サイズ> の 2 次元構成がコンテナ サービスの RPS スループットに与える影響を視覚化したものです。この論文では、モデルに依存しないメタ学習 (MAML) を使用してこれらの共通点を事前に学習し、メタモデルをトレーニングして新しい AI 推論パフォーマンスをテストし、表面上の主要なノードをすばやく見つけ、メタモデルに基づいて小さなサンプル (5%) で正確な適合を行うことを提案しています。

要約する

Morphling は、Kubernetes 機械学習推論サービス構成フレームワークをベースとし、「高速、小規模サンプルサンプリング、低テストコスト」のチューニングアルゴリズムと組み合わせることで、クラウドネイティブ向けの自動化された安定した効率的な AI 推論展開チューニングプロセスを実現し、展開プロセスの高速な最適化と反復を可能にし、機械学習ビジネスアプリケーションの立ち上げを加速します。 Morphling と KubeDL を組み合わせることで、モデルのトレーニングから推論の展開まで、AI の構成と最適化のエクスペリエンスもスムーズになります。

<<:  ビジネスの収益を増やしたいですか?これらの5つのAI戦略は

>>:  Huawei Cloud GaussDB: 分散コンピューティングとストレージコンピューティングの分離を組み合わせたパワーを活用してクラウドネイティブデータベースを構築

推薦する

#支払った分だけ得られる: Hawkhost シンガポール 1G メモリ VPS シンプルテスト

まず、このテストの機会を与えてくれたシンガポールのソフトレイヤーデータセンターにHawkhostのV...

クラウドネットワークとは何ですか?

クラウドの未来は明るい。 2024 年までに、IT 支出の 45% 以上が、レガシー ネットワークの...

SEOの核となる考え方

昨日は公開授業をしました。授業の主な内容は「SEOの核となる考え方」でした。今日は授業内容を改めて整...

ウェブサイトの最適化はユーザーツールのデータ分析から始める必要があります

ウェブサイト最適化担当者として、まずツールを使用するユーザーの割合を把握し、ツールを使用する顧客のデ...

ウェブサイトのランキングを上げる鍵は、最適化のボトルネックを打破することです

SEO最適化を行うスタッフが最も望んでいるのは、ウェブサイトのランキングが継続的に上昇することです。...

小規模ウェブマスターはBaiduの新しいアルゴリズムにどのように対処すべきでしょうか?

Baidu の新しい Green Radish Algorithm は、検索エンジンの不正行為防止ア...

分散キャッシュの高可用性ソリューションを実現する方法

[[284637]]データベース ディスク IO の同時実行性の増加によりシステムのパフォーマンスの...

電話実名制、9月から導入へ、利用者情報漏洩に最高3万ルピーの罰金

重慶ビジネスデイリーは、9月1日から、国民は固定電話の設置や携帯電話関連サービスを申し込む際に実名を...

企業サイトにおけるブランドキーワードの役割についての簡単な分析

検索業界全体を見てみると、比較的トラフィ​​ックの多いキーワードは、基本的に一部の有名な中規模・大規...

Baidu キーワードリサーチ: 避けるべき 5 つの間違い!

月収10万元の起業の夢を実現するミニプログラム起業支援プランSEO プロジェクトの場合、SEO 担当...

SEOは依然としてトラフィックを獲得する主な手段である

Taobao アフィリエイトと SEO は、1 つはウェブサイト所有者がトラフィックを収益化する方法...

Baidu のプロモーションは費用がかかりすぎます。ヘルスケア製品業界はプロモーション費用をどのように削減できるでしょうか?

私は一時期、女性向けヘルスケア製品会社で働いていました。主にウェブサイトの運営と百度のプロモーション...

Containerd は Docker と同じくらい簡単に使用できますか?

[[419814]]先ほど、ctr を使用して containerd イメージ コンテナーを管理する...

ミニプログラムを宣伝するための最も包括的なガイドです。強くお勧めします。これを読んで宣伝しないと言わないで

月収10万元の起業の夢を実現するミニプログラム起業支援プランミニプログラムは2017年1月9日に開始...

中古車ウェブサイトの継続的な人気は、自動車情報のトラフィックと密接に関係しています。My Sohu

最近では大手自動車サイトが独自に中古車ビジネスを展開するなど、自動車業界がオンライン中古車分野への参...