ML ワークフローをスケジュールする - Amazon SageMaker

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ML ワークフローをスケジュールする

Amazon SageMaker を使用すると、データセットの作成、データ変換の実行、データからのモデルの構築、推論のためにモデルをエンドポイントにデプロイする際に、ML ワークフロー全体を管理できます。ワークフローのステップのサブセットを定期的に実行する場合は、これらのステップをスケジュールどおりに実行することもできます。例えば、Canvas でジョブをスケジュールして、1 SageMaker 時間ごとに新しいデータで変換を実行することができます。別のシナリオでは、デプロイされたモデルのモデルドリフトをモニタリングするために毎週ジョブをスケジュールできます。任意の時間間隔の定期的なスケジュールを指定できます。1 秒ごと、1 分ごと、毎日、毎週、毎月、または毎月第 3 金曜日の午後 3 時に繰り返すことができます。

次のシナリオでは、ユースケースに応じて利用可能なオプションをまとめます。
  • ユースケース 1: ノーコード環境で ML ワークフローを構築してスケジュールします。初心者や を初めて使用する場合は SageMaker、Amazon SageMaker Canvas を使用して ML ワークフローを構築し、Canvas UI ベースのスケジューラを使用してスケジュールされた実行を作成できます。

  • ユースケース 2: 単一の Jupyter ノートブックでワークフローを構築し、ノーコードスケジューラ を使用します。経験豊富な ML 実務者は、コードを使用して Jupyter ノートブックで ML ワークフローを構築し、ノートブックジョブウィジェットで使用できるコードなしスケジューリングオプションを使用できます。ML ワークフローが複数の Jupyter ノートブックで構成されている場合は、ユースケース 3 でSDK説明されている Pipelines Python のスケジューリング機能を使用できます。

  • ユースケース 3: Pipelines を使用して ML ワークフローを構築してスケジュールします。上級ユーザーは、パイプラインで使用できる Amazon SageMaker Python SDK または Amazon EventBridge スケジューリングオプションを使用できます。Amazon などのさまざまな SageMaker 機能や AWS サービスを持つオペレーションを含むステップで構成される ML ワークフローを構築できますEMR。

ユースケース 1 ユースケース 2 ユースケース 3
SageMaker 機能 Amazon SageMaker Canvas データ処理と ML ワークフローのスケジュール ノートブックジョブスケジュールウィジェット (UI) Pipelines Python SDKスケジューリングオプション
説明 Amazon SageMaker Canvas では、データ処理ステップの自動実行をスケジュールし、別の手順でデータセットの自動更新をスケジュールできます。特定のデータセットが更新されるたびにバッチ予測を実行する設定を設定することで、ML ワークフロー全体を間接的にスケジュールすることもできます。自動データ処理とデータセットの更新の両方について、 SageMaker Canvas は、開始日と実行間隔 (データ処理ステップをスケジュールする場合は cron 式) を選択する基本的なフォームを提供します。データ処理ステップをスケジュールする方法の詳細については、「」を参照してください新しいデータを自動的に処理するスケジュールを作成する。データセットとバッチ予測の更新をスケジュールする方法については、「」を参照してくださいオートメーションを管理する方法 データ処理とパイプラインワークフローを単一の Jupyter ノートブックに構築した場合は、ノートブックジョブウィジェットを使用して、ノートブックをオンデマンドまたはスケジュールで実行できます。Notebook Jobs ウィジェットには、コンピューティングタイプ、実行スケジュール、およびオプションのカスタム設定を指定する基本的なフォームが表示されます。実行スケジュールを定義するには、時間ベースの間隔を選択するか、cron 式を挿入します。ウィジェットは Studio に自動的にインストールされます。または、この機能をローカル JupyterLab 環境で使用するために追加のインストールを実行できます。ノートブックジョブの詳細については、「」を参照してくださいSageMaker ノートブックジョブ Pipelines で ML ワークフローを実装した場合は、 SageMaker SDKのスケジューリング機能を使用できます。パイプラインには、微調整、データ処理、デプロイなどのステップを含めることができます。Pipelines は、パイプラインをスケジュールする 2 つの方法をサポートしています。Amazon EventBridge ルールを作成するか、 SageMaker SDKコンPipelineScheduleストラクターを使用してスケジュールを定義できます。Pipelines で使用できるスケジューリングオプションの詳細については、「」を参照してくださいパイプライン実行をスケジュールする
最適化対象 SageMaker Canvas ML ワークフローのスケジュールオプションを提供します Jupyter ノートブックベースの ML ワークフローに UI ベースのスケジューリングオプションを提供します ML ワークフローの または EventBridge スケジューリングオプションを提供します SageMaker SDK
考慮事項 Canvas ノーコードフレームワークを使用してワークフローをスケジュールできますが、データセットの更新とバッチ変換の更新では最大 5GB のデータを処理することができます。 UI ベースのスケジューリングフォームを使用して 1 つのノートブックをスケジュールできますが、同じジョブで複数のノートブックをスケジュールすることはできません。複数のノートブックをスケジュールするには、ユースケース 3 で説明されている Pipelines SDKコードベースのソリューションを使用します。 Pipelines が提供するより高度な (SDKベース) スケジューリング機能を使用できますが、UI ベースのオプションのメニューから選択するのではなく、APIドキュメントを参照して正しいオプションを指定する必要があります。
推奨環境 Amazon SageMaker Canvas Studio、ローカル JupyterLab 環境 Studio、ローカル JupyterLab 環境、任意のコードエディタ

追加リソース

SageMaker では、ワークフローをスケジュールするための以下の追加オプションが用意されています。
  • Amazon EventBridge Scheduler とは このセクションで説明するスケジューリングオプションには、 SageMaker Canvas、Studio、および SageMaker Python で利用可能な構築済みオプションが含まれますSDK。すべてのオプションは Amazon の機能を拡張し EventBridge、 を使用して独自のカスタムスケジューリングソリューションを作成することもできます EventBridge。

  • Feature Processor パイプラインのスケジュールされた実行とイベントベースの実行。 Amazon SageMaker Feature Store 機能処理では、機能処理パイプラインをスケジュールどおりに実行するように、または別の AWS サービスイベントの結果として実行するように設定できます。