ハイブリッド機械学習の導入

ソースノード: 1575227

ガートナー は、2024 年末までに企業の 75% が人工知能 (AI) の試験運用から運用化へと移行し、長期的には大部分のワークロードが最終的にクラウドになると予測しています。 クラウドへの移行を計画している一部の企業にとって、移行の複雑さ、規模、および期間は困難な場合があります。 チームによってスピードや新しいツールに対する欲求は大きく異なります。 企業のデータ サイエンス チームは最新のクラウド テクノロジの採用に熱心である一方で、アプリケーション開発チームは自社の Web アプリケーションをオンプレミスで実行することに重点を置いています。 複数年にわたるクラウド移行計画があっても、企業のビジネス成果を満たすために、一部の製品リリースはクラウド上に構築する必要があります。

これらのお客様には、ハイブリッド機械学習 (ML) パターンをクラウドへの移行の中間ステップとして提案します。 ハイブリッド ML パターンは、少なくとも XNUMX つのコンピューティング環境 (通常は、個人のラップトップや企業のデータ センターなどのローカル コンピューティング リソース) とクラウドを含むパターンです。 この投稿で説明したハイブリッド ML アーキテクチャ パターンを使用すると、企業はクラウドへの移行が完了するのを待つことなく、目的のビジネス目標を達成できます。 結局のところ、私たちはあらゆる形でお客様の成功をサポートしたいと考えています。

新しいホワイトペーパーを公開しました。 ハイブリッド機械学習、クラウドを既存のオンプレミス ML インフラストラクチャと統合するのに役立ちます。 AWS のその他のホワイトペーパーについては、次を参照してください。 AWSホワイトペーパーとガイド.

ハイブリッド ML アーキテクチャ パターン

このホワイトペーパーでは、ML モデルの開発、データ準備、トレーニング、デプロイ、継続的な管理など、ML ライフサイクル全体にわたるさまざまなハイブリッド ML パターンの概要を説明します。 次の表は、ホワイトペーパーで説明している XNUMX つの異なるハイブリッド ML アーキテクチャ パターンをまとめたものです。 パターンごとに、長所と短所に加えて、暫定的なリファレンス アーキテクチャを提供します。 また、決定を下すのに役立つ「いつ移行するか」の基準も特定します。たとえば、特定のパターンを維持およびスケーリングするための労力のレベルが、そのパターンが提供する価値を超えた場合などです。

開発 トレーニング 展開
パソコンで開発し、クラウドでトレーニングしてホストする ローカルでトレーニングし、クラウドにデプロイする クラウド内の ML モデルを、オンプレミスでホストされているアプリケーションに提供する
ローカル サーバーで開発し、クラウドでトレーニングしてホストする データをローカルに保存し、トレーニングしてクラウドにデプロイする オンプレミスのアプリケーションに Lambda@Edge を使用して ML モデルをホストする
オンプレミスでホストされているデータに接続しながらクラウドで開発する サードパーティの SaaS プロバイダーでトレーニングしてクラウドでホストする
クラウドでトレーニングし、ML モデルをオンプレミスにデプロイする Kubeflow と Amazon EKS Anywhere を使用してハイブリッド ML ワークロードを調整する

この投稿では、クラウドでホストされているモデルをオンプレミスでホストされているアプリケーションに提供することに焦点を当てて、展開のためのハイブリッド アーキテクチャ パターンを深く掘り下げます。

アーキテクチャの概要

このハイブリッド パターンの最も一般的なユース ケースは、企業の移行です。 データ サイエンス チームはクラウドにデプロイする準備ができているかもしれませんが、アプリケーション チームはまだコードをリファクタリングして、クラウド ネイティブ サービスでホストできるようにしています。 このアプローチにより、データ サイエンティストは最新のモデルを市場に投入できますが、アプリケーション チームはアプリケーションの残りの部分をいつ、どこで、どのようにクラウドに移行するかを個別に検討します。

次の図は、ML モデルをホストするためのアーキテクチャを示しています。 アマゾンセージメーカー AWS リージョンで、オンプレミスでホストされているアプリケーションからのリクエストへの応答を提供します。

ハイブリッド ML

技術的な詳細

このセクションでは、技術アーキテクチャを深く掘り下げ、ハイブリッド ワークロードを明示的に構成するさまざまなコンポーネントに焦点を当て、必要に応じて他のリソースを参照します。

アプリケーション開発チームが自社の e コマース Web アプリケーションをオンプレミスでホストしている小売企業の実際の使用例を見てみましょう。 同社は、データを使用してより洗練された独自のカスタマー エクスペリエンスを作成することで、ブランド ロイヤルティを向上させ、売上と収益を増やし、効率を高めたいと考えています。 ホーム画面に「あなたへのおすすめ」ウィジェットを追加することで、顧客エンゲージメントを 50% 向上させることを目指しています。 ただし、静的なルールベースのシステムの制限、複雑さとコスト、および現在のレガシーのオンプレミス アーキテクチャによるプラットフォーム統合との摩擦により、パーソナライズされたエクスペリエンスの提供に苦労しています。

アプリケーション チームには、クラウド ネイティブ アーキテクチャを使用して Web アプリケーションをリファクタリングしてクラウドに移行するという 5 年間のエンタープライズ移行戦略がありますが、データ サイエンス チームはクラウドでの実装を開始する準備ができています。 この投稿で説明したハイブリッド アーキテクチャ パターンを使用すると、企業は 5 年間のエンタープライズ移行が完了するのを待つことなく、目的のビジネス成果を迅速に達成できます。

データ サイエンティストは ML モデルを開発し、トレーニングを実行して、トレーニング済みのモデルをクラウドにデプロイします。 オンプレミスでホストされている e コマース Web アプリケーションは、公開されたエンドポイントを介して ML モデルを使用します。 これを詳しく見ていきましょう。

モデル開発フェーズでは、データ サイエンティストは PyCharm や Jupyter インストールなどのローカル開発環境をパーソナル コンピューターに使用し、次の方法でクラウドに接続できます。 AWS IDおよびアクセス管理 (IAM) アクセス許可と AWS サービス API とのインターフェース AWSコマンドラインインターフェイス (AWS CLI) または AWS SDK (Boto3 など)。 また、柔軟に使用できます。 Amazon SageMakerスタジオは、モデル開発用に一般的なデータ サイエンス パッケージとカーネルがプリインストールされた単一の Web ベースのビジュアル インターフェイスです。

データ サイエンティストは、SageMaker トレーニング SDK を使用して、オンデマンドの CPU および GPU インスタンスへのアクセス、自動モデル チューニング、マネージド スポット インスタンス、モデルの状態を保存するためのチェックポイント、マネージド分散トレーニングなど、SageMaker トレーニング機能を利用できます。および API。 SageMaker を使用したモデルのトレーニングの概要については、次を参照してください。 AmazonSageMakerでモデルをトレーニングする.

モデルがトレーニングされた後、データ サイエンティストは SageMaker ホスティング機能を使用してモデルをデプロイし、予測を提供する REST HTTP(s) エンドポイントを、オンプレミスでホストされているエンド アプリケーションに公開できます。 アプリケーション開発チームは、オンプレミス アプリケーションを統合して、SageMaker がホストするエンドポイントを介して ML モデルとやり取りし、推論結果を取得できます。 アプリケーション開発者は、アプリケーション プログラミング インターフェイス (API) 要求を介して、数ミリ秒という短い応答時間でデプロイされたモデルにアクセスできます。 これにより、パーソナライズされた製品のレコメンデーションなど、リアルタイムの応答が必要なユース ケースがサポートされます。

オンプレミスのクライアント アプリケーションは、AWS 上の SageMaker がホストするエンドポイントでホストされる ML モデルに、VPN または Direct Connect 接続を使用してプライベート ネットワーク経由で接続し、エンド ユーザーに推論結果を提供します。 クライアント アプリケーションは、任意のクライアント ライブラリを使用して、プログラムで構成された必要な認証資格情報と予想されるペイロードと共に HTTP Post 要求を使用してエンドポイントを呼び出すことができます。 SageMaker には、SageMaker などのクライアント アプリケーション環境に保存された AWS 資格情報を使用した認証など、低レベルの詳細の一部を抽象化するコマンドとライブラリもあります。 呼び出しエンドポイント AWS CLI からのランタイム コマンド、SageMaker ランタイム クライアントからの ボト3 (AWS SDK for Python)、および SageMaker の Predictor クラス パイソン SDK。

インターネット経由でエンドポイントにアクセスできるようにするには、次を使用できます アマゾンAPIゲートウェイ. API Gateway から SageMaker がホストするエンドポイントに直接アクセスできますが、使用できる一般的なパターンは、 AWSラムダ 間で機能します。 Lambda 関数は、エンドポイントが期待する形式でリクエストを送信するために必要な前処理や、クライアント アプリケーションが必要とする形式に応答を変換するための後処理に使用できます。 詳細については、次を参照してください。 Amazon API Gateway と AWS Lambda を使用して Amazon SageMaker モデルのエンドポイントを呼び出す.

オンプレミスのクライアント アプリケーションは、VPN または Direct Connect 接続を使用してプライベート ネットワーク経由で AWS 上の SageMaker でホストされている ML モデルに接続し、エンド ユーザーに推論結果を提供します。

次の図は、データ サイエンス チームが ML モデルを開発し、トレーニングを実行し、トレーニング済みのモデルをクラウドにデプロイする方法と、アプリケーション開発チームがオンプレミスで e コマース Web アプリケーションを開発およびデプロイする方法を示しています。

アーキテクチャの詳細

モデルが本番環境にデプロイされた後、データ サイエンティストは以下を使用できます。 Amazon SageMakerモデルモニター ML モデルの品質をリアルタイムで継続的に監視します。 また、データのドリフトや異常など、モデルの品質に偏差が発生した場合に、自動アラート トリガー システムを設定することもできます。 Amazon CloudWatchログ モデルのステータスを監視するログ ファイルを収集し、モデルの品質が特定のしきい値に達したときに通知します。 これにより、データ サイエンティストは、モデルを手動で監視することなく、モデルの再トレーニング、上流システムの監査、品質問題の修正などの是正措置を講じることができます。 AWS マネージド サービスを使用すると、データ サイエンス チームはモニタリング ソリューションをゼロから実装することのマイナス面を回避できます。

データ サイエンティストは、以下を使用して SageMaker ML インスタンス全体で負荷テストとモデル チューニングを自動化することにより、ML モデルを本番環境にデプロイするために必要な全体の時間を短縮できます。 AmazonSageMaker推論レコメンダー. これは、データ サイエンティストが ML モデルに最適なインスタンス タイプと構成 (インスタンス数、コンテナー パラメーター、モデルの最適化など) を選択するのに役立ちます。

最後に、ML モデルのホスティングをアプリケーションのホスティングから分離することは常にベスト プラクティスです。 このアプローチでは、データ サイエンティストは専用のリソースを使用して ML モデル、特にアプリケーションから分離されたモデルをホストします。これにより、より優れたモデルをプッシュするプロセスが大幅に簡素化されます。 これは、イノベーション フライホイールの重要なステップです。 これにより、ホストされた ML モデルとアプリケーションの間のあらゆる形態の密結合も回避されるため、モデルのパフォーマンスが向上します。

このアプローチは、更新された研究トレンドでモデルのパフォーマンスを改善するだけでなく、更新されたデータでモデルを再展開する機能を提供します。 世界的な COVID-19 パンデミックは、市場が常に変化しているという現実を示しており、ML モデルは最新のトレンドに対応し続ける必要があります。 その要件を満たす唯一の方法は、更新されたデータでモデルを再トレーニングして再デプロイできることです。

まとめ

ホワイトペーパーを確認してください ハイブリッド機械学習で、ML モデルをホストするための追加のパターンを見ていきます。 Lambda @ Edge, AWS前哨基地, AWSローカルゾーン, AWSの波長. ML ライフサイクル全体でハイブリッド ML パターンを調査します。 ローカルでの開発と、クラウドでのトレーニングとデプロイを検討しています。 ローカルでトレーニングしてクラウドにデプロイするパターン、さらにはクラウドで ML モデルをホストしてオンプレミスのアプリケーションにサービスを提供するパターンについて説明します。

クラウドを既存のオンプレミス ML インフラストラクチャとどのように統合していますか? ハイブリッド ML に関するフィードバックをコメントで共有してください。製品、機能、およびドキュメントを引き続き改善できるようになります。 このドキュメントの作成者にクラウド移行に関するアドバイスを求める場合は、次のアドレスまでご連絡ください。 Hybrid-ml-support@amazon.com.


著者について

アラック・エスワラダス イリノイ州シカゴを拠点とする AWS のソリューション アーキテクトです。 彼女は、お客様が AWS サービスを利用してクラウド アーキテクチャを設計し、ビジネス上の課題を解決できるよう支援することに情熱を注いでいます。 彼女は娘たちとたむろし、自由な時間にアウトドアを探索しています。

エミリー・ウェバー SageMakerがリリースされた直後にAWSに参加し、それ以来、世界中にそのことを伝えようとしています。 エミリーは、顧客のために新しいML体験を構築する以外に、チベット仏教の瞑想と勉強を楽しんでいます。

ループ・ベインズ AI/ML を専門とする AWS のソリューション アーキテクトです。 彼は機械学習に情熱を傾けており、顧客がビジネス目標を達成できるよう支援しています。 余暇には、読書とハイキングを楽しんでいます。

ソース: https://aws.amazon.com/blogs/machine-learning/introducing-hybrid-machine-learning/

タイムスタンプ:

より多くの AWS機械学習ブログ