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

ソリューションアーキテクト – アソシエイト

Amazon SageMaker の概要と試験出題ポイントは?

AWSサービスの一つであるAmazon SageMakerはどんな内容なのでしょうか?また、AWS認定資格のソリューションアーキテクト-アソシエイト(SAA)に合格するためには、サービスのどんなポイントを押さえておけばよいのでしょうか?
ここでは、そんなあなたの疑問に回答していきたいと思います

Amazon SageMaker AI 徹底解説 | AWS認定試験の頻出ポイントまとめ

1. サービス概要

Amazon SageMaker AIは、機械学習(ML)モデルの構築、データ準備、トレーニング、チューニング、デプロイ、監視を支援するフルマネージドサービスです。 2024年12月に従来のAmazon SageMakerはAmazon SageMaker AIへ名称変更されましたが、AWS CLI、API、CloudFormationリソース、IAM管理ポリシーなどの名前空間は互換性のため引き続きsagemakerAWS::SageMakerを使用します。

「Amazon SageMaker」はデータ、分析、AIを統合する大きなプラットフォーム名として使われ、その中のML構築・学習・推論機能がSageMaker AIです。 認定試験では、SageMaker AIを「自前でML基盤を構築せずにモデル開発ライフサイクルを管理するサービス」と捉え、Amazon Bedrock(基盤モデルをAPIで使う生成AIサービス)との違いを押さえることが重要です。

2. 主な特徴と機能

2.1 開発環境とノーコード/ローコード

SageMaker Studioはノートブック、コードエディタ、実験管理、モデル登録、推論設定などをまとめて扱える統合開発環境です。 SageMaker Canvasはコードを書かずに予測モデルや生成AI連携を試せるビジネスユーザー向け機能で、Autopilotは表形式データなどからアルゴリズム選択、特徴量処理、ハイパーパラメータ探索を自動化します。

2.2 トレーニングとチューニング

トレーニングジョブはS3/EFS/FSxなどのデータを読み込み、組み込みアルゴリズム、組み込みコンテナ、独自コンテナ、PyTorch/TensorFlowなどのフレームワークを使って実行します。 分散トレーニング、スポットトレーニング、Managed Warm Pools、デバッガー、Automatic Model Tuningにより、学習時間とコストを最適化できます。

2.3 推論オプション

推論は、低遅延のリアルタイムエンドポイント、アクセスが不定期なServerless Inference、大きな入力や長時間処理に向くAsynchronous Inference、オフライン一括処理のBatch Transformを使い分けます。 1つのエンドポイントで複数モデルを扱うMulti-Model Endpointや、GPU共有を効率化するMulti-Container/Inference Componentsもコスト最適化で重要です。

2.4 MLOpsとガバナンス

SageMaker Pipelinesはデータ処理、学習、評価、登録、承認、デプロイをワークフロー化します。 Model Registryでモデルバージョンと承認状態を管理し、Model Cardsで用途・制約・評価結果を文書化できます。Feature Storeは学習時と推論時で同じ特徴量を再利用するためのオンライン/オフラインストアを提供します。

2.5 監視・説明可能性・品質管理

Model Monitorはデータ品質、モデル品質、バイアス、特徴量アトリビューションのドリフトを検出します。 SageMaker Clarifyはバイアス検出と説明可能性、Debuggerは学習中のテンソルやシステムメトリクスを分析します。CloudWatchメトリクス/ログと組み合わせて、精度低下やリソース逼迫を検知します。

2.6 データラベリングとデータ処理

Ground Truthは人手・自動ラベリングを組み合わせて教師データを作成します。 Processing Jobsは前処理、特徴量作成、評価、バッチETLに使え、SageMaker Data WranglerやSpark/Rayなどと組み合わせて大規模データを扱えます。

3. アーキテクチャおよび技術要素

  1. 学習データをS3、EFS、FSx for Lustreなどに配置し、必要に応じてGround TruthやProcessing Jobsで整備する。
  2. StudioまたはSDK/CLIからトレーニングジョブを起動し、ECR上のコンテナと指定インスタンスで学習する。
  3. 学習済みアーティファクトをS3に保存し、評価結果とともにModel Registryへ登録する。
  4. PipelinesやCI/CDで承認済みモデルをリアルタイム、サーバーレス、非同期、バッチのいずれかへデプロイする。
  5. CloudWatch、Model Monitor、Clarifyで性能・品質・バイアス・ドリフトを監視し、必要に応じて再学習する。
  6. IAM実行ロール、KMS、VPC設定、ネットワーク分離でデータとモデルを保護する。

試験では「トレーニングはジョブ単位、推論は用途に応じたエンドポイント/バッチ単位」と整理すると、設計問題で選択しやすくなります。

4. セキュリティと認証・認可

  • IAM実行ロール: SageMaker AIがS3、ECR、CloudWatch、KMSなどへアクセスするためのロール。最小権限で付与する。
  • VPC内実行: ノートブック、トレーニング、推論をVPCサブネット内に配置し、セキュリティグループやVPCエンドポイントで閉域化できる。
  • ネットワーク分離: トレーニングコンテナの外部ネットワークアクセスを遮断し、機密データの持ち出しを抑制する。
  • 暗号化: S3学習データ、モデルアーティファクト、EBSボリューム、Feature StoreなどでKMSキーを指定できる。転送中はTLSで保護する。
  • 監査: CloudTrailでAPI操作を記録し、CloudWatch Logsでジョブ/エンドポイントログを確認する。
  • ライフサイクル設定: Studio/Notebookインスタンスの起動スクリプトで標準設定を適用できるが、権限やシークレットの扱いに注意する。

5. 料金形態

SageMaker AIは、利用したリソースに基づく従量課金です。学習・推論リソースを停止し忘れるとコストが増えやすいため、試験でもコスト最適化の観点で問われます。

  • トレーニング: インスタンスタイプ、台数、実行時間、ストレージ、データ転送に応じて課金。Managed Spot Trainingで中断を許容できる学習コストを削減できる。
  • 推論: リアルタイム/非同期エンドポイントは稼働時間、Serverless Inferenceはリクエストと実行時間、Batch Transformは処理時間で課金される。
  • 開発環境: Studioアプリ、ノートブック、Canvasなどの利用時間と関連ストレージが課金対象になる。
  • MLOps/監視: Feature Store、Model Monitor、Clarify、Pipelines、Data Wranglerなどは利用リソースや保存量に応じて課金される。
  • コスト削減: 不要なエンドポイント停止、Serverless/Batchの選択、スポット学習、適切なインスタンス選定、オートスケーリングを組み合わせる。

6. よくあるアーキテクチャ・設計パターン

  • 標準MLパイプライン: S3にデータを置き、Processing Jobsで前処理、Training Jobsで学習、Model Registryで承認、Endpointへデプロイする。
  • 低遅延推論API: アプリケーションがリアルタイムエンドポイントを呼び出し、Application Auto Scalingで負荷に応じてスケールする。
  • 不定期推論: トラフィックが少ない/断続的な場合はServerless Inferenceを使い、常時起動コストを避ける。
  • 大きなペイロードや長時間推論: Asynchronous InferenceでリクエストをS3経由にし、処理完了をSNS/EventBridgeなどで受ける。
  • 一括スコアリング: 夜間バッチや大量データの推論はBatch Transformを選び、エンドポイント常時稼働を避ける。
  • ガバナンス重視MLOps: Pipelines、Model Registry、Model Cards、Clarify、CloudTrailで承認・説明可能性・監査証跡を整える。

7. 設定・デプロイ手順(ハンズオン例)

  1. S3バケットに学習データを配置し、SageMaker AI用のIAM実行ロールを作成する。
  2. Studioを開き、ノートブックまたはSDKでデータ確認と前処理を行う。
  3. 組み込みアルゴリズムまたは独自コンテナを指定してトレーニングジョブを実行する。
  4. 評価メトリクスを確認し、必要に応じてAutomatic Model TuningやAutopilotを利用する。
  5. モデルをModel Registryへ登録し、承認後にリアルタイム/サーバーレス/非同期/バッチの方式を選んでデプロイする。
  6. CloudWatch、Model Monitor、Clarifyで運用監視し、ドリフトや精度低下を検知したらPipelinesで再学習する。

8. 試験で問われやすいポイント

8.1 サービス選択

  • Q: SageMaker AIは何をするサービス?
    A: 機械学習モデルの構築、トレーニング、チューニング、デプロイ、監視をフルマネージドで支援するサービス。
  • Q: Amazon Bedrockとの違いは?
    A: Bedrockは基盤モデルをAPIで利用して生成AIアプリを作るサービス、SageMaker AIは独自MLモデルの開発・学習・推論・MLOpsを管理するサービス。
  • Q: 2024年の名称変更で試験上注意する点は?
    A: サービス名はAmazon SageMaker AIだが、API/CLI/CloudFormation/IAMなどの名前空間は従来のSageMaker表記が残る。

8.2 トレーニングとデータ準備

  • Q: 教師データのラベリングを効率化するには?
    A: SageMaker Ground Truthを使い、人手ラベリングと自動ラベリングを組み合わせる。
  • Q: 学習前の前処理や評価処理をマネージドに実行するには?
    A: SageMaker Processing Jobsを使う。
  • Q: 学習コストを下げたいが中断を許容できる場合は?
    A: Managed Spot Trainingを使う。
  • Q: ハイパーパラメータを自動探索したい場合は?
    A: Automatic Model Tuningを使う。
  • Q: ML知識が少ないユーザーが表形式データからモデルを自動作成するには?
    A: SageMaker AutopilotまたはCanvasを検討する。

8.3 推論方式の選択

  • Q: ミリ秒から秒単位の低遅延推論APIが必要な場合は?
    A: リアルタイムエンドポイントを使う。
  • Q: リクエストが少なく不定期で、常時起動コストを避けたい場合は?
    A: Serverless Inferenceを使う。
  • Q: 入力が大きい、処理が長い、即時応答が不要な推論は?
    A: Asynchronous Inferenceを使う。
  • Q: 大量データを一括でスコアリングしたい場合は?
    A: Batch Transformを使う。
  • Q: 多数の小規模モデルを1つの推論基盤で低コスト運用したい場合は?
    A: Multi-Model Endpointを使う。

8.4 MLOpsと監視

  • Q: MLワークフローをCI/CDのように自動化するには?
    A: SageMaker Pipelinesを使う。
  • Q: 承認済みモデルのバージョン管理をするには?
    A: Model Registryを使う。
  • Q: 推論後にデータ品質やドリフトを検知するには?
    A: SageMaker Model Monitorを使う。
  • Q: バイアス検出や説明可能性を確認するには?
    A: SageMaker Clarifyを使う。
  • Q: 学習中の問題やリソース使用状況を分析するには?
    A: SageMaker DebuggerとCloudWatchを使う。

8.5 セキュリティとコスト

  • Q: SageMaker AIがS3やECRへアクセスする権限は何で付与する?
    A: IAM実行ロールで最小権限を付与する。
  • Q: 学習データやモデルを閉域で扱いたい場合は?
    A: VPC内実行、VPCエンドポイント、セキュリティグループ、ネットワーク分離、KMS暗号化を組み合わせる。
  • Q: 使っていない推論エンドポイントで注意すべきことは?
    A: リアルタイム/非同期エンドポイントは起動中に課金されるため、不要なら停止・削除する。
  • Q: 学習時と推論時で同じ特徴量を再利用したい場合は?
    A: SageMaker Feature Storeを使う。