変更要約: in-scope サービス網羅: 中核サービスの解説を追加
3.1アルゴリズムの選択
課題に合うモデル——教師あり(分類/回帰)、教師なし(クラスタリング/次元削減)、SageMaker 組み込みアルゴリズム、専門タスク(画像/テキスト/時系列)——を理解します。
モデリングの第一歩は、課題の種類に合うアルゴリズムを選ぶことです。ラベルの有無や出力の種類で大きく分かれます。
3.1.1課題の種類で選ぶ
- 教師あり:ラベル付きデータで学習。分類(XGBoost/Linear Learner)や回帰(数値予測)。
- 教師なし:ラベルなし。クラスタリング(K-Means)、次元削減(PCA)、異常検知(Random Cut Forest)。
- 専門タスク:画像(画像分類/CNN)、テキスト(BlazingText)、時系列予測(DeepAR)。
- SageMaker 組み込み:上記の多くは組み込みアルゴリズムとして提供され、すぐ使える。
「表形式の分類/回帰=XGBoost」「クラスタリング=K-Means」「次元削減=PCA」「異常検知=Random Cut Forest」「時系列予測=DeepAR」「テキスト分類/埋め込み=BlazingText」 は MLS-C01 で頻出です。ラベルの有無(教師あり/なし)でまず分け、出力の種類で具体アルゴリズムを選びます。
MLS-C01 では SageMaker 組み込みアルゴリズムの「どれをいつ」が深く問われます。表形式データではまず XGBoost(勾配ブースティング木)が強く、欠損やスケールに頑健で分類・回帰・ランキングに使えます。線形に近い大規模データや疎な特徴には Linear Learner、推薦の協調フィルタリングには Factorization Machines、超大規模の多クラス分類には kNN や Linear Learner を検討します。教師なしでは、球状クラスタの K-Means(k は要指定・エルボー法やシルエットで決める)、次元削減と可視化前処理の PCA、ストリーミング異常検知の Random Cut Forest(RCF)、トピック抽出の LDA/NTM を使い分けます。専門タスクでは、画像分類(Image Classification、ResNet ベース・転移学習)、物体検出(Object Detection)、セマンティックセグメンテーション、テキストの BlazingText(Word2Vec 埋め込み+高速テキスト分類)、系列変換の Seq2Seq(翻訳・要約)、時系列の DeepAR(複数系列をまとめて学習し確率的予測・コールドスタートに強い)を選びます。さらに高水準の選択肢として、コードを書かずに最適なモデルとハイパーパラメータを自動探索する SageMaker Autopilot(AutoML)、独自コンテナ(Bring Your Own Container)、Hugging Face/PyTorch/TensorFlow の スクリプトモード があり、「組み込みで足りるか・AutoML に任せるか・自前実装か」を要件(精度/工数/説明性/カスタム性)で判断します。アルゴリズムの仮定(K-Means は球状等方クラスタを仮定・PCA は線形・線形回帰は線形性と等分散)を外れる場合は別手法(DBSCAN、カーネル法、木系)を検討します。
| 課題 | 代表アルゴリズム | メモ |
|---|---|---|
| 表形式 分類/回帰 | XGBoost | 欠損/スケールに頑健・既定の強候補 |
| クラスタリング | K-Means | k 指定・球状仮定(非球状は DBSCAN) |
| 次元削減 | PCA | 線形・可視化前処理 |
| ストリーミング異常検知 | Random Cut Forest | Kinesis Analytics でも利用可 |
| 時系列予測 | DeepAR | 複数系列・確率予測・コールドスタート |
| テキスト分類/埋め込み | BlazingText | Word2Vec・高速 |
シナリオ:数百店舗の日次売上から各店舗の需要を予測したい。店舗ごとに別モデルを作るのは非効率で、新規店舗(履歴が短い)も予測したい。→ DeepAR を使う。複数系列をまとめて 1 つのグローバルモデルとして学習するため系列間でパターンを共有でき、履歴の浅い系列(コールドスタート)にも確率的予測を出せる。店舗ごとに ARIMA を個別に組むより効率的で精度も出やすい。
FAQ:Q. 表形式でまず何を試す? A. XGBoost が頑健で強い既定候補。線形に近い/疎なら Linear Learner。Q. クラスタ数 k はどう決める? A. エルボー法やシルエット係数で評価。非球状なら DBSCAN。Q. コードを書かずに最適モデルを得たい? A. SageMaker Autopilot(AutoML)が前処理・モデル・HP を自動探索し、リーダーボードと説明可能性レポートを出す。
ひっかけ:「時系列予測にも XGBoost や K-Means を使えばよい」は誤りになりやすい。時系列の季節性・トレンド・複数系列の共有学習は DeepAR が適し、K-Means は時系列予測の手法ではない(クラスタリング)。また「PCA で分類できる」も誤りで、PCA は次元削減であって分類器ではない。課題(出力の種類)に合うアルゴリズムを選ぶ。
3.1.2この節のまとめ
- ラベルあり=教師あり(XGBoost 等)/なし=教師なし(K-Means/PCA/RCF)
- 時系列=DeepAR、テキスト=BlazingText
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. ラベルのない顧客データを似た者同士のグループに分けたい。どのアルゴリズムが適していますか?
Q2. 過去の売上から将来の需要を時系列で予測したい。SageMaker のどの組み込みアルゴリズムが適していますか?
Q3. 多数の特徴量を、情報をできるだけ保ちつつ少数の次元に圧縮したい。何を使いますか?

