Amazon SageMaker と Kubernetes を使用した ML Ops

Amazon SageMaker で Kubernetes ベースの機械学習を簡素化する

Kubernetes は、コンテナ化されたアプリケーションのデプロイ、スケーリング、管理を自動的に行うために使用するオープンソースシステムです。Kubeflow Pipelines は、Kubernetes クラスターで機械学習 (ML) ワークフローを管理およびスケジュールするためのインターフェイスを提供するワークフローマネージャーです。オープンソースツールを使用すれば、柔軟性と標準化が実現されます。ただし、インフラストラクチャをセットアップし、データサイエンティスト向けにノートブック環境をプロビジョニングし、最新の深層学習フレームワークのバージョンを最新の状態に保つには時間と労力が必要です。

Kubernetes 用 Amazon SageMaker オペレーターと Kubeflow Pipelines 用のコンポーネントを使用すると、Kubernetes または Kubeflow からネイティブに ML ワークフロー全体でフルマネージドの SageMaker 機械学習ツールを使用することができます。これにより、オーケストレーションと柔軟性への制御を保ちながら、Kubernetes ベースの ML インフラストラクチャを手動で管理および最適化する必要がなくなります。

メリット

インフラストラクチャのセットアップを簡素化する

Amazon SageMaker のオペレーターとコンポーネントでは、必要な Amazon EC2 インスタンスタイプに基づき、自動スケーリングを備えた必須リソースを自動的にプロビジョニングすることで、機械学習用に独自の Kubernetes 環境をセットアップする必要がなくなります。

イノベーションに集中

Amazon SageMaker のオペレーターとコンポーネントを活用すると、更新やインストールを定期的に行う必要がなくなります。これにより、チームが、最新の深層学習フレームワークのバージョン、ハイパーパラメータ調整ツール、および再利用可能なアルゴリズムや AutoML など、他のユーティリティを確実に使用できるようにします。

迅速にプロビジョニングする

Amazon SageMaker Studio と SageMaker ノートブックを使用すると、Kubernetes ベースの ML プラットフォームで作業するデータサイエンスチームに向けて、Jupyter ノートブック、ジョブ管理ツール、Python ライブラリなどの開発環境をすばやくプロビジョニングできます。

仕組み

  • Kubernetes 用 Amazon SageMaker Operators
  • 仕組み - Kubernetes 用 Amazon SageMaker Operators
  • Kubeflow Pipelines 用 Amazon SageMaker コンポーネント
  • 仕組み - Kubeflow Pipelines 用 Amazon SageMaker コンポーネント

ユースケース

ハイブリッド ML ワークフロー

一部の ML ワークフローでは、ローカルデータ要件などの制約に対応するためにオンプレミスで実行しなければならない場合がありますが、推論などのワークフローの他の部分はクラウドで実行できます。Amazon SageMaker のオペレーターとコンポーネントは、オンプレミスのインフラストラクチャをクラウドに接続します。可能であれば、ML ワークフロー内でフルマネージド ML サービスを活用します。

オープンソースの ML プラットフォーム

多くのチームは、環境全体にわたって柔軟性と移植性を保つために、オープンソースで ML プラットフォームを構築しています。ただし、オープンソースプラットフォームを実行するには、Kubernetes 設定を構成する必要があります。Amazon SageMaker のオペレーターとコンポーネントは、オープンソース ML プラットフォームのメンテナンスを可能にし、ビジネス上のニーズに適した ML ワークフローの一部にクラウドを使用します。

ビジネス継続性

ビジネス上のニーズを満たすために Kubernetes 環境を慎重に構築すると、多大な時間と労力が費やされます。Amazon SageMaker のオペレーターとコンポーネントでは、Kubernetes または Kubeflow を使用して構築された既存の ML プラットフォームを引き続き活用しながら、フルマネージドクラウドサービスを使用できます。

お客様事例

Cisco

Cisco の AI チームは、Kubeflow Pipelines を使用してハイブリッドクラウドの実装を構築し、ローカルデータの要件に準拠できるようにしました。Cisco は、独自のハードウェアを使用してオンプレミスでモデルをトレーニングし、AWS にモデルを提供し、Amazon SageMaker を使用して推論を実行し、ML ライフサイクルの TCO を 50% 削減します。

続きを読む »

Bayer Crop Science

Bayer Crop Science は、ML を適用してテストプロットを監視し、潜在的な新製品のパフォーマンスを評価します。ただし、使用される分析モデルを正しくトレーニングして使用するための努力を必要とする場合があります。Bayer は、Kubeflow Pipelines で Amazon SageMaker を使用して、組織全体におけるデータサイエンスの向上に役立つ、分析モデルトレーニング用の再現可能なテンプレートを作成しました。

続きを読む »

iRobot

「iRobot では、機械学習を使用して、顧客が自宅で生活しながら仕事をしている間、毎日無料で掃除を行えるように構築しています。エンタープライズ規模を実現するために、当社のソリューションは AWS 上の Kubeflow を使用して開発しています。機械学習のデータ処理、トレーニング、検証のパイプラインを、本番環境グレードのセキュリティと拡張機能で実行できる方法を好んでいます。Amazon SageMaker が AWS で Kubeflow をさらにシームレスに実行し、iRobot が iRobot Genius ホームインテリジェンスプラットフォームなどのお客様に楽しい体験を提供できることを嬉しく思います」

- Danielle Dean 氏 (PhD)、ML のテクニカルディレクター

リソース

ブログ記事

Amazon SageMaker を使って機械学習モデルをすばやく構築、トレーニング、デプロイする

ブログ記事

ワンクリックの AWS デプロイの Kubeflow で Amazon EKSと Amazon SageMaker のハイブリッド ML ワークフローを実現

ドキュメント

Amazon SageMaker の統合

ブログ記事

Kubeflow Pipelines 用 Amazon SageMaker コンポーネントのご紹介

ブログ記事

Amazon SageMaker Debugger を使用したオープンソース ML パイプラインモデルのリアルタイム分析

ドキュメント

Application Auto Scaling による SageMaker ワークロードの拡張

ドキュメント

ACK SageMaker Controller での機械学習