AWS 認定 機械学習 – 専門知識(Machine Learning – Specialty)合格に向けたオレオレ学習ガイドライン

#はじめに
2019年3月にベータ版から正式版となり、3か月強が経った。
他の認定試験は9個まで取ったので、そろそろ取得に向けて勉強しなければならない。
とはいえ学習の道標が何もないと途方に暮れるので、ひとまず材料になりそうなものをかき集めました。公式/非公式問わず**出題範囲や内容のあたりがつきそうなものを調べ**、**何を学習リソースとして、どのように勉強するか**のプランを立てるところまでが本記事の内容です。

- まだ試験を受けてすらいない段階の情報です
- 「ソースに書いてあったこと」と「それを踏まえて自分はこう考えた」は混在しないように気を付けていますが、適宜情報の取捨選択をしてください
- オフラインでの学習コースは受講しないで勉強する方針とし、含めていません

#自身の現状

- AWS
    - 業務経験4年弱
    - AWS認定資格9冠
- 機械学習
    - まったく分からない
    - 無理くりひねり出すと以下くらい
        - 松尾 豊 著「人工知能は人間を超えるか」を1回読んだことがある
        - オライリージャパン「ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装」を買って本棚にしまったことがある

#1.情報収集（公式情報ソース）

##1.1.公式ページ
**[AWS 認定 機械学習 – 専門知識]**
https://aws.amazon.com/jp/certification/certified-machine-learning-specialty/


###認定によって検証される能力

- 提示されたビジネスの問題に対し、適切な ML アプローチを選び、その理由を説明できる
- ML ソリューションの実装に適した AWS のサービスを特定する
- スケーラビリティ、コスト効率、信頼性、安全性に優れた ML ソリューションを設計し、実装する

###推奨される AWS の知識

- AWS クラウドでの ML/深層学習ワークロードの開発、設計、実行における、1～2 年の経験
- 基本的な ML アルゴリズムの基となる考えを表現する能力
- 基本的なハイパーパラメータ最適化の実践経験
- ML および深層学習フレームワークの使用経験
- モデルトレーニングのベストプラクティスを実行する能力
- デプロイと運用のベストプラクティスを実行する能力

ハイパーパラメータという用語は聞いたことが無かったので調べた。機械学習アルゴリズムの挙動を制御するパラメータで、機械に学習させる前に人間があらかじめ与えておいてあげないといけないものらしい。AWSとの絡みで言うと、Amazon SageMakerの設定項目として出てきそうだ。

[Amazon SageMaker 組み込みアルゴリズムを使用する]
https://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/algos.html


##1.2.試験ガイド

**(MLS-C01) 試験ガイド（PDF）**
https://d1.awsstatic.com/training-and-certification/docs-ml/AWS%20Certified%20Machine%20Learning%20-%20Specialty%20Exam%20Guide%20001%20v1.1%20JPN.pdf

###推奨される AWS の知識
1.1.の公式ページに書かれていることとほぼ同じ。

>この試験に合格するには、AWS クラウドにおける ML/ディープラーニングのワークロードの開発、アーキテクチャ設計、運用に関する 1 ～ 2 年以上の実務経験に加え、以下の知識や経験を持っていることが望ましいと考えられます。

- 基本的な機械学習アルゴリズムの背後にある直観的知識を表現する能力
- 基本的なハイパーパラメータの最適化を行った経験
- ML およびディープラーニングのフレームワークに関する経験
- モデルのトレーニングに関するベストプラクティスに従う能力
- 開発および運用に関するベストプラクティスに従う能力

###その他の資料

リンクがいくつか貼られているが、★部はすべて以下のドキュメントの子階層にあたるドキュメント。

**[AWSドキュメント >> Amazon Machine Learning >> 開発者ガイド]**
https://docs.aws.amazon.com/ja_jp/machine-learning/latest/dg/what-is-amazon-machine-learning.html

- 「AWS での機械学習」
    - https://aws.amazon.com/jp/machine-learning/
- 「Amazon Machine Learning の主要なコンセプト」★
- 「データの分割」★
- 「ML モデルのタイプ」★
- 「データ変換リファレンス」★
- 「Containerized Machine Learning on AWS」（動画）
    - https://www.youtube.com/watch?v=Jw9CpQkCvpM
- 「AWS re:Invent Machine Learning talk」（動画）
    - https://www.youtube.com/watch?v=Q7N2iVfgA0U&list=PLOS8MNIsAkpJCaOSQP6t5uoVtwUr0SFvM

###試験内容の概要

>この試験ガイドには、比重、出題分野、および試験の目的のみが記載されています。試験の出題内容全体を記載しているわけではありません。出題分野と比重を以下の表に示します。


| 分野 | 試験における比重 |
|:--|:--|
| 分野 1: データエンジニアリング  | 20%  |
|分野 2: 探索的データ解析   |  24% |
| 分野 3: モデリング  | 36%  |
|  分野 4: 機械学習の実装と運用 | 20%  |
| 合計  | 100%  |


- 分野 1: データエンジニアリング
    - 1.1 機械学習のデータリポジトリの作成。
    - 1.2 データ収集ソリューションの特定と実装。
    - 1.3 データ変換ソリューションの特定と実装。
- 分野 2: 探索的データ解析
    - 2.1 モデリングのためのデータのサニタイズと準備。
    - 2.2 特徴エンジニアリングの実施。
    - 2.3 機械学習用データの分析と視覚化。
- 分野 3: モデリング
    - 3.1 ビジネス上の課題を機械学習の課題として捉え直す。
    - 3.2 特定の機械学習の課題に対する適切なモデルの選択。
    - 3.3 機械学習モデルのトレーニング。
    - 3.4 ハイパーパラメータの最適化の実施。
    - 3.5 機械学習モデルの評価。
- 分野 4: 機械学習の実装と運用
    - 4.1 パフォーマンス、可用性、拡張性、回復性、フォールトトレランスを備えた機械学習ソリューションの構築。
    - 4.2 特定の課題に対応する適切な機械学習サービスおよび機能の推奨と実装。
    - 4.3 機械学習ソリューションへの基本的な AWS のセキュリティプラクティスの適用。
    - 4.4 機械学習ソリューションの展開と運用の実現。

##1.3.Amazon Web Services ブログ

**[新しい認定資格「AWS Certified Machine Learning – Specialty」で認定機械学習開発者になる]**
https://aws.amazon.com/jp/blogs/news/become-a-certified-machine-learning-developer-with-the-new-aws-certified-machine-learning-specialty-certification/

気になる部分を太字化。

>この新しい試験は、**特定のビジネス上の問題に対して ML ソリューションを設計、実装、デプロイ、保守する能力**を検証したい開発者およびデータサイエンティストのために AWS の専門家によって作成されました。さらに、**特定のビジネス上の問題に適した ML アプローチを選択して正当化**し、**ML ソリューションを実装するのに適切な AWS のサービスを特定**し、**スケーラブルでコスト最適化された信頼性の高い安全な ML ソリューションを設計および実装する能力**を検証します。

試験ガイドなどで書かれていた、問われるスキルとほぼ同じことが書かれています。

>AWS トレーニングと認定では、**ML および人工知能 (AI) サービス、特に Amazon SageMaker、および Amazon EMR、AWS Lambda、AWS Glue、Amazon S3** などのその他のサービスの使用に関して 1 年以上の実務経験があることをお勧めしています。また、受験者がアソシエートレベルの認定またはクラウドプラクティショナー認定を取得していることも推奨されますが、必須ではありません。

名前が出されているAWSサービスはさすがに出題されるのだろうなと思います。

##1.4.製品ページ
**[AWS での機械学習]**
https://aws.amazon.com/jp/machine-learning/

機械学習の中で細分化されたカテゴリと、それぞれに関連するAWSサービスの確認ができます。

- AI サービス
    - Amazon Personalize（レコメンデーション）
    - Amazon Forecast（予測）
    - Amazon Rekognition（画像と動画の分析）
    - Amazon Comprehend（高度なテキスト分析）
    - Amazon Textract（ドキュメント分析）
    - Amazon Polly（テキストから音声）
    - Amazon Lex（対話型エージェント）
    - Amazon Translate（翻訳）
    - Amazon Transcribe（文字起こし）
- ML サービス
    - Amazon SageMaker
    - Amazon SageMaker Ground Truth
    - Amazon SageMaker Neo
- フレームワーク
    - AWS 深層学習 AMI
    - AWS 深層学習コンテナ
    - AWS での TensorFlow
    - AWS での PyTorch
    - AWS での Apache MXNet
- インフラストラクチャ
    - GPU（Amazon EC2 P3 インスタンス）
    - GPUアクセラレーション（Amazon Elastic Inference）
    - 機械学習推奨チップ（AWS Inferentia）
    - CPU（Amazon EC2 C5 インスタンス）
    - FPGA（Amazon EC2 F1 インスタンス）
        - field-programmable gate array（製造後に購入者や設計者が構成を設定できる集積回路）
    - エッジデバイス（AWS IoT Greengrass）
- ML（機械学習）を学ぶ
    - AWS DeepRacer（ラジコンみたいなやつ）
    - AWS DeepLens（深層学習可能なビデオカメラ）
- 分析&セキュリティ
    - ストレージ（S3）
    - 分析
        - https://aws.amazon.com/jp/big-data/datalakes-and-analytics/
    - セキュリティ
        - https://aws.amazon.com/jp/security/
- ブログ
    - https://aws.amazon.com/jp/blogs/machine-learning/
        - 日本語には対応していないようだ。



##1.5.試験準備

https://aws.amazon.com/jp/training/learning-paths/machine-learning/exam-preparation/

e-ラーニングの試験対策コース。画像を拝借。
![path_ml-exam-preparation.0849ffc65449f465503b5d3b92410677a2ca62b3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155963/aad8af75-8fb4-c281-0fd5-c3fb64dbd71c.png)


ここではコースの内訳までは読み取れませんが、なんとなくどんな分野が出るかが分かる…かも。

- マシンラーニング試験の基礎
- プロセスモデル：AWSスタック上のCRISP-DM
    - (CRoss-Industry Standard Process for Data Mining)
    - 同名のコンソーシアムによって提唱されたデータ分析プロジェクトのプロセスモデル
- データサイエンスの要素
- （オプション）AWSでのビッグデータ
- ストレージ
- マシンラーニングのセキュリティ
- マシンラーニングアプリケーションの開発
- マシンラーニングソリューションのタイプ
- マシンラーニングソリューション
    - チャットボット
    - 機械翻訳とNeuro Linguistic Programing（神経言語プログラミング）
    - コンピュータビジョン理論
- 試験！


#2.情報収集（非公式情報）

公式情報以上に情報の取捨選択には留意してください。

##2.1.DevelopersIO

**[AWS Certified Machine Learning – Specialty合格までにやったこと]**
https://dev.classmethod.jp/cloud/aws/i-passed-mls-exam/

エントリを書かれた方も機械学習の知見なしの状態から勉強を始めたとか。期間としては4か月、試験対策としては3週間の勉強とのこと。学習に使われたリソースは以下とのこと。

- Couseraの機械学習コース
- AWSのe-ラーニング
- 試験ガイドに載っている公式ドキュメント
- Amazon SageMaker 開発者ガイド
- Developers.IOのSageMakerの記事
- サンプル問題
- 模擬試験

**[目指せML Specialist！みんなでわいわいサンプル問題を解いたのでまとめてみたよ！]**
https://dev.classmethod.jp/machine-learning/ml-specialist-office-workshop/

サンプル問題をベースに、日本語訳とその回答、および根拠が書かれています。
取り上げられているのは10問中8問までですが、機械学習よりの問題が多い印象です。
サンプル問題を改めてみてみると、AWS関連のワードが出てくるのは10問中4問のみで、その中でも3問にAmazon SageMakerが出てきます。実際の試験での比率でも同様なのでしょうか。。

##2.2.個人の記事（国内）
Qiitaと、個人ブログから引用させていただきました。

###その1
**[AWS認定10冠達成！AWS Certified Machine Learning – Specialty Beta Examに合格しました]**
https://qiita.com/nakazax/items/4bb44cb8474e4beb01b6

内容に差異があるかは不明ですが、受けたのはベータ版とのことです。
私見と前置きがあった上で、以下の知識レベルが求められる試験だと書かれています。

>機械学習と深層学習: JDLAディープラーニングG検定+α程度の知識
SageMaker: 普段からSageMakerを使っている、またはSageMakerの開発者ドキュメントをしっかり読み込んでいる
その他のAWSサービス: ソリューションアーキテクトアソシエイト+α程度の知識

やはり「AWSとは関係ない一般的な機械学習と深層学習に関する問題が思いの外多かった」印象とのこと。そしてここで**JDLAディープラーニングG検定**というものの存在を知る。ほぅ…。

[人材育成 | 一般社団法人 日本ディープラーニング協会 Japan Deep Learning Association](https://www.jdla.org/business/certificate/)

###その2


**[文系エンジニアがAWS Certified Machine Learning – Specialty に合格してきました]**
https://yomon.hatenablog.com/entry/2019/05/awscertml

まずは以下をベースに機械学習系の勉強をされたとのこと。

- マンガでわかる機械学習（オーム社）
- 「超」入門　微分積分　学校では教えてくれない「考え方のコツ」 (ブルーバックス)
- 最短コースでわかる ディープラーニングの数学（日経BP社）
- PythonとKerasによるディープラーニング（マイナビ出版）

模擬試験を受け、足りない知識を以下で補ったとのこと。

- [第2版］Python機械学習プログラミング 達人データサイエンティストによる理論と実践 impress top gearシリーズ

やはり機械学習色強めのよう。そしてSageMaker。

>他のAWS SA ProとBigData取得してますが、この試験は特にAWS色薄く、機械学習の知識が求められる内容が多かったです。とはいえ、この分野の中心サービスであるSageMakerの公式マニュアルやチュートリアルは手を動かしておくことをオススメします。機械学習系のAWSサービスも一通り何ができるのか確認しておいた方が良いかと思います。

その他にも役立った本として以下が挙げられています。

- 見て試してわかる機械学習アルゴリズムの仕組み 機械学習図鑑（翔泳社）
- ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装（オライリージャパン）
- 徹底攻略 ディープラーニングG検定 ジェネラリスト 問題集 徹底攻略シリーズ（インプレス）

###その3

**[AWSの機械学習エンジニア認定試験を受けてきた]**
https://qiita.com/si1242/items/c7b5d2f3916bf6b159de

- 超重要なAWSサービス
    - Sagemaker
    - S3
    - Glue
    - Kinesis Firehose
    - Athena
- Sagemakerのポイント
    - S3との連携
    - エンドポイントの負荷テスト
    - ハイパーパラメータの調整
    - 組み込みアルゴリズム
- 機械学習の知識は基本的なところまででOK
- ベストプラクティスを選ばせるものが出る

Sagemakerはブログを読んだり手を動かしたり（難しければ公式のYoutubeを見たり）して学習するとよいとのこと。機械学習は基本的なレベルで…とあるが、書いてあることがほぼ分からないので、私はまだスタートラインに立っていない。。

##2.3.個人の記事（海外）
私がえいやで訳しているので、そこが合ってるのかから疑ってください。

###その1
**[My Take on AWS Certified Machine Learning speciality Beta Exam]**
https://www.linkedin.com/pulse/my-take-aws-certified-machine-learning-speciality-beta-kalyan-janaki

受けたのはベータ版で、著者はBigDataソリューションアーキテクトとして働いている。試験ガイドの分野ごとに所感が述べられている。

- **Data Engineering(20%)**
    - シナリオに合致したAWSサービスを選ばせる問題が出る。
    - S3, EMR,Kinesis, Kinesis FireHose, Kinesis Analytics ,Athena and Glue. 
    - 機能とベストプラクティスをおさえておく。
- **Exploratory Data Analysis(24 %)**
    - AWSのサービスでなくデータの可視化の知識にフォーカスされている。
    - 以下の知識があるといいだろう。
        - box plot, line chart, scatter plot, heat map, word cloud, pie chart, pivot table
        - Quicksightが出てこなかったのは驚きだ.
    - ガイドでは比重が24%と書かれていたが10%程度に感じた
- **Modeling(36%)**
    - 試験全体の50 % はモデリングに関するものだと感じた。
    - AWSサービスというよりDLとMLにコンセントレートしてる。ポピュラーなモデルの知識が必要。
    - 以下を理解しておくとよい。
        - 特定のシナリオに合致したMLアルゴリズム
        - AWS Sage makerの組み込みアルゴリズムでできること
        - ポピュラーなMLやDLのアルゴリズムごとに、それを最適化できるハイパーパラメータ
        - 一般的なデータの前処理と特徴エンジニアリング
            - 正規化、異なるタイプの代入、異常値検出など
        - CNN(Convolutional Neural Networks)とRNN(Recurrent Neural Networks)のユースケース
        - エポック数とレイヤー数を使用してディープラーニングモデルを最適化する方法
            - （どちらも機械学習におけるパラメータの1つらしい）
        - 問題を解決するためにモデルを組み合わせて使う知見
            - kmeans(K平均法)クラスタリングとPCA(主成分分析）を使ってからデータを分類させる、など
- **Machine Learning Implementation and Operations(20 %)**
    - 多くのAWSのMLサービスが出る。
        - transcribe, translate, comprehend, polly, lexなど。
    - 特にSageMaker。
        - ノートブックインスタンスをどう使うか、トレーニングジョブをどう作るか、
        - エンドポイントをどうデプロイするか、高可用性を持たせるためにどうするか、
        - エンドポイントのブルーグリーンデプロイをどうするかモデルトレーニングにどのインスタンスが適切か。

公式のe-ラーニングはあまり有用でなかったとのこと。

###その2

**[Passing the AWS Certified Machine Learning Specialty Exam]**
https://thecloudtutor.com/2019/03/18/Passing-the-AWS-Certified-Machine-Learning-Specialty-Exam-MLS-C01.html

LinuxAcademyでトレーニングアーキテクトとして働いている人物による投稿。

- 体感的な比重は以下の通り
   - 1.Machine Learning / Deep Learning　50%
   - 2.AWS SageMaker　25%
   - 3.Other AWS Services　25%
- **1.Machine Learning / Deep Learning	50%**
    - AWSとは関係なく純粋な機械学習、深層学習の知識
    - 専門的な統計学レベルでの数学の理解は不要
    - 基本的な概念はしっかりおさえておく
        - 教師あり学習、教師なし学習、強化学習の違い
        - 訓練(training)、検証(validation)、テスト(testing)データの目的と管理方法
        - 一般的なハイパーパラメータの知識とアルゴリズムごとの有名どころ
        - 正則化（regularisation）とは何か、どう実現するか
        - 回帰分析（regression）と再急降下法（gradient descent）
    - インプットデータについても押さえておく
        - Jupyter notebooksやAWS QuickSightなどのツールによる可視化
        - 特徴エンジニアリング（Feature engineering）
        - データの不均衡や欠落が起こった時にどうするか
    - モデルタイプ（アルゴリズム）がどういったものか、どういったケースで使うかの理解
        - ロジスティック回帰、線形回帰、サポートベクターマシン、
        - 決定木/ランダムフォレスト、k平均法クラスタリング、k近傍法
    - ディープラーニングのモデルについて理解しておく
        - 畳み込みニューラルネットワーク(CNN)、回帰型ニューラルネットワーク(RNN)
    - ML/DLモデルのパフォーマンスを測定、理解、改善する方法に焦点があたる。
        - Accuracy（正解率）、Gini Impurity（ジニ不純度）、Confusion Matrix（混同行列）
        - F1 Score、Sensitivity（感度）、Specificity（特異度）、Precision（適合率）、Recall（再現率）
- **2.AWS SageMaker　25%**
    - もっとも試験で問われるAWSサービスである。以下をおさえておく。
        - AWS SageMakerとは何か、どのようなアーキテクチャか
        - Jupyter notebooksはAWS SageMakerどのような点で相性がいいか、どう使われているか
        - セキュアデータにアクセスするにはどうするか
        - Jupyter notebookをセキュアにするにはどうするか
        - モデルをどのように学習させるか、デプロイさせるか
        - ハイパーパラメータの最適化
    - AWSに最適化されたアルゴリズムについても知っておく
        - https://docs.aws.amazon.com/ja_jp/sagemaker/latest/dg/algos.html
        - 組み込みでない独自のアルゴリズムを使用する方法についても理解しておく
- **3.Other AWS Services　25%**
    - AIサービス
        - ユースケースと制限、アーキテクチャを理解しておく
            - Rekognition、Polly、Transcribe、Lex、Translate、Comprehend
    - その他のAWSサービス
        - さまざまな側面からAWSを問われるのでアソシエイトレベルで理解しておく
        - Big Data関連の以下のサービスは特に多く問われた
            - S3（データをどうセキュア化するかを含む）
            - Athena（パフォーマンスをどうだすか）
            - Kinesis（データの転送および加工）
            - EMR（Sparkと組み合わせる）
            - AWS Glue
            - QuickSight（さまざまなサービスからどうデータをインプットするかを含む）

試験ガイドにリンクが多く載っているAmazon Machine Learningがあまり出なかった…とある。意外。

###その3

**[So you are thinking of taking the AWS Certified Machine Learning Specialty exam]**
http://thedatascience.ninja/2019/04/07/so-you-are-thinking-of-taking-the-aws-certified-machine-learning-specialty-exam/


- ざっくり分けると以下の通り。
    - Questions that required AWS knowledge: 33%
    - Questions on Machine Learning that didn’t require AWS knowledge: 33%
    - Questions that combined Machine Learning with AWS topics: 33%
- **AWSサービス**
    - とにかくSagemaker
        - 組み込みアルゴリズム
        - Sagemakerエンドポイント設定
            - Blue/Greenデプロイ、カナリアデプロイ
        - ハイパーパラメータ最適化、自動モデルチューニング…
    - その他のAWSマシンラーニングサービス
    - Amazon Kinesis
        - Streams、Video Streams、Firehose、Data Analytics
    - Amazon EMRとAWS Glue
        - Spark、Hadoop、Hive…
    - Amazon S3
        - Sagemakerと組み合わせた時のセキュアな使い方
        - CSV、JSON、Parquet、RecordIO protbufなどのフォーマット
        - 他のレポジトリと比較した際にソリューションに合致するのはどれか
    - Amazon Identity and Access Management (IAM)
- **Machine Learning Topics**
    - 機械学習は広大な範囲にわたる学問だが、試験に問われるのはそこまで複雑なものではない
    - 身に着けておくべきは以下のようなトピック
        - Sagemakerのインスタンス作成、開発、学習、最適化、モデルのデプロイの仕方
        - Sagemakerの組み込みアルゴリズム
        - 他のAWSの機械学習サービス
        - モデル性能の測定
        - ディープラーニング
    - 以下それぞれに関連したキーワードの羅列（本記事では割愛）

キーワードの意味が一通り理解できるようしておこうと思います。


#3.学習リソース

学習に使えそうなリソースのまとめです。


##3.1.AWS

###AWSドキュメント
https://docs.aws.amazon.com/index.html
いわずもがなの情報源。日本語訳を信じすぎるとたまに痛い目に合う。

###AWSサービス別資料集
https://aws.amazon.com/jp/aws-jp-introduction/aws-jp-webinar-service-cut/
AWS Black Belt Online Seminar の資料。
個人的には、ドキュメントより先にこちらで大まかな内容を掴むのが好き。
機械学習系はSagemakerの他はあまり品ぞろえが良くなさそう。


###ホワイトペーパー
https://aws.amazon.com/jp/whitepapers/#machine-learning
機械学習だと3種ほどある。全部英語だけど分量はそこまでないから頑張れば読めそう。

###公式ブログ
[Amazon Web Services ブログ - Category: SageMaker](https://aws.amazon.com/jp/blogs/news/category/artificial-intelligence/sagemaker/)
[AWS Machine Learning Blog](https://aws.amazon.com/jp/blogs/machine-learning/)
参考にした個人ブログでも記述があったが、ある程度古いほうから読んだほうがよいかも。新しすぎると試験には取り込まれないので。


##3.2.機械学習

###Cousera
https://www.coursera.org/learn/machine-learning
機械学習の勉強をする上ではかなり有名らしい。さわりだけ試してみたが、画面の上半分に動画、下半分にテキストが表示される形式。良さそうだが動画だと時間のコントロールがしづらいのがネック。

###ディープラーニング G検定 対策本
[深層学習教科書 ディープラーニング G検定（ジェネラリスト） 公式テキスト]
https://www.shoeisha.co.jp/book/detail/9784798157559

[徹底攻略ディープラーニングG検定ジェネラリスト問題集]
https://book.impress.co.jp/books/1118101076

この試験に限らず、翔泳社のEXAM PRESSとインプレスの徹底攻略（黒本）シリーズはとりあえず買ってしまう。デザインがカッコいいから。


##3.3.非公式オンライン講座
この手のは使ったことがないので有用性は不明ですが、講座のアウトラインだけ眺めて大まかな内容を推測するのはいいかもしれません。

###A Cloud Guru
AWS Certified Machine Learning - Specialty 2019
https://acloud.guru/learn/aws-certified-machine-learning-specialty

###O'Reilly Safari
AWS Certified Machine Learning-Specialty (ML-S)
https://www.oreilly.com/library/view/aws-certified-machine/9780135556597/

###Pragmatic AI Labs 
AWS Certified Machine Learning-Specialty (ML-S)
https://noahgift.github.io/aws-ml-guide/intro.html

###おまけ

個人がまとめたyoutubeの再生リスト。
AWS Certified Machine Learning Exam
https://www.youtube.com/playlist?list=PLAFY3hrExHFGt6TldZ9Rjv5FALbw3uuu_

#4.学習プラン

ここまでの下調べを経て、個人的に以下のようなあたりをつけました。

- 半分はAWSに関係ない機械学習/深層学習関連の問題が出る
    - それらはそこまで深掘りして聞かれるわけではない
- AWSはとにかくsagemakerが出る
    - 試験ガイドにがっつりリンクが載っているMLはそこまで出ない
- AWSのAIサービス系がアーキテクチャレベルで出る
- kinesis,EMR,Athena,Glueあたりも頻出
- その他のAWSサービスはソリューションアーキテクトアソシエイトレベルで理解できていれば取れそう
    - セキュリティ、ベストプラクティス
- 公式のe-ラーニングはそこまで有益でない

それを踏まえて、以下を並列で進めていくプランを立てました。かっこ内は所要時間の目安。

##4.1.共通

###サンプル問題（1時間）
まずはここから。初見だとちんぷんかんぷんなはずなので、問題と答えと解説を見て、最低限そこは腹落ちさせておく。

###模擬試験受験および復習（10時間）
試験対策には過去問から入るタイプなので、早い段階で受けたい。
まずは足りてない知識を把握して、そこを埋めていく。
正しいと思われる回答と、その根拠を述べられるようにする取り組みもここに含む。

##4.2.AWS

###Sagemaker（10時間）
- 公式ドキュメントは全量を読み込む。
- サービス別資料集を読む。
- 公式動画でイメージを掴んでおく。
- 公式ブログでユースケースを眺めておく。

###Amazon Machine Learning（2時間）
Sagemakerの前に機械学習系のサービスとして登場し、役目を終えつつある位置づけの印象。とはいえ触れないのも怖いので、ドキュメントに目は通しておく。

###AIサービス（3時間）
それぞれでできることを概要でレベルでおさえておく。ドキュメントはそこまでじっくり読むつもりはない。

###その他のAWSサービス（4時間）
ワードとして何個か出てきたうち、自身の理解が足りていなさそうな以下のあたりを学習予定。

- Glue
- Athena
- Kinesis
- EMR

AWSサービス別資料集で概要をおさえて、適宜公式ドキュメントを見る。あとは公式ブログで、機械学習の文脈の中で出てきたら構成や組み合わせをおさえておく。

##4.3.機械学習、深層学習

###ディープラーニングG検定（7時間）
上述の公式テキストと問題集を使用する予定。
機械学習とはなんぞや、という基礎の基礎から体系立てて書いてある本を探したが、ピンとくるものがなかったのでここに落ち着いた。いっそのことこの検定試験も併せて取ることも検討したが、細かい固有名詞などAWS MLの試験と範囲が被らない部分もそれなりにありそうなので、取捨選択して学習予定。

###ゼロから作るDeep Learning（10時間）

https://www.oreilly.co.jp/books/9784873117584/

本棚に眠っているのを掘り起こして読んでみたら、思いのほか面白くてためになりそうだったので、一歩踏み込んだ機械学習の勉強は本書を用いることにした。


===

なんとなく上記で充足している予感はしているが、模擬試験を解く中で試験範囲をカバーできていなさそうであれば、書籍を追加予定。（Couseraによる動画での学習は採用しないことにした。）

#終わりに
というわけで、後は勉強して受かるだけです。頑張りましょう。
トータル50時間くらいの学習量で受かれればいいかなと思っています。

学習リソースや、有益な情報があれば取り込みたいので教えてください。