翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
デベロAWSッパーツール SageMaker を使用して ML のビルド、トレーニング、デプロイワークロードを Amazon に移行する
作成者: Scot Marvin (AWS)
R タイプ: リプラットフォーム | ソース: 機械学習 | ターゲット: Amazon SageMaker |
作成者: AWS | 環境:PoC またはパイロット | テクノロジー: 機械学習と AI DevOps;; 移行 |
AWS サービス: Amazon SageMaker |
[概要]
このパターンは、Unix または Linux サーバーで実行されているオンプレミス機械学習 (ML) アプリケーションを移行し、Amazon AWSを使用してトレーニングおよびデプロイするためのガイダンスを提供します SageMaker。たとえば、継続的な統合や継続的なデプロイ (CI/CD) パイプラインを使用している場合です。移行パターンはAWS CloudFormation スタックを使用してデプロイされます。
前提条件と制限
前提条件
AWS ランディングゾーン
を使用するアクティブなAWSアカウント Unix または Linux サーバーにインストールおよび設定されたAWSコマンドラインインターフェイス (AWS CLI)
GitHub、AWS CodeCommit、または Amazon Simple Storage Service (Amazon S3) のいずれかの ML ソースコードリポジトリ
機能制限
1 つのAWSリージョンにデプロイできるパイプラインは 300 個のみです。
このパターンは、Python でコードを使用する train-and-deploy教師あり ML ワークロードを対象としています。
製品バージョン
Python 3.6x を使用する Docker バージョン 19.03.5、ビルド 633a0ea
アーキテクチャ
ソーステクノロジースタック
ローカルファイルシステムまたはリレーショナルデータベース内のデータを含むオンプレミスの Linux コンピュートインスタンス
ソースアーキテクチャ
ターゲットテクノロジースタック
AWS CodePipeline パイプラインの実行を追跡またはログ記録するためのメタデータストアとして、データストレージ用の Amazon S3 と Amazon DynamoDB でデプロイ
ターゲット アーキテクチャ
アプリケーション移行アーキテクチャ
ネイティブ Python パッケージとAWS CodeCommit リポジトリ (およびデータベースインスタンス上のオンプレミスデータセット用のSQLクライアント)
ツール
Python
Git
AWS CLI – はAWS CloudFormation スタックをAWSCLI
デプロイし、データを S3 バケットに移動します。それを受けてS3 バケットはターゲットに移動します。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
ソースコードとデータセットを検証します。 | データサイエンティスト | |
ターゲットのビルド、トレーニング、デプロイのインスタンスタイプとサイズを特定します。 | データエンジニア、データサイエンティスト | |
機能リストと容量要件を作成します。 | ||
ネットワーク要件を特定します。 | DBA、システム管理者 | |
ソースアプリケーションとターゲットアプリケーションのネットワークまたはホストアクセスセキュリティ要件を特定します。 | データエンジニア、ML エンジニア、システム管理者 | |
バックアップ戦略を決定します。 | ML エンジニア、システム管理者 | |
可用性の要件を決定します。 | ML エンジニア、システム管理者 | |
アプリケーションの移行またはスイッチオーバー戦略を特定します。 | データサイエンティスト、ML エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
仮想プライベートクラウド () を作成しますVPC。 | ML エンジニア、システム管理者 | |
セキュリティグループを作成します。 | ML エンジニア、システム管理者 | |
ML コード用に Amazon S3 バケットとAWS CodeCommit リポジトリブランチを設定します。 | ML エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
ネイティブの MySQL ツールまたはサードパーティーのツールを使用して、トレーニング、検証、およびテストデータセットをプロビジョニングされた S3 バケットに移行します。 | これはAWS CloudFormation スタックのデプロイに必要です。 | データエンジニア、ML エンジニア |
ML トレーニングとホスティングコードを Python パッケージとしてパッケージ化し、 AWS CodeCommit または のプロビジョニングされたリポジトリにプッシュします GitHub。 | テンプレートを移行AWS CloudFormation 用にデプロイするには、リポジトリのブランチ名が必要です。 | データサイエンティスト、ML エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
ML ワークロードの移行戦略に従います。 | アプリ所有者、ML エンジニア | |
AWS CloudFormation スタックをデプロイします。 | AWS CLI を使用して、このソリューションに付属しているYAMLテンプレートで宣言されたスタックを作成します。 | データサイエンティスト、ML エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
アプリケーションクライアントを新しいインフラストラクチャに切り替えます。 | アプリ所有者、データサイエンティスト、ML エンジニア |
タスク | 説明 | 必要なスキル |
---|---|---|
一時AWSリソースをシャットダウンします。 | AWS CloudFormation テンプレートからカスタムリソースをシャットダウンします (使用されていない AWS Lambda 関数など)。 | データサイエンティスト、ML エンジニア |
プロジェクト文書を確認して検証する。 | アプリ所有者、データサイエンティスト | |
結果と ML モデルの評価指標をオペレーターと検証します。 | モデルのパフォーマンスがアプリケーションユーザーの期待と一致し、オンプレミスの状態と同等であることを確認します。 | アプリ所有者、データサイエンティスト |
プロジェクトを終了し、フィードバックを提供します。 | アプリ所有者、ML エンジニア |
関連リソース
添付ファイル
このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip」