AWS認定資格 WEB問題集&徹底解説

機械学習エンジニア–アソシエイト

正解 A問題
分野3:ML ワークフローのデプロイとオーケストレーション タスクステートメント3.1:既存アーキテクチャと要件に基づくデプロイインフラの選択 タスクステートメント3.3:自動オーケストレーションツールによる CI/CD パイプラインの構築
合格に向けて、もっと深く学習する
豊富な問題と詳細なAWSサービス解説を、24時間無料でお試しいただけます
プレミアム会員機能を無料で試す ❯
問題文と選択肢
ある製造業企業において、機械学習エンジニアは生産ラインの稼働状況を予測するシステム構築を任されています。このシステムは、センサーデータの前処理、異常検知モデルのトレーニング、モデルのハイパーパラメータ調整、そして本番環境へのデプロイまでを網羅するエンドツーエンドのMLワークフローとして構築される必要があります。さらに、新たなセンサーデータが継続的に発生するため、運用開始後も自動的にモデルを定期的に再トレーニングし、更新する機能が求められます。このワークフローは、運用のオーバーヘッドを最小限に抑えつつ、高いスケーラビリティと信頼性を確保し、管理しやすい状態を維持することが重要です。この要件を満たすMLワークフローのオーケストレーションにおいて、最も効果的なAWSソリューションはどれですか。
  • エンドツーエンドの機械学習ワークフロー全体をAmazon SageMaker Pipelinesで構築し、データ処理、モデルトレーニング、ハイパーパラメータチューニング、モデルデプロイの各ステージを統合的にオーケストレーションする。
  • AWS Glueを利用してデータ前処理を行い、Amazon SageMakerでモデルをトレーニングおよびハイパーパラメータ調整を実施した後、結果を手動でAmazon EC2インスタンスにデプロイして推論を実行する。
  • すべてのMLワークフローステップをAmazon EC2上で個別にカスタムスクリプトとして実行し、Amazon S3に中間データを保存する。モデルのデプロイにはAmazon SageMaker Endpointを使用する。
  • AWS Step Functionsを用いてワークフローの各ステップを定義し、AWS Lambdaでデータ前処理、Amazon SageMakerでモデルのトレーニングとデプロイを行うためのジョブを個別に呼び出す。
解説 頻出度★★★★★
この問題は、「エンドツーエンドの ML ワークフロー × 定期的な自動再トレーニング × 運用オーバーヘッド最小」の要件で、ML 専用のオーケストレーションサービスである Amazon SageMaker Pipelines を選べるかがポイント
正解

A. エンドツーエンドの機械学習ワークフロー全体をAmazon SageMaker Pipelinesで構築し、データ処理、モデルトレーニング、ハイパーパラメータチューニング、モデルデプロイの各ステージを統合的にオーケストレーションする。

Amazon SageMaker Pipelines は、ML 開発の自動化に特化したワークフローオーケストレーションサービスです。データ処理(Processing)、トレーニング(Training)、ハイパーパラメータ調整(Tuning)、モデル評価、モデル登録、デプロイまでを1 本のパイプラインとしてコードで定義でき、本問の全ステージがそのままステップに対応します。
実行基盤はサーバーレスで自動プロビジョニング・自動スケールされるため、インフラ管理という運用オーバーヘッドが発生しません。
さらにパイプラインのバージョニングとリネージ追跡が組み込まれており、定期的な再トレーニングを繰り返しても「どのデータでどのモデルが作られたか」を追跡できます。要件(自動化・スケーラビリティ・信頼性・低運用負荷)をすべて満たす唯一の選択肢です。

B. AWS Glueを利用してデータ前処理を行い、Amazon SageMakerでモデルをトレーニングおよびハイパーパラメータ調整を実施した後、結果を手動でAmazon EC2インスタンスにデプロイして推論を実行する。

AWS Glue で前処理、Amazon SageMaker で学習・チューニングという前半は妥当ですが、デプロイを手動で Amazon EC2 に行う点が致命的です。
本問は「運用開始後も自動的に定期再トレーニングし、更新する」ことを要求しており、再トレーニングのたびに人手の作業が入る構成は自動化の要件を満たしません
加えて推論基盤を EC2 で自前運用すればスケーリング・パッチ適用・可用性確保の負荷も増え、「運用オーバーヘッド最小」から最も遠い構成になります。

C. すべてのMLワークフローステップをAmazon EC2上で個別にカスタムスクリプトとして実行し、Amazon S3に中間データを保存する。モデルのデプロイにはAmazon SageMaker Endpointを使用する。

すべてのステップを Amazon EC2 上のカスタムスクリプトで個別実行する構成は、ジョブのスケジューリング・失敗時のリトライ・依存関係管理・スケーリングをすべて自作することになります。
中間データを Amazon S3 に置いても、パイプラインとしての再現性やリネージ追跡は得られません。
デプロイ先に SageMaker Endpoint を使う点だけはマネージドですが、ワークフロー全体の運用負荷は 4 択中で最大であり、「管理しやすい状態を維持する」という要件に真っ向から反します。

D. AWS Step Functionsを用いてワークフローの各ステップを定義し、AWS Lambdaでデータ前処理、Amazon SageMakerでモデルのトレーニングとデプロイを行うためのジョブを個別に呼び出す。

AWS Step Functions は汎用のオーケストレーションサービスで、SageMaker ジョブの呼び出しも可能なため一見成立します。実際、複数の AWS サービスをまたぐ広範なワークフローでは有力な選択肢です。
しかし本問はML ワークフロー内で完結する構成であり、ハイパーパラメータチューニング・モデル登録・リネージ追跡といった ML 固有の要素を Step Functions で組む場合、Lambda 関数や状態遷移を自前で設計・保守する必要があります。
ML 専用に設計され、これらを標準ステップとして持つ SageMaker Pipelines のほうが「最も効果的」=構築・運用の負荷が小さいため、本問では次点にとどまります。

構成図

センサーデータ(Amazon S3)
   │
   ▼
Amazon SageMaker Pipelines
   前処理 ─▶ トレーニング ─▶ ハイパーパラメータ調整 ─▶ モデル登録 ─▶ デプロイ
   ▲
   └── 定期実行トリガーで自動再トレーニング
これだけ覚える(記憶フック)
ML パイプラインの本命は SageMaker Pipelines。手動デプロイ・自前スクリプトが混ざった時点で失格。
正解への思考ルート 問題文から要件を抽出し、選択肢の適否を判断するのがポイントです。
要件 判断ポイント
前処理・トレーニング・チューニング・デプロイのエンドツーエンド 各ステージを標準ステップとして持つ ML 専用サービスが本命。汎用オーケストレーターでは自前設計が増える
→選択肢(A)が正解/選択肢(D)は候補
運用開始後も自動的に定期再トレーニングして更新する 手動デプロイが 1 か所でも混ざれば自動化は破綻する
→選択肢(B)を消す
運用のオーバーヘッドを最小限に抑える 自前スクリプト+EC2 運用は、スケジューリング・リトライ・スケーリングをすべて自作することになる
→選択肢(C)を消す
高いスケーラビリティと信頼性、管理しやすさ SageMaker Pipelines はサーバーレス実行・バージョニング・リネージ追跡が組み込み
→選択肢(A)が正解
「最も効果的な」ソリューションを 1 つ選ぶ Step Functions でも実装可能だが、ML 固有ステップの作り込みが必要で相対的に負荷が大きい
→選択肢(D)を消す
ひっかけポイント
  • 選択肢 D の AWS Step Functions は「誤りではないが最適ではない」典型の引っかけ。ML ワークフロー内で完結する要件なら SageMaker Pipelines が上位互換
  • 選択肢 B は前半(Glue で前処理、SageMaker で学習)が正しいので目が留まるが、後半の「手動でデプロイ」の一語だけで自動化要件から外れる。選択肢は最後まで読む
  • 選択肢 C の「デプロイには SageMaker Endpoint を使用」もマネージドに見えるが、ワークフロー全体は EC2 上の自前スクリプトのまま。部分的なマネージド化は要件を満たさない
  • 「継続的に発生するデータで定期再トレーニング」は MLOps/パイプライン系の出題シグナル。この語が出たら SageMaker Pipelines を第一候補に置く
出題バリエーション 同じ知識が本番では条件を変えて出題されます。
問題文がこう変わったら 正解はこう変わる
「ML ステップに加えて、外部 API 呼び出しや承認待ち、複数サービスをまたぐ広範な業務フローも含めたい」 AWS Step Functions が正解軸に。ML 外の分岐・待機・人的承認は汎用オーケストレーターの土俵。
Apache Airflow の DAG 資産をそのまま活かして ML ワークフローを運用したい」 Amazon MWAA(Managed Workflows for Apache Airflow)が正解に浮上。
「デプロイ済みモデルのデータドリフト・精度劣化を検知して再トレーニングの契機としたい」 SageMaker Model Monitor(+ EventBridge でパイプライン起動)が正解軸に。
「コードのコミットを契機にモデルのビルド・テスト・デプロイを CI/CD で回したい SageMaker Projects(CodePipeline / CodeBuild 連携の MLOps テンプレート)が登場する。
「ML の知識が浅い担当者がノーコードでモデルを作りたい SageMaker CanvasSageMaker Autopilot が正解軸に。
関連サービスの解説 Amazon SageMaker
AWS Step Functions
リファレンス この問題を解くために必要な知識を扱う公式ドキュメントです。
知識項目 公式ドキュメント
ML ワークフローのオーケストレーション(前処理〜デプロイの自動化・リネージ追跡) Pipelines - Amazon SageMaker AI
+ 質問 / コメント
解答・解説に疑問がある場合や、よりよい解説がある場合など、お気軽にコメントください。ただし、短文コメントは表示されません。また、中傷などコメントの内容によっては、会員機能を停止させて頂きます。教え学び合える場になれば嬉しいです。(コメント投稿にはログインが必要です)
正答率 86%
No.11 解説
ある製造業企業において、機械学習エンジニアは生産ラインの稼働状況を予測するシステム構築を任されています。このシステムは、センサーデータの前処理、異常検知モデルのトレーニング、モデルのハイパーパラメータ調整、そして本番環境へのデプロイまでを網羅するエンドツーエンドのMLワークフローとして構築される必要があります。さらに、新たなセンサーデータが継続的に発生するため、運用開始後も自動的にモデルを定期的に再トレーニングし、更新する機能が求められます。このワークフローは、運用のオーバーヘッドを最小限に抑えつつ、高いスケーラビリティと信頼性を確保し、管理しやすい状態を維持することが重要です。この要件を満たすMLワークフローのオーケストレーションにおいて、最も効果的なAWSソリューションはどれですか。
  • エンドツーエンドの機械学習ワークフロー全体をAmazon SageMaker Pipelinesで構築し、データ処理、モデルトレーニング、ハイパーパラメータチューニング、モデルデプロイの各ステージを統合的にオーケストレーションする。
  • AWS Glueを利用してデータ前処理を行い、Amazon SageMakerでモデルをトレーニングおよびハイパーパラメータ調整を実施した後、結果を手動でAmazon EC2インスタンスにデプロイして推論を実行する。
  • すべてのMLワークフローステップをAmazon EC2上で個別にカスタムスクリプトとして実行し、Amazon S3に中間データを保存する。モデルのデプロイにはAmazon SageMaker Endpointを使用する。
  • AWS Step Functionsを用いてワークフローの各ステップを定義し、AWS Lambdaでデータ前処理、Amazon SageMakerでモデルのトレーニングとデプロイを行うためのジョブを個別に呼び出す。

(会員限定)当問題の評価をお願いします。改善に活用します。