📓

AWS AIF-C01 学習/合格記 - ゼロから始めるAI学習

に公開

試験予約

  • 8/26に受験を決意し予約。受験日は9/20(土)としました。
  • ちなみにこの時点で全く勉強していない状態でした。プラクティショナーといえど間に合うのか若干不安でしたが、なんとかなるだろうと高を括っていました。
  • 受験にあたっての結論としては、1ヶ月あれば試験勉強の時間としては充分ですが、ある程度しっかりと学習した上で受験する必要があると感じました。後述しますが、AWSに精通した方でもある程度の学習が必要と感じる試験でした。

勉強方法

模擬問題の受験

  • AWS公式の模擬問題セットにチャレンジしてみました。
    • 予約翌日に受験してみました。初回は60%の正解率で、思ったより取れてました。
      • ドメイン別でみると傾向がわかった
        • 1.0 AI と ML の基礎 → 0/4 0%⚠️
        • 2.0 生成 AI の基礎 → 4/4 100%
        • 3.0 基盤モデルの応用 → 3/6 50%⚠️
        • 4.0 責任ある AI に関するガイドライン → 2/3 67%
        • 5.0 AI ソリューションのセキュリティ、コンプライアンス、ガバナンス → 3/3 100%
    • 後述の学習後、試験数日前に再受講して100%の正解率でした。おそらく試験の合格ラインとしては全問正解できていれば大丈夫。
      • ですが、やはり本試験ではここで出てきていない概念や用語も登場してきたため、確約とは言い難い印象です。

Skill Builderの活用

  • なんでも教材を安く済ませたいケチ野郎なので、AWS Skill Builderの無料コンテンツを活用しました。
    • Exam Prep Plan: AWS Certified AI Practitioner (AIF-C01 - 日本語)
    • 「Domain Review: AWS Certified AI Practitioner (AIF-C01 - 日本語)」 は無料で1〜5分野の解説動画を視聴できるのでこれメインで勉強しました。
    • 機械学習・AIという概念に対する勉強としては非常に体系的にまとまった教材と感じました。
    • ただ初見だと、知らない概念を知らない用語で説明されるのでひたすら眠気誘発&集中力低下。
    • また、試験対策の観点で言えば、この教材は情報量が多くどの用語・概念が試験で頻出なのかが若干わかりにくく、「これ全部覚えないとダメなのか・・・」の気持ちに。

問題集の活用

  • これだけだと受験対策しきれないと感じ、やむなく有料の問題集を検討。
  • 今回はCLFやSAA、AZ-900でもお世話になっていた「【AWS資格】無料WEB問題集&徹底解説」さんのプレミアム会員を1ヶ月プランで契約。問題集を980円で買うのと同じと考えれば安価に感じました。
  • 結果的には、この問題集のおかげで合格できた印象。どのような問われ方をするのか、何が頻出なのかを把握できたことで、先述のSkill Builderもある程度集中して取り組めるようになりました。
  • ちなみに合格後に知りましたが、Kindle unlimitedに加入していればタダで読める問題集もいくつかあるようです。知っていればこちらも活用したかもしれない。

受験

  • 他のAWS認定試験と同様、テストセンターとオンライン受験がありますが、テストセンターにて受験しました。
  • 大体いつもテストセンターで受験。オンラインは家の準備したり指摘を受けたりとかが不安で踏み切れない。結局テストセンターで受けるのが手軽&確実に思えてしまう・・・
  • 試験時間90分のうち、大体60分くらいで終了。回答が40分程度、見直しで20分程度でした。
  • 当日の夜8時ごろに結果が出ました。828点で合格!
    • 問題集で対策していた箇所以外から多く出題されたこともあって、思っていたより点を取れていない

合格しました!

終わりに

  • なんやかんや苦戦した気がします。AWS DEAの後にSOA(現:CloudOps Engineer - Associate)を受験したときは重複するサービス等も多かったので楽勝だった印象ですが、こちらの資格はAI知識がほぼゼロの状態で受験したので、学習コストが高かったです。
  • 上位資格のMachine Learning Engineer - AssociateおよびSpecialtyもありますので、この学習をベースにとっとと取得していって、AWS認定資格全冠を目指していきたい所存。

Appendix

模擬問題で出てきたキーワードから概要整理

  • RAG
  • Transcribe
    • カスタム言語モデル
      • 分野固有の音声の文字起こしの正解率を向上
    • バッチ言語識別
      • 選択した特定の言語のファイルを変換
  • オーバーフィット
    • モデルがトレーニングデータから学習したにもかかわらず、新しいデータではうまく機能しないケース
    • トレーニングデータでの正解率は高いが、テストデータの正解率が低下する
  • アンダーフィット
    • モデルがトレーニングデータ内の関係を識別しない場合に発生
    • トレーニングデータとテストデータの両方の正解率が低下
  • トレーニング
    • 時間が少ないと、トレーニングデータ・テストデータ両方で正解率低下
    • データ過多では、正解率の制限はされない
  • SageMaker
    • Model Cards
      • MLモデルに関するレコードを作成し、詳細情報を一か所にまとめて文書化
      • 透明性と説明可能性のあるモデル開発を支援
    • Role Manager
      • MLアクティビティに対するユーザーのアクセス許可を定義
    • Model Dashboard
      • AWSアカウントのすべてのモデルを一元的に表示、検索、探索が可能
      • モデルのデプロイ、使用状況、パフォーマンスの追跡、モニタリングに関するインサイトが得られる
    • Model Monitor
      • 本番環境のMLモデルとデータの品質をモニタリング
    • AI推論オプション
      • リアルタイム推論
        • 低レイテンシーまたは高スループットが要求されるユースケースに最適
        • 60秒の処理時間をサポート
      • 非同期推論
        • データセットが膨大で、処理時間が最長1時間のユースケースに最適
        • 推論処理のリクエストをキューに入れることができる
      • バッチ変換
        • バッチ処理できる場合のオフライン処理に最適
        • 数日に及ぶ処理時間をサポート可能
    • JumpStart
      • 事前トレーニング済みのオープンソースモデルを利用可能
  • Amazon Bedrock
    • 一般的なFMにアクセスするための統合APIを提供するフルマネージド型サービス
    • Stability AIやAWSなどのプロバイダの画像生成モデルをサポート
    • BedrockへのAPIコールはCloudTrailでログ出力して確認可能
  • Amazon Bedrock ガードレール
    • Bedrockが生成するコンテンツを安全性ポリシー、コンプライアンスポリシーに準拠させる
    • 特定のトピックを回避したり、有害なコンテンツをフィルタリング、違反がないかユーザ入力をモニタリング
    • ユースケースや責任あるAIポリシーに合わせてカスタマイズ可能なセーフガードを実装できる
  • 基盤モデル(FM)
    • 膨大な量のデータで事前トレーニング済みの大規模モデルで、複数のタスクを実行可能
    • 比較的小さなデータセットを使用して、下流タスクに合わせてファインチューニング可能
    • カスタマイズによるトレードオフ
      • 高コスト
        • タスクの実行によるコンピューティングリソースと経験豊富なMLエンジニアが必要
      • 実装の複雑さの増大
        • トレーニングデータを準備して、再トレーニングを設定し、モデルを評価して、モデルが適切に機能するか確認が必要
        • 経験豊富なMLエンジニアが必要となる
  • 強化学習
    • MLモデルをトレーニングして目標を達成し、累積報酬を最大化する手法
    • 試行錯誤のプロセスと報酬ベースのシステムを使用
  • F1スコア
    • モデルの二項分類の正解率を評価
      • ⭐また調べる
    • 適合率と再現率を使用して、モデルによる適正なクラスへの分類の正解率を評価
  • ROUGE(Recall-Oriented Understudy for Gisting Evaluation)
    • テキスト要約とテキスト生成の品質評価に使用できるメトリクス
  • ファインチューニング
    • 企業特有または分野固有のデータセットに基づいてモデルを微調整してFMをカスタマイズできるプロセス
    • モデルの精度を高めて、特定のビジネスニーズに合わせて一般化できるようにすることが目的
      • インストラクションベース
        • 分野固有のタスクに対して事前トレーニング済みFMのパフォーマンス向上が可能
        • ラベル付き例を使用。プロンプトと回答のペアの形式で、指示(インストラクション)として記述
  • Amazon Polly
    • テキストを自然な音声に変換できるテキスト読み上げサービス
  • Amazon Textract
    • スキャンしたドキュメント、PDF、画像からテキストとデータを検出、抽出できるフルマネージドサービス
    • 領収書、請求書の処理がユースケースの代表例
  • Amazon Kendra
    • セマンティックとコンテキストを理解した上で検索クエリに関連する応答を提供するインテリジェントな検索サービス
  • Amazon Comprehend
    • テキストデータからインサイトと関係性を抽出できる自然言語処理サービス
  • Amazon Rekognition
    • 深層学習を使用して画像や動画を分析するフルマネージドAIサービス
    • オブジェクト検出タスクを実行可能
  • Amazon Personalize
    • 対話に基づく検索結果やユーザセグメントなど、レコメンデーションを目的としたフルマネージドAI
    • マーケティングキャンペーンのターゲットを絞ることができる
  • フューショットプロンプティング
    • ⭐また調べる
  • ゼロショットプロンプティング
    • ⭐また調べる
  • 継続的な事前トレーニング
    • FMにラベル付けされていないデータを使用して、特定の分野またはトピックについてモデルをトレーニングできるようにする方法
  • ハイパーパラメータのチューニング
    • MLアルゴリズムの挙動を調整する方法
  • モデル評価
    • MLの開発パイプラインにおいて、モデルのトレーニング後に行われるステップ
    • モデルのパフォーマンス、メトリクスを評価できる
  • 特徴量エンジニアリング
    • 予測モデルの作成時に変数を選択し、変換する方法
    • 特徴量作成、特徴量変換、特徴量抽出、特徴量選択を行う
    • トレーニングデータセット内の変数の数を増やすことでデータを補強し、その結果モデルのパフォーマンスを向上
  • モデルモニタリング
    • MLライフサイクルの一部
    • モデルを取り込んでトレーニングデータと比較する
    • データ品質の問題、モデル品質の問題、バイアスドリフト、特徴量のアトリビューションドリフトを特定可能
      • ⭐また調べる
  • データ収集
    • MLモデルのトレーニングに使われるデータのラベル付け、取り込み、集計を行うステップ
      1. 複数のソースからデータを取り込み、集計する
      2. データにラベルを付ける
    • 追加のrawデータを収集する必要があるため、トレーニングデータセット内の変数の数が増える可能性がある
  • 生成AIシステムの制限
    • バイアスのあるコンテンツ、不適切なコンテンツの生成可能性があるため、人間のレビューが必要
  • Amazon Inspector
    • 脆弱性管理サービス
    • AIに限らず、アプリケーション、AWSリソースのセキュリティ・コンプライアンスを評価

Discussion