0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AWS MLA

0
Posted at
AWS Certified Machine Learning Engineer - Associate (MLA-C01) 完全まとめシート

📘 AWS Certified Machine Learning Engineer - Associate (MLA-C01) 完全まとめシート

🎯 試験概要

項目 内容
試験コード MLA-C01
試験時間 130分
問題数 65問(うち50問が採点対象、15問は未採点)
合格スコア 720/1000
形式 選択式・複数選択式・順序付け・マッチング・ケーススタディ

配点比率(最重要:時間配分の基準)

分野 比率 内容
分野1 28% MLのためのデータ準備
分野2 26% MLモデルの開発
分野3 22% MLワークフローのデプロイ・オーケストレーション
分野4 24% ML ソリューションのモニタリング・保守・セキュリティ

📦 コンテンツ分野1: MLのためのデータ準備(28%)

1.1 データの取り込みと保存

🗂️ データフォーマット完全比較表

フォーマット 種類 特徴 ユースケース SageMaker対応
CSV(Comma-Separated Values:カンマ区切り) 行指向・テキスト 人間可読、スキーマなし、圧縮効率低 小規模データ、表形式 ◎(多くの組み込みアルゴリズム対応)
JSON(JavaScript Object Notation) 行指向・テキスト 階層構造、半構造化、冗長 API、ログ、NoSQL
JSON Lines (JSONL) 行指向 1行1JSON、ストリーミング向き 大規模ログ、ML入出力
Parquet(パーケイ) 列指向・バイナリ 圧縮率高、列単位アクセス高速、スキーマ内蔵 分析、ビッグデータ、Athena/Redshift Spectrum
ORC(Optimized Row Columnar:最適化行列指向) 列指向・バイナリ Hive最適化、述語プッシュダウン、ACID Hive、Hadoopエコシステム
Avro(アヴロ) 行指向・バイナリ スキーマ進化対応、Kafka標準 ストリーミング、メッセージング
RecordIO-Protobuf バイナリ SageMaker組み込み向け、Pipe Mode最速 SageMaker組み込みアルゴリズム
TFRecord バイナリ TensorFlow標準 TF DLトレーニング
libsvm テキスト スパースデータ向け XGBoost、Linear Learner
🔑 紛らわしい! Parquet vs ORC
観点 Parquet ORC
エコシステム Spark / Hadoop / Athena 標準 Hive 最適化
圧縮 Snappy、Gzip、LZO Zlib、Snappy
ネストデータ 強い やや弱い
AWS推奨 Athena・Glue で主流 Hive on EMR で主流
試験での選び方 「Athena」「分析クエリ」「Spark」→ Parquet 「Hive」「ACID必要」→ ORC
💡 行指向 vs 列指向 覚え方
  • 行指向(CSV、JSON、Avro): トランザクション・ストリーミング向け。1行全部を読む処理が速い
  • 列指向(Parquet、ORC): 分析向け。特定列だけ集計する処理が速い、圧縮が効く
⚠️ 試験頻出:RecordIO-Protobuf
  • SageMaker組み込みアルゴリズム(XGBoost以外)の推奨フォーマット
  • Pipe Mode(パイプモード)で使用すると、S3から直接ストリーミングして高速トレーニング
  • File Mode との違い:File ModeはEBSにダウンロード→読み込み、Pipe Modeはストリーム

🪣 AWSストレージサービス完全比較

サービス 種類 レイテンシ スケール 主用途 ML向け
Amazon S3 オブジェクト 高(数十ms) 無制限 データレイク、長期保管 データレイク基盤
Amazon EBS(Elastic Block Store) ブロック 低(< 1ms) TB級 単一EC2アタッチ トレーニングインスタンスの一時データ
Amazon EFS(Elastic File System) ファイル(NFS) 低〜中 PB級 複数AZ共有 ノートブック共有、複数トレーニングジョブ
Amazon FSx for Lustre(ラスター) ファイル(並列FS) 超低 PB級 HPC・ML 大規模トレーニング最速、S3連携可
Amazon FSx for NetApp ONTAP ファイル(NFS/SMB) PB級 エンタープライズNAS レガシー連携
Amazon FSx for Windows File Server ファイル(SMB) PB級 Windows共有 .NETアプリ連携
🔑 紛らわしい! S3 vs EFS vs FSx for Lustre(試験超頻出)
シナリオ 答え 理由
ペタバイト級のトレーニングデータを最高速で読みたい FSx for Lustre 並列ファイルシステム、サブミリ秒レイテンシ、S3とシームレス連携
複数のノートブック・トレーニングジョブから同じデータを共有 EFS NFSベース、複数同時マウント
安価に大量データを長期保管 S3 コスト最安、ライフサイクル対応
単一トレーニングインスタンス用の一時データ EBS 低レイテンシだが単一アタッチのみ
💡 S3関連の重要機能
機能 説明 ユースケース
S3 Transfer Acceleration(転送高速化) CloudFrontエッジ経由で長距離転送を高速化 リモート拠点からの大容量アップロード
Multipart Upload(マルチパートアップロード) 大ファイルを分割アップロード 100MB以上推奨、5GB以上必須
S3 Select / Glacier Select SQLクエリでオブジェクト内データ抽出 コスト削減、データ転送削減
VPC Gateway Endpoint プライベートにS3アクセス セキュリティ要件

S3ストレージクラス比較

クラス 用途 最小保存期間 取り出し時間 コスト
Standard 頻繁アクセス なし 即時
Intelligent-Tiering 自動最適化 なし 即時 自動調整
Standard-IA(Infrequent Access) 月1回未満 30日 即時
One Zone-IA 月1回未満・再生成可能 30日 即時 中(安)
Glacier Instant Retrieval 四半期アクセス 90日 ms
Glacier Flexible Retrieval 年数回 90日 1分〜12時間 超低
Glacier Deep Archive 年1回以下 180日 12〜48時間 最低
💡 EBSボリュームタイプ
タイプ 用途 IOPS
gp3 / gp2(General Purpose SSD) 汎用
io2 / io1(Provisioned IOPS SSD) DB、高IOPS要件 高(最大256,000)
st1(Throughput Optimized HDD) スループット重視 低・大容量
sc1(Cold HDD) コールド 最安

🌊 ストリーミングデータ取り込み比較(試験超頻出)

サービス 種類 特徴 用途
Kinesis Data Streams(KDS) リアルタイム シャードベース、自前コンシューマー、24時間〜365日保持、ms単位 低レイテンシ要件、複数アプリ並行処理
Kinesis Data Firehose(現Amazon Data Firehose) 準リアルタイム配信 S3/Redshift/OpenSearch/Splunkへフルマネージド配信、最小バッファ60秒 サーバーレスETL→ストレージ
Kinesis Data Analytics(現Amazon Managed Service for Apache Flink) ストリーム処理 SQL/Flinkでウィンドウ集計 リアルタイム集計・異常検知
Amazon MSK(Managed Streaming for Kafka) Kafka互換 より高スループット、複雑なルーティング Kafkaエコシステム既存資産活用
Amazon MSK Serverless サーバーレスKafka キャパシティ管理不要 可変ワークロード
Kinesis Video Streams 動画ストリーム 動画・音声・センサー時系列 監視カメラ、IoT動画
🔑 紛らわしい! KDS vs Firehose(試験頻出)
観点 Kinesis Data Streams Kinesis Data Firehose
レイテンシ 真のリアルタイム(< 1秒) 準リアルタイム(最小60秒バッファ)
管理 シャード管理必要 フルマネージド・サーバーレス
配信先 コンシューマー自前実装 S3/Redshift/OpenSearch/HTTP/Splunk直結
データ保持 24時間〜365日 配信のみ(保持なし)
用途 リアルタイム異常検知、複数アプリ消費 データレイク取り込み、ログ集約
⚠️ よく出るシナリオ
  • 「リアルタイムでS3にログ集約、運用負荷最小」→ Firehose
  • 「リアルタイム不正検知、ms単位」→ KDS + Lambda or Flink
  • 「既存Kafkaを移行」→ MSK
  • 「監視カメラ映像をMLで解析」→ Kinesis Video Streams + Rekognition Video

🔧 SageMaker Data Wrangler / Feature Store

SageMaker Data Wrangler
  • GUIベースのデータ準備ツール
  • 300+の組み込み変換
  • S3、Athena、Redshift、Snowflake、Salesforce、JDBC等から取込
  • 「Quick Model」機能で即時モデル評価
  • 処理ジョブをSageMaker Processing Jobに変換可能
SageMaker Feature Store(試験頻出)
ストア種類 特徴 用途
Online Store(オンラインストア) 低レイテンシ(数ms)、最新値のみ リアルタイム推論時の特徴量取得
Offline Store(オフラインストア) S3上Parquet、履歴全保持 トレーニング、バッチ推論
  • 特徴量の一貫性:トレーニング時と推論時で同じ特徴量定義を使用→「training-serving skew」(学習・推論の乖離)防止
  • Feature Group:論理単位、レコードID + イベント時刻 + 特徴量列
  • Time Travel:過去時点の特徴量再現

1.2 データ変換と特徴量エンジニアリング

🧹 データクリーニング手法

欠損値処理
手法 説明 適用
削除 行/列を削除 欠損が少ない(< 5%)
平均値補完 数値の平均で埋める 正規分布データ
中央値補完 中央値で埋める 外れ値の影響を避けたい
最頻値補完 カテゴリ変数 カテゴリデータ
KNN補完 近傍データから推定 パターン保持
回Regression補完 他特徴量から予測 関係性を活用
前方/後方埋め(forward/back fill) 時系列で直前/直後の値 時系列データ
外れ値検出
手法 説明
Zスコア(標準得点) 平均から標準偏差何個分離れているか、|Z| > 3 で外れ値
IQR(四分位範囲) Q1-1.5×IQR、Q3+1.5×IQR の外側
Isolation Forest 木構造で異常を孤立化
Random Cut Forest (RCF) SageMaker組み込み、ストリーミング対応
DBSCAN 密度ベースクラスタリング

⚙️ 特徴量エンジニアリング手法

スケーリング・正規化(試験頻出)
手法 公式例・概念 範囲 適用
Min-Max Normalization(正規化) (x - min) / (max - min) 0〜1 範囲を揃えたい、ニューラルネット
Standardization / Z-score(標準化) (x - 平均) / 標準偏差 平均0、分散1 正規分布仮定、SVM、線形回帰
Robust Scaling (x - median) / IQR - 外れ値が多い場合
Log Transformation(対数変換) log(x+1) - 右に歪んだ分布、収入・人口等
Box-Cox変換 - - 正規化、正値のみ
Yeo-Johnson変換 - - 正規化、負値も可
🔑 紛らわしい! Normalization vs Standardization
  • Normalization (Min-Max): 範囲指定(通常0-1)、外れ値に弱い、画像ピクセル値(0-255→0-1)等
  • Standardization (Z-score): 平均0・分散1、外れ値にやや強い、特徴量のスケールが大きく異なる場合
ビニング・分割
手法 説明
等幅ビニング(Equal Width) 値の範囲を等分割
等頻度ビニング(Equal Frequency) サンプル数を等分割
カスタムビニング ドメイン知識ベース(年齢→子供/成人/シニア)

🔤 エンコーディング手法比較(試験超頻出)

手法 説明 次元 注意点
One-Hot Encoding カテゴリごとに0/1列を作成 カテゴリ数だけ増加 高次元化、多重共線性
Label Encoding カテゴリ→整数(赤=0、青=1、緑=2) 1列 誤って順序関係を学習させる
Ordinal Encoding 順序ありカテゴリ→整数 1列 順序がある場合のみ
Binary Encoding 整数化→二進数→各桁を列に log2(n)列 中間、One-Hotより次元少
Target / Mean Encoding カテゴリごとに目的変数の平均値 1列 リーク注意、CV必須
Frequency Encoding カテゴリの出現頻度 1列 情報損失の可能性あり
Hash Encoding ハッシュ関数で固定次元 指定次元 衝突あり
Embedding 学習可能ベクトル表現 任意 DNN、高基数カテゴリ
🔑 紛らわしい! One-Hot vs Label Encoding
  • One-Hot: 順序関係のないカテゴリ(色、国、商品)→誤った順序学習を防ぐ
  • Label: 順序のあるカテゴリ(低/中/高、☆1/☆2/☆3)
💡 テキストエンコーディング(NLP)
手法 説明
Bag of Words (BoW) 単語出現回数
TF-IDF 単語頻度 × 逆文書頻度、文書特有語を強調
N-gram N個連続単語
Word2Vec / GloVe 単語埋め込み
Tokenization(トークン化) テキスト→トークン分割
BPE(Byte-Pair Encoding) サブワード分割、GPT系
WordPiece サブワード、BERT系
SentencePiece 言語非依存サブワード

🛠️ データ変換ツール比較(試験超頻出)

ツール 種類 強み 弱み
AWS Glue サーバーレスETL Sparkベース、データカタログ、ジョブブックマーク、PySpark/Scala、Glue Studio(GUI) コードが必要
AWS Glue DataBrew ノーコードGUI 250+変換レシピ、視覚的、PIIマスキング カスタム処理不可
SageMaker Data Wrangler ML特化GUI 300+変換、Quick Model、Feature Store連携 スケール限定
Amazon EMR マネージドHadoop Spark/Hive/Presto/HBase、フル制御 運用負荷あり
AWS Lambda サーバーレス関数 軽量、イベント駆動、15分制限 大規模不可
AWS Batch バッチコンピューティング 大規模バッチ リアルタイム不可
Amazon Athena サーバーレスクエリ S3に対してSQL 変換書き戻し制限
🔑 紛らわしい! Glue vs Glue DataBrew vs Data Wrangler
シナリオ 答え
エンジニアがPySparkコードでETL自動化 AWS Glue
ビジネスアナリストがノーコードでデータクリーニング Glue DataBrew
データサイエンティストがMLパイプライン前処理を視覚的に作成 SageMaker Data Wrangler
大規模カスタムSparkジョブ Amazon EMR
軽量ストリーミング変換 Lambda
Glueの主要コンポーネント
  • Glue Data Catalog:メタデータカタログ、Athena/Redshift Spectrum共有
  • Glue Crawler:S3スキャンしてスキーマ自動推論→カタログ登録
  • Glue Job:ETLジョブ(Python Shell / Spark)
  • Glue Workflow:ジョブのオーケストレーション
  • Glue Streaming ETL:Kinesis/Kafkaストリーム処理
  • Glue Studio:ビジュアルジョブエディタ
  • Glue Schema Registry:Avro/JSON/Protobufスキーマ管理

🏷️ データラベリングサービス比較

サービス 説明 用途
SageMaker Ground Truth 人間ラベラー+アクティブラーニング(自動ラベリング)、最大80%自動化 大規模ラベリング、コスト削減
SageMaker Ground Truth Plus AWSが代行するフルマネージドラベリング リソースなし、専門ラベラー必要
Amazon Mechanical Turk (MTurk) クラウドソーシング(Workerに依頼) 低コスト、品質ばらつき
Amazon A2I(Augmented AI) 低信頼度予測のヒューマンインザループ レビューワークフロー
プライベートワーカー 自社の人員 機密データ
ベンダーマネージドワーカー AWS Marketplaceベンダー 専門性
⚠️ Ground Truthのアクティブラーニング

まず人間が一部ラベリング ➡ モデルが残りを自動ラベリング ➡ 自信ない部分のみ人間レビュー。データ量が増えるほどコスト効率が向上します。

1.3 データの完全性とモデリング準備

⚖️ トレーニング前バイアスメトリクス(SageMaker Clarify)

メトリクス 説明 値域
Class Imbalance CI クラス不均衡。(na - nd) / (na + nd) -1〜1
Difference in Proportions of Labels DPL ファセット間の陽性ラベル比率差 -1〜1
Kullback-Leibler Divergence KL 分布間距離(非対称) 0〜∞
Jensen-Shannon Divergence JS KLの対称版 0〜log(2)
Lp-norm LP L1(マンハッタン)、L2(ユークリッド)距離 0〜∞
Total Variation Distance TVD L1の半分 0〜1
Kolmogorov-Smirnov KS 累積分布の最大差 0〜1
Conditional Demographic Disparity CDD 条件付き不均衡 -1〜1

⚖️ トレーニング後バイアスメトリクス

  • DPPL (Difference in Positive Proportions in Predicted Labels):予測ラベル比率差
  • DI (Disparate Impact):80%ルール、< 0.8 で問題あり
  • DCO (Difference in Conditional Outcome)
  • RD (Recall Difference):再現率差
  • DAR (Difference in Acceptance Rates) / DRR (Difference in Rejection Rates)
  • AD (Accuracy Difference) / TE (Treatment Equality)
  • GE (Generalized Entropy)
⚠️ SageMaker Clarifyのできること
  • Pre-training bias:データの偏り検出
  • Post-training bias:モデル予測の偏り検出
  • Explainability:SHAP値による特徴量寄与度
  • Online Explainability:リアルタイム推論の説明
  • Model Monitor 連携:本番でのバイアス・特徴量寄与ドリフト監視

⚖️ 不均衡データ対策

  • オーバーサンプリング:少数クラスを増やす
  • SMOTE:KNN補間で合成サンプル生成
  • ADASYN:SMOTEの改良、分類困難サンプル重視
  • アンダーサンプリング:多数クラスを減らす(Tomek Links / ENN で境界サンプル削除)
  • クラス重み付け:損失関数で少数クラスを重くする
  • Focal Loss:簡単サンプルを軽く、困難を重くする
  • 異常検知アルゴリズム使用:超不均衡時に有効

🔐 データ暗号化・プライバシー

種類 説明
At Rest(保管時暗号化) S3、EBS等のストレージ上のデータ
In Transit(転送時暗号化) TLS/HTTPS、VPN
In Use(使用時暗号化) Nitro Enclaves、SGX
S3暗号化方式
方式 キー管理 説明
SSE-S3 AWS管理 最も簡単、AES-256
SSE-KMS(推奨) KMS(顧客管理可) 監査ログ、ローテーション
SSE-C 顧客提供キー キー管理は顧客責任
CSE(Client-Side Encryption) 顧客側暗号化 アップロード前に暗号化
DSSE-KMS 二重暗号化 コンプライアンス厳格時
PII / PHI関連サービス
サービス 用途
Amazon Macie S3上のPII自動検出、機密データ分類
Amazon Comprehend テキストからPII検出・編集(redact)
AWS Glue DataBrew PIIマスキング機能
AWS Lake Formation きめ細かなアクセス制御、列レベル・行レベル
  • PII:個人識別情報(氏名、SSN、メールアドレス等)
  • PHI:保護対象医療情報(HIPAA対象、診断・処方等)
  • データレジデンシー:データを特定地域内に保管する規制(GDPR等)

✅ データ品質検証

ツール 説明
AWS Glue Data Quality DQDL(Data Quality Definition Language)でルール定義、Glueジョブ統合
DataBrew Data Profile 統計プロファイル、自動的に品質スコア生成
Deequ(Amazonオープンソース) Sparkベース品質検証
データ分割
分割法 説明
ホールドアウト 訓練/検証/テスト(典型 70/15/15、80/10/10)
Stratified Sampling(層化抽出) クラス比率を保ったまま分割、不均衡データ必須
K-Fold交差検証 K分割し、各回1つを検証用
Time Series Split 時系列データ、未来漏洩防止
Group K-Fold 同一グループを同フォールドに保持
⚠️ データリーク(Data Leakage)注意点
  • テスト用データの統計(平均・分散)を訓練前処理に使わない
  • Target Encodingは訓練データのみで計算する
  • 時系列:未来データを訓練に使わない

🧠 コンテンツ分野2: MLモデルの開発(26%)

2.1 モデリングアプローチの選択

🤖 ML学習タイプ

種類 説明
教師あり学習(Supervised) ラベル付きデータから学習 分類、回帰
教師なし学習(Unsupervised) ラベルなしからパターン発見 クラスタリング、次元削減、異常検知
半教師あり学習 少量ラベル+大量ラベルなし 擬似ラベリング
自己教師あり学習 データ自身からラベル生成 BERT、SimCLR
強化学習(Reinforcement Learning) 報酬最大化 ゲームAI、ロボット
転移学習(Transfer Learning) 既存モデルを別タスクに適用 ファインチューニング

📚 SageMaker組み込みアルゴリズム完全リスト

アルゴリズム カテゴリ 用途 入力フォーマット
XGBoost 教師あり 分類・回帰(表形式最強) CSV、libsvm、Parquet、RecordIO
Linear Learner 教師あり 分類・回帰(線形) RecordIO、CSV
K-Means 教師なし クラスタリング RecordIO、CSV
K-NN (k-Nearest Neighbors) 教師あり 分類・回帰 RecordIO、CSV
PCA 教師なし 次元削減 RecordIO、CSV
Factorization Machines 教師あり レコメンド、スパースデータ RecordIO
Random Cut Forest (RCF) 教師なし 異常検知(ストリーミング対応) RecordIO、CSV
IP Insights 教師なし IPアドレス異常検知 CSV
DeepAR 時系列 時系列予測(RNN) JSON Lines
BlazingText NLP Word2Vec、テキスト分類(高速) テキスト、JSON
Object2Vec 埋め込み 汎用埋め込み JSON
Seq2Seq NLP 機械翻訳、要約 RecordIO
LDA / NTM 教師なし トピックモデリング RecordIO、CSV
Image Classification CV 画像分類(ResNet等) RecordIO、画像
Object Detection CV 物体検出(SSD) RecordIO、画像
Semantic Segmentation CV ピクセル単位分類 画像
⚠️ 試験頻出のアルゴリズム選択
シナリオ 推奨
表形式データの分類 XGBoost
クレジットカード不正のリアルタイム検知 Random Cut Forest
顧客のクラスタリング K-Means
商品レコメンド(スパース) Factorization Machines or Amazon Personalize
ニュース記事のトピック分類 LDA / NTM / BlazingText
売上の未来予測 DeepAR / Amazon Forecast

🎨 AWS AIサービス(マネージドML)

サービス 用途
Amazon Comprehend NLP:感情分析、エンティティ抽出、キーフレーズ、PII検出
Amazon Translate ニューラル機械翻訳(リアルタイム+バッチ)
Amazon Transcribe 音声→テキスト(ASR)、話者識別、PII編集
Amazon Polly テキスト→音声(TTS)、SSML対応
Amazon Lex チャットボット(Alexaと同エンジン)
Amazon Rekognition 画像・動画:顔認識、物体検出、コンテンツモデレーション
Amazon Textract OCR、フォーム・表抽出、ID書類解析
Amazon Personalize レコメンデーション(Amazon.comと同技術)
Amazon Forecast 時系列予測(マネージド、DeepAR+等)
Amazon Bedrock 基盤モデル(Claude、Llama等)のマネージドAPI
🔑 紛らわしい! Comprehend vs Translate vs Transcribe vs Polly
  • Comprehend: テキスト分析(感情・エンティティ・トピック)
  • Translate: テキスト翻訳(言語A→言語B)
  • Transcribe: 音声→テキスト(STT)
  • Polly: テキスト→音声(TTS)

🔍 解釈可能性(Interpretability / Explainability)

モデル 解釈性 性能
線形回帰、ロジスティック回帰 低〜中
決定木(単一)
ランダムフォレスト / XGBoost
ニューラルネット
  • SHAP:ゲーム理論ベース、特徴量寄与度を公平配分(Clarifyで採用)
  • LIME:局所線形近似で個別の予測を説明

2.2 モデルのトレーニングと改良

⏱️ トレーニング時間短縮手法

  • Early Stopping(早期停止):検証損失が改善しなくなったら自動停止
  • データ並列 (SMDDP) / モデル並列 (SMDMP):AWSに最適化された分散学習環境
  • 混合精度学習:FP16/BF16を活用し、メモリ削減と速度2倍を達成
🔑 紛らわしい! File Mode vs Pipe Mode vs Fast File Mode
モード 動作 速度 用途
File Mode 全データをEBSにダウンロードしてから読込 遅い起動 小〜中規模データ
Pipe Mode S3から直接ストリーミング、ダウンロード不要 起動速い 大規模、RecordIO推奨
Fast File Mode POSIX互換ファイルとしてマウントしオンデマンド読込 速い 大規模、既存コード変更不要

🎛️ 正則化手法比較(試験頻出)

手法 説明 効果
L1正則化 (Lasso) 重みの絶対値ペナルティ 不要な重みを完全に0にする ➡ 特徴量選択
L2正則化 (Ridge) 重みの二乗ペナルティ 重み全体を小さく、滑らかに ➡ 多重共線性の抑制
Dropout 訓練時に確率pでニューロンを無効化 過学習防止、アンサンブル効果

🎯 ハイパーパラメータチューニング

  • ベイズ最適化 (Bayesian Optimization):過去の結果から次を賢く予測(SageMaker AMTのデフォルト)
  • Hyperband:リソースを効率的に配分し、見込みのない設定を早期停止

🎯 ファインチューニング(生成AI関連)

手法 説明 コスト
Full Fine-Tuning 全パラメータを更新 超高
LoRA / QLoRA 低ランク行列を追加学習、モデル本体はフリーズ 低(メモリ激減)
RAG ファインチューニングせず、外部知識を検索してプロンプトに注入 最低(再学習不要)

2.3 モデルパフォーマンスの分析

📐 分類メトリクス(試験超頻出)


【混同行列(Confusion Matrix)】
              予測陽性      予測陰性
実陽性     TP(真陽性)  FN(偽陰性) ← 見逃し
実陰性     FP(偽陽性)  TN(真陰性) ← 誤検出
メトリクス 意味 重視すべきシナリオ
Accuracy(正解率) 全体の正答率 均衡データ
Precision(適合率) 陽性予測の正確さ(偽陽性を減らしたい) スパムフィルタ(重要メールを誤判定したくない)
Recall(再現率・感度) 実陽性の検出率(偽陰性を減らしたい) がん診断、不正取引検知(見逃しが致命的)
F1 Score PrecisionとRecallの調和平均 不均衡データ、両方のバランス
AUC ROC曲線下面積(1=完璧、0.5=ランダム) 閾値に依存しないモデル全体のバランス評価

📐 回帰メトリクス

  • MAE:誤差の絶対値の平均。外れ値に頑健。
  • MSE:誤差の二乗の平均。大きな誤差を強く罰する。
  • RMSE:MSEの平方根。単位が元データと同じで解釈しやすい。

🚢 コンテンツ分野3: MLワークフローのデプロイとオーケストレーション(22%)

3.1 デプロイインフラの選択

🎯 SageMakerエンドポイント種類完全比較(超頻出)

種類 レイテンシ 規模 ペイロード タイムアウト ユースケース
Real-time Inference 低(ms) 常時稼働 最大6MB 60秒 24/7低レイテンシ、リクエスト多
Serverless Inference 中(コールドスタート有) 自動スケール 最大4MB 60秒 トラフィックが不定期、コスト最小化
Asynchronous Inference 高(数分) キュー管理 最大1GB 1時間 動画や大ファイル処理、長時間処理
Batch Transform オフライン 一括処理 無制限(S3) 制限なし 夜間の1000万件一括スコアリングなど

🏗️ 推論パイプライン / マルチモデル

  • Inference Pipeline:前処理 ➡ 推論 ➡ 後処理を1つのエンドポイントに統合(最大15コンテナ)
  • Multi-Model Endpoint (MME):単一エンドポイントで数千の同種モデルを動的にロード、コスト大幅削減
  • Multi-Container Endpoint (MCE):単一エンドポイントで異なるフレームワークのコンテナを共存

3.2 インフラの作成とスクリプト化 / 3.3 CI/CD

🔑 紛らわしい! Code系サービス
  • CodeCommit:Gitリポジトリ(ソース管理)
  • CodeBuild:ビルド・テストの実行環境(buildspec.yml
  • CodeDeploy:デプロイ自動化(ブルー/グリーン等)
  • CodePipeline:上記をつなぐ全体ワークフローのオーケストレーション

🎯 デプロイ戦略(試験頻出)

  • Blue/Green(青/緑):新環境(緑)を完全に構築してからトラフィックを切り替え。ロールバックが最速。
  • Canary(カナリア):最初に少量のトラフィック(例: 5%)だけ新版に流し、問題なければ100%にする。
  • Shadow(シャドウ):本番トラフィックを複製して新版に送信するが、応答は破棄。ユーザーへの影響ゼロでテスト可能。
🔑 紛らわしい! SageMaker Pipelines vs Step Functions vs MWAA
  • SageMaker Pipelines:ML特化型のDAG(有向非巡回グラフ)ワークフローツール。SageMakerと完全統合。
  • Step Functions:汎用的なサーバーレスステートマシン。AWS全サービスを組み合わせたビジネスロジック向け。
  • MWAA (Managed Apache Airflow):データエンジニアリング向けの強力なPythonベースのオーケストレーター。

🔐 コンテンツ分野4: 監視・保守・セキュリティ(24%)

4.1 モデル推論の監視

📊 モデルドリフト4種(試験頻出)

ドリフト種類 説明
Data Drift(データドリフト) 入力データ(X)の分布変化 ユーザー層の年齢変化、季節変動
Concept Drift(コンセプトドリフト) X ➡ Y の関係性の変化 社会情勢の変化による購買行動の激変
Label Drift 出力(Y)の分布変化 不正アクセスの発生率自体の急増
Model Quality Drift モデル精度の低下 上記の結果として発生するパフォーマンス低下

🩺 SageMaker Model Monitor 4タイプ

  • Data Quality:入力データの統計プロファイル(平均・欠損率など)をベースラインと比較監視。
  • Model Quality:実ラベル取得後、精度・再現率などの指標を監視(Ground Truthラベルが必要)。
  • Bias Drift / Feature Attribution Drift:Clarifyと連携し、予測の偏りやSHAP値の変化を本番環境で監視。

4.2 インフラ・コスト監視と最適化

🔑 紛らわしい! CloudTrail vs CloudWatch vs Config vs X-Ray(試験超頻出)
サービス 目的 主な問い
CloudTrail API呼び出しの監査ログ記録 「誰が、いつ、何の操作をしたか?」
CloudWatch リソースのメトリクス、ログ収集、アラーム 「CPU使用率は?」「エラーログの内容は?」
Config AWSリソースの構成履歴・コンプライアンス管理 「セキュリティグループの変更履歴は?」
X-Ray アプリケーションの分散トレーシング 「このリクエストはどの処理で遅延しているか?」

4.3 セキュリティとネットワーク

🔑 紛らわしい! Security Group vs NACL
  • Security Group(セキュリティグループ):インスタンス単位の制御、ステートフル(戻りの通信は自動許可)、許可ルールのみ。
  • NACL(ネットワークACL):サブネット単位の制御、ステートレス(戻り通信も明示的に許可が必要)、許可・拒否ルール。
🔑 紛らわしい! Secrets Manager vs Parameter Store
  • Secrets Manager:有料。DB認証情報などの暗号化。自動ローテーション機能あり
  • Parameter Store:基本無料。シンプルな設定値や環境変数の管理(ローテーションなし)。
🌐 VPCエンドポイントの使い分け
  • Gateway Endpoint:S3とDynamoDB専用。無料
  • Interface Endpoint (PrivateLink):SageMaker APIなど、その他多くのAWSサービス用。有料。

📚 付録: 頻出シナリオ問題と解答パターン抜粋

# シナリオ 解答(選択肢の選び方)
1 リアルタイム性が必要、ペイロード最大1GB、処理時間が10分かかる Asynchronous Inference
2 トラフィックが断続的、アイドル時のコストを0にしたい Serverless Inference
3 1000万件のデータを夜間に一括でスコアリングしたい Batch Transform
4 S3に蓄積された大容量データを最高速で読み込んで分散訓練したい FSx for Lustre + Pipe Mode
5 S3上にある大量の画像データを、コストを抑えつつラベリングしたい SageMaker Ground Truth + アクティブラーニング
6 本番環境の推論エンドポイントで、新しいモデルをリスクゼロでテストしたい Shadow Variant(シャドウデプロイ)
7 インターネットに一切接続しない、完全に閉鎖されたML環境を構築したい VPC Mode + Network Isolation Mode 有効化
8 S3バケット内に保存されているPII(個人情報)を自動的に検出・分類したい Amazon Macie
9 トレーニングデータと本番データで特徴量の乖離(Skew)を防ぎたい SageMaker Feature Store
10 モデルの予測プロセスについて、どの特徴量が寄与したか説明責任を果たしたい SageMaker Clarify (SHAP値)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?