こんにちは!エンジニアの君島です。
このたびAWS 認定 機械学習 – 専門知識(MLS)を獲得しましたので、勉強方法や情報をまとめました。
※試験の出題内容に関わることや、とにかく合格すればよいというような勉強方法は記載していません。
その他の認定については、こちらをご覧ください。
目次
AWS 認定 機械学習 – 専門知識について
詳細はコチラ。
この資格は、組織がクラウドイニシアチブを実装するための重要なスキルを持つ人材を特定して育成するのに役立ちます。AWS Certified Machine Learning – Specialty を取得すると、AWS で機械学習 (ML) モデルの構築、トレーニング、チューニングおよびデプロイに関する専門知識を認定します。
勉強方法
方針
AWS認定の中で、一番AWSサービス以外の知識を問われたように感じました。分からない用語や概念については調べて理解するようにしておきましょう。
以下に、試験ガイドと自分用の追記をしたメモと、その参照リンクを記載していきます。リンクはAWS公式ドキュメントを参照していますが、その他公式以外のドキュメントも大変参考になります。分からない用語がない状態で問題に臨むことをお勧めします。
試験ガイド+追記メモ
第 1 分野: データエンジニアリング
1.1 機械学習のデータリポジトリを作成する
データソース (例: コンテンツとロケーション、ユーザーデータなどのプライマリソースなど) を特定する
記録媒体を決定する (例: DB、データレイク、S3、EFS、EBS など)
1.2 データ取り込みソリューションを特定および実装する
データのジョブスタイル/タイプ (バッチロード、ストリーミング)
データ取り込みのパイプライン (バッチベースの機械学習ワークロードとストリーミングベースの機械学習ワークロード)
o Kinesis
o Kinesis Analytics
o Kinesis Firehose
o EMR
o Glue
ジョブのスケジューリング
1.3 データ変換ソリューションを特定および実装する
データ転送の変換 (ETL: Glue、EMR、AWS Batch)
Map Reduce を使用して機械学習固有のデータを処理する (Hadoop、Spark、Hive)
第 2 分野: 探索的データ分析
2.1 モデリング用のデータをサニタイズおよび準備する
欠損データ、破損データ、ストップワードなどを特定および処理する
データのフォーマット、正規化、拡張、スケーリング
ラベル付けされたデータ (ラベル付けされたデータが十分にあることを確認し、軽減戦略を特定する [Data labeling tools (Mechanical Turk, manual labor)])
2.2 特徴エンジニアリングを実行する
データセットから特徴 (テキスト、音声、画像、パブリックデータセットなどのデータソースからの特徴を含む) を特定および抽出する
特徴エンジニアリングの概念を分析/評価する (データのビニング、トークナイゼーション、外れ値、合成的特徴、One-Hot エンコーディング、次元低減)
2.3 機械学習のデータを分析および視覚化する
グラフ化 (散布図、時系列、ヒストグラム、ボックスプロット)
クラスタリング (階層型、診断、エルボープロット、クラスターサイズ)
第 3 分野: モデリング
3.1 ビジネス上の課題を機械学習の課題として捉え直す
分類、回帰、予測、クラスタリング、レコメンデーションなどの中から選択する
3.2 特定の機械学習の課題に対して適切なモデルを選択する
Xgboost、ロジスティック回帰、K-Means、線形回帰、決定木モデル、ランダムフォレストモデル、RNN、CNN、アンサンブル、転移学習
モデルの背後にある直感的知識を表現する
3.3 機械学習モデルのトレーニングを行う
分割するデータの検証テスト、交差検証のトレーニングを行う
オプティマイザ、勾配降下法、損失関数、ローカルな最小値、収束、バッチ、確率など
コンピューティングを選択する (GPU と CPU、分散型と非分散型、プラットフォーム [Spark vs. non-Spark])
モデルの更新と再トレーニングを行う
バッチとリアルタイム/オンライン
3.4 ハイパーパラメータの最適化を実施する
o ドロップアウト
o L1/L2
交差検証
モデルの初期化
ニューラルネットワークアーキテクチャ (レイヤー/ノード)、学習率、活性化関数
ツリーベースのモデル (ツリー数、レベル数)
線形モデル (学習率)
3.5 機械学習モデルを評価する
過学習/未学習を回避する (バイアスとバリアンスを検出および処理する)
メトリクス (AUC-ROC、正確性、適合率、再現率、RMSE、F1 スコア)
混同行列
オフラインおよびオンラインでのモデルの評価、A/B テスト
メトリクス (モデルのトレーニング時間、モデルの品質、エンジニアリングコスト) を使用してモデルを比較する
交差検証
第 4 分野: 機械学習の実装とその運用
4.1 パフォーマンス、可用性、スケーラビリティ、回復性、および耐障害性を備えた機械学習ソリューションを構築する
AWS 環境のロギングとモニタリング
o CloudTrail と CloudWatch
o ビルドエラーのモニタリング
複数のリージョン、複数の AZ
AMI/ゴールデンイメージ
Docker コンテナ
Auto Scaling グループ
適切なサイジング
o インスタンス
o プロビジョンド IOPS
o ボリューム
ロードバランシング
AWS のベストプラクティス
4.2 特定の課題に対して適切な機械学習サービスと機能を提案および実装する
AWS での機械学習 (アプリケーションサービス)
o Polly
o Lex
o Transcribe
AWS のサービスの制限
独自のモデルまたは SageMaker の組み込みアルゴリズムを構築する
インフラストラクチャ: (スポット、インスタンスタイプ)、コストに関する検討事項
o スポットインスタンスを使用し、AWS Batch を活用した深層学習モデルのトレーニングを行う
4.3 基本的な AWS セキュリティプラクティスを機械学習ソリューションに適用する
IAM
S3 バケットポリシー
セキュリティグループ
VPC
暗号化/匿名化
4.4 機械学習ソリューションのデプロイと運用を行う
エンドポイントを公開し、それらを操作する
機械学習モデルのバージョニング
A/B テスト
パイプラインの再トレーニング
機械学習のデバッグ/トラブルシューティング
o パフォーマンスの低下を検出および軽減する
o モデルのパフォーマンスをモニタリングする
サンプル問題と公式練習問題集
上記の試験ガイドでの分類からも分かるように、機械学習と、AWSサービスに関する問題が出題されます。機械学習に触れていない方は、知らない用語がたくさん出てくると思います。問題文や選択肢で登場した用語は調べて、それがどのようなものか自分の言葉で説明できるようになっておきましょう。
受験しての感想
AWS認定の中でも、サービス以外の機械学習の知識を問う問題が多い試験だと思いました。しかしながら、機械学習専門家であることを想定して、様々な想定で出題されるので、それぞれどのような手法が適しているのかを理解する良い機会と言えると思います。
学習を通じて、従来知っていたサービスにも機械学習機能が追加されていたことを知ることができたのは良い経験になりました。今後の実務でも利用してみようと思いました。
データを操作する部分は、DASと重複するところが多く、もし受験を予定されている方がいれば、一緒に受験すると効率的かもしれません。
さいごに
AWS 認定 機械学習– 専門知識を取得したので、有効だった勉強方法と受験しての感想をまとめました。
その他の認定については、こちらをご覧ください。
- CLIでAmazon S3にあるファイル内の文字列検索をしてみる - 2024-02-01
- 不完全なマルチパートアップロードをCLIで確認してS3の無駄コストを無くそう - 2024-01-29
- AlmaLinux9.3にPHP8.3を入れてLaravel9から10にバージョンアップする - 2024-01-12
- AWS CloudShellの表現力を確認してみよう - 2024-01-01
- AWSのアーキテクチャーを学べるAWS Card Clash攻略Wiki - 2023-12-26