【AWS認定】とりあえずMLA試験に受かるためのメモ

# 0.はじめに
機械学習と縁もゆかりもないエンジニアがとりあえず試験に合格するためだけに勉強した内容を整理したもの。
用語の整理が主になっています。（👇なんとか合格しました。。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3691986/c028e232-40b6-482d-bd8f-c2cd5a7e82a9.png)

# 1.押さえておくべき用語
### ■機械学習 基礎用語
* **F1スコア**
機械学習のモデルがどれだけ正確に予測を行っているかを示す指標の一つ。
&emsp;高い⇒精度が高い
&emsp;低い⇒精度が低い
<br>

* **平均絶対誤差(MAE)**
予測値と実際の値の絶対的な差の平均を計算する指標。
何らかの値を予測する用途で使用される。
ex.物件価格の予測
<br>

* **ワンホットエンコード**
テゴリカルデータを数値に変換する。
<br>

* **ランダムカットフォレスト**
代表的な異常検知アルゴリズム。
<br>

* **IP Insights**
異常検知アルゴリズム。
IPアドレスとエンティティ（ユーザーIDなど）の関係パターンを学習し、不正アクセスや異常な行動を検出する。
<br>

* **DeepAR**
時系列データにおいて複数の系列が存在する状況に対応できる Amazon SageMaker のアルゴリズム。
<br>

* **温度**
AIがどれくらい「ランダムな回答」をするかを決めるパラメータ。
&emsp;・低い温度（例：0.1） → 確実性の高い単語を選び、一貫性のある回答になる
&emsp;・高い温度（例：1.0以上） → よりランダムな単語を選び、多様性のある回答になる
<br>

* **Top-k**
AIが次の単語を選ぶ際に「確率の高い上位K個の単語だけを考慮する」仕組み。
&emsp;・低いK（例：3） → より確実な単語を選ぶ（一貫性が高い）
&emsp;・高いK（例：50） → 選択肢が増え、バリエーションが増える
<br>

* **誤検出の防止**
ターゲット精度を上げることで、モデルがより正確な分類を行うように調整する。
<br>

* **ApacheParquet**
ML/データ分析向けに最適化された列指向のファイル形式
<br>


* **シャドーテスト**
新しいモデルを現在のモデルと並行して実行し、同じライブデータを処理しながら生産結果に影響を与えないようにテストすること。
<br>

* **ロジスティック回帰**
いくつかの要因（説明変数）から「2値の結果（目的変数）」が起こる確率を説明・予測する。
<br>

* **ハイパーバンド**
ハイパーパラメータ調整では、最小の計算時間で最適な結果を提供。
<br>

* **max_depthパラメータ**
値を小さくすることで
・モデルの複雑さを減らす
・トレーニングデータへの過度な適合を防ぐ
・モデルの汎化性能を向上させる
⇒過学習対策
<br>

* **アンサンブル法**
複数の異なるモデルを組み合わせて予測を行うこと。
各モデルの弱点を補完し合い、全体としての予測精度を向上。

### ■AWS SageMaker周り
* **SageMakerモデルレジストリ**
機械学習モデルのライフサイクルを管理。
&emsp;・モデルのバージョン管理
&emsp;・クロスアカウントを使用したモデルの共有
&emsp;・承認ステータス管理
&emsp;・コレクション
&emsp;　→登録済みモデルをグループ化し、階層化して整理する。
&emsp;　　コレクションに対する操作はモデルに影響を与えない。

<br>

* **ウォームプール機能**
トレーニングジョブ間でコンピューティングリソースを再利用することを可能にする。ジョブの起動時間を大幅に短縮する。
※通常のトレーニングジョブでは、各ジョブごとにインスタンスを起動する必要がある
"https://aws.amazon.com/about-aws/whats-new/2022/09/reduce-ml-model-training-job-startup-time-8x-sagemaker-trainingmanaged-warm-pools/"
<br>

* **SageMakerパイプライン**
一言でいうと、SagemakerにおけるCI/CD。定義→実行→評価の一連のサイクルを自動化。
※本機能が提供されるまではStep Functionsなどでワークフローを構成していた。
<br>

* **SageMaker Clarify**
モデルのバイアスと公平性を分析する専用のツール。データセットとモデルの偏りを検出して監視する。
&emsp;・AWSLambda関数と連携可能
&emsp;⇒自動化とオンデマンド実行が保証され、
&emsp;&emsp;バイアスドリフトのモニタリング要件を満たしながら運用の複雑さが軽減
&emsp;・リアルタイムエンドポイントのモデルバイアスを検出可能。
&emsp;・モデルの予測に対する説明を提供
<br>

* **SageMaker Data Wrangler**
機械学習のデータ準備と異常検出に最適なツール。機械学習に使用するデータを前処理して、問題がある場合は視覚的に簡単に検出できるツール。
カスタムコードを書かなくてもデータのクリーニング、前処理、変換を行うユーザーフレンドリーなインターフェイス。
&emsp;・自動データ前処理（DataFlow/Transform機能）
&emsp;・異常検出アルゴリズムの適用 
&emsp;・視覚化機能
&emsp;・機械学習ワークフローへの統合
&emsp;・S3、Athena、RedShiftなど様々なソースにアクセス可能（import機能）
⇒データ準備といえばこのサービス！
<br>

* **SageMakerリアルタイムエンドポイント**
自動スケーリング、低レイテンシー、バースト処理に特化して設計
<br>


* **Amazon SageMaker Debugger**
トレーニング中のモデル内部の状態をS3に出力できる。
トレーニング中のモデルの問題を自動で検知し、モデル内部を可視化し、問題を調査することができる。
<br>

* **Amazon SageMaker GroundTruth**
データラベル付けサービス。
機械学習のための高精度なトレーニングデータセットを簡単に構築。
<br>

* **Amazon SageMaker StudioClassic**
機械学習モデルの開発、トレーニング、デプロイを行うための統合開発環境（IDE）。
<br>

* **SageMaker Autopilot**
データから最適な機械学習モデルを自動的に構築し、SageMaker Pipelines内でのモデル開発プロセスを効率化する。
<br>

* **SageMaker Model Cards**
機械学習モデルのライフサイクル全体にわたる重要な情報を記録し、管理するためのツール。
<br>

* **SageMaker Experiments**
機械学習実験の管理、追跡、比較を効率的に行うためのツール。
<br>


### ■その他AWSサービス

* **AWS Glue FindMatches**
完全一致していない／主キーがないデータに対しても、データセット内の重複レコードや一致するレコードを識別する。
&emsp;・マネージドな機械学習ベースの重複検出ソリューション（カスタマイズも可能）
&emsp;・ユーザーが明示的なコードを記述する必要がない
&emsp;・AWSGlueのETLジョブとして実行可能
&emsp;※SageMaker Data Wranglerは重複検知には不適。
<br>

* **AmazonComprehend**
自然言語処理（NLP）サービス。以下のような機能が存在。
&emsp;・**Detect PII API**：
　　ドキュメント内の個人識別情報 (PII) エンティティの位置を特定し、
  　　PIIが除去されたドキュメントを生成
&emsp;・**カスタム分類**：
　　カスタマイズした自然言語処理モデルをトレーニングすることで、
  　　特定のビジネスニーズに応じたテキストの分類を可能に。
    　　IAMポリシーで他アカウントとモデル共有可能。　
&emsp;・**トピックモデリング**：
　　大量のドキュメントを検査し、類似キーワードに基づいてドキュメントを整理する。
<br>

* **Amazon Transcribe**
音声を文字に変換。
<br>


* **AWS Trainiumインスタンス**
機械学習トレーニング専用に設計されたAWSカスタムチップ。
従来のGPUと比較して電力効率が高い。
<br>

* **AWS Infインスタンス**
AWSが推論処理に特化して提供しているインスタンスシリーズ。
<br>

* **AmazonRedshiftの動的データマスキングポリシー（Redshift DDM）**
機密情報を、クエリー実行時に動的にマスキングするポリシーを定義する機能。
<br>

* **Amazon FSx for Lustre**
高スループット・低レイテンシの分散ファイルシステム。
用途としては、ビッグデータ処理、機械学習、メディアレンダリング。S3と直接統合が可能。
<br>

* **AWS Glue DataBrew**
ビジュアルデータ準備ツール。
異常のフィルタリング、標準形式へのデータの変換、無効な値の修正などのデータのクリーニング作業が得意。
<br>

* **AWS X-Ray**
アプリケーションのトレースデータを収集し、分散トレーシングに基づいてパフォーマンス問題やレイテンシーのボトルネックを可視化