機械学習初心者がAWS Certified Machine Learning – Specialty を取得するまでの道のり
皆さんはAWS Certified Machine Learning – Specialty をご存じでしょうか。
こちらはAWSが公式に提供する機械学習の認定資格です。 今回はそんなAWS Certified Machine Learning – Specialtyの受験にあたって大切となることをまとめました。
はじめに
先日、AWSの認定試験であるAWS Certified Machine Learning – Specialty(以後MLS) を受験しました。MLSとは、AWSで機械学習を利用するためのアプローチ方法や適切なサービスの特定といった能力を測る試験です。
筆者は業務で機械学習を使用したサービス開発経験がない中での受験でした。AWSを中心とした業務を行っている筆者の視点で、どのような対策が必要がまとめてみました。
※個人的な主観が多く含まれているので、その点をご了承ください。
合格者の経歴と受験時の状況
まず前提条件として受験時の私の状況について簡単に記載します。
- IT歴 → 3年半
- AWS歴 → 約3年
- 機械学習歴 → 0年
- AWS資格 → CLF, SAA, DVA, SOA, SAP, DOP, ANS, DBS, SCS, PAS
- G検定 → 2024年5月に取得済み
見ていただいたらわかるようにAWSエンジニアとなっています。
MLSの対策はAWSエンジニアと機械学習エンジニアで対策が異なってきます。 今回はAWSエンジニア向けと機械学習エンジニア向け、そして両方に向けた共通の対策についてまとめました。
全受験者共通で必須の対策
まずMLSの対策を進めていくにあたって、学習する領域を大きく3つに分類しました。
「AWS基本サービス」はAWSで開発を行う上で汎用的に使われるサービスの領域です。ネットワークやセキュリティを構築する上で必要なサービスが該当します。
「AWS機械学習サービス」はAWSが提供する機械学習向けのサービスの領域です。AWSは機械学習向けのサービスを多く提供しており、そのサービスの機能や使い方などです。
「機械学習」は文字通り機械学習に関する領域です。AWS以外の環境でも共通する汎用的な機械学習の知識が該当します。
知らない用語やサービスが出てこないように自分がどの領域が苦手かを考えながら勉強するとよいと思います。
AWSエンジニアと機械学習エンジニア、どちらにも共通して重要になるのが「AWS機械学習サービス」です。
- AWSではどのような機械学習のサービスがあるのか
- 他のどのようなサービスと連携できるのか
- どのAWSサービスにどのような機能があるのか
などを意識しながら学習するとよいかもしれません。
個人的に重要だと思う「AWS機械学習サービス」は以下になります。
- Amazon SageMaker
- AWS Glue
- Amazon Comprehend
Amazon SageMakerに関しては多様な機能がありますのでそれぞれを学習すると良いと思います。
機械学習初心者向け!AWSエンジニアが理解するべき内容とは
AWSエンジニア向けの対策ということで基本的なAWSサービスに関しては理解していることを前提とします。
AWSエンジニアが理解するべき内容は大きく2つです。
- 機械学習の基本
- AWS機械学習サービス
機械学習の基本
MLSではAWS上で機械学習を活用する問題が出題されます。問題文の中で「データクレンジング」や「主成分分析」などの単語が出てきます。これらの意味合いがわかっていないと問題文・選択肢の意味が理解できず正しい答えを選ぶことができません。
そこで機械学習の基本を理解しておくことでスムーズに問題を解くことができます。具体的な勉強方法は以下の通りです。
- G検定の参考書で勉強する
- MLSの練習問題を解いて知らない単語が出てきた場合に都度調べる
G検定の内容に関してはMLSで取り扱わない内容も一部あります。今後、AWSで機械学習を活用したサービスを構築する場合はG検定での勉強を、効率よく最短でMLSを取得したい場合は知らない単語が出た際に都度調べるなどが良いと思います。
AWS機械学習サービス
AWSには機械学習で活用できるサービスがいくつもあります。そのため、ひとつのゴールに対して複数のサービスを利用したアプローチがあることがあります。
例: ドキュメントからキーワードを抽出したい
- Amazon Comprehendを使用する
- Amazon Sagemakerでカスタムモデルを構築する
1.の場合はマネージドサービスを活用しているのですぐにサービスを構築できるでしょう。
2.の場合は時間と労力はかかりますが専用の拡張性の高いサービスが構築できるかもしれません。
あくまで上記は例として挙げましたが、「単純にどのサービスで何ができる」だけではなく、類似サービスとの違いについても意識しながら勉強すると理解が進むと思います。
AWS初心者向け!機械学習エンジニアが理解するべき内容とは
機械学習エンジニアではなくAWSエンジニアの視点から、AWSよりも機械学習への理解が深いエンジニアの方向けにAWSの基本サービス・機械学習サービスについて対策を考えます。筆者は機械学習エンジニアではありませんが、基本かつ重要なサービスに絞ってまとめています。
機械学習エンジニアが理解するべき内容は大きく以下の2つです。
- AWS基本サービス
- AWS機械学習サービス
AWS基本サービス
AWSを使ったことがない方や、あまり自信のない方は必ずこちらの学習をしましょう。全サービスを学ぶとなると膨大な時間がかかってしまいますので、基本となるサービスにフォーカスして学習しましょう。
以下は私が考えるMLSで必要とされる基本サービスです。
- Amazon VPC,
- Amazon EC2(Elastic IP/セキュリティグループなど)
- AWS CloudTrail
- Amazon CloudWatch
- AWS Identity and Access Management (IAM)
- AWS機械学習サービス
AWS機械学習サービス
機械学習サービスがどのような用途で使われるのか、どのようなパラメータが存在するのか、という点に関しては業務経験などからスムーズに理解ができると思います。しかし、他AWSサービスとの連携、という点に関してはしっかりと学習が必要になると思います。
具体的には以下のような内容です。
AWS Sagemakerが使用可能なデータソース(一部抜粋)
- Amazon S3
- Amazon Athena
- Amazon DocumentDB
- Amazon Redshift
- Amazon RDS
こうしたサービス間の連携に関しては意識して学習しましょう。
まとめ
今回は、AWS Certified Machine Learning – Specialty試験の受験対策として役立つ情報をお届けしました。
筆者は日々の業務でAWSをメインに扱っており、機械学習に関しては初心者という状況での受験となりましたが、無事に合格することが出来ました。AIや機械学習といったものが注目を集める中、今回の受験を通してAWSを活用した機械学習というものへの理解が深まりました。
AWSが得意なエンジニアも機械学習が得意なエンジニアの方も、これを機にMLSを取得してみてはいかがでしょうか。